Combined Code
// unknown tag 88 length 218
// unknown tag 88 length 229
movieClip 21 {
frame 1 {
stop();
}
}
movieClip 22 {
}
movieClip 23 buildRubble {
frame 1 {
stop();
}
}
movieClip 27 {
}
movieClip 28 techIcon0 {
}
movieClip 45 techBtn {
}
movieClip 50 {
}
movieClip 54 {
}
movieClip 58 {
}
movieClip 63 {
}
movieClip 66 {
}
movieClip 68 {
}
movieClip 69 {
}
movieClip 72 {
}
button 75 {
on (release) {
_root.hudInfo.toggleEncounters(this);
}
}
button 85 {
on (release) {
_root.hudInfo.Attack(this);
}
}
button 86 {
on (release) {
_root.hudInfo.ChangeForce(this, 1);
}
}
button 88 {
on (release) {
_root.hudInfo.ChangeForce(this, -1);
}
}
button 90 {
on (release) {
_root.hudInfo.ChangeForce(this, '100%');
}
}
button 92 {
on (release) {
_root.hudInfo.ChangeForce(this, 'MAX');
}
}
movieClip 97 {
}
movieClip 99 {
}
button 100 {
on (release) {
_root.hudInfo.toggleEncounters(this);
}
}
movieClip 104 {
}
button 105 {
on (release) {
_root.hudInfo.ChangeForce(this, '50%');
}
}
button 107 {
on (release) {
_root.hudInfo.ChangeForce(this, '25%');
}
}
movieClip 109 wildEncounter {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 112 {
}
movieClip 114 trait30 {
}
movieClip 117 {
}
movieClip 119 trait??? {
}
movieClip 120 traitBtn30 {
}
movieClip 123 {
}
movieClip 125 {
}
movieClip 127 trait29 {
}
movieClip 128 traitBtn29 {
}
movieClip 130 {
}
movieClip 132 trait28 {
}
movieClip 133 traitBtn28 {
}
movieClip 136 {
}
movieClip 137 {
}
movieClip 139 trait27 {
}
movieClip 140 traitBtn27 {
}
movieClip 144 {
}
movieClip 145 {
}
movieClip 146 {
}
movieClip 148 trait26 {
}
movieClip 149 traitBtn26 {
}
movieClip 151 {
}
movieClip 153 trait25 {
}
movieClip 154 traitBtn25 {
}
movieClip 157 {
}
movieClip 158 {
}
movieClip 160 trait24 {
}
movieClip 161 traitBtn24 {
}
movieClip 163 {
}
movieClip 165 trait23 {
}
movieClip 166 traitBtn23 {
}
movieClip 168 {
}
movieClip 170 trait22 {
}
movieClip 171 traitBtn22 {
}
movieClip 174 {
}
movieClip 175 {
}
movieClip 177 trait21 {
}
movieClip 178 traitBtn21 {
}
movieClip 181 {
}
movieClip 182 {
}
movieClip 184 trait20 {
}
movieClip 185 traitBtn20 {
}
movieClip 188 {
}
movieClip 189 {
}
movieClip 191 trait19 {
}
movieClip 192 traitBtn19 {
}
movieClip 194 {
}
movieClip 196 trait18 {
}
movieClip 197 traitBtn18 {
}
movieClip 200 {
}
movieClip 201 {
}
movieClip 203 trait17 {
}
movieClip 204 traitBtn17 {
}
movieClip 206 {
}
movieClip 208 trait16 {
}
movieClip 209 traitBtn16 {
}
movieClip 212 {
}
movieClip 213 {
}
movieClip 215 trait15 {
}
movieClip 216 traitBtn15 {
}
movieClip 218 {
}
movieClip 220 trait14 {
}
movieClip 221 traitBtn14 {
}
movieClip 224 {
}
movieClip 226 {
}
movieClip 228 {
}
movieClip 229 {
}
movieClip 232 {
}
movieClip 233 {
}
movieClip 234 {
}
movieClip 236 trait13 {
}
movieClip 237 traitBtn13 {
}
movieClip 240 {
}
movieClip 241 {
}
movieClip 243 trait12 {
}
movieClip 244 traitBtn12 {
}
movieClip 248 {
}
movieClip 252 {
}
movieClip 253 {
}
movieClip 254 trait11 {
}
movieClip 255 traitBtn11 {
}
movieClip 258 {
}
movieClip 259 trait10 {
}
movieClip 260 traitBtn10 {
}
movieClip 261 {
}
movieClip 263 trait9 {
}
movieClip 264 traitBtn9 {
}
movieClip 267 {
}
movieClip 268 {
}
movieClip 270 trait8 {
}
movieClip 271 traitBtn8 {
}
movieClip 273 {
}
movieClip 275 {
}
movieClip 277 trait7 {
}
movieClip 278 traitBtn7 {
}
movieClip 280 {
}
movieClip 282 trait6 {
}
movieClip 283 traitBtn6 {
}
movieClip 286 {
}
movieClip 287 {
}
movieClip 289 trait5 {
}
movieClip 290 traitBtn5 {
}
movieClip 294 {
}
movieClip 295 {
}
movieClip 296 trait4 {
}
movieClip 297 traitBtn4 {
}
movieClip 299 {
}
movieClip 301 trait3 {
}
movieClip 302 traitBtn3 {
}
movieClip 304 {
}
movieClip 306 trait2 {
}
movieClip 307 traitBtn2 {
}
movieClip 309 {
}
movieClip 311 {
}
movieClip 313 trait1 {
}
movieClip 314 traitBtn1 {
}
movieClip 317 {
}
movieClip 320 {
}
movieClip 324 {
}
movieClip 325 {
}
movieClip 326 {
}
movieClip 329 {
}
movieClip 330 {
instance timer of movieClip 329 {
onClipEvent (enterFrame) {
if (_root.gamePaused == false) {
a = _parent._parent._parent._parent;
this.gotoAndStop(a.buildProgressPercent + 1);
this.progressAnim.play();
a.buildProgress += 0.04166666666666666;
a.buildProgressPercent = int(a.buildProgress / a.buildTime * 0.01);
if (a.buildProgressPercent >= 100) {
--_root.strCount[a.Catalog][a.ModeInt];
a.Name = _root.buildList[a.Catalog][0];
a.Mode = _root.modeList[a.Catalog][0][0];
a.ModeInt = 0;
if (_root.modeList[a.Catalog][1][0] != NaN && a.Catalog != 8) {
a.ModesEnabled = true;
} else {
a.ModesEnabled = false;
}
if (_root.modeList[a.Catalog][3][0] != NaN) {
a.UpgradesEnabled = true;
} else {
a.UpgradesEnabled = false;
}
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
if (_root.nodeSelected == _parent._parent._parent._parent) {
_root.selectStructure(_parent._parent._parent._parent);
}
if (a.Catalog == 6 && _root.tiersUnlocked[1] == false) {
_root.UnlockTier2();
} else {
if (a.Catalog == 11 && _root.tiersUnlocked[2] == false) {
_root.UnlockTier3();
}
}
++_root.strCount[a.Catalog][a.ModeInt];
_root.findBuffers(a, 1);
_root.adviserHint();
if (_root.traitsOwned[29] == 1 && a.Catalog == 3) {
_root.UpgradeMode(a, 'cloistered');
}
_root.displayModel(a, false);
_parent._parent.gotoAndStop(1);
}
} else {
this.progressAnim.stop();
this.stop();
}
}
}
}
movieClip 331 StructurePrism {
frame 1 {
stop();
}
}
movieClip 335 {
}
movieClip 339 {
}
movieClip 340 StructureMayorHouse {
frame 1 {
stop();
}
}
movieClip 343 {
}
movieClip 346 StructureGarden {
frame 1 {
stop();
}
}
movieClip 350 {
}
movieClip 352 {
}
movieClip 354 {
}
movieClip 357 {
}
movieClip 358 StructureFactory {
frame 1 {
stop();
}
}
movieClip 361 {
}
movieClip 364 {
}
movieClip 365 StructureDrill {
frame 1 {
stop();
}
}
movieClip 367 StructureBlockage {
frame 1 {
stop();
}
}
movieClip 370 {
}
movieClip 373 {
}
movieClip 374 StructureBallpit {
frame 1 {
stop();
}
}
movieClip 377 {
}
movieClip 380 {
}
movieClip 381 StructureAlchLab {
frame 1 {
stop();
}
}
movieClip 387 {
}
movieClip 389 {
}
movieClip 404 {
}
movieClip 406 {
}
movieClip 420 {
}
movieClip 422 {
}
movieClip 425 specialistIcon {
}
movieClip 427 sparklePop {
}
movieClip 431 {
}
movieClip 433 {
}
movieClip 435 {
}
movieClip 436 {
}
movieClip 443 {
frame 1 {
stop();
}
}
movieClip 445 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 447 {
frame 1 {
stop();
}
}
movieClip 449 {
}
movieClip 458 {
frame 1 {
stop();
}
frame 9 {
gotoAndStop(1);
}
}
movieClip 461 {
}
movieClip 463 {
}
movieClip 465 {
}
movieClip 467 {
}
movieClip 469 {
}
movieClip 471 {
}
movieClip 472 {
frame 1 {
stop();
}
}
movieClip 477 {
}
movieClip 478 {
}
movieClip 480 {
}
movieClip 482 {
}
movieClip 483 {
frame 1 {
stop();
}
frame 5 {
stop();
}
frame 10 {
stop();
}
frame 15 {
stop();
}
frame 20 {
stop();
}
frame 25 {
stop();
}
frame 30 {
gotoAndStop(1);
}
frame 40 {
stop();
}
}
movieClip 491 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 10 {
_parent.eyelashupper._alpha = 0;
}
frame 21 {
gotoAndPlay(2);
}
frame 22 {
_parent.eyelashupper._alpha = 100;
}
}
movieClip 505 {
}
movieClip 506 {
}
movieClip 518 {
}
movieClip 523 {
frame 1 {
stop();
}
frame 7 {
stop();
}
frame 13 {
stop();
}
frame 20 {
stop();
}
frame 28 {
gotoAndStop(1);
}
frame 74 {
gotoAndStop(1);
}
}
movieClip 526 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 537 {
frame 1 {
stop();
}
frame 12 {
gotoAndStop(1);
}
}
movieClip 548 {
frame 1 {
stop();
}
frame 11 {
gotoAndStop(1);
}
}
movieClip 551 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 554 {
}
movieClip 556 {
}
movieClip 558 {
}
movieClip 560 {
}
movieClip 562 {
}
movieClip 564 {
}
movieClip 566 {
}
movieClip 567 {
frame 1 {
stop();
}
}
movieClip 569 {
}
movieClip 571 {
}
movieClip 572 {
frame 1 {
stop();
}
frame 10 {
stop();
}
frame 20 {
stop();
}
frame 30 {
stop();
}
frame 40 {
stop();
}
}
movieClip 574 {
}
movieClip 575 {
}
movieClip 579 {
}
movieClip 580 {
frame 1 {
stop();
}
frame 7 {
stop();
}
frame 16 {
stop();
}
frame 25 {
stop();
}
frame 35 {
stop();
}
}
movieClip 587 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 30 {
gotoAndPlay(2);
}
}
movieClip 600 {
frame 1 {
stop();
}
frame 7 {
stop();
}
frame 13 {
stop();
}
frame 19 {
stop();
}
}
movieClip 602 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 604 {
}
movieClip 609 {
}
movieClip 610 {
frame 1 {
stop();
}
frame 10 {
stop();
}
frame 20 {
stop();
}
frame 30 {
stop();
}
}
movieClip 625 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 127 {
gotoAndPlay(2);
}
}
movieClip 627 {
}
movieClip 629 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 631 {
}
movieClip 633 {
}
movieClip 635 {
}
movieClip 639 {
}
movieClip 640 {
frame 1 {
stop();
}
frame 10 {
stop();
}
frame 20 {
stop();
}
frame 30 {
stop();
}
frame 40 {
stop();
}
frame 50 {
stop();
}
}
movieClip 653 {
frame 1 {
_parent.eyelashupper._alpha = 0;
}
frame 2 {
_parent.eyelashupper._alpha = 0;
}
frame 16 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 36 {
x = _root.randRange(0, 100);
if (x < 75) {
gotoAndPlay(2);
} else {
gotoAndPlay('loop2');
}
}
frame 37 {
gotoAndPlay(2);
}
frame 38 {
_parent.eyelashupper._alpha = 100;
}
frame 56 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay('loop2');
} else {
gotoAndPlay('blink2');
}
}
frame 65 {
_parent.eyelashupper._alpha = 100;
}
}
movieClip 672 {
}
movieClip 678 {
frame 1 {
stop();
}
frame 7 {
stop();
}
frame 13 {
stop();
}
frame 19 {
stop();
}
}
movieClip 680 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 682 {
}
movieClip 685 {
}
movieClip 688 {
}
movieClip 689 {
frame 1 {
stop();
}
frame 10 {
stop();
}
frame 20 {
stop();
}
frame 30 {
stop();
}
frame 40 {
stop();
}
frame 50 {
stop();
}
frame 60 {
stop();
}
frame 70 {
stop();
}
}
movieClip 700 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 24 {
gotoAndPlay(2);
}
}
movieClip 705 {
frame 1 {
stop();
}
frame 3 {
stop();
}
frame 5 {
stop();
}
}
movieClip 707 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 709 {
}
movieClip 711 {
}
movieClip 714 {
}
movieClip 715 {
frame 1 {
stop();
}
}
movieClip 724 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 19 {
gotoAndPlay(2);
}
}
movieClip 726 {
}
movieClip 728 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 730 {
}
movieClip 733 {
}
movieClip 734 {
frame 1 {
stop();
}
}
movieClip 743 {
frame 9 {
x = _root.randRange(0, 100);
if (x < 95) {
gotoAndPlay(2);
} else {
gotoAndPlay('blink');
}
}
frame 19 {
gotoAndPlay(2);
}
}
movieClip 745 {
}
movieClip 747 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 749 {
}
movieClip 751 {
frame 1 {
stop();
}
instance of movieClip 575 {
onClipEvent (release) {
this._parent.eyeballs.play();
_root.directorEyeballsFade = _root.directorEyeballsPosition * -1;
}
}
instance of movieClip 575 {
onClipEvent (release) {
this._parent.jaw.play();
}
}
}
movieClip 753 pHead {
}
movieClip 758 {
}
movieClip 760 perk18 {
}
movieClip 761 perkBtn18 {
}
movieClip 764 {
}
movieClip 767 {
}
movieClip 769 {
}
movieClip 771 {
}
movieClip 772 {
}
movieClip 773 {
}
movieClip 775 perk17 {
}
movieClip 776 perkBtn17 {
}
movieClip 779 {
}
movieClip 780 {
}
movieClip 782 perk16 {
}
movieClip 783 perkBtn16 {
}
movieClip 787 {
}
movieClip 789 {
}
movieClip 790 {
}
movieClip 792 perk15 {
}
movieClip 793 perkBtn15 {
}
movieClip 796 {
}
movieClip 797 {
}
movieClip 799 perk14 {
}
movieClip 800 perkBtn14 {
}
movieClip 802 {
}
movieClip 804 {
}
movieClip 806 {
}
movieClip 808 {
}
movieClip 809 {
}
movieClip 811 perk13 {
}
movieClip 812 perkBtn13 {
}
movieClip 814 {
}
movieClip 816 perk12 {
}
movieClip 817 perkBtn12 {
}
movieClip 820 {
}
movieClip 821 {
}
movieClip 823 perk11 {
}
movieClip 824 perkBtn11 {
}
movieClip 826 {
}
movieClip 828 perk10 {
}
movieClip 829 perkBtn10 {
}
movieClip 834 {
}
movieClip 835 {
frame 2 {
stop();
}
}
movieClip 836 {
}
movieClip 838 perk9 {
}
movieClip 839 perkBtn9 {
}
movieClip 841 {
}
movieClip 843 perk8 {
}
movieClip 844 perkBtn8 {
}
movieClip 847 {
}
movieClip 849 {
}
movieClip 850 {
}
movieClip 851 {
}
movieClip 853 perk7 {
}
movieClip 854 perkBtn7 {
}
movieClip 856 {
}
movieClip 858 perk6 {
}
movieClip 859 perkBtn6 {
}
movieClip 863 {
}
movieClip 864 {
}
movieClip 866 perk5 {
}
movieClip 867 perkBtn5 {
}
movieClip 871 {
}
movieClip 872 {
}
movieClip 873 {
}
movieClip 875 perk4 {
}
movieClip 876 perkBtn4 {
}
movieClip 879 {
}
movieClip 880 {
}
movieClip 882 perk3 {
}
movieClip 883 perkBtn3 {
}
movieClip 886 {
}
movieClip 887 {
}
movieClip 889 perk2 {
}
movieClip 890 perkBtn2 {
}
movieClip 892 {
}
movieClip 894 perk1 {
}
movieClip 895 perkBtn1 {
}
movieClip 898 {
}
movieClip 900 Wings {
}
movieClip 902 Stockings {
}
movieClip 904 Pubes (Groin) {
}
movieClip 906 Lighting {
}
movieClip 908 Anthro Mode {
}
movieClip 914 {
}
movieClip 919 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 1);
}
}
movieClip 920 Horseshoes {
}
movieClip 922 Hairbow {
}
movieClip 924 Futa Mode {
}
movieClip 926 Mirror Scene {
}
movieClip 928 Eyewear {
}
movieClip 930 example {
}
movieClip 932 Crotch Boobs {
}
movieClip 934 Corset {
}
movieClip 936 Neck Items {
}
movieClip 938 Bra {
}
movieClip 940 Blush {
}
movieClip 942 Blindfold {
}
movieClip 944 Ballgag {
}
movieClip 947 {
}
movieClip 949 {
}
movieClip 950 {
}
movieClip 951 nodeTopReg {
}
movieClip 954 {
}
movieClip 957 {
}
movieClip 960 {
}
movieClip 963 {
}
movieClip 964 {
frame 2 {
if (_parent.TileType == undefined || _parent.TileType == NaN || _parent.TileType == '') {
stop();
} else {
gotoAndStop(_parent.TileType);
}
}
}
movieClip 965 {
}
movieClip 967 {
}
movieClip 969 {
}
movieClip 970 {
frame 1 {
stop();
}
frame 61 {
gotoAndPlay('loop');
}
}
movieClip 973 {
}
movieClip 974 {
frame 1 {
stop();
}
frame 40 {
gotoAndPlay(2);
}
}
movieClip 976 {
}
movieClip 983 {
frame 1 {
stop();
}
}
movieClip 984 node {
instance btnNodeSelect of movieClip 983 {
onClipEvent (rollOver) {
if (_root.buildPlacement == 'remove') {
this.gotoAndStop(6);
} else {
if (_parent.Catalog != -1) {
this.gotoAndStop(2);
} else {
this.gotoAndStop(5);
}
}
}
onClipEvent (release) {
if (_root.buildPlacement == 'remove') {
this.gotoAndStop(6);
} else {
if (_parent.Catalog != -1) {
this.gotoAndStop(2);
} else {
this.gotoAndStop(5);
}
}
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
}
movieClip 987 {
}
movieClip 988 leChipWin {
}
movieClip 990 {
}
movieClip 992 leChip {
}
movieClip 994 {
}
movieClip 996 favor6 {
}
movieClip 997 favorBtn6 {
}
movieClip 999 {
}
movieClip 1001 favor5 {
}
movieClip 1002 favorBtn5 {
}
movieClip 1004 favor4 {
}
movieClip 1005 favorBtn4 {
}
movieClip 1007 {
}
movieClip 1009 favor3 {
}
movieClip 1010 favorBtn3 {
}
movieClip 1012 favor2 {
}
movieClip 1013 favorBtn2 {
}
movieClip 1015 {
}
movieClip 1016 {
}
movieClip 1018 favor1 {
}
movieClip 1019 favorBtn1 {
}
movieClip 1022 {
}
movieClip 1025 {
}
movieClip 1028 {
}
movieClip 1031 {
}
movieClip 1034 {
}
movieClip 1037 {
}
movieClip 1040 {
}
movieClip 1043 {
}
movieClip 1046 {
}
movieClip 1049 {
}
movieClip 1052 {
}
movieClip 1054 {
}
movieClip 1056 {
}
movieClip 1057 StructureNaturalTrees {
frame 1 {
stop();
}
}
movieClip 1064 {
}
movieClip 1066 {
}
movieClip 1068 {
}
movieClip 1070 {
}
movieClip 1072 StructureLibrary {
frame 1 {
stop();
}
}
movieClip 1075 {
}
movieClip 1078 {
}
movieClip 1081 {
}
movieClip 1084 {
}
movieClip 1087 StructureMine {
frame 1 {
stop();
}
}
movieClip 1089 quirk1 {
}
movieClip 1091 snapIcon {
}
movieClip 1094 {
}
movieClip 1097 {
}
movieClip 1100 {
}
movieClip 1103 {
}
movieClip 1104 StructureHouseCloud {
frame 1 {
stop();
}
}
movieClip 1107 {
}
movieClip 1110 StructureKeep {
frame 1 {
stop();
}
}
movieClip 1113 {
}
movieClip 1116 {
}
movieClip 1119 {
}
movieClip 1122 StructureAcademy {
frame 1 {
stop();
}
}
movieClip 1127 {
frame 1 {
if (_root.ShieldLevel >= 100) {
gotoAndPlay(20);
}
}
frame 19 {
if (_root.ShieldLevel < 100) {
gotoAndPlay(1);
} else {
gotoAndPlay(20);
}
}
frame 80 {
gotoAndPlay(20);
}
}
movieClip 1130 {
}
movieClip 1133 {
}
movieClip 1134 StructureShieldGen {
frame 1 {
stop();
}
}
movieClip 1137 {
}
movieClip 1140 {
}
movieClip 1141 StructureArmory {
frame 1 {
stop();
}
}
movieClip 1145 {
}
movieClip 1148 {
}
movieClip 1149 StructureTreeHouse {
frame 1 {
stop();
}
}
movieClip 1154 {
}
movieClip 1157 {
}
movieClip 1160 {
}
movieClip 1161 StructurePowerStation {
frame 1 {
stop();
}
}
movieClip 1164 {
}
movieClip 1167 {
}
movieClip 1170 {
}
movieClip 1173 {
}
movieClip 1174 StructureFarm {
frame 1 {
stop();
}
}
movieClip 1177 {
}
movieClip 1182 {
}
movieClip 1185 {
}
movieClip 1188 {
}
movieClip 1191 {
}
movieClip 1194 {
}
movieClip 1195 {
}
movieClip 1196 {
frame 1 {
stop();
}
}
movieClip 1201 {
}
movieClip 1204 {
}
movieClip 1206 {
}
movieClip 1209 {
}
movieClip 1212 {
}
movieClip 1214 {
}
movieClip 1217 {
}
movieClip 1220 {
}
movieClip 1221 StructureLab {
frame 1 {
stop();
}
}
movieClip 1224 {
}
movieClip 1227 {
}
movieClip 1231 {
}
movieClip 1232 {
}
movieClip 1233 {
}
movieClip 1236 {
}
movieClip 1237 {
instance timer of movieClip 1236 {
onClipEvent (enterFrame) {
if (_root.gamePaused == false && _root.onWildMap == false) {
a = _parent._parent._parent._parent;
this.gotoAndStop(a.buildProgressPercent + 1);
this.progressAnim.play();
if (_root.edictIndustrialActive == 3) {
a.buildProgress += 0.083333;
} else {
a.buildProgress += 0.041667;
}
a.buildProgressPercent = int(a.buildProgress / a.buildTime * 0.01);
if (a.buildProgressPercent >= 100) {
--_root.strCount[a.Catalog][a.ModeInt];
a.Name = _root.buildList[a.Catalog][0];
a.Mode = _root.modeList[a.Catalog][0][0];
a.ModeInt = 0;
if (_root.modeList[a.Catalog][1][0] != NaN && a.Catalog != 8) {
a.ModesEnabled = true;
} else {
a.ModesEnabled = false;
}
if (_root.modeList[a.Catalog][3][0] != NaN) {
a.UpgradesEnabled = true;
} else {
a.UpgradesEnabled = false;
}
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
if (_root.nodeSelected == _parent._parent._parent._parent) {
_root.selectStructure(_parent._parent._parent._parent);
}
if (a.Catalog == 6 && _root.tiersUnlocked[1] == false) {
_root.UnlockTier2();
} else {
if ((a.Catalog == 11 || a.Catalog == 22) && _root.tiersUnlocked[2] == false) {
_root.UnlockTier3();
}
}
++_root.strCount[a.Catalog][a.ModeInt];
_root.findBuffers(a, 1);
_root.adviserHint();
_root.displayModel(a, false);
_parent._parent.gotoAndStop(1);
}
} else {
this.progressAnim.stop();
this.stop();
}
}
}
}
movieClip 1238 StructureRubble {
frame 1 {
stop();
}
}
movieClip 1241 {
frame 2 {
stop();
}
}
movieClip 1244 {
}
movieClip 1247 {
}
movieClip 1250 {
}
movieClip 1253 {
}
movieClip 1256 {
}
movieClip 1259 {
}
movieClip 1262 {
}
movieClip 1265 {
}
movieClip 1268 {
}
movieClip 1269 StructureTownHall {
frame 1 {
stop();
}
}
movieClip 1273 {
}
movieClip 1275 {
}
movieClip 1278 {
}
movieClip 1280 {
}
movieClip 1283 {
}
movieClip 1285 {
}
movieClip 1288 {
}
movieClip 1290 {
}
movieClip 1294 StructureStore {
frame 1 {
stop();
}
}
movieClip 1296 {
}
movieClip 1297 Background {
}
movieClip 1299 Hot Swap {
}
movieClip 1301 Longsword {
}
movieClip 1304 {
}
movieClip 1307 {
}
movieClip 1310 {
}
movieClip 1313 {
}
movieClip 1314 StructureHouse {
frame 1 {
stop();
}
}
movieClip 1317 {
}
movieClip 1320 {
}
movieClip 1323 {
}
movieClip 1326 StructureTavern {
frame 1 {
stop();
}
}
movieClip 1332 BoundingBox {
}
movieClip 1334 BrdrShdw {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'shadowColor');
}
}
movieClip 1336 BrdrFace {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'buttonColor');
}
}
movieClip 1337 SimpleButtonDown {
}
movieClip 1339 BrdrBlk {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'borderColor');
}
}
movieClip 1341 BrdrHilght {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'highlightColor');
}
}
movieClip 1342 SimpleButtonIn {
}
movieClip 1343 SimpleButtonUp {
}
movieClip 1344 Defaults {
#initclip
Object.registerClass('Defaults', mx.skins.halo.Defaults);
#endinitclip
}
movieClip 1345 UIObjectExtensions {
#initclip
Object.registerClass('UIObjectExtensions', mx.core.ext.UIObjectExtensions);
#endinitclip
}
movieClip 1346 UIObject {
#initclip
Object.registerClass('UIObject', mx.core.UIObject);
#endinitclip
frame 1 {
stop();
}
}
button 1349 {
on (keyPress '<Tab>') {
this.tabHandler();
}
}
movieClip 1350 {
#initclip
Object.registerClass('FocusManager', mx.managers.FocusManager);
if (_root.focusManager == undefined) {
_root.createClassObject(mx.managers.FocusManager, 'focusManager', mx.managers.DepthManager.highestDepth--);
}
#endinitclip
frame 1 {
}
}
movieClip 1351 FocusRect {
#initclip
Object.registerClass('FocusRect', mx.skins.halo.FocusRect);
#endinitclip
}
movieClip 1352 FocusManager {
#initclip
Object.registerClass('FocusManager', mx.managers.FocusManager);
#endinitclip
frame 1 {
stop();
}
}
movieClip 1353 UIComponentExtensions {
#initclip
Object.registerClass('UIComponentExtensions', mx.core.ext.UIComponentExtensions);
#endinitclip
}
movieClip 1354 UIComponent {
#initclip
Object.registerClass('UIComponent', mx.core.UIComponent);
#endinitclip
frame 1 {
stop();
}
}
movieClip 1355 SimpleButton {
#initclip
Object.registerClass('SimpleButton', mx.controls.SimpleButton);
#endinitclip
frame 1 {
stop();
}
}
movieClip 1356 Border {
#initclip
Object.registerClass('Border', mx.skins.Border);
#endinitclip
frame 1 {
stop();
}
}
movieClip 1357 RectBorder {
#initclip
mx.skins.SkinElement.registerElement(mx.skins.RectBorder.symbolName, Object(mx.skins.RectBorder));
Object.registerClass('RectBorder', mx.skins.halo.RectBorder);
#endinitclip
frame 1 {
stop();
}
}
movieClip 1358 ButtonSkin {
#initclip
Object.registerClass('ButtonSkin', mx.skins.halo.ButtonSkin);
#endinitclip
}
movieClip 1359 Button {
#initclip
Object.registerClass('Button', mx.controls.Button);
#endinitclip
frame 1 {
stop();
}
instance of movieClip 1355 SimpleButton {
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
}
movieClip 1360 CustomBorder {
#initclip
Object.registerClass('CustomBorder', mx.skins.CustomBorder);
mx.skins.SkinElement.registerElement('CustomBorder', mx.skins.CustomBorder);
#endinitclip
frame 1 {
}
}
movieClip 1363 ScrollTrack {
}
movieClip 1370 ScrollDownArrowDisabled {
}
movieClip 1372 ScrollThemeColor1 {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'themeColor');
}
}
movieClip 1374 ScrollThemeColor2 {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'themeColor');
}
}
movieClip 1375 ScrollDownArrowDown {
}
movieClip 1376 ScrollDownArrowOver {
}
movieClip 1377 ScrollDownArrowUp {
}
movieClip 1383 ScrollThumbBottomDisabled {
}
movieClip 1385 ThumbThemeColor1 {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'themeColor');
}
}
movieClip 1387 ThumbThemeColor3 {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'themeColor');
}
}
movieClip 1388 ScrollThumbBottomDown {
}
movieClip 1389 ScrollThumbBottomOver {
}
movieClip 1390 ScrollThumbBottomUp {
}
movieClip 1392 ScrollThumbGripDisabled {
}
movieClip 1394 ThumbThemeColor2 {
frame 1 {
mx.skins.ColoredSkinElement.setColorStyle(this, 'themeColor');
}
}
movieClip 1395 ScrollThumbGripDown {
}
movieClip 1396 ScrollThumbGripOver {
}
movieClip 1397 ScrollThumbGripUp {
}
movieClip 1399 ScrollThumbMiddleDisabled {
}
movieClip 1400 ScrollThumbMiddleDown {
}
movieClip 1401 {
}
movieClip 1403 {
}
movieClip 1404 ScrollThumbMiddleOver {
}
movieClip 1405 ScrollThumbMiddleUp {
}
movieClip 1406 ScrollThumbTopDisabled {
}
movieClip 1407 ScrollThumbTopDown {
}
movieClip 1408 ScrollThumbTopOver {
}
movieClip 1409 ScrollThumbTopUp {
}
movieClip 1410 ScrollTrackDisabled {
}
movieClip 1411 ScrollUpArrowDisabled {
}
movieClip 1412 ScrollUpArrowDown {
}
movieClip 1413 ScrollUpArrowOver {
}
movieClip 1414 ScrollUpArrowUp {
}
movieClip 1415 BtnDownArrow {
#initclip
Object.registerClass('BtnDownArrow', mx.controls.SimpleButton);
#endinitclip
}
movieClip 1416 BtnUpArrow {
#initclip
Object.registerClass('BtnUpArrow', mx.controls.SimpleButton);
#endinitclip
}
movieClip 1417 ScrollBarAssets {
}
movieClip 1418 VScrollBar {
#initclip
Object.registerClass('VScrollBar', mx.controls.VScrollBar);
#endinitclip
frame 1 {
stop();
}
instance of movieClip 1359 Button {
onClipEvent (initialize) {
icon = '';
label = 'Button';
labelPlacement = 'right';
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
instance of movieClip 1355 SimpleButton {
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
}
movieClip 1419 HScrollBar {
#initclip
Object.registerClass('HScrollBar', mx.controls.HScrollBar);
#endinitclip
frame 1 {
stop();
}
instance of movieClip 1359 Button {
onClipEvent (initialize) {
icon = '';
label = 'Button';
labelPlacement = 'right';
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
instance of movieClip 1355 SimpleButton {
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
}
movieClip 1420 UIScrollBar {
#initclip
Object.registerClass('UIScrollBar', mx.controls.UIScrollBar);
#endinitclip
frame 1 {
stop();
}
instance of movieClip 1418 VScrollBar {
onClipEvent (initialize) {
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
instance of movieClip 1419 HScrollBar {
onClipEvent (initialize) {
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
}
}
frame 1 {
function endGameSession() {
gamePaused = true;
clearInterval(cycleTimer);
clearInterval(cycleTimerBig);
}
function gotoMySite() {
getURL('http://www.mittsies.com', '_blank');
}
function deadClick() {}
function menuHandler() {
if (_root.deselectRightClick == true) {
_root.deselectAll();
}
}
stop();
stopAllSounds();
_quality = 'MEDIUM';
var percentloaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
var loadint = int(percentloaded);
randRange = function (min, max) {
var v1 = Math.floor(Math.random() * (max - min + 1)) + min;
return v1;
};
var myMenu = new ContextMenu();
myMenu.hideBuiltInItems();
myMenu.builtInItems.quality = true;
myMenu.builtInItems.rewind = true;
myMenu.builtInItems.zoom = false;
var copyrightNotice = new ContextMenuItem('© Mittsies 2016', deadClick);
var gotoMySite = new ContextMenuItem('Visit www.Mittsies.com', gotoMySite);
myMenu.customItems.push(gotoMySite);
copyrightNotice.enabled = false;
myMenu.customItems.push(copyrightNotice);
myMenu.onSelect = menuHandler;
_root.menu = myMenu;
var AlreadyWatchedIntro = false;
var hideCustomCursor = true;
var hotbarMode = new Array(49, 50, 51);
var hotbarUpgrade = new Array(85, 0);
var hotbarMenu = new Array(112, 113, 114, 115, 116, 117, NaN, NaN, 120, 121);
var hotbarKeysAlpha = new Array('T', 'R', 'L', 'E', 'G', 'Q', 'V', 'B', 'F', 'H', 'P', 'X', 'O', 'M', 'Y', 'C', 'K', 'J', 'I');
var hotbarKeys = new Array(20);
i = 0;
while (i <= 20) {
hotbarKeys[i] = hotbarKeysAlpha[i].charCodeAt(0);
++i;
}
var scrolltemp;
var keyListener = new Object();
keyListener.onKeyDown = function () {
scrolltemp = _root.hudMSG.messages.scroll;
if (Key.getCode() == 32) {
_root.pauseGame();
_root.hudMSG.messages.scroll = scrolltemp;
}
if (Key.getCode() == 27) {
_root.deselectAll();
}
if (Key.getCode() == 17) {
if (_root.showingExtraInfo == false) {
_root.showingExtraInfo = true;
} else {
_root.showingExtraInfo = false;
}
_root.showExtraInfo();
}
if (Key.getCode() == 82) {
_root.showRadius(_root.nodeSelected, _root.nodeSelected.Catalog);
}
hk = 0;
while (hk <= 18) {
if (Key.getCode() == hotbarKeys[hk]) {
if (_root.nodeSelected != NaN && _root.nodeSelected.ModesEnabled == true) {
} else {
if (hk >= 7 && hk < 14 && tiersUnlocked[1] == false || hk >= 14 && hk < 21 && tiersUnlocked[2] == false) {
} else {
if (_root.nodeHighlighted.Catalog == -1) {
_root.hudDynamic.gotoAndStop('buildSelect');
_root.buildCatalog = hk;
_root.showRadius(_root.nodeHighlighted, _root.buildCatalog);
_root.buildPlacement = _root.buildList[_root.buildCatalog][0];
k = 0;
while (k < 6) {
if (k < 4) {
_root.cost[k] = buildList[_root.buildCatalog][k + 1];
} else {
_root.cost[k] = buildList[_root.buildCatalog][k + 5];
}
++k;
}
displayModel(_root.nodeHighlighted, true);
}
}
}
}
++hk;
}
hk = 0;
while (hk < 3) {
if (Key.getCode() == hotbarMode[hk]) {
if (_root.nodeSelected != NaN && _root.nodeSelected.ModesEnabled == true) {
if (hk <= 3) {
_root.changeMode(hk, _root.nodeSelected);
}
}
}
++hk;
}
if (Key.getCode() == hotbarUpgrade[0]) {
_root.UpgradeMode(_root.nodeSelected, false);
}
hk = 0;
while (hk < 15) {
if (Key.getCode() == hotbarMenu[hk]) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = hk + 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == hk + 2) {
_root.deselectAll();
} else {
_root.hudInfoToggle = hk + 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
++hk;
}
};
var mouseListener = new Object();
mouseListener.onMouseWheel = function (delta) {
if (!_root.hudMSG.hitTest(_xmouse, _ymouse, false)) {
if (delta < 0 && _root.world.vcam._yscale < maxZoom || delta > 0 && _root.world.vcam._yscale > minZoom) {
Zoomy(delta * -5);
}
}
};
if (!keyheard) {
Key.addListener(keyListener);
Mouse.addListener(mouseListener);
keyheard = true;
}
}
movieClip 1452 {
}
movieClip 1454 {
}
movieClip 1456 {
}
movieClip 1457 {
instance of movieClip 1456 {
onClipEvent (release) {
getURL('http://www.mittsies.com', '_blank');
}
}
}
movieClip 1461 {
}
movieClip 1463 {
}
movieClip 1466 {
frame 10 {
stop();
}
}
movieClip 1467 {
instance loadan of movieClip 1461 {
onClipEvent (enterFrame) {
_root.percentloaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.percentloadedDisplay = int(_root.percentloaded);
if (_root.percentloaded == 100) {
_root.gotoAndStop('splash');
}
_root.loadan.loadan.gotoAndStop(_root.percentloadedDisplay);
}
}
instance of movieClip 1463 {
onClipEvent (enterFrame) {
if (_root.percentloaded > 80) {
this._alpha = 25 + _root.percentloaded * 0.75 - (_root.percentloaded - 80) * 6;
} else {
this._alpha = 100;
}
}
}
}
movieClip 1470 {
}
movieClip 1471 {
}
instance cursor of movieClip 1471 {
onClipEvent (enterFrame) {
this._x = _root._xmouse;
this._y = _root._ymouse;
if (_root.hideCustomCursor == false) {
Mouse.hide();
_root.changeColor('_root.cursor.flowerColor', _root.flowerPaint);
_root.cursor.cursor._alpha = 100;
_root.cursor.cursorType._alpha = 100;
if (_root.hideCustomCursor == true) {
_root.cursor.flowerColor._alpha = 100;
_root.cursor.cursorType.gotoAndStop('flower');
} else {
_root.cursor.flowerColor._alpha = 0;
}
} else {
Mouse.show();
_root.cursor.cursor._alpha = 0;
_root.cursor.cursorType._alpha = 0;
_root.cursor.flowerColor._alpha = 0;
}
}
}
movieClip 1327 __Packages.mx.core.UIObject {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.core) {
_global.mx.core = new Object();
}
if (!_global.mx.core.UIObject) {
var v1 = function () {
super();
this.constructObject();
};
mx.core.UIObject = v1;
var v2 = new MovieClip();
mx.core.UIObject.prototype = v2;
v2.__get__width = function () {
return this._width;
};
v2.__get__height = function () {
return this._height;
};
v2.__get__left = function () {
return this._x;
};
v2.__get__x = function () {
return this._x;
};
v2.__get__top = function () {
return this._y;
};
v2.__get__y = function () {
return this._y;
};
v2.__get__right = function () {
return this._parent.width - (this._x + this.__get__width());
};
v2.__get__bottom = function () {
return this._parent.height - (this._y + this.__get__height());
};
v2.getMinHeight = function (Void) {
return this._minHeight;
};
v2.setMinHeight = function (h) {
this._minHeight = h;
};
v2.__get__minHeight = function () {
return this.getMinHeight();
};
v2.__set__minHeight = function (h) {
this.setMinHeight(h);
return this.__get__minHeight();
};
v2.getMinWidth = function (Void) {
return this._minWidth;
};
v2.setMinWidth = function (w) {
this._minWidth = w;
};
v2.__get__minWidth = function () {
return this.getMinWidth();
};
v2.__set__minWidth = function (w) {
this.setMinWidth(w);
return this.__get__minWidth();
};
v2.setVisible = function (x, noEvent) {
if (x != this._visible) {
this._visible = x;
if (noEvent != true) {
this.dispatchEvent({'type': x ? 'reveal' : 'hide'});
}
}
};
v2.__get__visible = function () {
return this._visible;
};
v2.__set__visible = function (x) {
this.setVisible(x, false);
return this.__get__visible();
};
v2.__get__scaleX = function () {
return this._xscale;
};
v2.__set__scaleX = function (x) {
this._xscale = x;
return this.__get__scaleX();
};
v2.__get__scaleY = function () {
return this._yscale;
};
v2.__set__scaleY = function (y) {
this._yscale = y;
return this.__get__scaleY();
};
v2.doLater = function (obj, fn) {
if (this.methodTable == undefined) {
this.methodTable = new Array();
}
this.methodTable.push({'obj': obj, 'fn': fn});
this.onEnterFrame = this.doLaterDispatcher;
};
v2.doLaterDispatcher = function (Void) {
delete this.onEnterFrame;
if (this.invalidateFlag) {
this.redraw();
}
var v3 = this.methodTable;
this.methodTable = new Array();
if (v3.length > 0) {
var v2;
v2 = v3.shift();
while (v2 != undefined) {
v2.obj[v2.fn]();
}
}
};
v2.cancelAllDoLaters = function (Void) {
delete this.onEnterFrame;
this.methodTable = new Array();
};
v2.invalidate = function (Void) {
this.invalidateFlag = true;
this.onEnterFrame = this.doLaterDispatcher;
};
v2.invalidateStyle = function (Void) {
this.invalidate();
};
v2.redraw = function (bAlways) {
if (this.invalidateFlag || bAlways) {
this.invalidateFlag = false;
var v2;
for (v2 in this.tfList) {
this.tfList[v2].draw();
}
this.draw();
this.dispatchEvent({'type': 'draw'});
}
};
v2.draw = function (Void) {};
v2.move = function (x, y, noEvent) {
var v3 = this._x;
var v2 = this._y;
this._x = x;
this._y = y;
if (noEvent != true) {
this.dispatchEvent({'type': 'move', 'oldX': v3, 'oldY': v2});
}
};
v2.setSize = function (w, h, noEvent) {
var v2 = this.__width;
var v3 = this.__height;
this.__width = w;
this.__height = h;
this.size();
if (noEvent != true) {
this.dispatchEvent({'type': 'resize', 'oldWidth': v2, 'oldHeight': v3});
}
};
v2.size = function (Void) {
this._width = this.__width;
this._height = this.__height;
};
v2.drawRect = function (x1, y1, x2, y2) {
this.moveTo(x1, y1);
this.lineTo(x2, y1);
this.lineTo(x2, y2);
this.lineTo(x1, y2);
this.lineTo(x1, y1);
};
v2.createLabel = function (name, depth, text) {
this.createTextField(name, depth, 0, 0, 0, 0);
var v2 = this[name];
v2._color = mx.core.UIObject.textColorList;
v2._visible = false;
v2.__text = text;
if (this.tfList == undefined) {
this.tfList = new Object();
}
this.tfList[name] = v2;
v2.invalidateStyle();
this.invalidate();
v2.styleName = this;
return v2;
};
v2.createObject = function (linkageName, id, depth, initobj) {
return this.attachMovie(linkageName, id, depth, initobj);
};
v2.createClassObject = function (className, id, depth, initobj) {
var v3 = className.symbolName == undefined;
if (v3) {
Object.registerClass(className.symbolOwner.symbolName, className);
}
var v4 = this.createObject(className.symbolOwner.symbolName, id, depth, initobj);
if (v3) {
Object.registerClass(className.symbolOwner.symbolName, className.symbolOwner);
}
return v4;
};
v2.createEmptyObject = function (id, depth) {
return this.createClassObject(mx.core.UIObject, id, depth);
};
v2.destroyObject = function (id) {
var v2 = this[id];
if (v2.getDepth() < 0) {
var v4 = this.buildDepthTable();
var v5 = this.findNextAvailableDepth(0, v4, 'up');
var v3 = v5;
v2.swapDepths(v3);
}
v2.removeMovieClip();
delete this[id];
};
v2.getSkinIDName = function (tag) {
return this.idNames[tag];
};
v2.setSkin = function (tag, linkageName, initObj) {
if (_global.skinRegistry[linkageName] == undefined) {
mx.skins.SkinElement.registerElement(linkageName, mx.skins.SkinElement);
}
return this.createObject(linkageName, this.getSkinIDName(tag), tag, initObj);
};
v2.createSkin = function (tag) {
var v2 = this.getSkinIDName(tag);
this.createEmptyObject(v2, tag);
return this[v2];
};
v2.createChildren = function (Void) {};
v2._createChildren = function (Void) {
this.createChildren();
this.childrenCreated = true;
};
v2.constructObject = function (Void) {
if (this._name == undefined) {
return undefined;
}
this.init();
this._createChildren();
this.createAccessibilityImplementation();
this._endInit();
if (this.validateNow) {
this.redraw(true);
} else {
this.invalidate();
}
};
v2.initFromClipParameters = function (Void) {
var v4 = false;
var v2;
for (v2 in this.clipParameters) {
if (this.hasOwnProperty(v2)) {
v4 = true;
this['def_' + v2] = this[v2];
delete this[v2];
}
}
if (v4) {
for (v2 in this.clipParameters) {
var v3 = this['def_' + v2];
if (v3 != undefined) {
this[v2] = v3;
}
}
}
};
v2.init = function (Void) {
this.__width = this._width;
this.__height = this._height;
if (this.initProperties == undefined) {
this.initFromClipParameters();
} else {
this.initProperties();
}
if (_global.cascadingStyles == true) {
this.stylecache = new Object();
}
};
v2.getClassStyleDeclaration = function (Void) {
var v4 = this;
var v3 = this.className;
while (v3 != undefined) {
if (this.ignoreClassStyleDeclaration[v3] == undefined) {
if (_global.styles[v3] != undefined) {
return _global.styles[v3];
}
}
v4 = v4.__proto__;
v3 = v4.className;
}
};
v2.setColor = function (color) {};
v2.__getTextFormat = function (tf, bAll) {
var v8 = this.stylecache.tf;
if (v8 != undefined) {
var v3;
for (v3 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || mx.styles.StyleManager.TextFormatStyleProps[v3]) {
if (tf[v3] == undefined) {
tf[v3] = v8[v3];
}
}
}
return false;
}
var v6 = false;
for (v3 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || mx.styles.StyleManager.TextFormatStyleProps[v3]) {
if (tf[v3] == undefined) {
var v5 = this._tf[v3];
if (v5 != undefined) {
tf[v3] = v5;
} else {
if (v3 == 'font' && this.fontFamily != undefined) {
tf[v3] = this.fontFamily;
} else {
if (v3 == 'size' && this.fontSize != undefined) {
tf[v3] = this.fontSize;
} else {
if (v3 == 'color' && this.color != undefined) {
tf[v3] = this.color;
} else {
if (v3 == 'leftMargin' && this.marginLeft != undefined) {
tf[v3] = this.marginLeft;
} else {
if (v3 == 'rightMargin' && this.marginRight != undefined) {
tf[v3] = this.marginRight;
} else {
if (v3 == 'italic' && this.fontStyle != undefined) {
tf[v3] = this.fontStyle == v3;
} else {
if (v3 == 'bold' && this.fontWeight != undefined) {
tf[v3] = this.fontWeight == v3;
} else {
if (v3 == 'align' && this.textAlign != undefined) {
tf[v3] = this.textAlign;
} else {
if (v3 == 'indent' && this.textIndent != undefined) {
tf[v3] = this.textIndent;
} else {
if (v3 == 'underline' && this.textDecoration != undefined) {
tf[v3] = this.textDecoration == v3;
} else {
if (v3 == 'embedFonts' && this.embedFonts != undefined) {
tf[v3] = this.embedFonts;
} else {
v6 = true;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
if (v6) {
var v9 = this.styleName;
if (v9 != undefined) {
if (typeof v9 != 'string') {
v6 = v9.__getTextFormat(tf, true, this);
} else {
if (_global.styles[v9] != undefined) {
v6 = _global.styles[v9].__getTextFormat(tf, true, this);
}
}
}
}
if (v6) {
var v10 = this.getClassStyleDeclaration();
if (v10 != undefined) {
v6 = v10.__getTextFormat(tf, true, this);
}
}
if (v6) {
if (_global.cascadingStyles) {
if (this._parent != undefined) {
v6 = this._parent.__getTextFormat(tf, false);
}
}
}
if (v6) {
v6 = _global.style.__getTextFormat(tf, true, this);
}
return v6;
};
v2._getTextFormat = function (Void) {
var v2 = this.stylecache.tf;
if (v2 != undefined) {
return v2;
}
v2 = new TextFormat();
this.__getTextFormat(v2, true);
this.stylecache.tf = v2;
if (this.enabled == false) {
var v3 = this.getStyle('disabledColor');
v2.color = v3;
}
return v2;
};
v2.getStyleName = function (Void) {
var v2 = this.styleName;
if (v2 != undefined) {
if (typeof v2 != 'string') {
return v2.getStyleName();
} else {
return v2;
}
}
if (this._parent != undefined) {
return this._parent.getStyleName();
} else {
return undefined;
}
};
v2.getStyle = function (styleProp) {
var v3;
++_global.getStyleCounter;
if (this[styleProp] != undefined) {
return this[styleProp];
}
var v6 = this.styleName;
if (v6 != undefined) {
if (typeof v6 != 'string') {
v3 = v6.getStyle(styleProp);
} else {
var v7 = _global.styles[v6];
v3 = v7.getStyle(styleProp);
}
}
if (v3 != undefined) {
return v3;
}
v7 = this.getClassStyleDeclaration();
if (v7 != undefined) {
v3 = v7[styleProp];
}
if (v3 != undefined) {
return v3;
}
if (_global.cascadingStyles) {
if (mx.styles.StyleManager.isInheritingStyle(styleProp) || mx.styles.StyleManager.isColorStyle(styleProp)) {
var v5 = this.stylecache;
if (v5 != undefined) {
if (v5[styleProp] != undefined) {
return v5[styleProp];
}
}
if (this._parent != undefined) {
v3 = this._parent.getStyle(styleProp);
} else {
v3 = _global.style[styleProp];
}
if (v5 != undefined) {
v5[styleProp] = v3;
}
return v3;
}
}
if (v3 == undefined) {
v3 = _global.style[styleProp];
}
return v3;
};
v1.mergeClipParameters = function (o, p) {
for (var v3 in p) {
o[v3] = p[v3];
}
return true;
};
v1.symbolName = 'UIObject';
v1.symbolOwner = mx.core.UIObject;
v1.version = '2.0.2.126';
v1.textColorList = {'color': 1, 'disabledColor': 1};
v2.invalidateFlag = false;
v2.lineWidth = 1;
v2.lineColor = 0;
v2.tabEnabled = false;
v2.clipParameters = {'visible': 1, 'minHeight': 1, 'minWidth': 1, 'maxHeight': 1, 'maxWidth': 1, 'preferredHeight': 1, 'preferredWidth': 1};
v2.addProperty('bottom', v2.__get__bottom, function () {});
v2.addProperty('height', v2.__get__height, function () {});
v2.addProperty('left', v2.__get__left, function () {});
v2.addProperty('minHeight', v2.__get__minHeight, v2.__set__minHeight);
v2.addProperty('minWidth', v2.__get__minWidth, v2.__set__minWidth);
v2.addProperty('right', v2.__get__right, function () {});
v2.addProperty('scaleX', v2.__get__scaleX, v2.__set__scaleX);
v2.addProperty('scaleY', v2.__get__scaleY, v2.__set__scaleY);
v2.addProperty('top', v2.__get__top, function () {});
v2.addProperty('visible', v2.__get__visible, v2.__set__visible);
v2.addProperty('width', v2.__get__width, function () {});
v2.addProperty('x', v2.__get__x, function () {});
v2.addProperty('y', v2.__get__y, function () {});
ASSetPropFlags(mx.core.UIObject.prototype, null, 1);
}
#endinitclip
}
movieClip 1328 __Packages.mx.core.UIComponent {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.core) {
_global.mx.core = new Object();
}
if (!_global.mx.core.UIComponent) {
var v1 = function () {
super();
};
mx.core.UIComponent = v1;
var v2 = new mx.core.UIObject();
mx.core.UIComponent.prototype = v2;
v2.__get__width = function () {
return this.__width;
};
v2.__get__height = function () {
return this.__height;
};
v2.setVisible = function (x, noEvent) {
super.setVisible(x, noEvent);
};
v2.enabledChanged = function (id, oldValue, newValue) {
this.setEnabled(newValue);
this.invalidate();
delete this.stylecache.tf;
return newValue;
};
v2.setEnabled = function (enabled) {
this.invalidate();
};
v2.getFocus = function () {
var selFocus = Selection.getFocus();
return (selFocus === null) ? null : eval(selFocus);
};
v2.setFocus = function () {
Selection.setFocus(this);
};
v2.getFocusManager = function () {
var v2 = this;
while (v2 != undefined) {
if (v2.focusManager != undefined) {
return v2.focusManager;
}
v2 = v2._parent;
}
return undefined;
};
v2.onKillFocus = function (newFocus) {
this.removeEventListener('keyDown', this);
this.removeEventListener('keyUp', this);
this.dispatchEvent({'type': 'focusOut'});
this.drawFocus(false);
};
v2.onSetFocus = function (oldFocus) {
this.addEventListener('keyDown', this);
this.addEventListener('keyUp', this);
this.dispatchEvent({'type': 'focusIn'});
if ((this.getFocusManager()).bDrawFocus != false) {
this.drawFocus(true);
}
};
v2.findFocusInChildren = function (o) {
if (o.focusTextField != undefined) {
return o.focusTextField;
}
if (o.tabEnabled == true) {
return o;
}
return undefined;
};
v2.findFocusFromObject = function (o) {
if (o.tabEnabled != true) {
if (o._parent == undefined) {
return undefined;
}
if (o._parent.tabEnabled == true) {
o = o._parent;
return o;
}
if (o._parent.tabChildren) {
o = this.findFocusInChildren(o._parent);
return o;
}
o = this.findFocusFromObject(o._parent);
}
return o;
};
v2.pressFocus = function () {
var v3 = this.findFocusFromObject(this);
var v2 = this.getFocus();
if (v3 != v2) {
v2.drawFocus(false);
if ((this.getFocusManager()).bDrawFocus != false) {
v3.drawFocus(true);
}
}
};
v2.releaseFocus = function () {
var v2 = this.findFocusFromObject(this);
if (v2 != this.getFocus()) {
v2.setFocus();
}
};
v2.isParent = function (o) {
while (o != undefined) {
if (o == this) {
return true;
}
o = o._parent;
}
return false;
};
v2.size = function () {};
v2.init = function () {
super.init();
this._xscale = 100;
this._yscale = 100;
this._focusrect = _global.useFocusRect == false;
this.watch('enabled', this.enabledChanged);
if (this.enabled == false) {
this.setEnabled(false);
}
};
v2.dispatchValueChangedEvent = function (value) {
this.dispatchEvent({'type': 'valueChanged', 'value': value});
};
v1.symbolName = 'UIComponent';
v1.symbolOwner = mx.core.UIComponent;
v1.version = '2.0.2.126';
v1.kStretch = 5000;
v2.focusEnabled = true;
v2.tabEnabled = true;
v2.origBorderStyles = {'themeColor': 16711680};
v2.clipParameters = {};
v1.mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.core.UIComponent.prototype.clipParameters, mx.core.UIObject.prototype.clipParameters);
v2.addProperty('height', v2.__get__height, function () {});
v2.addProperty('width', v2.__get__width, function () {});
ASSetPropFlags(mx.core.UIComponent.prototype, null, 1);
}
#endinitclip
}
movieClip 1329 __Packages.mx.controls.scrollClasses.ScrollBar {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.scrollClasses) {
_global.mx.controls.scrollClasses = new Object();
}
if (!_global.mx.controls.scrollClasses.ScrollBar) {
var v1 = function () {
super();
};
mx.controls.scrollClasses.ScrollBar = v1;
var v2 = new mx.core.UIComponent();
mx.controls.scrollClasses.ScrollBar.prototype = v2;
v2.__get__scrollPosition = function () {
return this._scrollPosition;
};
v2.__set__scrollPosition = function (pos) {
this._scrollPosition = pos;
if (this.isScrolling != true) {
pos = Math.min(pos, this.maxPos);
pos = Math.max(pos, this.minPos);
var v3 = (pos - this.minPos) * (this.scrollTrack_mc.height - this.scrollThumb_mc._height) / (this.maxPos - this.minPos) + this.scrollTrack_mc.top;
this.scrollThumb_mc.move(0, v3);
}
return this.__get__scrollPosition();
};
v2.__get__pageScrollSize = function () {
return this.largeScroll;
};
v2.__set__pageScrollSize = function (lScroll) {
this.largeScroll = lScroll;
return this.__get__pageScrollSize();
};
v2.__set__lineScrollSize = function (sScroll) {
this.smallScroll = sScroll;
return this.__get__lineScrollSize();
};
v2.__get__lineScrollSize = function () {
return this.smallScroll;
};
v2.__get__virtualHeight = function () {
return this.__height;
};
v2.init = function (Void) {
super.init();
this._scrollPosition = 0;
this.tabEnabled = false;
this.focusEnabled = false;
this.boundingBox_mc._visible = false;
this.boundingBox_mc._height = 0;
this.boundingBox_mc._width = 0;
};
v2.createChildren = function (Void) {
if (this.scrollTrack_mc == undefined) {
this.setSkin(mx.controls.scrollClasses.ScrollBar.skinIDTrack, this.scrollTrackName);
}
this.scrollTrack_mc.visible = false;
var v3 = new Object();
v3.enabled = false;
v3.preset = mx.controls.SimpleButton.falseDisabled;
v3.initProperties = 0;
v3.autoRepeat = true;
v3.tabEnabled = false;
var v2;
if (this.upArrow_mc == undefined) {
v2 = this.createButton(this.upArrowName, 'upArrow_mc', mx.controls.scrollClasses.ScrollBar.skinIDUpArrow, v3);
}
v2.buttonDownHandler = this.onUpArrow;
v2.clickHandler = this.onScrollChanged;
this._minHeight = v2.height;
this._minWidth = v2.width;
if (this.downArrow_mc == undefined) {
v2 = this.createButton(this.downArrowName, 'downArrow_mc', mx.controls.scrollClasses.ScrollBar.skinIDDownArrow, v3);
}
v2.buttonDownHandler = this.onDownArrow;
v2.clickHandler = this.onScrollChanged;
this._minHeight += v2.height;
};
v2.createButton = function (linkageName, id, skinID, o) {
if (skinID == mx.controls.scrollClasses.ScrollBar.skinIDUpArrow) {
o.falseUpSkin = this.upArrowUpName;
o.falseDownSkin = this.upArrowDownName;
o.falseOverSkin = this.upArrowOverName;
var v3 = this.createObject(linkageName, id, skinID, o);
this[id].visible = false;
this[id].useHandCursor = false;
return v3;
}
o.falseUpSkin = this.downArrowUpName;
o.falseDownSkin = this.downArrowDownName;
o.falseOverSkin = this.downArrowOverName;
var v3 = this.createObject(linkageName, id, skinID, o);
this[id].visible = false;
this[id].useHandCursor = false;
return v3;
};
v2.createThumb = function (Void) {
var v2 = new Object();
v2.validateNow = true;
v2.tabEnabled = false;
v2.leftSkin = this.thumbTopName;
v2.middleSkin = this.thumbMiddleName;
v2.rightSkin = this.thumbBottomName;
v2.gripSkin = this.thumbGripName;
this.createClassObject(mx.controls.scrollClasses.ScrollThumb, 'scrollThumb_mc', mx.controls.scrollClasses.ScrollBar.skinIDThumb, v2);
};
v2.setScrollProperties = function (pSize, mnPos, mxPos, ls) {
var v4;
var v2 = this.scrollTrack_mc;
this.pageSize = pSize;
this.largeScroll = (ls != undefined && ls > 0) ? ls : pSize;
this.minPos = Math.max(mnPos, 0);
this.maxPos = Math.max(mxPos, 0);
this._scrollPosition = Math.max(this.minPos, this._scrollPosition);
this._scrollPosition = Math.min(this.maxPos, this._scrollPosition);
if (this.maxPos - this.minPos > 0 && this.enabled) {
var v5 = this._scrollPosition;
if (!this.initializing) {
this.upArrow_mc.enabled = true;
this.downArrow_mc.enabled = true;
}
v2.onDragOver = this.startTrackScroller;
v2.onPress = v2.onDragOver;
v2.onRelease = this.releaseScrolling;
v2.stopScrolling = this.stopScrolling;
v2.onDragOut = v2.stopScrolling;
v2.onReleaseOutside = this.releaseScrolling;
v2.useHandCursor = false;
if (this.scrollThumb_mc == undefined) {
this.createThumb();
}
var v3 = this.scrollThumb_mc;
if (this.scrollTrackOverName.length > 0) {
v2.onRollOver = this.trackOver;
v2.onRollOut = this.trackOut;
}
v4 = (this.pageSize / (this.maxPos - this.minPos + this.pageSize)) * v2.height;
if (v4 < v3.minHeight) {
if (v2.height < v3.minHeight) {
v3.__set__visible(false);
} else {
v4 = v3.minHeight;
v3.__set__visible(true);
v3.setSize(this._minWidth, v3.minHeight + 0);
}
} else {
v3.__set__visible(true);
v3.setSize(this._minWidth, v4);
}
v3.setRange(this.upArrow_mc.__get__height() + 0, this.__get__virtualHeight() - this.downArrow_mc.__get__height() - v3.__get__height(), this.minPos, this.maxPos);
v5 = Math.min(v5, this.maxPos);
this.__set__scrollPosition(Math.max(v5, this.minPos));
} else {
this.scrollThumb_mc.__set__visible(false);
if (!this.initializing) {
this.upArrow_mc.enabled = false;
this.downArrow_mc.enabled = false;
}
delete v2.onPress;
delete v2.onDragOver;
delete v2.onRelease;
delete v2.onDragOut;
delete v2.onRollOver;
delete v2.onRollOut;
delete v2.onReleaseOutside;
}
if (this.initializing) {
this.scrollThumb_mc.__set__visible(false);
}
};
v2.setEnabled = function (enabledFlag) {
super.setEnabled(enabledFlag);
this.setScrollProperties(this.pageSize, this.minPos, this.maxPos, this.largeScroll);
};
v2.draw = function (Void) {
if (this.initializing) {
this.initializing = false;
this.scrollTrack_mc.visible = true;
this.upArrow_mc.__set__visible(true);
this.downArrow_mc.__set__visible(true);
}
this.size();
};
v2.size = function (Void) {
if (this._height == 1) {
return undefined;
}
if (this.upArrow_mc == undefined) {
return undefined;
}
var v3 = this.upArrow_mc.__get__height();
var v2 = this.downArrow_mc.__get__height();
this.upArrow_mc.move(0, 0);
var v4 = this.scrollTrack_mc;
v4._y = v3;
v4._height = this.__get__virtualHeight() - v3 - v2;
this.downArrow_mc.move(0, this.__get__virtualHeight() - v2);
this.setScrollProperties(this.pageSize, this.minPos, this.maxPos, this.largeScroll);
};
v2.dispatchScrollEvent = function (detail) {
this.dispatchEvent({'type': 'scroll', 'detail': detail});
};
v2.isScrollBarKey = function (k) {
if (k == 36) {
if (this.__get__scrollPosition() != 0) {
this.__set__scrollPosition(0);
this.dispatchScrollEvent(this.minMode);
}
return true;
return false;
}
if (k == 35) {
if (this.__get__scrollPosition() < this.maxPos) {
this.__set__scrollPosition(this.maxPos);
this.dispatchScrollEvent(this.maxMode);
}
return true;
}
return false;
};
v2.scrollIt = function (inc, mode) {
var v3 = this.smallScroll;
if (inc != 'Line') {
v3 = (this.largeScroll == 0) ? this.pageSize : this.largeScroll;
}
var v2 = this._scrollPosition + mode * v3;
if (v2 > this.maxPos) {
v2 = this.maxPos;
} else {
if (v2 < this.minPos) {
v2 = this.minPos;
}
}
if (this.__get__scrollPosition() != v2) {
this.__set__scrollPosition(v2);
var v4 = mode < 0 ? this.minusMode : this.plusMode;
this.dispatchScrollEvent(inc + v4);
}
};
v2.startTrackScroller = function (Void) {
this._parent.pressFocus();
if (this._parent.scrollTrackDownName.length > 0) {
if (this._parent.scrollTrackDown_mc == undefined) {
this._parent.setSkin(mx.controls.scrollClasses.ScrollBar.skinIDTrackDown, this.scrollTrackDownName);
} else {
this._parent.scrollTrackDown_mc.visible = true;
}
}
this._parent.trackScroller();
this._parent.scrolling = setInterval(this._parent, 'scrollInterval', this.getStyle('repeatDelay'), 'Page', -1);
};
v2.scrollInterval = function (inc, mode) {
clearInterval(this.scrolling);
if (inc == 'Page') {
this.trackScroller();
} else {
this.scrollIt(inc, mode);
}
this.scrolling = setInterval(this, 'scrollInterval', this.getStyle('repeatInterval'), inc, mode);
};
v2.trackScroller = function (Void) {
if (this.scrollThumb_mc._y + this.scrollThumb_mc.__get__height() < this._ymouse) {
this.scrollIt('Page', 1);
} else {
if (this.scrollThumb_mc._y > this._ymouse) {
this.scrollIt('Page', -1);
}
}
};
v2.dispatchScrollChangedEvent = function (Void) {
this.dispatchEvent({'type': 'scrollChanged'});
};
v2.stopScrolling = function (Void) {
clearInterval(this._parent.scrolling);
this._parent.scrollTrackDown_mc.visible = false;
};
v2.releaseScrolling = function (Void) {
this._parent.releaseFocus();
this.stopScrolling();
this._parent.dispatchScrollChangedEvent();
};
v2.trackOver = function (Void) {
if (this._parent.scrollTrackOverName.length > 0) {
if (this._parent.scrollTrackOver_mc == undefined) {
this._parent.setSkin(mx.controls.scrollClasses.ScrollBar.skinIDTrackOver, this.scrollTrackOverName);
} else {
this._parent.scrollTrackOver_mc.visible = true;
}
}
};
v2.trackOut = function (Void) {
this._parent.scrollTrackOver_mc.visible = false;
};
v2.onUpArrow = function (Void) {
this._parent.scrollIt('Line', -1);
};
v2.onDownArrow = function (Void) {
this._parent.scrollIt('Line', 1);
};
v2.onScrollChanged = function (Void) {
this._parent.dispatchScrollChangedEvent();
};
v1.symbolOwner = mx.core.UIComponent;
v2.className = 'ScrollBar';
v2.minPos = 0;
v2.maxPos = 0;
v2.pageSize = 0;
v2.largeScroll = 0;
v2.smallScroll = 1;
v2._scrollPosition = 0;
v2.scrollTrackName = 'ScrollTrack';
v2.scrollTrackOverName = '';
v2.scrollTrackDownName = '';
v2.upArrowName = 'BtnUpArrow';
v2.upArrowUpName = 'ScrollUpArrowUp';
v2.upArrowOverName = 'ScrollUpArrowOver';
v2.upArrowDownName = 'ScrollUpArrowDown';
v2.downArrowName = 'BtnDownArrow';
v2.downArrowUpName = 'ScrollDownArrowUp';
v2.downArrowOverName = 'ScrollDownArrowOver';
v2.downArrowDownName = 'ScrollDownArrowDown';
v2.thumbTopName = 'ScrollThumbTopUp';
v2.thumbMiddleName = 'ScrollThumbMiddleUp';
v2.thumbBottomName = 'ScrollThumbBottomUp';
v2.thumbGripName = 'ScrollThumbGripUp';
v1.skinIDTrack = 0;
v1.skinIDTrackOver = 1;
v1.skinIDTrackDown = 2;
v1.skinIDUpArrow = 3;
v1.skinIDDownArrow = 4;
v1.skinIDThumb = 5;
v2.idNames = new Array('scrollTrack_mc', 'scrollTrackOver_mc', 'scrollTrackDown_mc', 'upArrow_mc', 'downArrow_mc');
v2.clipParameters = {'minPos': 1, 'maxPos': 1, 'pageSize': 1, 'scrollPosition': 1, 'lineScrollSize': 1, 'pageScrollSize': 1, 'visible': 1, 'enabled': 1};
v1.mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.controls.scrollClasses.ScrollBar.prototype.clipParameters, mx.core.UIComponent.prototype.clipParameters);
v2.initializing = true;
v2.addProperty('lineScrollSize', v2.__get__lineScrollSize, v2.__set__lineScrollSize);
v2.addProperty('pageScrollSize', v2.__get__pageScrollSize, v2.__set__pageScrollSize);
v2.addProperty('scrollPosition', v2.__get__scrollPosition, v2.__set__scrollPosition);
v2.addProperty('virtualHeight', v2.__get__virtualHeight, function () {});
ASSetPropFlags(mx.controls.scrollClasses.ScrollBar.prototype, null, 1);
}
#endinitclip
}
movieClip 1330 __Packages.mx.controls.UIScrollBar {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.UIScrollBar) {
var v1 = function () {
super();
};
mx.controls.UIScrollBar = v1;
var v2 = new mx.controls.scrollClasses.ScrollBar();
mx.controls.UIScrollBar.prototype = v2;
v2.init = function (Void) {
super.init();
this.textField.owner = this;
this.__set__horizontal(this.wasHorizontal);
if (this.__get__horizontal()) {
(this.textField != undefined) ? super.setSize(this.textField._width, 16) : super.setSize(this.__width, this.__height);
} else {
(this.textField != undefined) ? super.setSize(16, this.textField._height) : super.setSize(this.__width, this.__height);
}
if (this.__get__horizontal()) {
var v3 = this.__width;
this.__height = this.__width;
this.width = v3;
this.__width = 16;
}
this.textField.onScroller = function () {
this.hPosition = this.hscroll;
this.vPosition = this.scroll - 1;
};
if (this.__get___targetInstanceName() != undefined) {
this.setScrollTarget(this.__get___targetInstanceName());
(this.__get___targetInstanceName()).addListener(this);
}
};
v2.__get___targetInstanceName = function () {
return this.textField;
};
v2.__get__height = function () {
if (this.wasHorizontal) {
return this.__width;
} else {
return this.__height;
}
};
v2.__get__width = function () {
if (this.wasHorizontal) {
return this.__height;
} else {
return this.__width;
}
};
v2.size = function (Void) {
super.size();
this.onTextChanged();
};
v2.draw = function () {
super.draw();
};
v2.__set___targetInstanceName = function (t) {
if (t == undefined) {
this.textField.removeListener(this);
delete this.textField[this.__get__horizontal() ? 'hScroller' : 'vScroller'];
if (this.textField.hScroller != undefined && this.textField.vScroller != undefined) {
this.textField.unwatch('text');
this.textField.unwatch('htmltext');
}
}
var v3 = this._parent[t];
this.textField = this._parent[t];
this.onTextChanged();
return this.__get___targetInstanceName();
};
v2.setSize = function (w, h) {
if (this.__get__horizontal()) {
super.setSize(h, w);
} else {
super.setSize(w, h);
}
};
v2.onTextChanged = function (Void) {
if (this.textField == undefined) {
return undefined;
}
clearInterval(this.synchScroll);
if (this.__get__horizontal()) {
var v2 = this.textField.hscroll;
this.setScrollProperties(this.textField._width, 0, this.textField.maxhscroll);
this.__set__scrollPosition(Math.min(v2, this.textField.maxhscroll));
} else {
var v2 = this.textField.scroll;
var v3 = this.textField.bottomScroll - this.textField.scroll;
this.setScrollProperties(v3, 1, this.textField.maxscroll);
this.__set__scrollPosition(Math.min(v2, this.textField.maxscroll));
}
};
v2.__get__horizontal = function () {
return this.wasHorizontal;
};
v2.__set__horizontal = function (v) {
this.wasHorizontal = v;
if (v and this.initializing) {
if (this._rotation == 90) {
return undefined;
}
this._xscale = -100;
this._rotation = -90;
}
if (!this.initializing) {
if (v) {
if (this._rotation == 0) {
this._rotation = -90;
this._xscale = -100;
}
} else {
if (this._rotation == -90) {
this._rotation = 0;
this._xscale = 100;
}
}
}
return this.__get__horizontal();
};
v2.callback = function (prop, oldval, newval) {
clearInterval(this.hScroller.synchScroll);
clearInterval(this.vScroller.synchScroll);
this.hScroller.synchScroll = setInterval(this.hScroller, 'onTextChanged', 50);
this.vScroller.synchScroll = setInterval(this.vScroller, 'onTextChanged', 50);
return newval;
};
v2.setScrollTarget = function (tF) {
if (tF == undefined) {
this.textField.removeListener(this);
delete this.textField[this.__get__horizontal() ? 'hScroller' : 'vScroller'];
if (this.textField.hScroller != undefined && this.textField.vScroller != undefined) {
this.textField.unwatch('text');
this.textField.unwatch('htmltext');
}
}
this.textField = undefined;
if (!(tF instanceof TextField)) {
return undefined;
}
this.textField = tF;
if (this.__get__horizontal()) {
this.textField.hScroller = this;
this.textField.hScroller.lineScrollSize = 5;
} else {
this.textField.vScroller = this;
this.textField.vScroller.lineScrollSize = 1;
}
this.onTextChanged();
this.onChanged = function (Void) {
this.onTextChanged();
};
this.onScroller = function (Void) {
if (!this.isScrolling) {
if (!this.horizontal) {
this.scrollPosition = this.textField.scroll;
} else {
this.scrollPosition = this.textField.hscroll;
}
}
};
this.textField.addListener(this);
this.textField.watch('text', this.callback);
this.textField.watch('htmlText', this.callback);
};
v2.scrollHandler = function (Void) {
if (this.__get__horizontal()) {
var v2 = this.textField.background;
this.textField.hscroll = this.scrollPosition;
this.textField.background = v2;
} else {
this.textField.scroll = this.scrollPosition;
}
};
v2.setEnabled = function (enable) {
super.setEnabled(enable);
if (enable) {
this.textField.addListener(this);
} else {
this.textField.removeListener();
}
};
v2.dispatchScrollEvent = function (detail) {
this.dispatchEvent({'type': 'scroll'});
};
v1.symbolName = 'UIScrollBar';
v1.symbolOwner = mx.controls.UIScrollBar;
v2.className = 'UIScrollBar';
v2.clipParameters = {'_targetInstanceName': 1, 'horizontal': 1};
v1.mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.controls.UIScrollBar.prototype.clipParameters);
v1.version = '2.0.2.126';
v2.addProperty('_targetInstanceName', v2.__get___targetInstanceName, v2.__set___targetInstanceName);
v2.addProperty('height', v2.__get__height, function () {});
v2.addProperty('horizontal', v2.__get__horizontal, v2.__set__horizontal);
v2.addProperty('width', v2.__get__width, function () {});
ASSetPropFlags(mx.controls.UIScrollBar.prototype, null, 1);
}
#endinitclip
}
movieClip 1421 __Packages.mx.skins.SkinElement {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.SkinElement) {
var v1 = function () {
super();
};
mx.skins.SkinElement = v1;
var v2 = new MovieClip();
mx.skins.SkinElement.prototype = v2;
v1.registerElement = function (name, className) {
Object.registerClass(name, (className == undefined) ? mx.skins.SkinElement : className);
_global.skinRegistry[name] = true;
};
v2.__set__visible = function (visible) {
this._visible = visible;
};
v2.move = function (x, y) {
this._x = x;
this._y = y;
};
v2.setSize = function (w, h) {
this._width = w;
this._height = h;
};
ASSetPropFlags(mx.skins.SkinElement.prototype, null, 1);
}
#endinitclip
}
movieClip 1422 __Packages.mx.styles.CSSTextStyles {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.styles) {
_global.mx.styles = new Object();
}
if (!_global.mx.styles.CSSTextStyles) {
var v1 = function () {};
mx.styles.CSSTextStyles = v1;
var v2 = v1.prototype;
v1.addTextStyles = function (o, bColor) {
o.addProperty('textAlign', function () {
return this._tf.align;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.align = x;
});
o.addProperty('fontWeight', function () {
return (this._tf.bold != undefined) ? (this._tf.bold ? 'bold' : 'none') : undefined;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.bold = x == 'bold';
});
if (bColor) {
o.addProperty('color', function () {
return this._tf.color;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.color = x;
});
}
o.addProperty('fontFamily', function () {
return this._tf.font;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.font = x;
});
o.addProperty('textIndent', function () {
return this._tf.indent;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.indent = x;
});
o.addProperty('fontStyle', function () {
return (this._tf.italic != undefined) ? (this._tf.italic ? 'italic' : 'none') : undefined;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.italic = x == 'italic';
});
o.addProperty('marginLeft', function () {
return this._tf.leftMargin;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.leftMargin = x;
});
o.addProperty('marginRight', function () {
return this._tf.rightMargin;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.rightMargin = x;
});
o.addProperty('fontSize', function () {
return this._tf.size;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.size = x;
});
o.addProperty('textDecoration', function () {
return (this._tf.underline != undefined) ? (this._tf.underline ? 'underline' : 'none') : undefined;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.underline = x == 'underline';
});
o.addProperty('embedFonts', function () {
return this._tf.embedFonts;
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.embedFonts = x;
});
};
ASSetPropFlags(mx.styles.CSSTextStyles.prototype, null, 1);
}
#endinitclip
}
movieClip 1423 __Packages.mx.styles.StyleManager {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.styles) {
_global.mx.styles = new Object();
}
if (!_global.mx.styles.StyleManager) {
var v1 = function () {};
mx.styles.StyleManager = v1;
var v2 = v1.prototype;
v1.registerInheritingStyle = function (styleName) {
mx.styles.StyleManager.inheritingStyles[styleName] = true;
};
v1.isInheritingStyle = function (styleName) {
return mx.styles.StyleManager.inheritingStyles[styleName] == true;
};
v1.registerColorStyle = function (styleName) {
mx.styles.StyleManager.colorStyles[styleName] = true;
};
v1.isColorStyle = function (styleName) {
return mx.styles.StyleManager.colorStyles[styleName] == true;
};
v1.registerColorName = function (colorName, colorValue) {
mx.styles.StyleManager.colorNames[colorName] = colorValue;
};
v1.isColorName = function (colorName) {
return mx.styles.StyleManager.colorNames[colorName] != undefined;
};
v1.getColorName = function (colorName) {
return mx.styles.StyleManager.colorNames[colorName];
};
v1.inheritingStyles = {'color': true, 'direction': true, 'fontFamily': true, 'fontSize': true, 'fontStyle': true, 'fontWeight': true, 'textAlign': true, 'textIndent': true};
v1.colorStyles = {'barColor': true, 'trackColor': true, 'borderColor': true, 'buttonColor': true, 'color': true, 'dateHeaderColor': true, 'dateRollOverColor': true, 'disabledColor': true, 'fillColor': true, 'highlightColor': true, 'scrollTrackColor': true, 'selectedDateColor': true, 'shadowColor': true, 'strokeColor': true, 'symbolBackgroundColor': true, 'symbolBackgroundDisabledColor': true, 'symbolBackgroundPressedColor': true, 'symbolColor': true, 'symbolDisabledColor': true, 'themeColor': true, 'todayIndicatorColor': true, 'shadowCapColor': true, 'borderCapColor': true, 'focusColor': true};
v1.colorNames = {'black': 0, 'white': 16777215, 'red': 16711680, 'green': 65280, 'blue': 255, 'magenta': 16711935, 'yellow': 16776960, 'cyan': 65535, 'haloGreen': 8453965, 'haloBlue': 2881013, 'haloOrange': 16761344};
v1.TextFormatStyleProps = {'font': true, 'size': true, 'color': true, 'leftMargin': false, 'rightMargin': false, 'italic': true, 'bold': true, 'align': true, 'indent': true, 'underline': false, 'embedFonts': false};
v1.TextStyleMap = {'textAlign': true, 'fontWeight': true, 'color': true, 'fontFamily': true, 'textIndent': true, 'fontStyle': true, 'lineHeight': true, 'marginLeft': true, 'marginRight': true, 'fontSize': true, 'textDecoration': true, 'embedFonts': true};
ASSetPropFlags(mx.styles.StyleManager.prototype, null, 1);
}
#endinitclip
}
movieClip 1424 __Packages.mx.styles.CSSStyleDeclaration {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.styles) {
_global.mx.styles = new Object();
}
if (!_global.mx.styles.CSSStyleDeclaration) {
var v1 = function () {};
mx.styles.CSSStyleDeclaration = v1;
var v2 = v1.prototype;
v2.__getTextFormat = function (tf, bAll) {
var v5 = false;
if (this._tf != undefined) {
var v2;
for (v2 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || mx.styles.StyleManager.TextFormatStyleProps[v2]) {
if (tf[v2] == undefined) {
var v3 = this._tf[v2];
if (v3 != undefined) {
tf[v2] = v3;
} else {
v5 = true;
}
}
}
}
return v5;
}
v5 = true;
return v5;
};
v2.getStyle = function (styleProp) {
var v2 = this[styleProp];
var v3 = mx.styles.StyleManager.getColorName(v2);
return (v3 == undefined) ? v2 : v3;
};
v1.classConstruct = function () {
mx.styles.CSSTextStyles.addTextStyles(mx.styles.CSSStyleDeclaration.prototype, true);
return true;
};
v1.classConstructed = mx.styles.CSSStyleDeclaration.classConstruct();
v1.CSSTextStylesDependency = mx.styles.CSSTextStyles;
ASSetPropFlags(mx.styles.CSSStyleDeclaration.prototype, null, 1);
}
#endinitclip
}
movieClip 1425 __Packages.mx.skins.Border {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.Border) {
var v1 = function () {
super();
};
mx.skins.Border = v1;
var v2 = new mx.core.UIObject();
mx.skins.Border.prototype = v2;
v2.init = function (Void) {
super.init();
};
v1.symbolName = 'Border';
v1.symbolOwner = mx.skins.Border;
v2.className = 'Border';
v2.tagBorder = 0;
v2.idNames = new Array('border_mc');
ASSetPropFlags(mx.skins.Border.prototype, null, 1);
}
#endinitclip
}
movieClip 1426 __Packages.mx.skins.CustomBorder {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.CustomBorder) {
var v1 = function () {
super();
};
mx.skins.CustomBorder = v1;
var v2 = new mx.skins.Border();
mx.skins.CustomBorder.prototype = v2;
v2.__get__width = function () {
return this.__width;
};
v2.__get__height = function () {
return this.__height;
};
v2.init = function (Void) {
super.init();
};
v2.createChildren = function (Void) {};
v2.draw = function (Void) {
if (this.l_mc == undefined) {
var v2 = this.setSkin(mx.skins.CustomBorder.tagL, this.leftSkin);
if (this.horizontal) {
this.minHeight = this.l_mc._height;
this.minWidth = this.l_mc._width;
} else {
this.minHeight = this.l_mc._height;
this.minWidth = this.l_mc._width;
}
}
if (this.m_mc == undefined) {
this.setSkin(mx.skins.CustomBorder.tagM, this.middleSkin);
if (this.horizontal) {
this.minHeight = this.m_mc._height;
this.minWidth += this.m_mc._width;
} else {
this.minHeight += this.m_mc._height;
this.minWidth = this.m_mc._width;
}
}
if (this.r_mc == undefined) {
this.setSkin(mx.skins.CustomBorder.tagR, this.rightSkin);
if (this.horizontal) {
this.minHeight = this.r_mc._height;
this.minWidth += this.r_mc._width;
} else {
this.minHeight += this.r_mc._height;
this.minWidth = this.r_mc._width;
}
}
this.size();
};
v2.size = function (Void) {
this.l_mc.move(0, 0);
if (this.horizontal) {
this.r_mc.move(this.__get__width() - this.r_mc.width, 0);
this.m_mc.move(this.l_mc.width, 0);
this.m_mc.setSize(this.r_mc.x - this.m_mc.x, this.m_mc.height);
} else {
this.r_mc.move(0, this.__get__height() - this.r_mc.height, 0);
this.m_mc.move(0, this.l_mc.height);
this.m_mc.setSize(this.m_mc.width, this.r_mc.y - this.m_mc.y);
}
};
v1.symbolName = 'CustomBorder';
v1.symbolOwner = mx.skins.CustomBorder;
v1.version = '2.0.2.126';
v2.className = 'CustomBorder';
v1.tagL = 0;
v1.tagM = 1;
v1.tagR = 2;
v2.idNames = new Array('l_mc', 'm_mc', 'r_mc');
v2.leftSkin = 'F3PieceLeft';
v2.middleSkin = 'F3PieceMiddle';
v2.rightSkin = 'F3PieceRight';
v2.horizontal = true;
v2.addProperty('height', v2.__get__height, function () {});
v2.addProperty('width', v2.__get__width, function () {});
ASSetPropFlags(mx.skins.CustomBorder.prototype, null, 1);
}
#endinitclip
}
movieClip 1427 __Packages.mx.controls.scrollClasses.ScrollThumb {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.scrollClasses) {
_global.mx.controls.scrollClasses = new Object();
}
if (!_global.mx.controls.scrollClasses.ScrollThumb) {
var v1 = function () {
super();
};
mx.controls.scrollClasses.ScrollThumb = v1;
var v2 = new mx.skins.CustomBorder();
mx.controls.scrollClasses.ScrollThumb.prototype = v2;
v2.createChildren = function (Void) {
super.createChildren();
this.useHandCursor = false;
};
v2.setRange = function (_ymin, _ymax, _datamin, _datamax) {
this.ymin = _ymin;
this.ymax = _ymax;
this.datamin = _datamin;
this.datamax = _datamax;
};
v2.dragThumb = function (Void) {
this.scrollMove = this._ymouse - this.lastY;
this.scrollMove += this._y;
if (this.scrollMove < this.ymin) {
this.scrollMove = this.ymin;
} else {
if (this.scrollMove > this.ymax) {
this.scrollMove = this.ymax;
}
}
this._parent.isScrolling = true;
this._y = this.scrollMove;
var v2 = Math.round((this.datamax - this.datamin) * (this._y - this.ymin) / (this.ymax - this.ymin)) + this.datamin;
this._parent.scrollPosition = v2;
this._parent.dispatchScrollEvent('ThumbTrack');
updateAfterEvent();
};
v2.stopDragThumb = function (Void) {
this._parent.isScrolling = false;
this._parent.dispatchScrollEvent('ThumbPosition');
this._parent.dispatchScrollChangedEvent();
delete this.onMouseMove;
};
v2.onPress = function (Void) {
this._parent.pressFocus();
this.lastY = this._ymouse;
this.onMouseMove = this.dragThumb;
super.onPress();
};
v2.onRelease = function (Void) {
this._parent.releaseFocus();
this.stopDragThumb();
super.onRelease();
};
v2.onReleaseOutside = function (Void) {
this._parent.releaseFocus();
this.stopDragThumb();
super.onReleaseOutside();
};
v2.draw = function () {
super.draw();
if (this.grip_mc == undefined) {
this.setSkin(3, this.gripSkin);
}
};
v2.size = function () {
super.size();
this.grip_mc.move((this.__get__width() - this.grip_mc.width) / 2, (this.__get__height() - this.grip_mc.height) / 2);
};
v1.symbolOwner = mx.skins.CustomBorder.symbolOwner;
v2.className = 'ScrollThumb';
v2.btnOffset = 0;
v2.horizontal = false;
v2.idNames = new Array('l_mc', 'm_mc', 'r_mc', 'grip_mc');
ASSetPropFlags(mx.controls.scrollClasses.ScrollThumb.prototype, null, 1);
}
#endinitclip
}
movieClip 1428 __Packages.mx.controls.SimpleButton {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.SimpleButton) {
var v1 = function () {
super();
};
mx.controls.SimpleButton = v1;
var v2 = new mx.core.UIComponent();
mx.controls.SimpleButton.prototype = v2;
v2.init = function (Void) {
super.init();
if (this.preset == undefined) {
this.boundingBox_mc._visible = false;
this.boundingBox_mc._height = 0;
this.boundingBox_mc._width = 0;
}
this.useHandCursor = false;
};
v2.createChildren = function (Void) {
if (this.preset != undefined) {
var v2 = this[this.idNames[this.preset]];
this[this.refNames[this.preset]] = v2;
this.skinName = v2;
if (this.falseOverSkin.length == 0) {
this.rolloverSkin = this.fus;
}
if (this.falseOverIcon.length == 0) {
this.rolloverIcon = this.fui;
}
this.initializing = false;
} else {
if (this.__state == true) {
this.setStateVar(true);
} else {
if (this.falseOverSkin.length == 0) {
this.rolloverSkin = this.fus;
}
if (this.falseOverIcon.length == 0) {
this.rolloverIcon = this.fui;
}
}
}
};
v2.setIcon = function (tag, linkageName) {
return this.setSkin(tag + 8, linkageName);
};
v2.changeIcon = function (tag, linkageName) {
this.linkLength = linkageName.length;
var v2 = this.stateNames[tag] + 'Icon';
this[v2] = linkageName;
this[this.idNames[tag + 8]] = v2;
this.setStateVar(this.getState());
};
v2.changeSkin = function (tag, linkageName) {
var v2 = this.stateNames[tag] + 'Skin';
this[v2] = linkageName;
this[this.idNames[tag]] = v2;
this.setStateVar(this.getState());
};
v2.viewIcon = function (varName) {
var v4 = varName + 'Icon';
var v3 = this[v4];
if (typeof v3 == 'string') {
var v5 = v3;
if (this.__emphasized) {
if (this[v3 + 'Emphasized'].length > 0) {
v3 += 'Emphasized';
}
}
if (this[v3].length == 0) {
return undefined;
}
v3 = this.setIcon(this.tagMap[v5], this[v3]);
if (v3 == undefined && _global.isLivePreview) {
v3 = this.setIcon(0, 'ButtonIcon');
}
this[v4] = v3;
}
this.iconName._visible = false;
this.iconName = v3;
this.iconName._visible = true;
};
v2.removeIcons = function () {
var v3 = 0;
while (v3 < 2) {
var v2 = 8;
while (v2 < 16) {
this.destroyObject(this.idNames[v2]);
this[this.stateNames[v2 - 8] + 'Icon'] = '';
++v2;
}
++v3;
}
this.refresh();
};
v2.setSkin = function (tag, linkageName, initobj) {
if (initobj == undefined) {
var v3 = super.setSkin(tag, linkageName, {'styleName': this});
this.calcSize(tag, v3);
return v3;
}
var v3 = super.setSkin(tag, linkageName, initobj);
this.calcSize(tag, v3);
return v3;
};
v2.calcSize = function (Void) {
this.__width = this._width;
this.__height = this._height;
};
v2.viewSkin = function (varName, initObj) {
var v3 = varName + 'Skin';
var v2 = this[v3];
if (typeof v2 == 'string') {
var v4 = v2;
if (this.__emphasized) {
if (this[v2 + 'Emphasized'].length > 0) {
v2 += 'Emphasized';
}
}
if (this[v2].length == 0) {
return undefined;
}
v2 = this.setSkin(this.tagMap[v4], this[v2], (initObj != undefined) ? initObj : {'styleName': this});
this[v3] = v2;
}
this.skinName._visible = false;
this.skinName = v2;
this.skinName._visible = true;
};
v2.showEmphasized = function (e) {
if (e && !this.__emphatic) {
if (mx.controls.SimpleButton.emphasizedStyleDeclaration != undefined) {
this.__emphaticStyleName = this.styleName;
this.styleName = mx.controls.SimpleButton.emphasizedStyleDeclaration;
}
this.__emphatic = true;
} else {
if (this.__emphatic) {
this.styleName = this.__emphaticStyleName;
}
this.__emphatic = false;
}
};
v2.refresh = function (Void) {
var v2 = this.getState();
if (this.enabled == false) {
this.viewIcon('disabled');
this.viewSkin('disabled');
} else {
this.viewSkin(this.phase);
this.viewIcon(this.phase);
}
this.setView(this.phase == 'down');
this.iconName.enabled = this.enabled;
};
v2.setView = function (offset) {
if (this.iconName == undefined) {
return undefined;
}
var v2 = offset ? this.btnOffset : 0;
this.iconName._x = (this.__width - this.iconName._width) / 2 + v2;
this.iconName._y = (this.__height - this.iconName._height) / 2 + v2;
};
v2.setStateVar = function (state) {
if (state) {
if (this.trueOverSkin.length == 0) {
this.rolloverSkin = this.tus;
} else {
this.rolloverSkin = this.trs;
}
if (this.trueOverIcon.length == 0) {
this.rolloverIcon = this.tui;
} else {
this.rolloverIcon = this.tri;
}
this.upSkin = this.tus;
this.downSkin = this.tds;
this.disabledSkin = this.dts;
this.upIcon = this.tui;
this.downIcon = this.tdi;
this.disabledIcon = this.dti;
} else {
if (this.falseOverSkin.length == 0) {
this.rolloverSkin = this.fus;
} else {
this.rolloverSkin = this.frs;
}
if (this.falseOverIcon.length == 0) {
this.rolloverIcon = this.fui;
} else {
this.rolloverIcon = this.fri;
}
this.upSkin = this.fus;
this.downSkin = this.fds;
this.disabledSkin = this.dfs;
this.upIcon = this.fui;
this.downIcon = this.fdi;
this.disabledIcon = this.dfi;
}
this.__state = state;
};
v2.setState = function (state) {
if (state != this.__state) {
this.setStateVar(state);
this.invalidate();
}
};
v2.size = function (Void) {
this.refresh();
};
v2.draw = function (Void) {
if (this.initializing) {
this.initializing = false;
this.skinName.visible = true;
this.iconName.visible = true;
}
this.size();
};
v2.getState = function (Void) {
return this.__state;
};
v2.setToggle = function (val) {
this.__toggle = val;
if (this.__toggle == false) {
this.setState(false);
}
};
v2.getToggle = function (Void) {
return this.__toggle;
};
v2.__set__toggle = function (val) {
this.setToggle(val);
return this.__get__toggle();
};
v2.__get__toggle = function () {
return this.getToggle();
};
v2.__set__value = function (val) {
this.setSelected(val);
return this.__get__value();
};
v2.__get__value = function () {
return this.getSelected();
};
v2.__set__selected = function (val) {
this.setSelected(val);
return this.__get__selected();
};
v2.__get__selected = function () {
return this.getSelected();
};
v2.setSelected = function (val) {
if (this.__toggle) {
this.setState(val);
} else {
this.setState(this.initializing ? val : this.__state);
}
};
v2.getSelected = function () {
return this.__state;
};
v2.setEnabled = function (val) {
if (this.enabled != val) {
super.setEnabled(val);
this.invalidate();
}
};
v2.onPress = function (Void) {
this.pressFocus();
this.phase = 'down';
this.refresh();
this.dispatchEvent({'type': 'buttonDown'});
if (this.autoRepeat) {
this.interval = setInterval(this, 'onPressDelay', this.getStyle('repeatDelay'));
}
};
v2.onPressDelay = function (Void) {
this.dispatchEvent({'type': 'buttonDown'});
if (this.autoRepeat) {
clearInterval(this.interval);
this.interval = setInterval(this, 'onPressRepeat', this.getStyle('repeatInterval'));
}
};
v2.onPressRepeat = function (Void) {
this.dispatchEvent({'type': 'buttonDown'});
updateAfterEvent();
};
v2.onRelease = function (Void) {
this.releaseFocus();
this.phase = 'rollover';
if (this.interval != undefined) {
clearInterval(this.interval);
delete this.interval;
}
if (this.getToggle()) {
this.setState(!this.getState());
} else {
this.refresh();
}
this.dispatchEvent({'type': 'click'});
};
v2.onDragOut = function (Void) {
this.phase = 'up';
this.refresh();
this.dispatchEvent({'type': 'buttonDragOut'});
};
v2.onDragOver = function (Void) {
if (this.phase != 'up') {
this.onPress();
return undefined;
} else {
this.phase = 'down';
this.refresh();
}
};
v2.onReleaseOutside = function (Void) {
this.releaseFocus();
this.phase = 'up';
if (this.interval != undefined) {
clearInterval(this.interval);
delete this.interval;
}
};
v2.onRollOver = function (Void) {
this.phase = 'rollover';
this.refresh();
};
v2.onRollOut = function (Void) {
this.phase = 'up';
this.refresh();
};
v2.getLabel = function (Void) {
return this.fui.text;
};
v2.setLabel = function (val) {
if (typeof this.fui == 'string') {
this.createLabel('fui', 8, val);
this.fui.styleName = this;
} else {
this.fui.text = val;
}
var v4 = this.fui._getTextFormat();
var v2 = v4.getTextExtent2(val);
this.fui._width = v2.width + 5;
this.fui._height = v2.height + 5;
this.iconName = this.fui;
this.setView(this.__state);
};
v2.__get__emphasized = function () {
return this.__emphasized;
};
v2.__set__emphasized = function (val) {
this.__emphasized = val;
var v2 = 0;
while (v2 < 8) {
this[this.idNames[v2]] = this.stateNames[v2] + 'Skin';
if (typeof this[this.idNames[v2 + 8]] == 'movieclip') {
this[this.idNames[v2 + 8]] = this.stateNames[v2] + 'Icon';
}
++v2;
}
this.showEmphasized(this.__emphasized);
this.setStateVar(this.__state);
this.invalidateStyle();
return this.__get__emphasized();
};
v2.keyDown = function (e) {
if (e.code == 32) {
this.onPress();
}
};
v2.keyUp = function (e) {
if (e.code == 32) {
this.onRelease();
}
};
v2.onKillFocus = function (newFocus) {
super.onKillFocus();
if (this.phase != 'up') {
this.phase = 'up';
this.refresh();
}
};
v1.symbolName = 'SimpleButton';
v1.symbolOwner = mx.controls.SimpleButton;
v1.version = '2.0.2.126';
v2.className = 'SimpleButton';
v2.style3dInset = 4;
v2.btnOffset = 1;
v2.__toggle = false;
v2.__state = false;
v2.__emphasized = false;
v2.__emphatic = false;
v1.falseUp = 0;
v1.falseDown = 1;
v1.falseOver = 2;
v1.falseDisabled = 3;
v1.trueUp = 4;
v1.trueDown = 5;
v1.trueOver = 6;
v1.trueDisabled = 7;
v2.falseUpSkin = 'SimpleButtonUp';
v2.falseDownSkin = 'SimpleButtonIn';
v2.falseOverSkin = '';
v2.falseDisabledSkin = 'SimpleButtonUp';
v2.trueUpSkin = 'SimpleButtonIn';
v2.trueDownSkin = '';
v2.trueOverSkin = '';
v2.trueDisabledSkin = 'SimpleButtonIn';
v2.falseUpIcon = '';
v2.falseDownIcon = '';
v2.falseOverIcon = '';
v2.falseDisabledIcon = '';
v2.trueUpIcon = '';
v2.trueDownIcon = '';
v2.trueOverIcon = '';
v2.trueDisabledIcon = '';
v2.phase = 'up';
v2.fui = 'falseUpIcon';
v2.fus = 'falseUpSkin';
v2.fdi = 'falseDownIcon';
v2.fds = 'falseDownSkin';
v2.frs = 'falseOverSkin';
v2.fri = 'falseOverIcon';
v2.dfi = 'falseDisabledIcon';
v2.dfs = 'falseDisabledSkin';
v2.tui = 'trueUpIcon';
v2.tus = 'trueUpSkin';
v2.tdi = 'trueDownIcon';
v2.tds = 'trueDownSkin';
v2.trs = 'trueOverSkin';
v2.tri = 'trueOverIcon';
v2.dts = 'trueDisabledSkin';
v2.dti = 'trueDisabledIcon';
v2.rolloverSkin = mx.controls.SimpleButton.prototype.frs;
v2.rolloverIcon = mx.controls.SimpleButton.prototype.fri;
v2.upSkin = mx.controls.SimpleButton.prototype.fus;
v2.downSkin = mx.controls.SimpleButton.prototype.fds;
v2.disabledSkin = mx.controls.SimpleButton.prototype.dfs;
v2.upIcon = mx.controls.SimpleButton.prototype.fui;
v2.downIcon = mx.controls.SimpleButton.prototype.fdi;
v2.disabledIcon = mx.controls.SimpleButton.prototype.dfi;
v2.initializing = true;
v2.idNames = ['fus', 'fds', 'frs', 'dfs', 'tus', 'tds', 'trs', 'dts', 'fui', 'fdi', 'fri', 'dfi', 'tui', 'tdi', 'tri', 'dti'];
v2.stateNames = ['falseUp', 'falseDown', 'falseOver', 'falseDisabled', 'trueUp', 'trueDown', 'trueOver', 'trueDisabled'];
v2.refNames = ['upSkin', 'downSkin', 'rolloverSkin', 'disabledSkin'];
v2.tagMap = {'falseUpSkin': 0, 'falseDownSkin': 1, 'falseOverSkin': 2, 'falseDisabledSkin': 3, 'trueUpSkin': 4, 'trueDownSkin': 5, 'trueOverSkin': 6, 'trueDisabledSkin': 7, 'falseUpIcon': 0, 'falseDownIcon': 1, 'falseOverIcon': 2, 'falseDisabledIcon': 3, 'trueUpIcon': 4, 'trueDownIcon': 5, 'trueOverIcon': 6, 'trueDisabledIcon': 7};
v2.addProperty('emphasized', v2.__get__emphasized, v2.__set__emphasized);
v2.addProperty('selected', v2.__get__selected, v2.__set__selected);
v2.addProperty('toggle', v2.__get__toggle, v2.__set__toggle);
v2.addProperty('value', v2.__get__value, v2.__set__value);
ASSetPropFlags(mx.controls.SimpleButton.prototype, null, 1);
}
#endinitclip
}
movieClip 1429 __Packages.mx.controls.VScrollBar {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.VScrollBar) {
var v1 = function () {
super();
};
mx.controls.VScrollBar = v1;
var v2 = new mx.controls.scrollClasses.ScrollBar();
mx.controls.VScrollBar.prototype = v2;
v2.init = function (Void) {
super.init();
};
v2.isScrollBarKey = function (k) {
if (k == 38) {
this.scrollIt('Line', -1);
return true;
return super.isScrollBarKey(k);
}
if (k == 40) {
this.scrollIt('Line', 1);
return true;
return super.isScrollBarKey(k);
}
if (k == 33) {
this.scrollIt('Page', -1);
return true;
return super.isScrollBarKey(k);
}
if (k == 34) {
this.scrollIt('Page', 1);
return true;
}
return super.isScrollBarKey(k);
};
v1.symbolName = 'VScrollBar';
v1.symbolOwner = mx.core.UIComponent;
v1.version = '2.0.2.126';
v2.className = 'VScrollBar';
v2.minusMode = 'Up';
v2.plusMode = 'Down';
v2.minMode = 'AtTop';
v2.maxMode = 'AtBottom';
ASSetPropFlags(mx.controls.VScrollBar.prototype, null, 1);
}
#endinitclip
}
movieClip 1430 __Packages.mx.controls.Button {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.Button) {
var v1 = function () {
super();
};
mx.controls.Button = v1;
var v2 = new mx.controls.SimpleButton();
mx.controls.Button.prototype = v2;
v2.init = function (Void) {
super.init();
};
v2.draw = function () {
if (this.initializing) {
this.labelPath.visible = true;
}
super.draw();
if (this.initIcon != undefined) {
this._setIcon(this.initIcon);
}
delete this.initIcon;
};
v2.onRelease = function (Void) {
super.onRelease();
};
v2.createChildren = function (Void) {
super.createChildren();
};
v2.setSkin = function (tag, linkageName, initobj) {
return super.setSkin(tag, linkageName, initobj);
};
v2.viewSkin = function (varName) {
var v3 = this.getState() ? 'true' : 'false';
v3 += this.enabled ? this.phase : 'disabled';
super.viewSkin(varName, {'styleName': this, 'borderStyle': v3});
};
v2.invalidateStyle = function (c) {
this.labelPath.invalidateStyle(c);
super.invalidateStyle(c);
};
v2.setColor = function (c) {
var v2 = 0;
while (v2 < 8) {
this[this.idNames[v2]].redraw(true);
++v2;
}
};
v2.setEnabled = function (enable) {
this.labelPath.enabled = enable;
super.setEnabled(enable);
};
v2.calcSize = function (tag, ref) {
if (this.__width == undefined || this.__height == undefined) {
return undefined;
}
if (tag < 7) {
ref.setSize(this.__width, this.__height, true);
}
};
v2.size = function (Void) {
this.setState(this.getState());
this.setHitArea(this.__width, this.__height);
var v3 = 0;
while (v3 < 8) {
var v4 = this.idNames[v3];
if (typeof this[v4] == 'movieclip') {
this[v4].setSize(this.__width, this.__height, true);
}
++v3;
}
super.size();
};
v2.__set__labelPlacement = function (val) {
this.__labelPlacement = val;
this.invalidate();
return this.__get__labelPlacement();
};
v2.__get__labelPlacement = function () {
return this.__labelPlacement;
};
v2.getLabelPlacement = function (Void) {
return this.__labelPlacement;
};
v2.setLabelPlacement = function (val) {
this.__labelPlacement = val;
this.invalidate();
};
v2.getBtnOffset = function (Void) {
if (this.getState()) {
var v2 = this.btnOffset;
return v2;
}
if (this.phase == 'down') {
v2 = this.btnOffset;
return v2;
}
v2 = 0;
return v2;
};
v2.setView = function (offset) {
var v16 = offset ? this.btnOffset : 0;
var v12 = this.getLabelPlacement();
var v7 = 0;
var v6 = 0;
var v9 = 0;
var v8 = 0;
var v5 = 0;
var v4 = 0;
var v3 = this.labelPath;
var v2 = this.iconName;
var v15 = v3.textWidth;
var v14 = v3.textHeight;
var v10 = this.__width - this.borderW - this.borderW;
var v11 = this.__height - this.borderW - this.borderW;
if (v2 != undefined) {
v7 = v2._width;
v6 = v2._height;
}
if (v12 == 'left' || v12 == 'right') {
if (v3 != undefined) {
v9 = Math.min(v10 - v7, v15 + 5);
v3._width = v9;
v8 = Math.min(v11, v14 + 5);
v3._height = v8;
}
if (v12 == 'right') {
v5 = v7;
if (this.centerContent) {
v5 += (v10 - v9 - v7) / 2;
}
v2._x = v5 - v7;
} else {
v5 = v10 - v9 - v7;
if (this.centerContent) {
v5 /= 2;
}
v2._x = v5 + v9;
}
v4 = 0;
v2._y = v4;
if (this.centerContent) {
v2._y = (v11 - v6) / 2;
v4 = (v11 - v8) / 2;
}
if (!this.centerContent) {
v2._y += Math.max(0, (v8 - v6) / 2);
}
} else {
if (v3 != undefined) {
v9 = Math.min(v10, v15 + 5);
v3._width = v9;
v8 = Math.min(v11 - v6, v14 + 5);
v3._height = v8;
}
v5 = (v10 - v9) / 2;
v2._x = (v10 - v7) / 2;
if (v12 == 'top') {
v4 = v11 - v8 - v6;
if (this.centerContent) {
v4 /= 2;
}
v2._y = v4 + v8;
} else {
v4 = v6;
if (this.centerContent) {
v4 += (v11 - v8 - v6) / 2;
}
v2._y = v4 - v6;
}
}
var v13 = this.borderW + v16;
v3._x = v5 + v13;
v3._y = v4 + v13;
v2._x += v13;
v2._y += v13;
};
v2.__set__label = function (lbl) {
this.setLabel(lbl);
return this.__get__label();
};
v2.setLabel = function (label) {
if (label == '') {
this.labelPath.removeTextField();
this.refresh();
return undefined;
}
if (this.labelPath == undefined) {
var v2 = this.createLabel('labelPath', 200, label);
v2._width = v2.textWidth + 5;
v2._height = v2.textHeight + 5;
if (this.initializing) {
v2.visible = false;
}
} else {
delete this.labelPath.__text;
this.labelPath.text = label;
this.refresh();
}
};
v2.getLabel = function (Void) {
return (this.labelPath.__text != undefined) ? this.labelPath.__text : this.labelPath.text;
};
v2.__get__label = function () {
return this.getLabel();
};
v2._getIcon = function (Void) {
return this._iconLinkageName;
};
v2.__get__icon = function () {
if (this.initializing) {
return this.initIcon;
}
return this._iconLinkageName;
};
v2._setIcon = function (linkage) {
if (this.initializing) {
if (linkage == '') {
return undefined;
}
this.initIcon = linkage;
} else {
if (linkage == '') {
this.removeIcons();
return undefined;
}
super.changeIcon(0, linkage);
super.changeIcon(1, linkage);
super.changeIcon(3, linkage);
super.changeIcon(4, linkage);
super.changeIcon(5, linkage);
this._iconLinkageName = linkage;
this.refresh();
}
};
v2.__set__icon = function (linkage) {
this._setIcon(linkage);
return this.__get__icon();
};
v2.setHitArea = function (w, h) {
if (this.hitArea_mc == undefined) {
this.createEmptyObject('hitArea_mc', 100);
}
var v2 = this.hitArea_mc;
v2.clear();
v2.beginFill(16711680);
v2.drawRect(0, 0, w, h);
v2.endFill();
v2.setVisible(false);
};
v1.symbolName = 'Button';
v1.symbolOwner = mx.controls.Button;
v2.className = 'Button';
v1.version = '2.0.2.126';
v2.btnOffset = 0;
v2._color = 'buttonColor';
v2.__label = 'default value';
v2.__labelPlacement = 'right';
v2.falseUpSkin = 'ButtonSkin';
v2.falseDownSkin = 'ButtonSkin';
v2.falseOverSkin = 'ButtonSkin';
v2.falseDisabledSkin = 'ButtonSkin';
v2.trueUpSkin = 'ButtonSkin';
v2.trueDownSkin = 'ButtonSkin';
v2.trueOverSkin = 'ButtonSkin';
v2.trueDisabledSkin = 'ButtonSkin';
v2.falseUpIcon = '';
v2.falseDownIcon = '';
v2.falseOverIcon = '';
v2.falseDisabledIcon = '';
v2.trueUpIcon = '';
v2.trueDownIcon = '';
v2.trueOverIcon = '';
v2.trueDisabledIcon = '';
v2.clipParameters = {'labelPlacement': 1, 'icon': 1, 'toggle': 1, 'selected': 1, 'label': 1};
v1.mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.controls.Button.prototype.clipParameters, mx.controls.SimpleButton.prototype.clipParameters);
v2.centerContent = true;
v2.borderW = 1;
v2.addProperty('icon', v2.__get__icon, v2.__set__icon);
v2.addProperty('label', v2.__get__label, v2.__set__label);
v2.addProperty('labelPlacement', v2.__get__labelPlacement, v2.__set__labelPlacement);
ASSetPropFlags(mx.controls.Button.prototype, null, 1);
}
#endinitclip
}
movieClip 1431 __Packages.mx.events.EventDispatcher {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.events) {
_global.mx.events = new Object();
}
if (!_global.mx.events.EventDispatcher) {
var v1 = function () {};
mx.events.EventDispatcher = v1;
var v2 = v1.prototype;
v1._removeEventListener = function (queue, event, handler) {
if (queue != undefined) {
var v4 = queue.length;
var v1;
v1 = 0;
while (v1 < v4) {
var v2 = queue[v1];
if (v2 == handler) {
queue.splice(v1, 1);
return undefined;
}
++v1;
}
}
};
v1.initialize = function (object) {
if (mx.events.EventDispatcher._fEventDispatcher == undefined) {
mx.events.EventDispatcher._fEventDispatcher = new mx.events.EventDispatcher();
}
object.addEventListener = mx.events.EventDispatcher._fEventDispatcher.addEventListener;
object.removeEventListener = mx.events.EventDispatcher._fEventDispatcher.removeEventListener;
object.dispatchEvent = mx.events.EventDispatcher._fEventDispatcher.dispatchEvent;
object.dispatchQueue = mx.events.EventDispatcher._fEventDispatcher.dispatchQueue;
};
v2.dispatchQueue = function (queueObj, eventObj) {
var v7 = '__q_' + eventObj.type;
var v4 = queueObj[v7];
if (v4 != undefined) {
var v5;
for (v5 in v4) {
var v1 = v4[v5];
var v3 = typeof v1;
if (v3 == 'object' || v3 == 'movieclip') {
if (v1.handleEvent != undefined) {
v1.handleEvent(eventObj);
}
if (v1[eventObj.type] != undefined) {
if (mx.events.EventDispatcher.exceptions[eventObj.type] == undefined) {
v1[eventObj.type](eventObj);
}
}
} else {
v1.apply(queueObj, [eventObj]);
}
}
}
};
v2.dispatchEvent = function (eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + 'Handler'](eventObj);
this.dispatchQueue(this, eventObj);
};
v2.addEventListener = function (event, handler) {
var v3 = '__q_' + event;
if (this[v3] == undefined) {
this[v3] = new Array();
}
_global.ASSetPropFlags(this, v3, 1);
mx.events.EventDispatcher._removeEventListener(this[v3], event, handler);
this[v3].push(handler);
};
v2.removeEventListener = function (event, handler) {
var v2 = '__q_' + event;
mx.events.EventDispatcher._removeEventListener(this[v2], event, handler);
};
v1._fEventDispatcher = undefined;
v1.exceptions = {'move': 1, 'draw': 1, 'load': 1};
ASSetPropFlags(mx.events.EventDispatcher.prototype, null, 1);
}
#endinitclip
}
movieClip 1432 __Packages.mx.events.UIEventDispatcher {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.events) {
_global.mx.events = new Object();
}
if (!_global.mx.events.UIEventDispatcher) {
var v1 = function () {
super();
};
mx.events.UIEventDispatcher = v1;
var v2 = new mx.events.EventDispatcher();
mx.events.UIEventDispatcher.prototype = v2;
v1.addKeyEvents = function (obj) {
if (obj.keyHandler == undefined) {
obj.keyHandler = new Object();
var v1 = obj.keyHandler;
v1.owner = obj;
v1.onKeyDown = mx.events.UIEventDispatcher._fEventDispatcher.onKeyDown;
v1.onKeyUp = mx.events.UIEventDispatcher._fEventDispatcher.onKeyUp;
}
Key.addListener(obj.keyHandler);
};
v1.removeKeyEvents = function (obj) {
Key.removeListener(obj.keyHandler);
};
v1.addLoadEvents = function (obj) {
if (obj.onLoad == undefined) {
obj.onLoad = mx.events.UIEventDispatcher._fEventDispatcher.onLoad;
obj.onUnload = mx.events.UIEventDispatcher._fEventDispatcher.onUnload;
if (obj.getBytesTotal() == obj.getBytesLoaded()) {
obj.doLater(obj, 'onLoad');
}
}
};
v1.removeLoadEvents = function (obj) {
delete obj.onLoad;
delete obj.onUnload;
};
v1.initialize = function (obj) {
if (mx.events.UIEventDispatcher._fEventDispatcher == undefined) {
mx.events.UIEventDispatcher._fEventDispatcher = new mx.events.UIEventDispatcher();
}
obj.addEventListener = mx.events.UIEventDispatcher._fEventDispatcher.__addEventListener;
obj.__origAddEventListener = mx.events.UIEventDispatcher._fEventDispatcher.addEventListener;
obj.removeEventListener = mx.events.UIEventDispatcher._fEventDispatcher.removeEventListener;
obj.dispatchEvent = mx.events.UIEventDispatcher._fEventDispatcher.dispatchEvent;
obj.dispatchQueue = mx.events.UIEventDispatcher._fEventDispatcher.dispatchQueue;
};
v2.dispatchEvent = function (eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + 'Handler'](eventObj);
this.dispatchQueue(mx.events.EventDispatcher, eventObj);
this.dispatchQueue(this, eventObj);
};
v2.onKeyDown = function (Void) {
this.owner.dispatchEvent({'type': 'keyDown', 'code': Key.getCode(), 'ascii': Key.getAscii(), 'shiftKey': Key.isDown(16), 'ctrlKey': Key.isDown(17)});
};
v2.onKeyUp = function (Void) {
this.owner.dispatchEvent({'type': 'keyUp', 'code': Key.getCode(), 'ascii': Key.getAscii(), 'shiftKey': Key.isDown(16), 'ctrlKey': Key.isDown(17)});
};
v2.onLoad = function (Void) {
if (this.__sentLoadEvent != true) {
this.dispatchEvent({'type': 'load'});
}
this.__sentLoadEvent = true;
};
v2.onUnload = function (Void) {
this.dispatchEvent({'type': 'unload'});
};
v2.__addEventListener = function (event, handler) {
this.__origAddEventListener(event, handler);
var v3 = mx.events.UIEventDispatcher.lowLevelEvents;
for (var v5 in v3) {
if (mx.events.UIEventDispatcher[v5][event] != undefined) {
var v2 = v3[v5][0];
mx.events.UIEventDispatcher[v2](this);
}
}
};
v2.removeEventListener = function (event, handler) {
var v6 = '__q_' + event;
mx.events.EventDispatcher._removeEventListener(this[v6], event, handler);
if (this[v6].length == 0) {
var v2 = mx.events.UIEventDispatcher.lowLevelEvents;
for (var v5 in v2) {
if (mx.events.UIEventDispatcher[v5][event] != undefined) {
var v3 = v2[v5][1];
mx.events.UIEventDispatcher[v2[v5][1]](this);
}
}
}
};
v1.keyEvents = {'keyDown': 1, 'keyUp': 1};
v1.loadEvents = {'load': 1, 'unload': 1};
v1.lowLevelEvents = {'keyEvents': ['addKeyEvents', 'removeKeyEvents'], 'loadEvents': ['addLoadEvents', 'removeLoadEvents']};
v1._fEventDispatcher = undefined;
ASSetPropFlags(mx.events.UIEventDispatcher.prototype, null, 1);
}
#endinitclip
}
movieClip 1433 __Packages.mx.skins.ColoredSkinElement {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.ColoredSkinElement) {
var v1 = function () {};
mx.skins.ColoredSkinElement = v1;
var v2 = v1.prototype;
v2.setColor = function (c) {
if (c != undefined) {
var v2 = new Color(this);
v2.setRGB(c);
}
};
v2.draw = function (Void) {
this.setColor(this.getStyle(this._color));
this.onEnterFrame = undefined;
};
v2.invalidateStyle = function (Void) {
this.onEnterFrame = this.draw;
};
v1.setColorStyle = function (p, colorStyle) {
if (p._color == undefined) {
p._color = colorStyle;
}
p.setColor = mx.skins.ColoredSkinElement.mixins.setColor;
p.invalidateStyle = mx.skins.ColoredSkinElement.mixins.invalidateStyle;
p.draw = mx.skins.ColoredSkinElement.mixins.draw;
p.setColor(p.getStyle(colorStyle));
};
v1.mixins = new mx.skins.ColoredSkinElement();
ASSetPropFlags(mx.skins.ColoredSkinElement.prototype, null, 1);
}
#endinitclip
}
movieClip 1434 __Packages.mx.core.ext.UIObjectExtensions {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.core) {
_global.mx.core = new Object();
}
if (!_global.mx.core.ext) {
_global.mx.core.ext = new Object();
}
if (!_global.mx.core.ext.UIObjectExtensions) {
var v1 = function () {};
mx.core.ext.UIObjectExtensions = v1;
var v2 = v1.prototype;
v1.addGeometry = function (tf, ui) {
tf.addProperty('width', ui.__get__width, null);
tf.addProperty('height', ui.__get__height, null);
tf.addProperty('left', ui.__get__left, null);
tf.addProperty('x', ui.__get__x, null);
tf.addProperty('top', ui.__get__top, null);
tf.addProperty('y', ui.__get__y, null);
tf.addProperty('right', ui.__get__right, null);
tf.addProperty('bottom', ui.__get__bottom, null);
tf.addProperty('visible', ui.__get__visible, ui.__set__visible);
};
v1.Extensions = function () {
if (mx.core.ext.UIObjectExtensions.bExtended == true) {
return true;
}
mx.core.ext.UIObjectExtensions.bExtended = true;
var v6 = mx.core.UIObject.prototype;
var v9 = mx.skins.SkinElement.prototype;
mx.core.ext.UIObjectExtensions.addGeometry(v9, v6);
mx.events.UIEventDispatcher.initialize(v6);
var v13 = mx.skins.ColoredSkinElement;
mx.styles.CSSTextStyles.addTextStyles(v6);
var v5 = MovieClip.prototype;
v5.getTopLevel = v6.getTopLevel;
v5.createLabel = v6.createLabel;
v5.createObject = v6.createObject;
v5.createClassObject = v6.createClassObject;
v5.createEmptyObject = v6.createEmptyObject;
v5.destroyObject = v6.destroyObject;
_global.ASSetPropFlags(v5, 'getTopLevel', 1);
_global.ASSetPropFlags(v5, 'createLabel', 1);
_global.ASSetPropFlags(v5, 'createObject', 1);
_global.ASSetPropFlags(v5, 'createClassObject', 1);
_global.ASSetPropFlags(v5, 'createEmptyObject', 1);
_global.ASSetPropFlags(v5, 'destroyObject', 1);
v5.__getTextFormat = v6.__getTextFormat;
v5._getTextFormat = v6._getTextFormat;
v5.getStyleName = v6.getStyleName;
v5.getStyle = v6.getStyle;
_global.ASSetPropFlags(v5, '__getTextFormat', 1);
_global.ASSetPropFlags(v5, '_getTextFormat', 1);
_global.ASSetPropFlags(v5, 'getStyleName', 1);
_global.ASSetPropFlags(v5, 'getStyle', 1);
var v7 = TextField.prototype;
mx.core.ext.UIObjectExtensions.addGeometry(v7, v6);
v7.addProperty('enabled', function () {
return this.__enabled;
}, function (x) {
this.__enabled = x;
this.invalidateStyle();
});
v7.move = v9.move;
v7.setSize = v9.setSize;
v7.invalidateStyle = function () {
this.invalidateFlag = true;
};
v7.draw = function () {
if (this.invalidateFlag) {
this.invalidateFlag = false;
var v2 = this._getTextFormat();
this.setTextFormat(v2);
this.setNewTextFormat(v2);
this.embedFonts = v2.embedFonts == true;
if (this.__text != undefined) {
if (this.text == '') {
this.text = this.__text;
}
delete this.__text;
}
this._visible = true;
}
};
v7.setColor = function (color) {
this.textColor = color;
};
v7.getStyle = v5.getStyle;
v7.__getTextFormat = v6.__getTextFormat;
v7.setValue = function (v) {
this.text = v;
};
v7.getValue = function () {
return this.text;
};
v7.addProperty('value', function () {
return this.getValue();
}, function (v) {
this.setValue(v);
});
v7._getTextFormat = function () {
var v2 = this.stylecache.tf;
if (v2 != undefined) {
return v2;
}
v2 = new TextFormat();
this.__getTextFormat(v2);
this.stylecache.tf = v2;
if (this.__enabled == false) {
if (this.enabledColor == undefined) {
var v4 = this.getTextFormat();
this.enabledColor = v4.color;
}
var v3 = this.getStyle('disabledColor');
v2.color = v3;
return v2;
}
if (this.enabledColor != undefined) {
if (v2.color == undefined) {
v2.color = this.enabledColor;
}
}
return v2;
};
v7.getPreferredWidth = function () {
this.draw();
return this.textWidth + 4;
};
v7.getPreferredHeight = function () {
this.draw();
return this.textHeight + 4;
};
TextFormat.prototype.getTextExtent2 = function (s) {
var v3 = _root._getTextExtent;
if (v3 == undefined) {
_root.createTextField('_getTextExtent', -2, 0, 0, 1000, 100);
v3 = _root._getTextExtent;
v3._visible = false;
}
_root._getTextExtent.text = s;
var v4 = this.align;
this.align = 'left';
_root._getTextExtent.setTextFormat(this);
this.align = v4;
return {'width': v3.textWidth, 'height': v3.textHeight};
};
if (_global.style == undefined) {
_global.style = new mx.styles.CSSStyleDeclaration();
_global.cascadingStyles = true;
_global.styles = new Object();
_global.skinRegistry = new Object();
if (_global._origWidth == undefined) {
_global.origWidth = Stage.width;
_global.origHeight = Stage.height;
}
}
var v4 = _root;
while (v4._parent != undefined) {
v4 = v4._parent;
}
v4.addProperty('width', function () {
return Stage.width;
}, null);
v4.addProperty('height', function () {
return Stage.height;
}, null);
_global.ASSetPropFlags(v4, 'width', 1);
_global.ASSetPropFlags(v4, 'height', 1);
return true;
};
v1.bExtended = false;
v1.UIObjectExtended = mx.core.ext.UIObjectExtensions.Extensions();
v1.UIObjectDependency = mx.core.UIObject;
v1.SkinElementDependency = mx.skins.SkinElement;
v1.CSSTextStylesDependency = mx.styles.CSSTextStyles;
v1.UIEventDispatcherDependency = mx.events.UIEventDispatcher;
ASSetPropFlags(mx.core.ext.UIObjectExtensions.prototype, null, 1);
}
#endinitclip
}
movieClip 1435 __Packages.mx.skins.halo.Defaults {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.halo) {
_global.mx.skins.halo = new Object();
}
if (!_global.mx.skins.halo.Defaults) {
var v1 = function () {};
mx.skins.halo.Defaults = v1;
var v2 = v1.prototype;
v1.setThemeDefaults = function () {
var v2 = _global.style;
v2.themeColor = 8453965;
v2.disabledColor = 8684164;
v2.modalTransparency = 0;
v2.filled = true;
v2.stroked = true;
v2.strokeWidth = 1;
v2.strokeColor = 0;
v2.fillColor = 16777215;
v2.repeatInterval = 35;
v2.repeatDelay = 500;
v2.fontFamily = '_sans';
v2.fontSize = 12;
v2.selectionColor = 13500353;
v2.rollOverColor = 14942166;
v2.useRollOver = true;
v2.backgroundDisabledColor = 14540253;
v2.selectionDisabledColor = 14540253;
v2.selectionDuration = 200;
v2.openDuration = 250;
v2.borderStyle = 'inset';
v2.color = 734012;
v2.textSelectedColor = 24371;
v2.textRollOverColor = 2831164;
v2.textDisabledColor = 16777215;
v2.vGridLines = true;
v2.hGridLines = false;
v2.vGridLineColor = 6710886;
v2.hGridLineColor = 6710886;
v2.headerColor = 15395562;
v2.indentation = 17;
v2.folderOpenIcon = 'TreeFolderOpen';
v2.folderClosedIcon = 'TreeFolderClosed';
v2.defaultLeafIcon = 'TreeNodeIcon';
v2.disclosureOpenIcon = 'TreeDisclosureOpen';
v2.disclosureClosedIcon = 'TreeDisclosureClosed';
v2.popupDuration = 150;
v2.todayColor = 6710886;
_global.styles.ScrollSelectList = new mx.styles.CSSStyleDeclaration();
v2 = _global.styles.ScrollSelectList;
v2.backgroundColor = 16777215;
v2.borderColor = 13290186;
v2.borderStyle = 'inset';
_global.styles.ComboBox = new mx.styles.CSSStyleDeclaration();
v2 = _global.styles.ComboBox;
v2.borderStyle = 'inset';
_global.styles.NumericStepper = new mx.styles.CSSStyleDeclaration();
v2 = _global.styles.NumericStepper;
v2.textAlign = 'center';
_global.styles.RectBorder = new mx.styles.CSSStyleDeclaration();
v2 = _global.styles.RectBorder;
v2.borderColor = 14015965;
v2.buttonColor = 7305079;
v2.shadowColor = 15658734;
v2.highlightColor = 12897484;
v2.shadowCapColor = 14015965;
v2.borderCapColor = 9542041;
var v4 = new Object();
v4.borderColor = 16711680;
v4.buttonColor = 16711680;
v4.shadowColor = 16711680;
v4.highlightColor = 16711680;
v4.shadowCapColor = 16711680;
v4.borderCapColor = 16711680;
mx.core.UIComponent.prototype.origBorderStyles = v4;
var v3;
_global.styles.TextInput = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.TextInput;
v3.backgroundColor = 16777215;
v3.borderStyle = 'inset';
_global.styles.TextArea = _global.styles.TextInput;
_global.styles.Window = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.Window;
v3.borderStyle = 'default';
_global.styles.windowStyles = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.windowStyles;
v3.fontWeight = 'bold';
_global.styles.dataGridStyles = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.dataGridStyles;
v3.fontWeight = 'bold';
_global.styles.Alert = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.Alert;
v3.borderStyle = 'alert';
_global.styles.ScrollView = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.ScrollView;
v3.borderStyle = 'inset';
_global.styles.View = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.View;
v3.borderStyle = 'none';
_global.styles.ProgressBar = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.ProgressBar;
v3.color = 11187123;
v3.fontWeight = 'bold';
_global.styles.AccordionHeader = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.AccordionHeader;
v3.fontWeight = 'bold';
v3.fontSize = '11';
_global.styles.Accordion = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.Accordion;
v3.borderStyle = 'solid';
v3.backgroundColor = 16777215;
v3.borderColor = 9081738;
v3.headerHeight = 22;
v3.marginBottom = -1;
v3.marginTop = -1;
v3.marginRight = -1;
v3.marginLeft = -1;
v3.verticalGap = -1;
_global.styles.DateChooser = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.DateChooser;
v3.borderColor = 9542041;
v3.headerColor = 16777215;
_global.styles.CalendarLayout = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.CalendarLayout;
v3.fontSize = 10;
v3.textAlign = 'right';
v3.color = 2831164;
_global.styles.WeekDayStyle = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.WeekDayStyle;
v3.fontWeight = 'bold';
v3.fontSize = 11;
v3.textAlign = 'center';
v3.color = 2831164;
_global.styles.TodayStyle = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.TodayStyle;
v3.color = 16777215;
_global.styles.HeaderDateText = new mx.styles.CSSStyleDeclaration();
v3 = _global.styles.HeaderDateText;
v3.fontSize = 12;
v3.fontWeight = 'bold';
v3.textAlign = 'center';
};
v2.drawRoundRect = function (x, y, w, h, r, c, alpha, rot, gradient, ratios) {
if (typeof r == 'object') {
var v18 = r.br;
var v16 = r.bl;
var v15 = r.tl;
var v10 = r.tr;
} else {
var v10 = r;
var v15 = v10;
var v16 = v15;
var v18 = v16;
}
if (typeof c == 'object') {
if (typeof alpha != 'object') {
var v9 = [alpha, alpha];
} else {
var v9 = alpha;
}
if (ratios == undefined) {
ratios = [0, 255];
}
var v14 = h * 0.7;
if (typeof rot != 'object') {
var v11 = {'matrixType': 'box', 'x': -v14, 'y': v14, 'w': w * 2, 'h': h * 4, 'r': rot * 0.0174532925199433};
} else {
var v11 = rot;
}
if (gradient == 'radial') {
this.beginGradientFill('radial', c, v9, ratios, v11);
} else {
this.beginGradientFill('linear', c, v9, ratios, v11);
}
} else {
if (c != undefined) {
this.beginFill(c, alpha);
}
}
r = v18;
var v13 = r - r * Math.SQRT1_2;
var v12 = r - r * 0.414213562373095;
this.moveTo(x + w, y + h - r);
this.lineTo(x + w, y + h - r);
this.curveTo(x + w, y + h - v12, x + w - v13, y + h - v13);
this.curveTo(x + w - v12, y + h, x + w - r, y + h);
r = v16;
v13 = r - r * Math.SQRT1_2;
v12 = r - r * 0.414213562373095;
this.lineTo(x + r, y + h);
this.curveTo(x + v12, y + h, x + v13, y + h - v13);
this.curveTo(x, y + h - v12, x, y + h - r);
r = v15;
v13 = r - r * Math.SQRT1_2;
v12 = r - r * 0.414213562373095;
this.lineTo(x, y + r);
this.curveTo(x, y + v12, x + v13, y + v13);
this.curveTo(x + v12, y, x + r, y);
r = v10;
v13 = r - r * Math.SQRT1_2;
v12 = r - r * 0.414213562373095;
this.lineTo(x + w - r, y);
this.curveTo(x + w - v12, y, x + w - v13, y + v13);
this.curveTo(x + w, y + v12, x + w, y + r);
this.lineTo(x + w, y + h - r);
if (c != undefined) {
this.endFill();
}
};
v1.classConstruct = function () {
mx.core.ext.UIObjectExtensions.Extensions();
mx.skins.halo.Defaults.setThemeDefaults();
mx.core.UIObject.prototype.drawRoundRect = mx.skins.halo.Defaults.prototype.drawRoundRect;
return true;
};
v1.classConstructed = mx.skins.halo.Defaults.classConstruct();
v1.CSSStyleDeclarationDependency = mx.styles.CSSStyleDeclaration;
v1.UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
v1.UIObjectDependency = mx.core.UIObject;
ASSetPropFlags(mx.skins.halo.Defaults.prototype, null, 1);
}
#endinitclip
}
movieClip 1436 __Packages.mx.managers.DepthManager {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.managers) {
_global.mx.managers = new Object();
}
if (!_global.mx.managers.DepthManager) {
var v1 = function () {
MovieClip.prototype.createClassChildAtDepth = this.createClassChildAtDepth;
MovieClip.prototype.createChildAtDepth = this.createChildAtDepth;
MovieClip.prototype.setDepthTo = this.setDepthTo;
MovieClip.prototype.setDepthAbove = this.setDepthAbove;
MovieClip.prototype.setDepthBelow = this.setDepthBelow;
MovieClip.prototype.findNextAvailableDepth = this.findNextAvailableDepth;
MovieClip.prototype.shuffleDepths = this.shuffleDepths;
MovieClip.prototype.getDepthByFlag = this.getDepthByFlag;
MovieClip.prototype.buildDepthTable = this.buildDepthTable;
_global.ASSetPropFlags(MovieClip.prototype, 'createClassChildAtDepth', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'createChildAtDepth', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'setDepthTo', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'setDepthAbove', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'setDepthBelow', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'findNextAvailableDepth', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'shuffleDepths', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'getDepthByFlag', 1);
_global.ASSetPropFlags(MovieClip.prototype, 'buildDepthTable', 1);
};
mx.managers.DepthManager = v1;
var v2 = v1.prototype;
v1.sortFunction = function (a, b) {
if (a.getDepth() > b.getDepth()) {
return 1;
}
return -1;
};
v1.test = function (depth) {
if (depth == mx.managers.DepthManager.reservedDepth) {
return false;
} else {
return true;
}
};
v1.createClassObjectAtDepth = function (className, depthSpace, initObj) {
var v1;
switch (depthSpace) {
case mx.managers.DepthManager.kCursor:
v1 = mx.managers.DepthManager.holder.createClassChildAtDepth(className, mx.managers.DepthManager.kTopmost, initObj);
return v1;
case mx.managers.DepthManager.kTooltip:
v1 = mx.managers.DepthManager.holder.createClassChildAtDepth(className, mx.managers.DepthManager.kTop, initObj);
return v1;
}
return v1;
};
v1.createObjectAtDepth = function (linkageName, depthSpace, initObj) {
var v1;
switch (depthSpace) {
case mx.managers.DepthManager.kCursor:
v1 = mx.managers.DepthManager.holder.createChildAtDepth(linkageName, mx.managers.DepthManager.kTopmost, initObj);
return v1;
case mx.managers.DepthManager.kTooltip:
v1 = mx.managers.DepthManager.holder.createChildAtDepth(linkageName, mx.managers.DepthManager.kTop, initObj);
return v1;
}
return v1;
};
v2.createClassChildAtDepth = function (className, depthFlag, initObj) {
if (this._childCounter == undefined) {
this._childCounter = 0;
}
var v3 = this.buildDepthTable();
var v2 = this.getDepthByFlag(depthFlag, v3);
var v6 = 'down';
if (depthFlag == mx.managers.DepthManager.kBottom) {
v6 = 'up';
}
var v5;
if (v3[v2] != undefined) {
v5 = v2;
v2 = this.findNextAvailableDepth(v2, v3, v6);
}
var v4 = this.createClassObject(className, 'depthChild' + this._childCounter++, v2, initObj);
if (v5 != undefined) {
v3[v2] = v4;
this.shuffleDepths(v4, v5, v3, v6);
}
if (depthFlag == mx.managers.DepthManager.kTopmost) {
v4._topmost = true;
}
return v4;
};
v2.createChildAtDepth = function (linkageName, depthFlag, initObj) {
if (this._childCounter == undefined) {
this._childCounter = 0;
}
var v3 = this.buildDepthTable();
var v2 = this.getDepthByFlag(depthFlag, v3);
var v6 = 'down';
if (depthFlag == mx.managers.DepthManager.kBottom) {
v6 = 'up';
}
var v5;
if (v3[v2] != undefined) {
v5 = v2;
v2 = this.findNextAvailableDepth(v2, v3, v6);
}
var v4 = this.createObject(linkageName, 'depthChild' + this._childCounter++, v2, initObj);
if (v5 != undefined) {
v3[v2] = v4;
this.shuffleDepths(v4, v5, v3, v6);
}
if (depthFlag == mx.managers.DepthManager.kTopmost) {
v4._topmost = true;
}
return v4;
};
v2.setDepthTo = function (depthFlag) {
var v2 = this._parent.buildDepthTable();
var v3 = this._parent.getDepthByFlag(depthFlag, v2);
if (v2[v3] != undefined) {
this.shuffleDepths(this, v3, v2, undefined);
} else {
this.swapDepths(v3);
}
if (depthFlag == mx.managers.DepthManager.kTopmost) {
this._topmost = true;
} else {
delete this._topmost;
}
};
v2.setDepthAbove = function (targetInstance) {
if (targetInstance._parent != this._parent) {
return undefined;
}
var v2 = targetInstance.getDepth() + 1;
var v3 = this._parent.buildDepthTable();
if (v3[v2] != undefined && this.getDepth() < v2) {
v2 -= 1;
}
if (v2 > mx.managers.DepthManager.highestDepth) {
v2 = mx.managers.DepthManager.highestDepth;
}
if (v2 == mx.managers.DepthManager.highestDepth) {
this._parent.shuffleDepths(this, v2, v3, 'down');
} else {
if (v3[v2] != undefined) {
this._parent.shuffleDepths(this, v2, v3, undefined);
} else {
this.swapDepths(v2);
}
}
};
v2.setDepthBelow = function (targetInstance) {
if (targetInstance._parent != this._parent) {
return undefined;
}
var v6 = targetInstance.getDepth() - 1;
var v3 = this._parent.buildDepthTable();
if (v3[v6] != undefined && this.getDepth() > v6) {
v6 += 1;
}
var v4 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
var v5;
for (v5 in v3) {
var v2 = v3[v5];
if (v2._parent != undefined) {
v4 = Math.min(v4, v2.getDepth());
}
}
if (v6 < v4) {
v6 = v4;
}
if (v6 == v4) {
this._parent.shuffleDepths(this, v6, v3, 'up');
} else {
if (v3[v6] != undefined) {
this._parent.shuffleDepths(this, v6, v3, undefined);
} else {
this.swapDepths(v6);
}
}
};
v2.findNextAvailableDepth = function (targetDepth, depthTable, direction) {
var v5 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
if (targetDepth < v5) {
targetDepth = v5;
}
if (depthTable[targetDepth] == undefined) {
return targetDepth;
}
var v2 = targetDepth;
var v1 = targetDepth;
if (direction == 'down') {
while (depthTable[v1] != undefined) {
--v1;
}
return v1;
}
while (depthTable[v2] != undefined) {
++v2;
}
return v2;
};
v2.shuffleDepths = function (subject, targetDepth, depthTable, direction) {
var v9 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
var v8 = v9;
var v5;
for (v5 in depthTable) {
var v7 = depthTable[v5];
if (v7._parent != undefined) {
v9 = Math.min(v9, v7.getDepth());
}
}
if (direction == undefined) {
if (subject.getDepth() > targetDepth) {
direction = 'up';
} else {
direction = 'down';
}
}
var v1 = new Array();
for (v5 in depthTable) {
v7 = depthTable[v5];
if (v7._parent != undefined) {
v1.push(v7);
}
}
v1.sort(mx.managers.DepthManager.sortFunction);
if (direction == 'up') {
var v3;
var v11;
while (v1.length > 0) {
v3 = v1.pop();
if (v3 == subject) {
break;
}
}
while (v1.length > 0) {
v11 = subject.getDepth();
v3 = v1.pop();
var v4 = v3.getDepth();
if (v11 > v4 + 1) {
if (v4 >= 0) {
subject.swapDepths(v4 + 1);
} else {
if (v11 > v8 && v4 < v8) {
subject.swapDepths(v8);
}
}
}
subject.swapDepths(v3);
if (v4 == targetDepth) {
break;
}
}
} else {
if (direction == 'down') {
var v3;
while (v1.length > 0) {
v3 = v1.shift();
if (v3 == subject) {
break;
}
}
while (v1.length > 0) {
var v11 = v3.getDepth();
v3 = v1.shift();
var v4 = v3.getDepth();
if (v11 < v4 - 1 && v4 > 0) {
subject.swapDepths(v4 - 1);
}
subject.swapDepths(v3);
if (v4 == targetDepth) {
break;
}
}
}
}
};
v2.getDepthByFlag = function (depthFlag, depthTable) {
var v2 = 0;
if (depthFlag == mx.managers.DepthManager.kTop || depthFlag == mx.managers.DepthManager.kNotopmost) {
var v5 = 0;
var v7 = false;
var v8;
for (v8 in depthTable) {
var v9 = depthTable[v8];
var v3 = typeof v9;
if (v3 == 'movieclip' || v3 == 'object' && v9.__getTextFormat != undefined) {
if (v9.getDepth() <= mx.managers.DepthManager.highestDepth) {
if (!v9._topmost) {
v2 = Math.max(v2, v9.getDepth());
} else {
if (!v7) {
v5 = v9.getDepth();
v7 = true;
} else {
v5 = Math.min(v5, v9.getDepth());
}
}
}
}
}
v2 += 20;
if (v7) {
if (v2 >= v5) {
v2 = v5 - 1;
}
}
} else {
if (depthFlag == mx.managers.DepthManager.kBottom) {
for (var v8 in depthTable) {
var v9 = depthTable[v8];
var v3 = typeof v9;
if (v3 == 'movieclip' || v3 == 'object' && v9.__getTextFormat != undefined) {
if (v9.getDepth() <= mx.managers.DepthManager.highestDepth) {
v2 = Math.min(v2, v9.getDepth());
}
}
}
v2 -= 20;
} else {
if (depthFlag == mx.managers.DepthManager.kTopmost) {
for (var v8 in depthTable) {
var v9 = depthTable[v8];
var v3 = typeof v9;
if (v3 == 'movieclip' || v3 == 'object' && v9.__getTextFormat != undefined) {
if (v9.getDepth() <= mx.managers.DepthManager.highestDepth) {
v2 = Math.max(v2, v9.getDepth());
}
}
}
v2 += 100;
}
}
}
if (v2 >= mx.managers.DepthManager.highestDepth) {
v2 = mx.managers.DepthManager.highestDepth;
}
var v6 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
for (v9 in depthTable) {
var v4 = depthTable[v9];
if (v4._parent != undefined) {
v6 = Math.min(v6, v4.getDepth());
}
}
if (v2 <= v6) {
v2 = v6;
}
return v2;
};
v2.buildDepthTable = function (Void) {
var v5 = new Array();
var v4;
for (v4 in this) {
var v2 = this[v4];
var v3 = typeof v2;
if (v3 == 'movieclip' || v3 == 'object' && v2.__getTextFormat != undefined) {
if (v2._parent == this) {
v5[v2.getDepth()] = v2;
}
}
}
return v5;
};
v1.reservedDepth = 1048575;
v1.highestDepth = 1048574;
v1.lowestDepth = -16383;
v1.numberOfAuthortimeLayers = 383;
v1.kCursor = 101;
v1.kTooltip = 102;
v1.kTop = 201;
v1.kBottom = 202;
v1.kTopmost = 203;
v1.kNotopmost = 204;
v1.holder = _root.createEmptyMovieClip('reserved', mx.managers.DepthManager.reservedDepth);
v1.__depthManager = new mx.managers.DepthManager();
ASSetPropFlags(mx.managers.DepthManager.prototype, null, 1);
}
#endinitclip
}
movieClip 1437 __Packages.mx.managers.SystemManager {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.managers) {
_global.mx.managers = new Object();
}
if (!_global.mx.managers.SystemManager) {
var v1 = function () {};
mx.managers.SystemManager = v1;
var v2 = v1.prototype;
v1.init = function (Void) {
if (mx.managers.SystemManager._initialized == false) {
mx.managers.SystemManager._initialized = true;
mx.events.EventDispatcher.initialize(mx.managers.SystemManager);
Mouse.addListener(mx.managers.SystemManager);
Stage.addListener(mx.managers.SystemManager);
mx.managers.SystemManager._xAddEventListener = mx.managers.SystemManager.addEventListener;
mx.managers.SystemManager.addEventListener = mx.managers.SystemManager.__addEventListener;
mx.managers.SystemManager._xRemoveEventListener = mx.managers.SystemManager.removeEventListener;
mx.managers.SystemManager.removeEventListener = mx.managers.SystemManager.__removeEventListener;
}
};
v1.addFocusManager = function (f) {
mx.managers.SystemManager.form = f;
f.focusManager.activate();
};
v1.removeFocusManager = function (f) {};
v1.onMouseDown = function (Void) {
var v1 = mx.managers.SystemManager.form;
v1.focusManager._onMouseDown();
};
v1.onResize = function (Void) {
var v7 = Stage.width;
var v6 = Stage.height;
var v9 = _global.origWidth;
var v8 = _global.origHeight;
var v3 = Stage.align;
var v5 = (v9 - v7) / 2;
var v4 = (v8 - v6) / 2;
if (v3 == 'T') {
v4 = 0;
} else {
if (v3 == 'B') {
v4 = v8 - v6;
} else {
if (v3 == 'L') {
v5 = 0;
} else {
if (v3 == 'R') {
v5 = v9 - v7;
} else {
if (v3 == 'LT') {
v4 = 0;
v5 = 0;
} else {
if (v3 == 'TR') {
v4 = 0;
v5 = v9 - v7;
} else {
if (v3 == 'LB') {
v4 = v8 - v6;
v5 = 0;
} else {
if (v3 == 'RB') {
v4 = v8 - v6;
v5 = v9 - v7;
}
}
}
}
}
}
}
}
if (mx.managers.SystemManager.__screen == undefined) {
mx.managers.SystemManager.__screen = new Object();
}
mx.managers.SystemManager.__screen.x = v5;
mx.managers.SystemManager.__screen.y = v4;
mx.managers.SystemManager.__screen.width = v7;
mx.managers.SystemManager.__screen.height = v6;
_root.focusManager.relocate();
mx.managers.SystemManager.dispatchEvent({'type': 'resize'});
};
v1.__get__screen = function () {
mx.managers.SystemManager.init();
if (mx.managers.SystemManager.__screen == undefined) {
mx.managers.SystemManager.onResize();
}
return mx.managers.SystemManager.__screen;
};
v1._initialized = false;
v1.idleFrames = 0;
v1.isMouseDown = false;
v1.forms = new Array();
v1.addProperty('screen', v1.__get__screen, function () {});
ASSetPropFlags(mx.managers.SystemManager.prototype, null, 1);
}
#endinitclip
}
movieClip 1438 __Packages.mx.managers.FocusManager {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.managers) {
_global.mx.managers = new Object();
}
if (!_global.mx.managers.FocusManager) {
var v1 = function () {
super();
};
mx.managers.FocusManager = v1;
var v2 = new mx.core.UIComponent();
mx.managers.FocusManager.prototype = v2;
v2.__get__defaultPushButton = function () {
return this.__defaultPushButton;
};
v2.__set__defaultPushButton = function (x) {
if (x != this.__defaultPushButton) {
this.__defaultPushButton.__set__emphasized(false);
this.__defaultPushButton = x;
this.defPushButton = x;
x.__set__emphasized(true);
}
return this.__get__defaultPushButton();
};
v2.getMaxTabIndex = function (o) {
var v3 = 0;
var v6;
for (v6 in o) {
var v2 = o[v6];
if (v2._parent == o) {
if (v2.tabIndex != undefined) {
if (v2.tabIndex > v3) {
v3 = v2.tabIndex;
}
}
if (v2.tabChildren == true) {
var v4 = this.getMaxTabIndex(v2);
if (v4 > v3) {
v3 = v4;
}
}
}
}
return v3;
};
v2.getNextTabIndex = function (Void) {
return this.getMaxTabIndex(this.form) + 1;
};
v2.__get__nextTabIndex = function () {
return this.getNextTabIndex();
};
v2.relocate = function (Void) {
var v2 = mx.managers.SystemManager.__get__screen();
this.move(v2.x - 1, v2.y - 1);
};
v2.init = function (Void) {
super.init();
this.tabEnabled = false;
this._height = 1;
this._width = 1;
this._y = -1;
this._x = -1;
this._alpha = 0;
this._parent.focusManager = this;
this._parent.tabChildren = true;
this._parent.tabEnabled = false;
this.form = this._parent;
this._parent.addEventListener('hide', this);
this._parent.addEventListener('reveal', this);
mx.managers.SystemManager.init();
mx.managers.SystemManager.addFocusManager(this.form);
this.tabCapture.tabIndex = 0;
this.watch('enabled', this.enabledChanged);
Selection.addListener(this);
this.lastMouse = new Object();
_global.ASSetPropFlags(this._parent, 'focusManager', 1);
_global.ASSetPropFlags(this._parent, 'tabChildren', 1);
_global.ASSetPropFlags(this._parent, 'tabEnabled', 1);
};
v2.enabledChanged = function (id, oldValue, newValue) {
this._visible = newValue;
return newValue;
};
v2.activate = function (Void) {
Key.addListener(this);
this._visible = true;
this.activated = this._visible;
if (this.lastFocus != undefined) {
this.bNeedFocus = true;
if (!mx.managers.SystemManager.isMouseDown) {
this.doLater(this, 'restoreFocus');
}
}
};
v2.deactivate = function (Void) {
Key.removeListener(this);
this._visible = false;
this.activated = this._visible;
var v2 = this.getSelectionFocus();
var v3 = this.getActualFocus(v2);
if (this.isOurFocus(v3)) {
this.lastSelFocus = v2;
this.lastFocus = v3;
}
this.cancelAllDoLaters();
};
v2.isOurFocus = function (o) {
if (o.focusManager == this) {
return true;
}
while (o != undefined) {
if (o.focusManager != undefined) {
return false;
}
if (o._parent == this._parent) {
return true;
}
o = o._parent;
}
return false;
};
v2.onSetFocus = function (o, n) {
if (n == null) {
if (this.activated) {
this.bNeedFocus = true;
}
} else {
var v2 = this.getFocus();
if (this.isOurFocus(v2)) {
this.bNeedFocus = false;
this.lastFocus = v2;
this.lastSelFocus = n;
}
}
};
v2.restoreFocus = function (Void) {
var v2 = this.lastSelFocus.hscroll;
if (v2 != undefined) {
var v5 = this.lastSelFocus.scroll;
var v4 = this.lastSelFocus.background;
}
this.lastFocus.setFocus();
var v3 = Selection;
Selection.setSelection(v3.lastBeginIndex, v3.lastEndIndex);
if (v2 != undefined) {
this.lastSelFocus.scroll = v5;
this.lastSelFocus.hscroll = v2;
this.lastSelFocus.background = v4;
}
};
v2.onUnload = function (Void) {
mx.managers.SystemManager.removeFocusManager(this.form);
};
v2.setFocus = function (o) {
if (o == null) {
Selection.setFocus(null);
} else {
if (o.setFocus == undefined) {
Selection.setFocus(o);
} else {
o.setFocus();
}
}
};
v2.getActualFocus = function (o) {
var v1 = o._parent;
while (v1 != undefined) {
if (v1.focusTextField != undefined) {
while (v1.focusTextField != undefined) {
o = v1;
v1 = v1._parent;
if (v1 == undefined) {
return undefined;
}
if (v1.focusTextField == undefined) {
return o;
}
}
}
if (v1.tabEnabled != true) {
return o;
}
o = v1;
v1 = o._parent;
}
return undefined;
};
v2.getSelectionFocus = function () {
var m = Selection.getFocus();
var o = eval(m);
return o;
};
v2.getFocus = function (Void) {
var v2 = this.getSelectionFocus();
return this.getActualFocus(v2);
};
v2.walkTree = function (p, index, groupName, dir, lookup, firstChild) {
var v5 = true;
var v11;
for (v11 in p) {
var v2 = p[v11];
if (v2._parent == p && v2.enabled != false && v2._visible != false && (v2.tabEnabled == true || v2.tabEnabled != false && (v2.onPress != undefined || v2.onRelease != undefined || v2.onReleaseOutside != undefined || v2.onDragOut != undefined || v2.onDragOver != undefined || v2.onRollOver != undefined || v2.onRollOut != undefined || v2 instanceof TextField))) {
if (v2._searchKey == this._searchKey) {
continue;
}
v2._searchKey = this._searchKey;
if (v2 != this._lastTarget) {
if ((v2.groupName != undefined || groupName != undefined) && v2.groupName == groupName) {
continue;
}
if (v2 instanceof TextField && v2.selectable == false) {
continue;
}
if (v5 || v2.groupName != undefined && v2.groupName == this._firstNode.groupName && v2.selected == true) {
if (firstChild) {
this._firstNode = v2;
firstChild = false;
}
}
if (this._nextIsNext == true) {
if (v2.groupName != undefined && v2.groupName == this._nextNode.groupName && v2.selected == true || this._nextNode == undefined && (v2.groupName == undefined || v2.groupName != undefined && v2.groupName != groupName)) {
this._nextNode = v2;
}
}
if (v2.groupName == undefined || groupName != v2.groupName) {
if (this._lastx.groupName != undefined && v2.groupName == this._lastx.groupName && this._lastx.selected == true) {
} else {
this._lastx = v2;
}
}
} else {
this._prevNode = this._lastx;
this._needPrev = false;
this._nextIsNext = true;
}
if (v2.tabIndex != undefined) {
if (v2.tabIndex == index) {
if (this._foundList[v2._name] == undefined) {
if (this._needPrev) {
this._prevObj = v2;
this._needPrev = false;
}
this._nextObj = v2;
}
}
if (dir && v2.tabIndex > index) {
if (this._nextObj == undefined || this._nextObj.tabIndex > v2.tabIndex && (v2.groupName == undefined || this._nextObj.groupName == undefined || v2.groupName != this._nextObj.groupName) || this._nextObj.groupName != undefined && this._nextObj.groupName == v2.groupName && this._nextObj.selected != true && (v2.selected == true || this._nextObj.tabIndex > v2.tabIndex)) {
this._nextObj = v2;
}
} else {
if (!dir && v2.tabIndex < index) {
if (this._prevObj == undefined || this._prevObj.tabIndex < v2.tabIndex && (v2.groupName == undefined || this._prevObj.groupName == undefined || v2.groupName != this._prevObj.groupName) || this._prevObj.groupName != undefined && this._prevObj.groupName == v2.groupName && this._prevObj.selected != true && (v2.selected == true || this._prevObj.tabIndex < v2.tabIndex)) {
this._prevObj = v2;
}
}
}
if (this._firstObj == undefined || v2.tabIndex < this._firstObj.tabIndex && (v2.groupName == undefined || this._firstObj.groupName == undefined || v2.groupName != this._firstObj.groupName) || this._firstObj.groupName != undefined && this._firstObj.groupName == v2.groupName && this._firstObj.selected != true && (v2.selected == true || v2.tabIndex < this._firstObj.tabIndex)) {
this._firstObj = v2;
}
if (this._lastObj == undefined || v2.tabIndex > this._lastObj.tabIndex && (v2.groupName == undefined || this._lastObj.groupName == undefined || v2.groupName != this._lastObj.groupName) || this._lastObj.groupName != undefined && this._lastObj.groupName == v2.groupName && this._lastObj.selected != true && (v2.selected == true || v2.tabIndex > this._lastObj.tabIndex)) {
this._lastObj = v2;
}
}
if (v2.tabChildren) {
this.getTabCandidateFromChildren(v2, index, groupName, dir, v5 && firstChild);
}
v5 = false;
} else {
if (v2._parent == p && v2.tabChildren == true && v2._visible != false) {
if (v2 == this._lastTarget) {
if (v2._searchKey == this._searchKey) {
continue;
}
v2._searchKey = this._searchKey;
if (this._prevNode == undefined) {
var v3 = this._lastx;
var v7 = false;
while (v3 != undefined) {
if (v3 == v2) {
v7 = true;
break;
}
v3 = v3._parent;
}
if (v7 == false) {
this._prevNode = this._lastx;
}
}
this._needPrev = false;
if (this._nextNode == undefined) {
this._nextIsNext = true;
}
} else {
if (!(v2.focusManager != undefined && v2.focusManager._parent == v2)) {
if (v2._searchKey == this._searchKey) {
continue;
}
v2._searchKey = this._searchKey;
this.getTabCandidateFromChildren(v2, index, groupName, dir, v5 && firstChild);
}
}
v5 = false;
}
}
}
this._lastNode = this._lastx;
if (lookup) {
if (p._parent != undefined) {
if (p != this._parent) {
if (this._prevNode == undefined && dir) {
this._needPrev = true;
} else {
if (this._nextNode == undefined && !dir) {
this._nextIsNext = false;
}
}
this._lastTarget = this._lastTarget._parent;
this.getTabCandidate(p._parent, index, groupName, dir, true);
}
}
}
};
v2.getTabCandidate = function (o, index, groupName, dir, firstChild) {
var v2;
var v3 = true;
if (o == this._parent) {
v2 = o;
v3 = false;
} else {
v2 = o._parent;
if (v2 == undefined) {
v2 = o;
v3 = false;
}
}
this.walkTree(v2, index, groupName, dir, v3, firstChild);
};
v2.getTabCandidateFromChildren = function (o, index, groupName, dir, firstChild) {
this.walkTree(o, index, groupName, dir, false, firstChild);
};
v2.getFocusManagerFromObject = function (o) {
while (o != undefined) {
if (o.focusManager != undefined) {
return o.focusManager;
}
o = o._parent;
}
return undefined;
};
v2.tabHandler = function (Void) {
this.bDrawFocus = true;
var v5 = this.getSelectionFocus();
var v4 = this.getActualFocus(v5);
if (v4 != v5) {
v5 = v4;
}
if (this.getFocusManagerFromObject(v5) != this) {
v5 == undefined;
}
if (v5 == undefined) {
v5 = this.form;
} else {
if (v5.tabIndex != undefined) {
if (this._foundList != undefined || this._foundList.tabIndex != v5.tabIndex) {
this._foundList = new Object();
this._foundList.tabIndex = v5.tabIndex;
}
this._foundList[v5._name] = v5;
}
}
var v3 = Key.isDown(16) != true;
this._searchKey = getTimer();
this._needPrev = true;
this._nextIsNext = false;
this._lastx = undefined;
this._firstNode = undefined;
this._lastNode = undefined;
this._nextNode = undefined;
this._prevNode = undefined;
this._firstObj = undefined;
this._lastObj = undefined;
this._nextObj = undefined;
this._prevObj = undefined;
this._lastTarget = v5;
var v6 = v5;
this.getTabCandidate(v6, (v5.tabIndex == undefined) ? 0 : v5.tabIndex, v5.groupName, v3, true);
var v2;
if (v3) {
if (this._nextObj != undefined) {
v2 = this._nextObj;
} else {
v2 = this._firstObj;
}
} else {
if (this._prevObj != undefined) {
v2 = this._prevObj;
} else {
v2 = this._lastObj;
}
}
if (v2.tabIndex != v5.tabIndex) {
this._foundList = new Object();
this._foundList.tabIndex = v2.tabIndex;
this._foundList[v2._name] = v2;
} else {
if (this._foundList == undefined) {
this._foundList = new Object();
this._foundList.tabIndex = v2.tabIndex;
}
this._foundList[v2._name] = v2;
}
if (v2 == undefined) {
if (v3 == false) {
if (this._nextNode != undefined) {
v2 = this._nextNode;
} else {
v2 = this._firstNode;
}
} else {
if (this._prevNode == undefined || v5 == this.form) {
v2 = this._lastNode;
} else {
v2 = this._prevNode;
}
}
}
if (v2 == undefined) {
return undefined;
}
this.lastTabFocus = v2;
this.setFocus(v2);
if (v2.emphasized != undefined) {
if (this.defPushButton != undefined) {
v5 = this.defPushButton;
this.defPushButton = v2;
v5.emphasized = false;
v2.emphasized = true;
}
} else {
if (this.defPushButton != undefined && this.defPushButton != this.__defaultPushButton) {
v5 = this.defPushButton;
this.defPushButton = this.__defaultPushButton;
v5.emphasized = false;
this.__defaultPushButton.__set__emphasized(true);
}
}
};
v2.onKeyDown = function (Void) {
mx.managers.SystemManager.idleFrames = 0;
if (this.defaultPushButtonEnabled) {
if (Key.getCode() == 13) {
if (this.__get__defaultPushButton() != undefined) {
this.doLater(this, 'sendDefaultPushButtonEvent');
}
}
}
};
v2.sendDefaultPushButtonEvent = function (Void) {
this.defPushButton.dispatchEvent({'type': 'click'});
};
v2.getMousedComponentFromChildren = function (x, y, o) {
for (var v7 in o) {
var v2 = o[v7];
if (v2._visible && v2.enabled && v2._parent == o && v2._searchKey != this._searchKey) {
v2._searchKey = this._searchKey;
if (v2.hitTest(x, y, true)) {
if (v2.onPress != undefined || v2.onRelease != undefined) {
return v2;
}
var v3 = this.getMousedComponentFromChildren(x, y, v2);
if (v3 != undefined) {
return v3;
}
return v2;
}
}
}
return undefined;
};
v2.mouseActivate = function (Void) {
if (!this.bNeedFocus) {
return undefined;
}
this._searchKey = getTimer();
var v2 = this.getMousedComponentFromChildren(this.lastMouse.x, this.lastMouse.y, this.form);
if (v2 instanceof mx.core.UIComponent) {
return undefined;
}
v2 = this.findFocusFromObject(v2);
if (v2 == this.lastFocus) {
return undefined;
}
if (v2 == undefined) {
this.doLater(this, 'restoreFocus');
return undefined;
}
var v3 = v2.hscroll;
if (v3 != undefined) {
var v6 = v2.scroll;
var v5 = v2.background;
}
this.setFocus(v2);
var v4 = Selection;
Selection.setSelection(v4.lastBeginIndex, v4.lastEndIndex);
if (v3 != undefined) {
v2.scroll = v6;
v2.hscroll = v3;
v2.background = v5;
}
};
v2._onMouseDown = function (Void) {
this.bDrawFocus = false;
if (this.lastFocus != undefined) {
this.lastFocus.drawFocus(false);
}
mx.managers.SystemManager.idleFrames = 0;
var v3 = Selection;
v3.lastBeginIndex = Selection.getBeginIndex();
v3.lastEndIndex = Selection.getEndIndex();
this.lastMouse.x = _root._xmouse;
this.lastMouse.y = _root._ymouse;
_root.localToGlobal(this.lastMouse);
};
v2.onMouseUp = function (Void) {
if (this._visible) {
this.doLater(this, 'mouseActivate');
}
};
v2.handleEvent = function (e) {
if (e.type == 'reveal') {
mx.managers.SystemManager.activate(this.form);
} else {
mx.managers.SystemManager.deactivate(this.form);
}
};
v1.enableFocusManagement = function () {
if (!mx.managers.FocusManager.initialized) {
mx.managers.FocusManager.initialized = true;
Object.registerClass('FocusManager', mx.managers.FocusManager);
if (_root.focusManager == undefined) {
_root.createClassObject(mx.managers.FocusManager, 'focusManager', mx.managers.DepthManager.highestDepth--);
}
}
};
v1.symbolName = 'FocusManager';
v1.symbolOwner = mx.managers.FocusManager;
v1.version = '2.0.2.126';
v2.className = 'FocusManager';
v2.bNeedFocus = false;
v2.bDrawFocus = false;
v2.defaultPushButtonEnabled = true;
v2.activated = true;
v1.initialized = false;
v1.UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
v2.addProperty('defaultPushButton', v2.__get__defaultPushButton, v2.__set__defaultPushButton);
v2.addProperty('nextTabIndex', v2.__get__nextTabIndex, function () {});
ASSetPropFlags(mx.managers.FocusManager.prototype, null, 1);
}
#endinitclip
}
movieClip 1439 __Packages.mx.skins.halo.FocusRect {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.halo) {
_global.mx.skins.halo = new Object();
}
if (!_global.mx.skins.halo.FocusRect) {
var v1 = function () {
super();
this.boundingBox_mc._visible = false;
this.boundingBox_mc._height = 0;
this.boundingBox_mc._width = 0;
};
mx.skins.halo.FocusRect = v1;
var v2 = new mx.skins.SkinElement();
mx.skins.halo.FocusRect.prototype = v2;
v2.draw = function (o) {
o.adjustFocusRect();
};
v2.setSize = function (w, h, r, a, rectCol) {
this._yscale = 100;
this._xscale = 100;
this.clear();
if (typeof r == 'object') {
r.br = r.br > 2 ? r.br - 2 : 0;
r.bl = r.bl > 2 ? r.bl - 2 : 0;
r.tr = r.tr > 2 ? r.tr - 2 : 0;
r.tl = r.tl > 2 ? r.tl - 2 : 0;
this.beginFill(rectCol, a * 0.3);
this.drawRoundRect(0, 0, w, h, r);
this.drawRoundRect(2, 2, w - 4, h - 4, r);
this.endFill();
r.br = r.br > 1 ? r.br + 1 : 0;
r.bl = r.bl > 1 ? r.bl + 1 : 0;
r.tr = r.tr > 1 ? r.tr + 1 : 0;
r.tl = r.tl > 1 ? r.tl + 1 : 0;
this.beginFill(rectCol, a * 0.3);
this.drawRoundRect(1, 1, w - 2, h - 2, r);
r.br = r.br > 1 ? r.br - 1 : 0;
r.bl = r.bl > 1 ? r.bl - 1 : 0;
r.tr = r.tr > 1 ? r.tr - 1 : 0;
r.tl = r.tl > 1 ? r.tl - 1 : 0;
this.drawRoundRect(2, 2, w - 4, h - 4, r);
this.endFill();
} else {
var v5;
if (r != 0) {
v5 = r - 2;
} else {
v5 = 0;
}
this.beginFill(rectCol, a * 0.3);
this.drawRoundRect(0, 0, w, h, r);
this.drawRoundRect(2, 2, w - 4, h - 4, v5);
this.endFill();
this.beginFill(rectCol, a * 0.3);
if (r != 0) {
v5 = r - 2;
r -= 1;
} else {
v5 = 0;
r = 0;
}
this.drawRoundRect(1, 1, w - 2, h - 2, r);
this.drawRoundRect(2, 2, w - 4, h - 4, v5);
this.endFill();
}
};
v2.handleEvent = function (e) {
if (e.type == 'unload') {
this._visible = true;
} else {
if (e.type == 'resize') {
e.target.adjustFocusRect();
} else {
if (e.type == 'move') {
e.target.adjustFocusRect();
}
}
}
};
v1.classConstruct = function () {
mx.core.UIComponent.prototype.drawFocus = function (focused) {
var v2 = this._parent.focus_mc;
if (!focused) {
v2._visible = false;
this.removeEventListener('unload', v2);
this.removeEventListener('move', v2);
this.removeEventListener('resize', v2);
} else {
if (v2 == undefined) {
v2 = this._parent.createChildAtDepth('FocusRect', mx.managers.DepthManager.kTop);
v2.tabEnabled = false;
this._parent.focus_mc = v2;
} else {
v2._visible = true;
}
v2.draw(this);
if (v2.getDepth() < this.getDepth()) {
v2.setDepthAbove(this);
}
this.addEventListener('unload', v2);
this.addEventListener('move', v2);
this.addEventListener('resize', v2);
}
};
mx.core.UIComponent.prototype.adjustFocusRect = function () {
var v2 = this.getStyle('themeColor');
if (v2 == undefined) {
v2 = 8453965;
}
var v3 = this._parent.focus_mc;
v3.setSize(this.width + 4, this.height + 4, 0, 100, v2);
v3.move(this.x - 2, this.y - 2);
};
TextField.prototype.drawFocus = mx.core.UIComponent.prototype.drawFocus;
TextField.prototype.adjustFocusRect = mx.core.UIComponent.prototype.adjustFocusRect;
mx.skins.halo.FocusRect.prototype.drawRoundRect = mx.skins.halo.Defaults.prototype.drawRoundRect;
return true;
};
v1.classConstructed = mx.skins.halo.FocusRect.classConstruct();
v1.DefaultsDependency = mx.skins.halo.Defaults;
v1.UIComponentDependency = mx.core.UIComponent;
ASSetPropFlags(mx.skins.halo.FocusRect.prototype, null, 1);
}
#endinitclip
}
movieClip 1440 __Packages.mx.managers.OverlappedWindows {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.managers) {
_global.mx.managers = new Object();
}
if (!_global.mx.managers.OverlappedWindows) {
var v1 = function () {};
mx.managers.OverlappedWindows = v1;
var v2 = v1.prototype;
v1.checkIdle = function (Void) {
if (mx.managers.SystemManager.idleFrames > 10) {
mx.managers.SystemManager.dispatchEvent({'type': 'idle'});
} else {
++mx.managers.SystemManager.idleFrames;
}
};
v1.__addEventListener = function (e, o, l) {
if (e == 'idle') {
if (mx.managers.SystemManager.interval == undefined) {
mx.managers.SystemManager.interval = setInterval(mx.managers.SystemManager.checkIdle, 100);
}
}
mx.managers.SystemManager._xAddEventListener(e, o, l);
};
v1.__removeEventListener = function (e, o, l) {
if (e == 'idle') {
if (mx.managers.SystemManager._xRemoveEventListener(e, o, l) == 0) {
clearInterval(mx.managers.SystemManager.interval);
}
} else {
mx.managers.SystemManager._xRemoveEventListener(e, o, l);
}
};
v1.onMouseDown = function (Void) {
mx.managers.SystemManager.idleFrames = 0;
mx.managers.SystemManager.isMouseDown = true;
var v5 = _root;
var v3;
var v8 = _root._xmouse;
var v7 = _root._ymouse;
if (mx.managers.SystemManager.form.modalWindow == undefined) {
if (mx.managers.SystemManager.forms.length > 1) {
var v6 = mx.managers.SystemManager.forms.length;
var v4;
v4 = 0;
while (v4 < v6) {
var v2 = mx.managers.SystemManager.forms[v4];
if (v2._visible) {
if (v2.hitTest(v8, v7)) {
if (v3 == undefined) {
v3 = v2.getDepth();
v5 = v2;
} else {
if (v3 < v2.getDepth()) {
v3 = v2.getDepth();
v5 = v2;
}
}
}
}
++v4;
}
if (v5 != mx.managers.SystemManager.form) {
mx.managers.SystemManager.activate(v5);
}
}
}
var v9 = mx.managers.SystemManager.form;
v9.focusManager._onMouseDown();
};
v1.onMouseMove = function (Void) {
mx.managers.SystemManager.idleFrames = 0;
};
v1.onMouseUp = function (Void) {
mx.managers.SystemManager.isMouseDown = false;
mx.managers.SystemManager.idleFrames = 0;
};
v1.activate = function (f) {
if (mx.managers.SystemManager.form != undefined) {
if (mx.managers.SystemManager.form != f && mx.managers.SystemManager.forms.length > 1) {
var v1 = mx.managers.SystemManager.form;
v1.focusManager.deactivate();
}
}
mx.managers.SystemManager.form = f;
f.focusManager.activate();
};
v1.deactivate = function (f) {
if (mx.managers.SystemManager.form != undefined) {
if (mx.managers.SystemManager.form == f && mx.managers.SystemManager.forms.length > 1) {
var v5 = mx.managers.SystemManager.form;
v5.focusManager.deactivate();
var v3 = mx.managers.SystemManager.forms.length;
var v1;
var v2;
v1 = 0;
while (v1 < v3) {
if (mx.managers.SystemManager.forms[v1] == f) {
v1 += 1;
while (v1 < v3) {
if (mx.managers.SystemManager.forms[v1]._visible == true) {
v2 = mx.managers.SystemManager.forms[v1];
}
++v1;
}
mx.managers.SystemManager.form = v2;
break;
} else {
if (mx.managers.SystemManager.forms[v1]._visible == true) {
v2 = mx.managers.SystemManager.forms[v1];
}
}
++v1;
}
v5 = mx.managers.SystemManager.form;
v5.focusManager.activate();
}
}
};
v1.addFocusManager = function (f) {
mx.managers.SystemManager.forms.push(f);
mx.managers.SystemManager.activate(f);
};
v1.removeFocusManager = function (f) {
var v3 = mx.managers.SystemManager.forms.length;
var v1;
v1 = 0;
while (v1 < v3) {
if (mx.managers.SystemManager.forms[v1] == f) {
if (mx.managers.SystemManager.form == f) {
mx.managers.SystemManager.deactivate(f);
}
mx.managers.SystemManager.forms.splice(v1, 1);
return undefined;
}
++v1;
}
};
v1.enableOverlappedWindows = function () {
if (!mx.managers.OverlappedWindows.initialized) {
mx.managers.OverlappedWindows.initialized = true;
mx.managers.SystemManager.checkIdle = mx.managers.OverlappedWindows.checkIdle;
mx.managers.SystemManager.__addEventListener = mx.managers.OverlappedWindows.__addEventListener;
mx.managers.SystemManager.__removeEventListener = mx.managers.OverlappedWindows.__removeEventListener;
mx.managers.SystemManager.onMouseDown = mx.managers.OverlappedWindows.onMouseDown;
mx.managers.SystemManager.onMouseMove = mx.managers.OverlappedWindows.onMouseMove;
mx.managers.SystemManager.onMouseUp = mx.managers.OverlappedWindows.onMouseUp;
mx.managers.SystemManager.activate = mx.managers.OverlappedWindows.activate;
mx.managers.SystemManager.deactivate = mx.managers.OverlappedWindows.deactivate;
mx.managers.SystemManager.addFocusManager = mx.managers.OverlappedWindows.addFocusManager;
mx.managers.SystemManager.removeFocusManager = mx.managers.OverlappedWindows.removeFocusManager;
}
};
v1.initialized = false;
v1.SystemManagerDependency = mx.managers.SystemManager;
ASSetPropFlags(mx.managers.OverlappedWindows.prototype, null, 1);
}
#endinitclip
}
movieClip 1441 __Packages.mx.styles.CSSSetStyle {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.styles) {
_global.mx.styles = new Object();
}
if (!_global.mx.styles.CSSSetStyle) {
var v1 = function () {};
mx.styles.CSSSetStyle = v1;
var v2 = v1.prototype;
v2._setStyle = function (styleProp, newValue) {
this[styleProp] = newValue;
if (mx.styles.StyleManager.TextStyleMap[styleProp] != undefined) {
if (styleProp == 'color') {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return undefined;
}
}
}
_level0.changeTextStyleInChildren(styleProp);
return undefined;
}
if (mx.styles.StyleManager.isColorStyle(styleProp)) {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return undefined;
}
}
if (styleProp == 'themeColor') {
var v7 = mx.styles.StyleManager.colorNames.haloBlue;
var v6 = mx.styles.StyleManager.colorNames.haloGreen;
var v8 = mx.styles.StyleManager.colorNames.haloOrange;
var v4 = {};
v4[v7] = 12188666;
v4[v6] = 13500353;
v4[v8] = 16766319;
var v5 = {};
v5[v7] = 13958653;
v5[v6] = 14942166;
v5[v8] = 16772787;
var v9 = v4[newValue];
var v10 = v5[newValue];
if (v9 == undefined) {
v9 = newValue;
}
if (v10 == undefined) {
v10 = newValue;
}
this.setStyle('selectionColor', v9);
this.setStyle('rollOverColor', v10);
}
_level0.changeColorStyleInChildren(this.styleName, styleProp, newValue);
} else {
if (styleProp == 'backgroundColor' && isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return undefined;
}
}
_level0.notifyStyleChangeInChildren(this.styleName, styleProp, newValue);
}
};
v2.changeTextStyleInChildren = function (styleProp) {
var v4 = getTimer();
var v5;
for (v5 in this) {
var v2 = this[v5];
if (v2._parent == this) {
if (v2.searchKey != v4) {
if (v2.stylecache != undefined) {
delete v2.stylecache.tf;
delete v2.stylecache[styleProp];
}
v2.invalidateStyle(styleProp);
v2.changeTextStyleInChildren(styleProp);
v2.searchKey = v4;
}
}
}
};
v2.changeColorStyleInChildren = function (sheetName, colorStyle, newValue) {
var v6 = getTimer();
var v7;
for (v7 in this) {
var v2 = this[v7];
if (v2._parent == this) {
if (v2.searchKey != v6) {
if (v2.getStyleName() == sheetName || sheetName == undefined || sheetName == '_global') {
if (v2.stylecache != undefined) {
delete v2.stylecache[colorStyle];
}
if (typeof v2._color == 'string') {
if (v2._color == colorStyle) {
var v4 = v2.getStyle(colorStyle);
if (colorStyle == 'color') {
if (this.stylecache.tf.color != undefined) {
this.stylecache.tf.color = v4;
}
}
v2.setColor(v4);
}
} else {
if (v2._color[colorStyle] != undefined) {
if (typeof v2 != 'movieclip') {
v2._parent.invalidateStyle();
} else {
v2.invalidateStyle(colorStyle);
}
}
}
}
v2.changeColorStyleInChildren(sheetName, colorStyle, newValue);
v2.searchKey = v6;
}
}
}
};
v2.notifyStyleChangeInChildren = function (sheetName, styleProp, newValue) {
var v5 = getTimer();
var v6;
for (v6 in this) {
var v2 = this[v6];
if (v2._parent == this) {
if (v2.searchKey != v5) {
if (v2.styleName == sheetName || v2.styleName != undefined && typeof v2.styleName == 'movieclip' || sheetName == undefined) {
if (v2.stylecache != undefined) {
delete v2.stylecache[styleProp];
delete v2.stylecache.tf;
}
delete v2.enabledColor;
v2.invalidateStyle(styleProp);
}
v2.notifyStyleChangeInChildren(sheetName, styleProp, newValue);
v2.searchKey = v5;
}
}
}
};
v2.setStyle = function (styleProp, newValue) {
if (this.stylecache != undefined) {
delete this.stylecache[styleProp];
delete this.stylecache.tf;
}
this[styleProp] = newValue;
if (mx.styles.StyleManager.isColorStyle(styleProp)) {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return undefined;
}
}
if (styleProp == 'themeColor') {
var v10 = mx.styles.StyleManager.colorNames.haloBlue;
var v9 = mx.styles.StyleManager.colorNames.haloGreen;
var v11 = mx.styles.StyleManager.colorNames.haloOrange;
var v6 = {};
v6[v10] = 12188666;
v6[v9] = 13500353;
v6[v11] = 16766319;
var v7 = {};
v7[v10] = 13958653;
v7[v9] = 14942166;
v7[v11] = 16772787;
var v12 = v6[newValue];
var v13 = v7[newValue];
if (v12 == undefined) {
v12 = newValue;
}
if (v13 == undefined) {
v13 = newValue;
}
this.setStyle('selectionColor', v12);
this.setStyle('rollOverColor', v13);
}
if (typeof this._color == 'string') {
if (this._color == styleProp) {
if (styleProp == 'color') {
if (this.stylecache.tf.color != undefined) {
this.stylecache.tf.color = newValue;
}
}
this.setColor(newValue);
}
} else {
if (this._color[styleProp] != undefined) {
this.invalidateStyle(styleProp);
}
}
this.changeColorStyleInChildren(undefined, styleProp, newValue);
} else {
if (styleProp == 'backgroundColor' && isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return undefined;
}
}
this.invalidateStyle(styleProp);
}
if (mx.styles.StyleManager.isInheritingStyle(styleProp) || styleProp == 'styleName') {
var v8;
var v5 = newValue;
if (styleProp == 'styleName') {
v8 = (typeof newValue == 'string') ? _global.styles[newValue] : v5;
v5 = v8.themeColor;
if (v5 != undefined) {
v8.selectionColor = v5;
v8.rollOverColor = v8.selectionColor;
}
}
this.notifyStyleChangeInChildren(undefined, styleProp, newValue);
}
};
v1.enableRunTimeCSS = function () {};
v1.classConstruct = function () {
var v2 = MovieClip.prototype;
var v3 = mx.styles.CSSSetStyle.prototype;
mx.styles.CSSStyleDeclaration.prototype.setStyle = v3._setStyle;
v2.changeTextStyleInChildren = v3.changeTextStyleInChildren;
v2.changeColorStyleInChildren = v3.changeColorStyleInChildren;
v2.notifyStyleChangeInChildren = v3.notifyStyleChangeInChildren;
v2.setStyle = v3.setStyle;
_global.ASSetPropFlags(v2, 'changeTextStyleInChildren', 1);
_global.ASSetPropFlags(v2, 'changeColorStyleInChildren', 1);
_global.ASSetPropFlags(v2, 'notifyStyleChangeInChildren', 1);
_global.ASSetPropFlags(v2, 'setStyle', 1);
var v4 = TextField.prototype;
v4.setStyle = v2.setStyle;
v4.changeTextStyleInChildren = v3.changeTextStyleInChildren;
return true;
};
v1.classConstructed = mx.styles.CSSSetStyle.classConstruct();
v1.CSSStyleDeclarationDependency = mx.styles.CSSStyleDeclaration;
ASSetPropFlags(mx.styles.CSSSetStyle.prototype, null, 1);
}
#endinitclip
}
movieClip 1442 __Packages.mx.core.ext.UIComponentExtensions {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.core) {
_global.mx.core = new Object();
}
if (!_global.mx.core.ext) {
_global.mx.core.ext = new Object();
}
if (!_global.mx.core.ext.UIComponentExtensions) {
var v1 = function () {};
mx.core.ext.UIComponentExtensions = v1;
var v2 = v1.prototype;
v1.Extensions = function () {
if (mx.core.ext.UIComponentExtensions.bExtended == true) {
return true;
}
mx.core.ext.UIComponentExtensions.bExtended = true;
TextField.prototype.setFocus = function () {
Selection.setFocus(this);
};
TextField.prototype.onSetFocus = function (oldFocus) {
if (this.tabEnabled != false) {
if ((this.getFocusManager()).bDrawFocus) {
this.drawFocus(true);
}
}
};
TextField.prototype.onKillFocus = function (oldFocus) {
if (this.tabEnabled != false) {
this.drawFocus(false);
}
};
TextField.prototype.drawFocus = mx.core.UIComponent.prototype.drawFocus;
TextField.prototype.getFocusManager = mx.core.UIComponent.prototype.getFocusManager;
mx.managers.OverlappedWindows.enableOverlappedWindows();
mx.styles.CSSSetStyle.enableRunTimeCSS();
mx.managers.FocusManager.enableFocusManagement();
};
v1.bExtended = false;
v1.UIComponentExtended = mx.core.ext.UIComponentExtensions.Extensions();
v1.UIComponentDependency = mx.core.UIComponent;
v1.FocusManagerDependency = mx.managers.FocusManager;
v1.OverlappedWindowsDependency = mx.managers.OverlappedWindows;
ASSetPropFlags(mx.core.ext.UIComponentExtensions.prototype, null, 1);
}
#endinitclip
}
movieClip 1443 __Packages.mx.skins.RectBorder {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.RectBorder) {
var v1 = function () {
super();
};
mx.skins.RectBorder = v1;
var v2 = new mx.skins.Border();
mx.skins.RectBorder.prototype = v2;
v2.__get__width = function () {
return this.__width;
};
v2.__get__height = function () {
return this.__height;
};
v2.init = function (Void) {
super.init();
};
v2.draw = function (Void) {
this.size();
};
v2.getBorderMetrics = function (Void) {
var v2 = this.offset;
if (this.__borderMetrics == undefined) {
this.__borderMetrics = {'left': v2, 'top': v2, 'right': v2, 'bottom': v2};
return this.__borderMetrics;
}
this.__borderMetrics.left = v2;
this.__borderMetrics.top = v2;
this.__borderMetrics.right = v2;
this.__borderMetrics.bottom = v2;
return this.__borderMetrics;
};
v2.__get__borderMetrics = function () {
return this.getBorderMetrics();
};
v2.drawBorder = function (Void) {};
v2.size = function (Void) {
this.drawBorder();
};
v2.setColor = function (Void) {
this.drawBorder();
};
v1.symbolName = 'RectBorder';
v1.symbolOwner = mx.skins.RectBorder;
v1.version = '2.0.2.126';
v2.className = 'RectBorder';
v2.borderStyleName = 'borderStyle';
v2.borderColorName = 'borderColor';
v2.shadowColorName = 'shadowColor';
v2.highlightColorName = 'highlightColor';
v2.buttonColorName = 'buttonColor';
v2.backgroundColorName = 'backgroundColor';
v2.addProperty('borderMetrics', v2.__get__borderMetrics, function () {});
v2.addProperty('height', v2.__get__height, function () {});
v2.addProperty('width', v2.__get__width, function () {});
ASSetPropFlags(mx.skins.RectBorder.prototype, null, 1);
}
#endinitclip
}
movieClip 1444 __Packages.mx.skins.halo.RectBorder {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.halo) {
_global.mx.skins.halo = new Object();
}
if (!_global.mx.skins.halo.RectBorder) {
var v1 = function () {
super();
};
mx.skins.halo.RectBorder = v1;
var v2 = new mx.skins.RectBorder();
mx.skins.halo.RectBorder.prototype = v2;
v2.init = function (Void) {
this.borderWidths.default = 3;
super.init();
};
v2.getBorderMetrics = function (Void) {
if (this.offset == undefined) {
var v3 = this.getStyle(this.borderStyleName);
this.offset = this.borderWidths[v3];
}
if (this.getStyle(this.borderStyleName) == 'default' || this.getStyle(this.borderStyleName) == 'alert') {
this.__borderMetrics = {'left': 3, 'top': 1, 'right': 3, 'bottom': 3};
return this.__borderMetrics;
}
return super.getBorderMetrics();
};
v2.drawBorder = function (Void) {
var v6 = _global.styles[this.className];
if (v6 == undefined) {
v6 = _global.styles.RectBorder;
}
var v5 = this.getStyle(this.borderStyleName);
var v7 = this.getStyle(this.borderColorName);
if (v7 == undefined) {
v7 = v6[this.borderColorName];
}
var v8 = this.getStyle(this.backgroundColorName);
if (v8 == undefined) {
v8 = v6[this.backgroundColorName];
}
var v16 = this.getStyle('backgroundImage');
if (v5 != 'none') {
var v14 = this.getStyle(this.shadowColorName);
if (v14 == undefined) {
v14 = v6[this.shadowColorName];
}
var v13 = this.getStyle(this.highlightColorName);
if (v13 == undefined) {
v13 = v6[this.highlightColorName];
}
var v12 = this.getStyle(this.buttonColorName);
if (v12 == undefined) {
v12 = v6[this.buttonColorName];
}
var v11 = this.getStyle(this.borderCapColorName);
if (v11 == undefined) {
v11 = v6[this.borderCapColorName];
}
var v10 = this.getStyle(this.shadowCapColorName);
if (v10 == undefined) {
v10 = v6[this.shadowCapColorName];
}
}
this.offset = this.borderWidths[v5];
var v9 = this.offset;
var v3 = this.__get__width();
var v4 = this.__get__height();
this.clear();
this._color = undefined;
if (v5 == 'none') {
} else {
if (v5 == 'inset') {
this._color = this.colorList;
this.draw3dBorder(v11, v12, v7, v13, v14, v10);
} else {
if (v5 == 'outset') {
this._color = this.colorList;
this.draw3dBorder(v11, v7, v12, v14, v13, v10);
} else {
if (v5 == 'alert') {
var v15 = this.getStyle('themeColor');
this.drawRoundRect(0, 5, v3, v4 - 5, 5, 6184542, 10);
this.drawRoundRect(1, 4, v3 - 2, v4 - 5, 4, [6184542, 6184542], 10, 0, 'radial');
this.drawRoundRect(2, 0, v3 - 4, v4 - 2, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(2, 0, v3 - 4, v4 - 2, 3, v15, 50);
this.drawRoundRect(3, 1, v3 - 6, v4 - 4, 2, 16777215, 100);
} else {
if (v5 == 'default') {
this.drawRoundRect(0, 5, v3, v4 - 5, {'tl': 5, 'tr': 5, 'br': 0, 'bl': 0}, 6184542, 10);
this.drawRoundRect(1, 4, v3 - 2, v4 - 5, {'tl': 4, 'tr': 4, 'br': 0, 'bl': 0}, [6184542, 6184542], 10, 0, 'radial');
this.drawRoundRect(2, 0, v3 - 4, v4 - 2, {'tl': 3, 'tr': 3, 'br': 0, 'bl': 0}, [12897484, 11844796], 100, 0, 'radial');
this.drawRoundRect(3, 1, v3 - 6, v4 - 4, {'tl': 2, 'tr': 2, 'br': 0, 'bl': 0}, 16777215, 100);
} else {
if (v5 == 'dropDown') {
this.drawRoundRect(0, 0, v3 + 1, v4, {'tl': 4, 'tr': 0, 'br': 0, 'bl': 4}, [13290186, 7895160], 100, -10, 'linear');
this.drawRoundRect(1, 1, v3 - 1, v4 - 2, {'tl': 3, 'tr': 0, 'br': 0, 'bl': 3}, 16777215, 100);
} else {
if (v5 == 'menuBorder') {
var v15 = this.getStyle('themeColor');
this.drawRoundRect(4, 4, v3 - 2, v4 - 3, 0, [6184542, 6184542], 10, 0, 'radial');
this.drawRoundRect(4, 4, v3 - 1, v4 - 2, 0, 6184542, 10);
this.drawRoundRect(0, 0, v3 + 1, v4, 0, [0, 14342874], 100, 250, 'linear');
this.drawRoundRect(0, 0, v3 + 1, v4, 0, v15, 50);
this.drawRoundRect(2, 2, v3 - 3, v4 - 4, 0, 16777215, 100);
} else {
if (v5 == 'comboNonEdit') {
} else {
this.beginFill(v7);
this.drawRect(0, 0, v3, v4);
this.drawRect(1, 1, v3 - 1, v4 - 1);
this.endFill();
this._color = this.borderColorName;
}
}
}
}
}
}
}
}
if (v8 != undefined) {
this.beginFill(v8);
this.drawRect(v9, v9, this.__get__width() - v9, this.__get__height() - v9);
this.endFill();
}
};
v2.draw3dBorder = function (c1, c2, c3, c4, c5, c6) {
var v3 = this.__get__width();
var v2 = this.__get__height();
this.beginFill(c1);
this.drawRect(0, 0, v3, v2);
this.drawRect(1, 0, v3 - 1, v2);
this.endFill();
this.beginFill(c2);
this.drawRect(1, 0, v3 - 1, 1);
this.endFill();
this.beginFill(c3);
this.drawRect(1, v2 - 1, v3 - 1, v2);
this.endFill();
this.beginFill(c4);
this.drawRect(1, 1, v3 - 1, 2);
this.endFill();
this.beginFill(c5);
this.drawRect(1, v2 - 2, v3 - 1, v2 - 1);
this.endFill();
this.beginFill(c6);
this.drawRect(1, 2, v3 - 1, v2 - 2);
this.drawRect(2, 2, v3 - 2, v2 - 2);
this.endFill();
};
v1.classConstruct = function () {
mx.core.ext.UIObjectExtensions.Extensions();
_global.styles.rectBorderClass = mx.skins.halo.RectBorder;
_global.skinRegistry.RectBorder = true;
return true;
};
v1.symbolName = 'RectBorder';
v1.symbolOwner = mx.skins.halo.RectBorder;
v1.version = '2.0.2.126';
v2.borderCapColorName = 'borderCapColor';
v2.shadowCapColorName = 'shadowCapColor';
v2.colorList = {'highlightColor': 0, 'borderColor': 0, 'buttonColor': 0, 'shadowColor': 0, 'borderCapColor': 0, 'shadowCapColor': 0};
v2.borderWidths = {'none': 0, 'solid': 1, 'inset': 2, 'outset': 2, 'alert': 3, 'dropDown': 2, 'menuBorder': 2, 'comboNonEdit': 2};
v1.classConstructed = mx.skins.halo.RectBorder.classConstruct();
v1.UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
ASSetPropFlags(mx.skins.halo.RectBorder.prototype, null, 1);
}
#endinitclip
}
movieClip 1445 __Packages.mx.skins.halo.ButtonSkin {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.skins) {
_global.mx.skins = new Object();
}
if (!_global.mx.skins.halo) {
_global.mx.skins.halo = new Object();
}
if (!_global.mx.skins.halo.ButtonSkin) {
var v1 = function () {
super();
};
mx.skins.halo.ButtonSkin = v1;
var v2 = new mx.skins.RectBorder();
mx.skins.halo.ButtonSkin.prototype = v2;
v2.init = function () {
super.init();
};
v2.size = function () {
this.drawHaloRect(this.__get__width(), this.__get__height());
};
v2.drawHaloRect = function (w, h) {
var v6 = this.getStyle('borderStyle');
var v4 = this.getStyle('themeColor');
var v5 = this._parent.emphasized;
this.clear();
switch (v6) {
case 'falseup':
if (v5) {
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 9542041, 100);
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 75);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 85, 0, 'radial');
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, v4, 75);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
} else {
this.drawRoundRect(0, 0, w, h, 5, 9542041, 100);
this.drawRoundRect(1, 1, w - 2, h - 2, 4, [13291985, 16250871], 100, 0, 'radial');
this.drawRoundRect(2, 2, w - 4, h - 4, 3, [9542041, 13818586], 100, 0, 'radial');
this.drawRoundRect(3, 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(3, 4, w - 6, h - 7, 2, 16316664, 100);
}
break;
case 'falsedown':
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 9542041, 100);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, v4, 50);
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 40);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, v4, 20);
break;
case 'falserollover':
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 9542041, 100);
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 50);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, v4, 50);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
break;
case 'falsedisabled':
this.drawRoundRect(0, 0, w, h, 5, 13159628, 100);
this.drawRoundRect(1, 1, w - 2, h - 2, 4, 15921906, 100);
this.drawRoundRect(2, 2, w - 4, h - 4, 3, 13949401, 100);
this.drawRoundRect(3, 3, w - 6, h - 6, 2, 15921906, 100);
break;
case 'trueup':
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 10066329, 100);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, v4, 50);
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 40);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, 16250871, 100);
break;
case 'truedown':
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 10066329, 100);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, v4, 50);
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 40);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, v4, 20);
break;
case 'truerollover':
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, 9542041, 100);
this.drawRoundRect(this.__get__x(), this.__get__y(), w, h, 5, v4, 50);
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 1, this.__get__y() + 1, w - 2, h - 2, 4, v4, 40);
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, 'radial');
this.drawRoundRect(this.__get__x() + 2, this.__get__y() + 2, w - 4, h - 4, 3, v4, 40);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
this.drawRoundRect(this.__get__x() + 3, this.__get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
break;
case 'truedisabled':
this.drawRoundRect(0, 0, w, h, 5, 13159628, 100);
this.drawRoundRect(1, 1, w - 2, h - 2, 4, 15921906, 100);
this.drawRoundRect(2, 2, w - 4, h - 4, 3, 13949401, 100);
this.drawRoundRect(3, 3, w - 6, h - 6, 2, 15921906, 100);
}
};
v1.classConstruct = function () {
mx.core.ext.UIObjectExtensions.Extensions();
_global.skinRegistry.ButtonSkin = true;
return true;
};
v1.symbolName = 'ButtonSkin';
v1.symbolOwner = mx.skins.halo.ButtonSkin;
v2.className = 'ButtonSkin';
v2.backgroundColorName = 'buttonColor';
v1.classConstructed = mx.skins.halo.ButtonSkin.classConstruct();
v1.UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
ASSetPropFlags(mx.skins.halo.ButtonSkin.prototype, null, 1);
}
#endinitclip
}
movieClip 1446 __Packages.mx.controls.HScrollBar {
#initclip
if (!_global.mx) {
_global.mx = new Object();
}
if (!_global.mx.controls) {
_global.mx.controls = new Object();
}
if (!_global.mx.controls.HScrollBar) {
var v1 = function () {
super();
};
mx.controls.HScrollBar = v1;
var v2 = new mx.controls.scrollClasses.ScrollBar();
mx.controls.HScrollBar.prototype = v2;
v2.getMinWidth = function (Void) {
return this._minHeight;
};
v2.getMinHeight = function (Void) {
return this._minWidth;
};
v2.init = function (Void) {
super.init();
this._xscale = -100;
this._rotation = -90;
};
v2.__get__virtualHeight = function () {
return this.__width;
};
v2.isScrollBarKey = function (k) {
if (k == 37) {
this.scrollIt('Line', -1);
return true;
return super.isScrollBarKey(k);
}
if (k == 39) {
this.scrollIt('Line', 1);
return true;
}
return super.isScrollBarKey(k);
};
v1.symbolName = 'HScrollBar';
v1.symbolOwner = mx.core.UIComponent;
v1.version = '2.0.2.126';
v2.className = 'HScrollBar';
v2.minusMode = 'Left';
v2.plusMode = 'Right';
v2.minMode = 'AtLeft';
v2.maxMode = 'AtRight';
v2.addProperty('virtualHeight', v2.__get__virtualHeight, function () {});
ASSetPropFlags(mx.controls.HScrollBar.prototype, null, 1);
}
#endinitclip
}
frame 2 {
var TraitMSG = '\rYou can select this Trait when creating a new character.';
var UnlocksGeneric = new Array(['Quick Garden Visits', 'You can now quickly access the Garden Clop Scene.', 0], ['Trait: Prospector', 'When creating a new town you can select this trait. Helpful for towns that love to strike the earth!', 0], ['Trait: Socialist', 'When creating a new town you can select this trait. Obamacare for every pony!', 0], ['Trait: Curse of the Forest God', 'When creating a new town you can select this trait. You better not cut down any trees!', 0], ['Tier II Structures', 'You\'ve gained access to more advanced structures. Find the new tier of structures by selecting the tab above the building menu.', 0], ['Character: Flutters', 'Visit the Private Rooms of the Tavern to play with this character!', 0], ['Character: Applejay', 'Visit the Private Rooms of the Tavern to play with this character!', 0], ['Character: Rara', 'Visit the Private Rooms of the Tavern to play with this character!', 0], ['Trait: Veteran', 'Unlocked by getting a specialist to Rank 10.' + TraitMSG, 0], ['Trait: Superstitous', 'Unlocked in the Prize Room.' + TraitMSG, 0], ['Trait: Empyrean', 'Unlocked in the Prize Room.' + TraitMSG, 0], ['Trait: Venetian', 'Unlocked in the Prize Room.' + TraitMSG, 0], ['Trait: Wizard', 'Unlocked in the Prize Room.' + TraitMSG, 0], ['Trait: Carefree', '???' + TraitMSG, 0], ['Trait: Well-Fed', '???' + TraitMSG, 0], ['Trait: Alcoholic', 'Unlocked by having 3 Taverns, each on a different mode.' + TraitMSG, 0], ['Trait: Tyrant', 'Unlocked by taking 5 Ranks of the Diplomacy skill.' + TraitMSG, 0], ['Tier III Structures', 'You\'ve gained access to more advanced structures. Find the new tier of structures by selecting the tab above the building menu.', 0], ['Character: Pinky', 'Visit the Private Rooms of the Tavern to play with this character!', 0], ['Chipper is Dead', '', 0], ['Character: Rainbow', 'Visit the Private Rooms of the Tavern to play with this character!', 0], ['Trait: Heroic', 'Unlocked by building at least 4 Armories and 4 Keeps.' + TraitMSG, 0], ['Trait: Cloistered', 'Unlocked by building 2 Tech Labs.' + TraitMSG, 0], ['Trait: Vigilante', 'Unlocked by destroying an encounter by Raiding.' + TraitMSG, 0], ['Trait: Capitalist', 'Unlocked by having an income of at least 500 Bits per Day.' + TraitMSG, 0], [NaN]);
var UnlocksGallery = new Array(['You trot through the residential district to see how things are going and you notice a familiar character through the window of someone\'s home. She seems to be \'raising money\' for your town by offering some \'love magic lessons\' to the townsfolk, how nice!', 0], ['You decide to take a break from society and visit a local farm for a bit of relaxation. In the distance you see a couple of familiar characters fucking out in the fields. I guess today was an extra bountiful harvest and they\'re celebrating!', 0], ['You head over to a local store to grab a snack during slow business hours when you notice that nobody is at the cash register. You wander around looking for the clerk when you find a familiar character taking a little unscheduled break. She giggles and offers you to join in on the fun!', 0], ['You take a break from your busy schedule as Mayor to go door to door asking people if you can help out. As you knock on the door of a resident\'s house, the door swings upon on its own to reveal a familiar character \'raising money\' for your town by providing a stress-relief service.', 0], ['Feeling adventurous, you decide to check out the Quarry miners to see if you can help out in any way. You peek around the corner and notice one of the workers is taking a break? Not quite, they\'re having a little run-in with a Diamond Dog! You hesitate and watch the situation for a bit before trying to scare the creature off. It seems the dog had collected a huge amount of gems too, what luck!', 0], [NaN]);
var optionsTable = new Array(['Lighting', 'Change the lighting environment!', 1], ['Horseshoes', 'Clippity Clop.', 1], ['Wings', 'Flap. For when a good clop just won\'t do it.', 1], ['Crotch Boobs', 'Pony boobies above the crotch.', 1], ['Futa Mode', 'Everything is hotter with a dick.', 1], ['Blush', 'Aww is someone embarrassed? Or maybe just tipsy!', 1], ['Hairbow', 'A cute little hair decoration.', 1], ['Eyewear', 'Glasses, goggles, etc.', 1], ['Blindfold', 'For those who aren\'t keen on eye contact.', 1], ['Neck Items', 'Scarf, necklace, etc.', 1], ['Bra', 'Silly pony, that\'s not where bras go!', 1], ['Corset', 'To help hide all of that tummy chub.', 1], ['Stockings', 'To keep the legs warm. Kinda.', 1], ['Ballgag', 'Some things are best left mumbled.', 1], ['Pubes (Groin)', 'For those that like fuzzy pussy.', 1], ['Anthro Mode', 'YOUR character becomes anthro (Not your playmate).', 1], ['Mirror Scene', 'Horizontally flips the scene.', 1], [NaN]);
var optionsTableLocked = new Array(['Longsword', 'There\'s just something really sexy about steel.', 0], ['Hot Swap', 'Quickly change through characters.', 0], ['Background', 'Change the background setting.', 0], [NaN]);
}
frame 2 {
stop();
stopAllSounds();
endGameSession();
var cache = SharedObject.getLocal('userCloptopia', '/');
var version = 'Alpha v1.22';
var initialization = cache.data.init;
if (initialization != 'ran') {
trace('resetting everything');
cache.data.init = 'ran';
cache.data.flushWarning = false;
cache.data.volumee = 50;
cache.data.GameDataUnlocked = new Array(100);
i = 0;
while (i < cache.data.GameDataUnlocked.length) {
cache.data.GameDataUnlocked[i] = 0;
++i;
}
cache.data.OptionDataUnlocked = new Array(100);
i = 0;
while (i < cache.data.OptionDataUnlocked.length) {
cache.data.OptionDataUnlocked[i] = 0;
++i;
}
cache.data.OptionGalleryUnlocked = new Array(100);
i = 0;
while (i < cache.data.OptionGalleryUnlocked.length) {
cache.data.OptionGalleryUnlocked[i] = 0;
++i;
}
cache.data.PlayerDataOptions = new Array(true, true, false, true, true, false, true, false, false, true, NaN, NaN);
cache.data.PlayerDataUpgrades = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataEdicts = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataStats = new Array(1, 1, 1, 1, 1, 30, 0);
cache.data.PlayerDataSkills = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataFreeStructure = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataTraitsOwned = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataPerksOwned = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.PlayerDataEvilData = new Array(0, 0, 0);
cache.data.PlayerDataSpecialistsStats = new Array(['name', 1, '', 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0]);
cache.data.PlayerDataPerkRandom = new Array(10);
cache.data.PlayerDataDerpyRandom = new Array(50);
cache.data.StoryFlags = new Array(30);
cache.data.Cosmetics = new Array(100, 0, 0, 0, 0, 0, 0, 0, 0);
cache.data.StoryWatched = false;
var maxNodes = 512;
cache.data.NodeData = new Array(maxNodes);
i = 0;
while (i < cache.data.NodeData.length) {
cache.data.NodeData[i] = new Array(20);
j = 0;
while (j < cache.data.NodeData[i].length) {
cache.data.NodeData[i][j] = NaN;
++j;
}
++i;
}
cache.data.PlayerDataCurrentEncounters = new Array(15);
i = 0;
while (i < cache.data.PlayerDataCurrentEncounters.length) {
cache.data.PlayerDataCurrentEncounters[i] = new Array(10);
++i;
}
cache.data.NodeDataPonies = new Array(maxNodes);
i = 0;
while (i < cache.data.NodeDataPonies.length) {
cache.data.NodeDataPonies[i] = new Array(6);
j = 0;
while (j < cache.data.NodeDataPonies[i].length) {
cache.data.NodeDataPonies[i][j] = 0;
++j;
}
++i;
}
cache.data.NodeDataPoniesMax = new Array(maxNodes);
i = 0;
while (i < cache.data.NodeDataPoniesMax.length) {
cache.data.NodeDataPoniesMax[i] = new Array(6);
j = 0;
while (j < cache.data.NodeDataPoniesMax[i].length) {
cache.data.NodeDataPoniesMax[i][j] = 0;
++j;
}
++i;
}
cache.data.PlayerDataNewUpgradesOwned = new Array(100);
i = 0;
while (i < cache.data.PlayerDataNewUpgradesOwned.length) {
cache.data.PlayerDataNewUpgradesOwned[i] = new Array(2);
j = 0;
while (j < cache.data.PlayerDataNewUpgradesOwned[i].length) {
cache.data.PlayerDataNewUpgradesOwned[i][j] = 'n';
++j;
}
++i;
}
cache.data.NodeDataValue = new Array(maxNodes);
i = 0;
while (i < cache.data.NodeDataValue.length) {
cache.data.NodeDataValue[i] = new Array(6);
j = 0;
while (j < cache.data.NodeDataValue[i].length) {
cache.data.NodeDataValue[i][j] = 0;
++j;
}
++i;
}
cache.data.PlayerDataLoveSources = new Array(30);
i = 0;
while (i < cache.data.PlayerDataLoveSources.length) {
cache.data.PlayerDataLoveSources[i] = new Array(2);
cache.data.PlayerDataLoveSources[i][0] = 0;
cache.data.PlayerDataLoveSources[i][1] = '';
++i;
}
cache.data.PlayerData = new Array(100);
cache.data.PlayerData[7] = true;
cache.data.PlayerDataResources = new Array(12);
cache.data.PlayerDataResourcePerCycle = new Array(12);
cache.data.PlayerDataBonusesPerCycle = new Array(12);
cache.data.PlayerDataPopulation = new Array(12);
i = 0;
while (i < cache.data.PlayerDataResources.length) {
cache.data.PlayerDataResources[i] = new Array(8);
cache.data.PlayerDataResourcePerCycle[i] = new Array(8);
cache.data.PlayerDataBonusesPerCycle[i] = new Array(8);
cache.data.PlayerDataPopulation[i] = new Array(8);
j = 0;
while (j < cache.data.PlayerDataResources[i].length) {
cache.data.PlayerDataResources[i][j] = 0;
cache.data.PlayerDataResourcePerCycle[i][j] = 0;
cache.data.PlayerDataBonusesPerCycle[i][j] = 0;
cache.data.PlayerDataPopulation[i][j] = 0;
++j;
}
++i;
}
cache.data.PlayerDataStrCount = new Array(30);
i = 0;
while (i < cache.data.PlayerDataStrCount.length) {
cache.data.PlayerDataStrCount[i] = new Array(20);
j = 0;
while (j < cache.data.PlayerDataStrCount[i].length) {
cache.data.PlayerDataStrCount[i][j] = 0;
++j;
}
++i;
}
cache.data.PlayerDataTiersUnlocked = new Array(true, false, false, false, false);
cache.data.PlayerDataTradeCooldown = new Array(30);
cache.data.FileExists = false;
}
i = 0;
while (i < cache.data.GameDataUnlocked.length) {
UnlocksGeneric[i][2] = cache.data.GameDataUnlocked[i];
++i;
}
i = 0;
while (i < cache.data.OptionGalleryUnlocked.length) {
UnlocksGallery[i][1] = cache.data.OptionGalleryUnlocked[i];
++i;
}
i = 0;
while (i < cache.data.OptionDataUnlocked.length) {
optionsTableLocked[i][2] = cache.data.OptionDataUnlocked[i];
++i;
}
var defeated = cache.data.PlayerData[17];
var defaultvolumee = cache.data.volumee;
var StoryWatched = cache.data.StoryWatched;
var StatBracket = new Array([11, 1], [13, 100]);
var loadGame = false;
var FAPMODE = 0;
hideCustomCursor = cache.data.PlayerDataOptions[9];
}
frame 2 {
function queuemusik(track) {
_root.Musik.stop();
if (MusikTracks[track] == 'REPLAY') {
_root.Musik.attachSound(MusikTracks[0], isStreaming);
_root.MusikTrack = 0;
} else {
_root.Musik.attachSound(MusikTracks[track], isStreaming);
_root.MusikTrack = track;
}
_root.MusikPos = 0;
if (_root.MusikStatus == 'On') {
if (MusikTracks[track] == 'Donuts') {
_root.Musik.start(0, 2);
} else {
_root.Musik.start();
}
_root.Musik.setVolume(MusikVolume * MVMaster);
}
_root.musicticker = String(MusikTracks[track]);
}
function queuemusikSingle(track) {
_root.Musik.stop();
if (MusikTracks[track] == 'REPLAY') {
_root.Musik.attachSound(MusikTracksSingle[0], isStreaming);
_root.MusikTrack = 0;
} else {
_root.Musik.attachSound(MusikTracksSingle[track], isStreaming);
_root.MusikTrack = track;
}
_root.MusikPos = 0;
if (_root.MusikStatus == 'On') {
_root.Musik.start();
_root.Musik.setVolume(MusikVolume * MVMaster);
}
_root.musicticker = String(MusikTracksSingle[track]);
}
function queuemusikBedroom(track) {
_root.Musik.stop();
if (MusikTracks[track] == 'REPLAY') {
_root.Musik.attachSound(MusikTracksBedroom[0], isStreaming);
_root.MusikTrack = 0;
} else {
_root.Musik.attachSound(MusikTracksBedroom[track], isStreaming);
_root.MusikTrack = track;
}
_root.MusikPos = 0;
if (_root.MusikStatus == 'On') {
_root.Musik.start();
_root.Musik.setVolume(MusikVolume * MVMaster);
}
_root.musicticker = String(MusikTracksBedroom[track]);
}
function playsfx1(array, soundbyte, volumee) {
_root.sfxplayer1.sfx.attachSound(array[soundbyte]);
_root.sfxplayer1.sfx.setVolume(sfxvolume * sfxmaster1 * volumee);
_root.sfxplayer1.sfx.start(0, 1);
}
function playsfx2(array, soundbyte, volumee) {
_root.sfxplayer2.sfx.attachSound(array[soundbyte]);
_root.sfxplayer2.sfx.setVolume(sfxvolume * sfxmaster2 * volumee);
_root.sfxplayer2.sfx.start(0, 1);
}
function playsound(soundbyte) {
_root.sfxplayer1.sfx.attachSound(soundbyte);
_root.sfxplayer1.sfx.setVolume(sfxvolume * sfxmaster1);
_root.sfxplayer1.sfx.start(0, 1);
}
var Musik = new Sound(this);
var MusikPos = 0;
var MusikPos2 = 0;
var MusikLaunched = 'No';
var MusikStatus = 'On';
var MusikTrack;
var MusikTracksSingle = new Array('Stat Screen', 'Situation', 'Title');
var MusikTracks = new Array('Foundation', 'By the Butt', 'Donuts', '20 Knights in 20 Minutes', 'Bounce', 'Imperial', 'REPLAY');
var MusikTracksBedroom = new Array('Stratum', 'Vagus', 'Speculum', 'REPLAY');
var MVMaster = 0.8;
var defaultvolumee = 50;
var MusikVolume = defaultvolumee;
var MVFadingOut = 0;
var MusikLoop = 0;
_root.Musik.onSoundComplete = function () {
if (_root.MusikLoop == 1) {
_root.Musik.start();
_root.MusikPos = 0;
} else {
_root.queuemusik(_root.MusikTrack + 1);
}
};
var sfxvolume = 100;
var sfxmaster1 = 1;
var sfxmaster2 = 0.5;
var sfxmaster3 = 1;
var sfxmaster4 = 1;
var sfxbankGeneric = new Array();
var sfxbankWood = new Array('Wood1.wav', 'Wood2.wav', 'Wood3.wav');
var sfxbankCoin = new Array('Coin1.wav', 'Coin2.wav', 'Coin3.wav', 'Coin4.wav', 'Coin5.wav', 'Coin6.wav', 'Coin7.wav', 'Coin8.wav');
var sfxbankClick = new Array('Click2.wav');
var sfxbankChipper = new Array('SQUEAK.mp3');
var sfxbankAlchemy = new Array('AlchemySuccess.mp3');
}
button 1474 {
on (release) {
play();
}
}
movieClip 1479 {
}
movieClip 1485 {
frame 11 {
stop();
}
}
movieClip 1491 {
}
movieClip 1492 {
frame 55 {
gotoAndPlay('loop1');
}
}
movieClip 1495 {
}
movieClip 1506 {
}
movieClip 1531 {
frame 71 {
stop();
}
}
button 1532 {
on (release) {
_root.gotoAndStop('title');
}
}
button 1533 {
on (release) {
getURL('https://www.comdotgame.com/in/mittsies', '_blank');
}
}
movieClip 1534 {
frame 1 {
if (_root.cache.data.flushWarning == false) {
stop();
_root.cache.flush(1000000);
_root.cache.data.flushWarning = true;
} else {
gotoAndPlay('splash');
}
}
instance of movieClip 1479 {
onClipEvent (release) {
System.showSettings(1);
}
}
frame 110 {
_root.gotoAndStop('title');
}
frame 111 {
_root.gotoAndStop('title');
}
frame 112 {
_root.gotoAndStop('title');
}
frame 113 {
_root.gotoAndStop('title');
}
frame 114 {
_root.gotoAndStop('title');
}
frame 115 {
_root.gotoAndStop('title');
}
}
frame 3 {
stopAllSounds();
_root.MusikLaunched = 'No';
}
movieClip 1550 {
}
frame 4 {
function setColor() {
var v2 = _root.maleColorRed;
var v4 = _root.maleColorGreen;
var v3 = _root.maleColorBlue;
_root.maleColor[0] = rgb2col(v2 - 50, v4 - 50, v3 - 50);
_root.maleColor[1] = rgb2col(v2, v4, v3);
changeColor('_root.intro.input.charColor.BG', _root.maleColor[0]);
changeColor('_root.intro.input.charColor.Skin', _root.maleColor[1]);
maleColorRedPercent = String(int((maleColorRed - 50) / 1.5) + '%');
maleColorGreenPercent = String(int((maleColorGreen - 50) / 1.5) + '%');
maleColorBluePercent = String(int((maleColorBlue - 50) / 1.5) + '%');
}
function rgb2col(red, green, blue) {
return decColor2hex(red * 65536 + green * 256 + blue);
}
function decColor2hex(color) {
colArr = ((color.toString(16)).toUpperCase()).split('');
numChars = colArr.length;
a = 0;
while (a < 6 - numChars) {
colArr.unshift('0');
++a;
}
return '0x' + colArr.join('');
}
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
stop();
_root.MusikLaunched = 'No';
endGameSession();
FAPMODE = 0;
var PaperPosition = 0;
var MaxPaperMove = new Array(-300, 0);
var PaperLock = 2;
var loveDisplay = 99;
var loadData = false;
var DogeCredits = '';
var ContributorCredits = '';
var SupporterList = new Array('TheDarkman67', 'KingKronos', 'Serael', 'Bazinga', 'AshyMcHoof', 'Macavity', 'Reno', 'Man', 'Pairþra', 'Kyle_Thibodeau', 'Magmanox', 'DOGE@EndyJuice', 'Xaldon Ajide', 'Crono_Flash', 'Desmond', 'mathrick', 'Bra1nz', 'Mosaic', 'Caylen_Faux', 'Tobben', 'Strakur', 'Valkan_Koza', '6pony66', 'Linkie13233', 'S4th', 'Dusty_S_Hooves', 'twitch.tv/morrows', 'DJ_Squirrel', 'Aequitas_Telum', 'nimdraug', 'Horüs', 'Taharo', 'DOGE@Iratus', 'Darkscootaloo', 'Deadmoush', 'Holi', 'FInal_Starman', 'Danz', 'Ronka', 'Notmlpchan', 'Princess_Celestia', 'JayBoi', 'Dusk_Shine', 'DMM', 'Juri', 'Crossbow1701', 'Med_Unna', 'Yurka86rus', 'DubstepMaster', 'Sir_Erik', 'Shadwobnair', 'Railgun', 'Kaos Savira');
x = 0;
while (x < SupporterList.length) {
if (substring(SupporterList[x], 0, 5) == 'DOGE@') {
DogeCredits += substring(SupporterList[x], 6, SupporterList[x].length - 5) + ' - ';
} else {
ContributorCredits += SupporterList[x] + ' - ';
}
++x;
}
DogeCredits = substring(DogeCredits, 0, DogeCredits.length - 3);
ContributorCredits = substring(ContributorCredits, 0, ContributorCredits.length - 3);
var townName = 'Paradise';
var charName = 'Mayor';
var StatMax = 9;
var StatsLeft = 12;
var TraitsLeft = 2;
var statCharisma = 3;
var statInsight = 3;
var statCuriosity = 3;
var statKarma = 3;
var statWillpower = 3;
var resources = new Array(['Bits', 0], ['Food', 0], ['Tech', 0], ['Gems', 0], ['Prism', 0], ['Obsidian', 0], ['LUXURY3', 0], ['LUXURY4', 0], ['LUXURY5', 0], ['LUXURY6', 0]);
var traitsOwned = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
var skill_Leadership = 0;
var skill_Diplomacy = 0;
var skill_Knowledge = 0;
var skill_Architecture = 0;
var skill_Discipline = 0;
var skill_Ecology = 0;
var skill_Tradecraft = 0;
var difficulty = 1;
var CurrentAdviser = 0;
var MapType = 1;
var maleColor = new Array(2);
var maleColorRed = 100;
var maleColorRedMin = 50;
var maleColorRedMax = 200;
var maleColorGreen = 100;
var maleColorGreenMin = 50;
var maleColorGreenMax = 200;
var maleColorBlue = 100;
var maleColorBlueMin = 50;
var maleColorBlueMax = 200;
var colorChangeRed = 0;
var colorChangeGreen = 0;
var colorChangeBlue = 0;
var maleColorRedPercent;
var maleColorGreenPercent;
var maleColorBluePercent;
var FuckingWait = 0;
var FuckingWaitMax = 7;
}
frame 4 {
globalvolumee = new Sound();
var volumeepos = 50;
globalvolumee.setVolume(volumeepos);
var globalvolumeeMOD = 1;
var volumeeoffset = 0;
volumee.volumeeBar._x = 0;
volumee.volumeeBar.onPress = function () {
startDrag(this, false, -40, this._y, 40, this._y);
};
volumee.volumeeBar.onReleaseOutside = function () {
stopDrag();
};
volumee.volumeeBar.onRelease = volumee.volumeeBar.onReleaseOutside;
volumee.volumeeBar.onEnterFrame = function () {
volumeepos = int((this._x - volumeeoffset - 40) * -1.25);
_root.cache.data.volumee = volumeepos;
globalvolumee.setVolume(volumeepos * globalvolumeeMOD);
};
}
movieClip 1554 {
}
movieClip 1555 {
}
movieClip 1558 {
}
movieClip 1561 {
}
movieClip 1563 {
}
movieClip 1567 {
}
button 1569 {
on (release) {
this.warning.gotoAndStop(1);
}
}
movieClip 1570 {
instance of movieClip 1326 StructureTavern {
onClipEvent (load) {
gotoAndStop(1);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(4);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(5);
}
}
instance of movieClip 1326 StructureTavern {
onClipEvent (load) {
gotoAndStop(3);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(5);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(4);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(4);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(5);
}
}
instance of movieClip 1314 StructureHouse {
onClipEvent (load) {
gotoAndStop(1);
}
}
}
button 1573 {
on (release) {
getURL('http://tiarahost.com/viewtopic.php?f=15&p=3#p3', '_blank');
}
on (rollOver) {
descript = 'View Changelog (Forum Link)';
}
on (rollOut) {
descript = '';
}
}
movieClip 1574 {
}
button 1575 {
on (release) {
if (_root.slider.decision == false) {
if (_root.cache.data.FileExists == true) {
this.warning.gotoAndStop(2);
} else {
_root.loadGame = false;
_root.slider.gotoAndPlay('fadeout');
_root.slider.decision = true;
}
}
}
on (rollOver) {
descript = 'Start a new map.';
}
on (rollOut) {
descript = '';
}
}
button 1576 {
on (release) {
this.warning.gotoAndStop(3);
}
on (rollOver) {
descript = 'Customize game settings';
}
on (rollOut) {
descript = '';
}
}
button 1577 {
on (release) {
getURL('http://www.patreon.com/Mittsies', '_blank');
this.warning.gotoAndStop(4);
}
on (rollOver) {
descript = 'Visit the Patreon page to support this game';
}
on (rollOut) {
descript = '';
}
}
button 1579 {
on (release) {
getURL('http://www.mittsies.com/', '_blank');
}
on (rollOver) {
descript = 'Visit Mittsies.com';
}
on (rollOut) {
descript = '';
}
}
button 1580 {
on (release) {
getURL('https://www.comdotgame.com/in/mittsies', '_blank');
}
on (rollOver) {
descript = 'Visit the COMDOTGAME Website';
}
on (rollOut) {
descript = '';
}
}
button 1582 {
on (release) {
this.warning.gotoAndStop(5);
}
on (rollOver) {
descript = 'View the adult scenes you\'ve unlocked so far.';
}
on (rollOut) {
descript = '';
}
}
movieClip 1585 {
}
movieClip 1589 {
}
button 1590 {
on (release) {
this.warning.gotoAndStop(4);
}
on (rollOver) {
descript = 'List of generous patreon supporters.';
}
on (rollOut) {
descript = '';
}
}
button 1593 {
on (release) {
this.warning.gotoAndStop(7);
}
on (rollOver) {
descript = 'List of people who worked on this game.';
}
on (rollOut) {
descript = '';
}
}
button 1599 {
on (release) {
if (_parent._parent.decision != true) {
_parent._parent.gotoAndPlay('fadeout');
_parent._parent.decision = true;
_root.loadGame = false;
}
}
}
button 1600 {
on (release) {
gotoAndStop(1);
}
}
movieClip 1608 {
}
movieClip 1617 {
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[0] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[0] == false) {
_root.showRadiusOnSelect = true;
_root.cache.data.PlayerDataOptions[0] = true;
this.gotoAndStop(2);
} else {
_root.showRadiusOnSelect = false;
_root.cache.data.PlayerDataOptions[0] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[2] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[2] == false) {
_root.selectBlanks = true;
_root.cache.data.PlayerDataOptions[2] = true;
this.gotoAndStop(2);
} else {
_root.selectBlanks = false;
_root.cache.data.PlayerDataOptions[2] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[3] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[3] == false) {
_root.pauseDuringMeet = true;
_root.cache.data.PlayerDataOptions[3] = true;
this.gotoAndStop(2);
} else {
_root.pauseDuringMeet = false;
_root.cache.data.PlayerDataOptions[3] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[4] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[4] == false) {
_root.deselectRightClick = true;
_root.cache.data.PlayerDataOptions[4] = true;
this.gotoAndStop(2);
} else {
_root.deselectRightClick = false;
_root.cache.data.PlayerDataOptions[4] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[5] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[5] == false) {
_root.DragOnLeftClick = true;
_root.cache.data.PlayerDataOptions[5] = true;
this.gotoAndStop(2);
} else {
_root.DragOnLeftClick = false;
_root.cache.data.PlayerDataOptions[5] = false;
this.gotoAndStop(1);
}
if (_root.DragOnLeftClick == false) {
_root.DragKeys[0] = 4;
} else {
_root.DragKeys[0] = 1;
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[6] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[6] == false) {
_root.pauseGameInitially = true;
_root.cache.data.PlayerDataOptions[6] = true;
this.gotoAndStop(2);
} else {
_root.pauseGameInitially = false;
_root.cache.data.PlayerDataOptions[6] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[8] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[8] == false) {
_root.FutaMode = true;
_root.cache.data.PlayerDataOptions[8] = true;
this.gotoAndStop(2);
} else {
_root.FutaMode = false;
_root.cache.data.PlayerDataOptions[8] = false;
this.gotoAndStop(1);
}
}
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[9] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[9] == false) {
_root.hideCustomCursor = true;
_root.cache.data.PlayerDataOptions[9] = true;
this.gotoAndStop(2);
} else {
_root.hideCustomCursor = false;
_root.cache.data.PlayerDataOptions[9] = false;
this.gotoAndStop(1);
}
}
}
}
movieClip 1624 {
}
movieClip 1627 {
}
movieClip 1630 {
}
movieClip 1632 {
}
movieClip 1634 {
}
movieClip 1635 {
}
movieClip 1636 {
}
movieClip 1640 {
}
movieClip 1641 {
}
movieClip 1642 {
}
movieClip 1645 {
}
movieClip 1646 {
instance Mask of movieClip 1636 {
onClipEvent (enterFrame) {
this.gotoAndStop(_root.loveDisplay + 1);
}
}
}
movieClip 1650 {
}
movieClip 1651 {
}
movieClip 1654 {
}
movieClip 1657 {
}
movieClip 1661 {
}
movieClip 1664 {
}
movieClip 1669 {
}
movieClip 1674 {
}
button 1680 {
on (release) {
_root.cache.clear();
_root.gotoAndPlay(1);
}
}
movieClip 1684 {
frame 1 {
stop();
}
frame 5 {
if (_root.UnlocksGallery[0][1] == 1) {
this.u1.Locked._alpha = 0;
this.u1.onRelease = function () {
_root.MiniScene = 2;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[1][1] == 1) {
this.u2.Locked._alpha = 0;
this.u2.onRelease = function () {
_root.MiniScene = 3;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[2][1] == 1) {
this.u3.Locked._alpha = 0;
this.u3.onRelease = function () {
_root.MiniScene = 4;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[3][1] == 1) {
this.u4.Locked._alpha = 0;
this.u4.onRelease = function () {
_root.MiniScene = 5;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[4][1] == 1) {
this.u5.Locked._alpha = 0;
this.u5.onRelease = function () {
_root.MiniScene = 7;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGeneric[0][2] == 1) {
this.u0.Locked._alpha = 0;
this.u0.onRelease = function () {
if (_root.slider.decision == false && _root.cache.data.FileExists == true) {
_root.loadGame = true;
} else {
_root.loadGame = false;
}
_root.FAPMODE = 1;
_root.slider.gotoAndPlay('fadeout');
_root.slider.decision = true;
this.gotoAndStop(1);
};
}
}
}
movieClip 1687 {
frame 2 {
gotoAndPlay(1);
if (_root.paperScroll == 1) {
if (_root.PaperPosition < _root.MaxPaperMove[1]) {
this._parent.warning.changelogPaper._y += 30;
_root.PaperPosition += 30;
}
} else {
if (_root.paperScroll == -1) {
if (_root.PaperPosition > _root.MaxPaperMove[0]) {
this._parent.warning.changelogPaper._y -= 30;
_root.PaperPosition -= 30;
}
}
}
}
}
movieClip 1694 {
frame 1 {
gotoAndStop(2);
}
}
button 1696 {
on (release) {
this.warning.gotoAndStop(8);
}
}
movieClip 1697 {
frame 1 {
var descript = '';
var mouseListener = new Object();
mouseListener.onMouseWheel = function (delta) {
if (delta < 0 && _root.PaperPosition > _root.MaxPaperMove[0] || delta > 0 && _root.PaperPosition < _root.MaxPaperMove[1]) {
_root.slider.optionstitle.warning.changelogPaper._y += delta * 5;
_root.PaperPosition += delta * 5;
}
};
Mouse.addListener(mouseListener);
}
frame 1 {
this.underlay.useHandCursor = false;
}
instance of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
if (_root.cache.data.FileExists != true) {
this._alpha = 50;
}
}
onClipEvent (release) {
if (_root.slider.decision == false && _root.cache.data.FileExists == true) {
_root.loadGame = true;
_root.slider.gotoAndPlay('fadeout');
_root.slider.decision = true;
}
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
onClipEvent (press) {
if (_root.cache.data.FileExists == true) {
this.gotoAndStop(3);
}
}
onClipEvent (rollOver) {
this._parent.descript = 'Continue from your last map.';
if (_root.cache.data.FileExists == true) {
this.gotoAndStop(2);
}
}
onClipEvent (rollOut) {
this._parent.descript = '';
this.gotoAndStop(1);
}
}
instance of movieClip 1589 {
onClipEvent (load) {
if (_root.cache.data.FileExists == true) {
this._alpha = 0;
} else {
this._alpha = 100;
}
}
}
instance of movieClip 1687 {
onClipEvent (keyDown) {
if (Key.getCode() == 38 || Key.getCode() == 87) {
if (_root.PaperPosition < _root.MaxPaperMove[1]) {
this._parent.warning.changelogPaper._y += 10;
_root.PaperPosition += 10;
}
}
if (Key.getCode() == 40 || Key.getCode() == 83) {
if (_root.PaperPosition > _root.MaxPaperMove[0]) {
this._parent.warning.changelogPaper._y -= 10;
_root.PaperPosition -= 10;
}
}
if (Key.getCode() == 32) {
if (_root.PaperLock == 0) {
_root.PaperLock = 1;
_root.changelogPaper.gotoAndStop(2);
} else {
_root.PaperLock = 0;
_root.changelogPaper.gotoAndStop(1);
}
}
}
}
}
movieClip 1701 {
frame 2 {
stop();
}
frame 23 {
stop();
}
}
movieClip 1703 {
frame 2 {
var decision = false;
if (_root.AlreadyWatchedIntro == true) {
if (!mfired) {
_root.MusikLoop = 1;
_root.queuemusikSingle(2);
mfired = true;
}
gotoAndStop('end');
}
}
frame 29 {
stop();
}
instance of movieClip 1558 {
onClipEvent (release) {
_root.slider.play();
}
}
instance of movieClip 1558 {
onClipEvent (release) {
_root.slider.gotoAndStop('end');
}
}
frame 50 {
if (!mfired) {
_root.MusikLoop = 1;
_root.queuemusikSingle(2);
mfired = true;
}
}
frame 134 {
stop();
if (_root.AlreadyWatchedIntro == false) {
_root.AlreadyWatchedIntro = true;
} else {
this.fader.gotoAndPlay('fadeIn');
}
}
frame 153 {
if (_root.loadGame == true) {
_root.gotoAndStop('game');
} else {
_root.gotoAndStop('intro');
}
}
}
button 1706 {
on (release) {
if (_quality == 'MEDIUM') {
_quality = 'HIGH';
} else {
if (_quality == 'HIGH') {
_quality = 'LOW';
} else {
if (_quality == 'LOW') {
_quality = 'MEDIUM';
}
}
}
_root.hoverText = _quality;
}
on (rollOver) {
_root.hoverText = _quality;
}
on (rollOut) {
_root.hoverText = '';
}
}
movieClip 1715 {
}
movieClip 1718 {
}
movieClip 1719 {
}
movieClip 1722 {
}
movieClip 1723 {
}
movieClip 1727 {
}
movieClip 1729 {
}
movieClip 1730 {
}
movieClip 1733 {
}
movieClip 1735 {
frame 1 {
stop();
}
}
movieClip 1738 {
}
movieClip 1739 {
frame 1 {
stop();
}
}
movieClip 1741 {
}
movieClip 1743 {
}
movieClip 1745 {
}
movieClip 1746 {
}
movieClip 1748 {
}
button 1749 {
on (release) {
gotoAndStop(1);
if (_root.pauseDuringMeet == true && _root.gamePaused == true) {
_root.pauseGame();
}
}
}
// unknown tag 88 length 82
movieClip 1757 {
}
movieClip 1760 {
}
movieClip 1761 {
}
button 1764 {
on (release) {
gotoAndStop('negotiate');
}
}
movieClip 1766 {
}
button 1769 {
on (release) {
gotoAndStop('intimidate');
}
}
movieClip 1772 {
}
movieClip 1773 {
}
button 1776 {
on (release) {
gotoAndStop('fortify');
}
}
movieClip 1779 {
}
movieClip 1781 {
}
button 1784 {
on (release) {
gotoAndStop('counter');
}
}
button 1789 {
on (release) {
gotoAndStop('bribe');
}
}
button 1791 {
on (release) {
_root.Diplomacy('negotiate', 0);
}
}
button 1793 {
on (release) {
_root.Diplomacy('negotiate', 2);
}
}
button 1795 {
on (release) {
_root.Diplomacy('negotiate', 1);
}
}
button 1797 {
on (release) {
gotoAndStop(1);
}
}
button 1800 {
on (release) {
_root.Diplomacy('bribe', 1);
}
}
button 1802 {
on (release) {
_root.Diplomacy('bribe', 2);
}
}
button 1804 {
on (release) {
_root.Diplomacy('bribe', 3);
}
}
button 1806 {
on (release) {
_root.Diplomacy('bribe', 4);
}
}
button 1808 {
on (release) {
_root.Diplomacy('bribe', 5);
}
}
button 1810 {
on (release) {
gotoAndStop('negotiate');
}
}
button 1815 {
on (release) {
_root.Diplomacy('intimidate', 0);
}
}
button 1817 {
on (release) {
_root.Diplomacy('intimidate', 1);
}
}
button 1823 {
on (release) {
_root.Diplomacy('fortify', 0);
}
}
button 1825 {
on (release) {
_root.Diplomacy('fortify', 1);
}
}
button 1827 {
on (release) {
if (StoryFlags[3] != 1) {
_root.Diplomacy('fortify', 2);
}
}
}
button 1829 {
on (release) {
_root.Diplomacy('fortify', 3);
}
}
button 1836 {
on (release) {
_root.Diplomacy('counter', 0);
}
}
button 1838 {
on (release) {
_root.Diplomacy('counter', 1);
}
}
movieClip 1840 {
frame 1 {
stop();
}
}
// unknown tag 88 length 63
movieClip 1846 {
frame 1 {
stop();
}
}
button 1847 {
on (rollOver) {
help.gotoAndStop(2);
}
on (rollOut) {
help.gotoAndStop(1);
}
}
button 1852 {
on (release) {
gotoAndStop(5);
}
}
movieClip 1859 {
}
movieClip 1861 {
}
movieClip 1863 {
}
movieClip 1865 {
}
movieClip 1867 {
}
movieClip 1869 {
}
movieClip 1871 {
}
movieClip 1873 {
}
movieClip 1875 {
}
movieClip 1877 {
}
movieClip 1879 {
}
movieClip 1881 {
}
movieClip 1883 {
}
movieClip 1885 {
}
movieClip 1887 {
}
movieClip 1889 {
}
movieClip 1891 {
}
movieClip 1893 {
}
movieClip 1895 {
}
movieClip 1897 {
}
movieClip 1899 {
}
movieClip 1901 {
}
movieClip 1903 {
}
movieClip 1905 {
}
movieClip 1915 {
frame 11 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 1917 {
}
movieClip 1918 {
}
movieClip 1920 {
}
movieClip 1922 {
}
movieClip 1924 {
}
movieClip 1926 {
}
movieClip 1928 {
}
movieClip 1930 {
}
movieClip 1932 {
}
movieClip 1934 {
}
movieClip 1936 {
}
movieClip 1938 {
}
movieClip 1955 {
frame 10 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 1960 {
frame 1 {
stop();
}
}
movieClip 1996 {
frame 31 {
stop();
}
}
movieClip 2016 {
frame 31 {
stop();
}
}
movieClip 2017 {
}
movieClip 2018 {
}
movieClip 2020 {
}
movieClip 2086 {
frame 1 {
this.twihead.hair1.gotoAndPlay(Phase);
this.twihead.hair2.gotoAndPlay(Phase);
}
frame 1 {
if (!init) {
init = true;
var Phase = 'loop1';
}
}
frame 30 {
gotoAndPlay(Phase);
}
frame 40 {
this.twihead.hair1.gotoAndPlay(Phase);
this.twihead.hair2.gotoAndPlay(Phase);
}
frame 59 {
gotoAndPlay(Phase);
}
frame 68 {
this.twihead.hair1.gotoAndPlay(Phase);
this.twihead.hair2.gotoAndPlay(Phase);
}
frame 83 {
this.twihead.hair1.gotoAndPlay(Phase + 're');
this.twihead.hair2.gotoAndPlay(Phase + 're');
}
frame 96 {
if (Phase == 'loop3') {
gotoAndPlay(Phase + 're');
}
}
frame 97 {
this.twihead.hair1.gotoAndPlay('loop1');
this.twihead.hair2.gotoAndPlay('loop1');
}
frame 105 {
gotoAndPlay(Phase);
}
frame 110 {
this.twihead.hair1.gotoAndPlay(Phase);
this.twihead.hair2.gotoAndPlay(Phase);
}
frame 111 {
Phase = 'loop2';
}
frame 213 {
_parent.gotoAndStop(1);
gotoAndPlay('loop2re');
}
}
movieClip 2089 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 2090 {
frame 1 {
stop();
}
frame 4 {
gotoAndStop(1);
}
}
button 2091 {
on (release) {
char.char.Phase = 'loop1';
}
}
button 2093 {
on (release) {
char.char.Phase = 'loop2';
}
}
button 2095 {
on (release) {
char.char.Phase = 'loop3';
}
}
button 2097 {
on (release) {
char.char.Phase = 'cum';
char.gotoAndStop(3);
}
}
button 2101 {
on (release) {
_root.queuemusikBedroom(0);
}
}
button 2102 {
on (release) {
_root.queuemusikBedroom(1);
}
}
button 2103 {
on (release) {
_root.queuemusikBedroom(2);
}
}
movieClip 2104 {
}
movieClip 2107 {
}
movieClip 2109 {
}
movieClip 2111 {
}
movieClip 2113 {
}
movieClip 2115 {
}
movieClip 2117 {
}
movieClip 2119 {
}
movieClip 2121 {
}
movieClip 2123 {
}
movieClip 2125 {
}
movieClip 2127 {
}
movieClip 2129 {
}
movieClip 2131 {
}
movieClip 2133 {
}
movieClip 2135 {
}
movieClip 2137 {
}
movieClip 2139 {
}
movieClip 2148 {
frame 1 {
stop();
}
}
movieClip 2150 {
}
movieClip 2152 {
}
movieClip 2154 {
}
movieClip 2156 {
}
movieClip 2158 {
}
movieClip 2160 {
}
movieClip 2162 {
}
movieClip 2178 {
frame 10 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
frame 26 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(16);
}
}
frame 50 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(45);
}
}
}
movieClip 2180 {
}
movieClip 2186 {
frame 10 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2188 {
}
movieClip 2190 {
}
movieClip 2192 {
}
movieClip 2194 {
}
movieClip 2196 {
}
movieClip 2206 {
frame 9 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2208 {
}
movieClip 2210 {
}
movieClip 2212 {
}
movieClip 2214 {
}
movieClip 2216 {
}
movieClip 2217 {
frame 1 {
stop();
}
}
movieClip 2218 {
}
movieClip 2220 {
}
movieClip 2230 {
frame 1 {
stop();
}
}
movieClip 2232 {
}
movieClip 2233 {
frame 1 {
if (!init) {
init = true;
var Phase = 'loop0';
}
}
frame 23 {
gotoAndPlay(Phase);
}
frame 41 {
gotoAndPlay(Phase);
}
frame 51 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 66 {
gotoAndPlay(Phase);
}
frame 78 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 90 {
gotoAndPlay(Phase);
}
frame 102 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 111 {
if (Phase == 'loop3') {
gotoAndPlay('loop3re');
}
}
frame 119 {
gotoAndPlay(Phase);
}
frame 133 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 142 {
if (Phase == 'loop4') {
gotoAndPlay('loop4re');
}
}
frame 152 {
gotoAndPlay(Phase);
}
frame 162 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 169 {
gotoAndPlay(Phase);
}
frame 180 {
this.head.hair.gotoAndPlay('bounce');
this.butt.gotoAndPlay('jiggle');
this.macbutt.gotoAndPlay('jiggle');
this.macbody.macbutt.gotoAndPlay('jiggle');
}
frame 213 {
gotoAndPlay(Phase);
}
}
button 2234 {
on (release) {
this.char.Phase = 'loop0';
}
}
button 2236 {
on (release) {
this.char.Phase = 'loop0b';
}
}
button 2238 {
on (release) {
this.char.Phase = 'loop1';
}
}
button 2240 {
on (release) {
this.char.Phase = 'loop2';
}
}
button 2242 {
on (release) {
this.char.Phase = 'loop3';
}
}
movieClip 2245 {
}
movieClip 2247 {
}
movieClip 2250 {
frame 1 {
stop();
}
}
movieClip 2252 {
}
movieClip 2254 {
}
movieClip 2256 {
}
movieClip 2259 {
}
movieClip 2261 {
frame 1 {
stop();
}
frame 24 {
gotoAndPlay('pant');
}
}
movieClip 2263 {
}
button 2268 {
on (release) {
nextFrame();
}
}
movieClip 2269 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 2273 {
}
movieClip 2274 {
frame 1 {
var looperman = 0;
}
frame 2 {
stop();
}
frame 5 {
looperman = 1;
}
frame 15 {
if (looperman < 5) {
++looperman;
gotoAndPlay('uploop');
} else {
looperman = 0;
}
}
frame 25 {
gotoAndStop(2);
}
}
movieClip 2284 {
frame 10 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2286 {
}
movieClip 2288 {
}
movieClip 2290 {
}
movieClip 2293 {
}
movieClip 2295 {
}
movieClip 2296 {
frame 1 {
stop();
}
frame 45 {
gotoAndStop(1);
}
frame 71 {
gotoAndStop(1);
}
}
movieClip 2298 {
}
movieClip 2300 {
}
movieClip 2302 {
}
movieClip 2305 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 2307 {
frame 1 {
stop();
}
}
movieClip 2309 {
}
movieClip 2311 {
}
movieClip 2313 {
}
movieClip 2315 {
}
movieClip 2317 {
}
movieClip 2319 {
}
movieClip 2321 {
}
movieClip 2323 {
}
movieClip 2325 {
}
movieClip 2327 {
}
movieClip 2329 {
}
movieClip 2331 {
}
movieClip 2336 {
frame 1 {
stop();
}
}
movieClip 2343 {
}
movieClip 2446 {
frame 1 {
if (!init) {
init = true;
var Phase = 'idle';
}
this.anus.gotoAndStop(1);
this.mouth.gotoAndStop('normal');
}
frame 40 {
if (Phase != 'idle') {
this.Flash.gotoAndPlay(2);
this.anus.gotoAndStop(2);
}
gotoAndPlay(Phase);
}
frame 44 {
this.mouth.gotoAndPlay('pants');
}
frame 52 {
this.butt1.gotoAndPlay('jiggle');
}
frame 53 {
this.butt2.butt1.gotoAndPlay('jiggle');
}
frame 97 {
if (Phase == 'idle') {
this.Flash.play();
}
gotoAndPlay(Phase);
}
frame 103 {
this.mouth.gotoAndPlay('pants');
}
frame 106 {
this.butt1.gotoAndPlay('jiggle2');
this.butt2.butt1.gotoAndPlay('jiggle2');
}
frame 117 {
if (Phase == 'idle') {
this.Flash.play();
}
gotoAndPlay(Phase);
}
frame 123 {
this.mouth.gotoAndPlay('pants');
}
frame 125 {
this.butt1.gotoAndPlay('jiggle2');
this.butt2.butt1.gotoAndPlay('jiggle2');
}
frame 135 {
if (Phase == 'idle') {
this.Flash.play();
}
gotoAndPlay(Phase);
}
frame 143 {
this.mouth.gotoAndPlay('pants');
}
frame 144 {
this.butt1.gotoAndPlay('jiggle2');
this.butt2.butt1.gotoAndPlay('jiggle2');
}
frame 150 {
if (Phase == 'idle') {
this.Flash.play();
}
gotoAndPlay(Phase);
}
frame 163 {
this.mouth.gotoAndStop('pant');
if (this.head.eyeball.looperman == 0) {
this.head.stop();
this.head.eyeball.gotoAndPlay('up');
}
}
frame 165 {
this.butt1.gotoAndPlay('jiggle2');
this.butt2.butt1.gotoAndPlay('jiggle2');
}
frame 209 {
this.head.play();
}
frame 244 {
this.anus.gotoAndStop(1);
this.mouth.gotoAndStop('normal');
}
frame 353 {
Phase = 'idle';
gotoAndPlay(Phase);
}
}
button 2447 {
on (release) {
char.Phase = 'idle';
}
}
button 2449 {
on (release) {
char.Phase = 'loop1';
}
}
button 2450 {
on (release) {
char.Phase = 'loop2';
}
}
button 2451 {
on (release) {
char.Phase = 'loop3';
}
}
button 2453 {
on (release) {
char.Phase = 'loop4';
}
}
button 2455 {
on (release) {
char.Phase = 'cum';
}
}
movieClip 2459 {
}
movieClip 2461 {
}
movieClip 2463 {
}
movieClip 2465 {
}
movieClip 2467 {
}
movieClip 2469 {
}
movieClip 2471 {
}
movieClip 2473 {
}
movieClip 2475 {
}
movieClip 2477 {
}
movieClip 2479 {
}
movieClip 2481 {
}
movieClip 2483 {
}
movieClip 2485 {
}
movieClip 2498 {
frame 10 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2500 {
}
movieClip 2502 {
}
movieClip 2504 {
}
movieClip 2506 {
}
movieClip 2508 {
}
movieClip 2514 {
frame 1 {
stop();
}
frame 52 {
gotoAndStop(1);
}
}
movieClip 2516 {
}
movieClip 2518 {
}
movieClip 2520 {
}
movieClip 2523 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 2525 {
}
movieClip 2527 {
}
movieClip 2529 {
}
movieClip 2531 {
}
movieClip 2590 {
frame 1 {
stop();
}
}
movieClip 2592 {
}
movieClip 2594 {
}
movieClip 2596 {
}
movieClip 2598 {
}
movieClip 2600 {
}
movieClip 2602 {
}
movieClip 2604 {
}
movieClip 2606 {
}
movieClip 2608 {
}
movieClip 2609 {
frame 1 {
if (!init) {
init = true;
var Phase = 'loop1';
}
}
frame 12 {
if (Phase == 'loop1') {
gotoAndPlay(Phase);
}
}
frame 24 {
if (Phase == 'loop2') {
gotoAndPlay(Phase);
}
}
frame 60 {
if (Phase != 'loop1' && Phase != 'loop2') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('loop0');
}
}
frame 90 {
if (Phase == 'loop1') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('junction1');
}
}
frame 127 {
if (Phase == 'loop2') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('junction2');
}
}
frame 171 {
if (Phase != 'loop1' && Phase != 'loop2') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('loop0');
}
}
frame 199 {
if (Phase != 'loop1' && Phase != 'loop2') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('loop0');
}
}
frame 211 {
this.dick.play();
this.head.nextFrame();
this.jaw.play();
}
frame 257 {
this.head.nextFrame();
}
frame 257 {
Phase = 'loop0';
}
frame 287 {
if (Phase != 'loop1' && Phase != 'loop2') {
gotoAndPlay(Phase);
} else {
gotoAndPlay('loop0');
}
}
}
button 2610 {
on (release) {
char.Phase = 'loop1';
}
}
button 2612 {
on (release) {
char.Phase = 'loop2';
}
}
button 2614 {
on (release) {
char.Phase = 'loop3';
}
}
button 2616 {
on (release) {
char.Phase = 'loop4';
}
}
button 2618 {
on (release) {
char.Phase = 'cum1';
}
}
movieClip 2621 {
}
movieClip 2623 {
}
movieClip 2625 {
}
movieClip 2627 {
}
movieClip 2629 {
}
movieClip 2631 {
}
movieClip 2633 {
}
movieClip 2635 {
}
movieClip 2637 {
}
movieClip 2639 {
}
movieClip 2641 {
}
movieClip 2655 {
frame 1 {
stop();
}
frame 17 {
stop();
}
frame 25 {
gotoAndStop('end');
}
}
movieClip 2656 {
}
movieClip 2659 {
}
movieClip 2661 {
}
movieClip 2668 {
}
movieClip 2672 {
frame 48 {
gotoAndPlay(1);
}
frame 85 {
gotoAndPlay(1);
}
frame 105 {
gotoAndPlay(1);
}
}
movieClip 2674 {
}
movieClip 2676 {
}
movieClip 2678 {
}
movieClip 2680 {
}
movieClip 2682 {
}
movieClip 2684 {
}
movieClip 2686 {
}
movieClip 2688 {
}
movieClip 2690 {
}
movieClip 2692 {
}
movieClip 2694 {
}
movieClip 2696 {
}
movieClip 2698 {
}
movieClip 2700 {
}
movieClip 2702 {
}
movieClip 2704 {
}
movieClip 2706 {
}
movieClip 2717 {
frame 1 {
stop();
}
frame 9 {
gotoAndStop(1);
}
}
movieClip 2725 {
frame 13 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2728 {
}
movieClip 2729 {
instance mouth of movieClip 2717 {
onClipEvent (press) {
this.nextFrame();
}
}
}
movieClip 2731 {
}
movieClip 2733 {
}
movieClip 2735 {
}
movieClip 2737 {
}
movieClip 2739 {
}
movieClip 2751 {
frame 6 {
x = _root.randRange(1, 100);
if (x < 85) {
gotoAndPlay(2);
}
}
}
movieClip 2761 {
}
movieClip 2762 {
frame 1 {
stop();
}
instance of movieClip 2761 {
onClipEvent (enterFrame) {
this._rotation = -_parent._parent._rotation * 1;
}
}
frame 151 {
gotoAndPlay('drool');
}
}
movieClip 2764 {
}
movieClip 2769 {
frame 1 {
stop();
}
frame 7 {
stop();
}
frame 14 {
stop();
}
frame 21 {
stop();
}
frame 28 {
stop();
mouth.play();
}
frame 30 {
gotoAndStop('exp5');
}
}
movieClip 2771 {
}
movieClip 2773 {
}
movieClip 2801 {
frame 1 {
stop();
}
frame 47 {
gotoAndStop('end');
}
}
movieClip 2802 {
}
movieClip 2804 {
}
movieClip 2830 {
frame 1 {
stop();
}
frame 31 {
stop();
}
frame 41 {
gotoAndStop('end');
}
}
movieClip 2831 {
}
movieClip 2833 {
}
movieClip 2915 {
frame 1 {
if (!init) {
var Phase = 'hotdog';
var Speed = '1';
var Looperman = 0;
var love = 0;
init = true;
}
}
instance of movieClip 2833 {
onClipEvent (enterFrame) {
if (_parent.love > 10) {
_parent.head.play();
_parent.love = 0;
}
}
}
frame 9 {
if (Looperman < 1) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 40 {
if (Phase == 'hotdog') {
gotoAndPlay(Phase + Speed);
} else {
gotoAndPlay('trans1');
}
}
frame 42 {
maletail.gotoAndPlay('wag');
}
frame 78 {
gotoAndPlay('loop2b');
}
frame 84 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 104 {
if (Phase == 'fuck') {
gotoAndPlay(Phase + Speed);
} else {
gotoAndPlay('trans2');
}
}
frame 104 {
++love;
}
frame 106 {
if (Phase == 'knot') {
gotoAndPlay('knot1');
}
}
frame 107 {
maletail.gotoAndPlay('wag');
}
frame 132 {
gotoAndPlay('loop1b');
}
frame 144 {
if (Looperman < 1) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 158 {
if (Phase == 'fuck') {
gotoAndPlay(Phase + Speed);
} else {
gotoAndPlay('trans2');
}
}
frame 158 {
++love;
}
frame 169 {
if (Looperman < 1) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 183 {
if (Phase == 'fuck') {
gotoAndPlay(Phase + Speed);
} else {
gotoAndPlay('trans2');
}
}
frame 183 {
++love;
}
frame 186 {
++love;
}
frame 190 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 245 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 245 {
++love;
}
frame 274 {
if (Phase == 'hotdog') {
gotoAndPlay('trans2');
} else {
gotoAndPlay('fuck1');
}
}
frame 279 {
++love;
}
frame 279 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 292 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 292 {
++love;
}
frame 307 {
++love;
}
frame 308 {
if (Looperman < 3) {
++Looperman;
gotoAndPlay('knot3loop');
} else {
Looperman = 0;
}
}
frame 318 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 327 {
++love;
}
frame 343 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 354 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 359 {
++love;
}
frame 375 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 380 {
++love;
}
frame 384 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 388 {
++love;
}
frame 423 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 430 {
++love;
}
frame 430 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
frame 434 {
if (Looperman < 3) {
++Looperman;
} else {
maletail.gotoAndPlay('wag');
Looperman = 0;
}
}
frame 438 {
++love;
}
frame 451 {
hoof2.cum.play();
}
frame 470 {
hoof1.cum.play();
}
frame 470 {
leg1.cum.play();
}
frame 506 {
Phase = 'fuck';
Speed = 1;
}
frame 518 {
if (Phase == 'knot') {
if (Speed == 1) {
gotoAndPlay('knot1b');
} else {
gotoAndPlay(Phase + Speed);
}
} else {
gotoAndPlay('trans3');
}
}
}
button 2916 {
on (release) {
getURL('http://www.furaffinity.net/user/duskthebatpack/', '_blank');
}
}
button 2917 {
on (release) {
char.Phase = 'hotdog';
char.Speed = '1';
}
}
button 2919 {
on (release) {
char.Phase = 'fuck';
char.Speed = '1';
}
}
button 2921 {
on (release) {
char.Phase = 'fuck';
char.Speed = '2';
}
}
button 2923 {
on (release) {
char.Phase = 'fuck';
char.Speed = '3';
}
}
button 2925 {
on (release) {
char.Phase = 'knot';
char.Speed = '1';
}
}
button 2927 {
on (release) {
char.Phase = 'knot';
char.Speed = '2';
}
}
button 2929 {
on (release) {
char.Phase = 'knot';
char.Speed = '3';
}
}
button 2931 {
on (release) {
char.Phase = 'knot';
char.Speed = '4';
}
}
button 2933 {
on (release) {
char.Phase = 'knot';
char.Speed = '5';
}
}
button 2937 {
on (release) {
char.Phase = 'knot';
char.Speed = '6';
}
}
movieClip 2938 {
frame 1 {
gotoAndStop(_root.MiniScene);
}
frame 2 {
_root.queuemusikBedroom(2);
}
frame 3 {
_root.queuemusikBedroom(2);
}
frame 4 {
_root.queuemusikBedroom(2);
}
frame 5 {
_root.queuemusikBedroom(2);
}
}
button 2939 {
on (release) {
gotoAndStop(1);
if (_root.pauseDuringMeet == true && _root.gamePaused == true) {
_root.pauseGame();
}
_root.queuemusik(0);
}
}
button 2948 {
on (release) {
if (_root.EvilData[2] <= 0) {
_root.EvilAttacks();
} else {
gotoAndStop(1);
if (_root.pauseDuringMeet == true && _root.gamePaused == true) {
_root.pauseGame();
}
}
}
}
movieClip 2969 {
}
movieClip 2971 {
}
movieClip 2972 {
}
button 2975 {
on (release) {
nextFrame();
}
}
button 2977 {
on (release) {
gotoAndStop(1);
if (_root.pauseDuringMeet == true && _root.gamePaused == true) {
_root.pauseGame();
}
}
}
movieClip 2979 {
}
movieClip 2980 {
frame 1 {
stop();
}
}
button 2981 {
on (release) {
_root.musik.nextFrame();
if (_root.MusikStatus == 'Off') {
_root.MusikStatus = 'On';
_root.Musik.start(_root.MusikPos / 1000);
} else {
_root.MusikStatus = 'Off';
_root.Musik.stop();
_root.MusikPos = _root.Musik.position;
}
}
on (rollOver) {
_root.feedText2 = 'Pause Music';
_root.feedText = 'Suspends the soundtrack.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
movieClip 2983 {
frame 1 {
gotoAndStop(2);
}
frame 4 {
gotoAndStop(2);
}
}
instance musik of movieClip 2983 {
onClipEvent (enterFrame) {
_root.Musik.setVolume(_root.MusikVolume * _root.MVMaster);
}
}
movieClip 2987 {
}
movieClip 2989 {
}
movieClip 2990 {
instance of movieClip 2989 {
onClipEvent (enterFrame) {
myColor = new Color(this);
myColorTransform = new Object();
myColorTransform = {'bb': _root.volumeepos * 2};
myColor.setTransform(myColorTransform);
}
}
}
frame 5 {
if (_root.StoryWatched == true) {
stop();
} else {
_root.gotoAndStop('story');
_root.StoryWatched = true;
cache.data.StoryWatched = true;
}
var mouseyListener = new Object();
mouseyListener.onMouseWheel = function (delta) {
if (delta < 0) {
_root.intro.input.traits.nextFrame();
} else {
if (delta > 0) {
_root.intro.input.traits.prevFrame();
}
}
delta = 0;
};
if (!addedScrollListener) {
addedScrollListener = true;
Mouse.addListener(mouseyListener);
}
endGameSession();
setColor();
var bonusColor = '<font color=\'#BBFF56\'>';
var penaltyColor = '<font color=\'#FF5F5F\'>';
}
button 2993 {
on (rollOver) {
descript = 'Your town\'s name!';
}
on (rollOut) {
descript = '';
}
}
button 2994 {
on (rollOver) {
descript = 'Your character\'s name!';
}
on (rollOut) {
descript = '';
}
}
button 2995 {
on (rollOver) {
descript = '<font color=\'#FFB8B8\'>CHARISMA</font>\rPer Rank:\r• +10% Pony Arrival Rate\r• -0.5% Unhappiness from Population\r• +4% Town Square Efficiency\r• +4 Starting Happiness (Base: 30)\rRank 3: Start with an extra Specialist\rRank 7: -10% Cost of purchasing new Tiles\rRank 10: Trading +10% Sell Price, -10% Buy Price';
}
on (rollOut) {
descript = '';
}
}
button 2996 {
on (rollOver) {
descript = '<font color=\'#B6B6FF\'>INSIGHT</font>\rPer Rank:\r• +5 Max Mana (Base: 10)\r• +0.05 Skill Points when Leveling up\r• +10% Tech Point Generation\r• +10% Technology Discovery Rate\rRank 3: +20 Max Mana\rRank 7: +30 Tech Points\rRank 10: -25% Cost of Tech Labs and Power Stations';
}
on (rollOut) {
descript = '';
}
}
button 2997 {
on (rollOver) {
descript = '<font color=\'#FFFFB1\'>CURIOSITY</font>\rPer Rank:\r• +15 starting Bits\r• +5% Specialist Scouting Efficiency\r• +10% Trader Frequency\r• +1 Maximum Traders per 5 Ranks\rRank 3: +150 Food\rRank 7: Start with 3 Basic Discovered Techs\rRank 10: -40% Cost of Stores and Town Squares';
}
on (rollOut) {
descript = '';
}
}
button 2998 {
on (rollOver) {
descript = '<font color=\'#FFB762\'>KARMA</font>\rPer Rank:\r• +1 Luck\r• +5% Environmental Condition (Base: 80%)\r• -2% Happiness Penalties from Structures\r• +1 Starting Trees and +3% chance of tiles containing trees (Base: 30%)\rRank 3: +25% Neutral Encounter frequency\rRank 7: +10 Gems at Start\rRank 10: Avoid defeat once per ascension';
}
on (rollOut) {
descript = '';
}
}
button 2999 {
on (rollOver) {
descript = '<font color=\'#B6FFD0\'>WILLPOWER</font>\rPer Rank:\r• +5 Defense Rating (Base: 0)\r• +1 Defense Point Regeneration (Base: 5)\r• -5% Penalties from Environmental Degredation\r• +0.5 Fatigue Recovery\rRank 3: -25% Aggressive Encounter Frequency\rRank 7: +15 Maximum Happiness\rRank 10: Specialists train 25% faster';
}
on (rollOut) {
descript = '';
}
}
movieClip 3002 {
}
movieClip 3004 {
}
movieClip 3006 {
}
movieClip 3009 {
}
movieClip 3011 {
}
movieClip 3014 {
}
movieClip 3016 {
}
movieClip 3017 {
}
movieClip 3020 {
}
movieClip 3021 {
}
movieClip 3023 {
}
button 3024 {
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
movieClip 3026 {
}
button 3027 {
on (release) {
if (_root.statInsight > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statInsight < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statInsight -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
if (_root.statInsight > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statInsight < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statInsight -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3028 {
on (release) {
if (_root.statCuriosity > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCuriosity < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statCuriosity -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
if (_root.statCuriosity > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCuriosity < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statCuriosity -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3029 {
on (release) {
if (_root.statKarma > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statKarma < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statKarma -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
if (_root.statKarma > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statKarma < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statKarma -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3030 {
on (release) {
if (_root.statCharisma > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCharisma < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statCharisma -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
if (_root.statCharisma > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCharisma < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statCharisma -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3031 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statInsight + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statInsight < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statInsight += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statInsight + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statInsight < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statInsight += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3032 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCuriosity + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statCuriosity < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statCuriosity += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCuriosity + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statCuriosity < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statCuriosity += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3033 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statKarma + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statKarma < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statKarma += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statKarma + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statKarma < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statKarma += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3034 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCharisma + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statCharisma < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statCharisma += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statCharisma + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statCharisma < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statCharisma += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3035 {
on (release) {
if (_root.statWillpower > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statWillpower < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statWillpower -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
if (_root.statWillpower > 1) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statWillpower < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
_root.statWillpower -= 1;
_root.StatsLeft += statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3036 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statWillpower + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statWillpower < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statWillpower += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
}
on (releaseOutside) {
y = 0;
while (y < 10) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.statWillpower + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.statWillpower < _root.StatMax + statCost && _root.StatsLeft >= statCost) {
_root.statWillpower += 1;
_root.StatsLeft -= statCost;
this.checkstats();
}
++y;
}
}
on (rollOver) {
StatBracketHint();
}
on (rollOut) {
descript = '';
}
}
button 3039 {
on (rollOver) {
descript = 'NORMAL MODE\rStandard, balanced gameplay that anyone can enjoy.';
}
on (rollOut) {
descript = '';
}
on (release) {
if (_root.difficulty == 1) {
_root.difficulty = 2;
_root.intro.input.CB2.gotoAndStop(2);
_root.intro.input.CB1.gotoAndStop(1);
} else {
_root.difficulty = 1;
_root.intro.input.CB2.gotoAndStop(1);
_root.intro.input.CB1.gotoAndStop(2);
}
}
}
button 3040 {
on (rollOver) {
descript = 'HARD MODE\rA more difficult setting that requires a strong understanding of the game\'s mechanics.\r• Increases Aggressive Encounter frequency.\r• Increased Unhappiness for population count.\r• Smaller map.';
}
on (rollOut) {
descript = '';
}
on (release) {
if (_root.difficulty == 1) {
_root.difficulty = 2;
_root.intro.input.CB2.gotoAndStop(2);
_root.intro.input.CB1.gotoAndStop(1);
} else {
_root.difficulty = 1;
_root.intro.input.CB2.gotoAndStop(1);
_root.intro.input.CB1.gotoAndStop(2);
}
}
}
button 3064 {
on (press) {
_root.colorChangeRed = 1;
}
on (release) {
_root.colorChangeRed = 0;
}
on (releaseOutside) {
_root.colorChangeRed = 0;
}
}
button 3065 {
on (press) {
_root.colorChangeRed = -1;
}
on (release) {
_root.colorChangeRed = 0;
}
on (releaseOutside) {
_root.colorChangeRed = 0;
}
}
movieClip 3068 {
}
movieClip 3071 {
frame 2 {
if (_root.colorChangeRed != 0) {
++_root.FuckingWait;
if (_root.FuckingWait > _root.FuckingWaitMax || _root.FuckingWait == 1) {
_root.maleColorRed += _root.colorChangeRed * 5 * int(_root.FuckingWait / 10 + 1);
if (_root.maleColorRed < _root.maleColorRedMin) {
_root.maleColorRed = _root.maleColorRedMin;
}
if (_root.maleColorRed > _root.maleColorRedMax) {
_root.maleColorRed = _root.maleColorRedMax;
}
}
_root.setColor();
} else {
if (_root.colorChangeGreen != 0) {
++_root.FuckingWait;
if (_root.FuckingWait > _root.FuckingWaitMax || _root.FuckingWait == 1) {
_root.maleColorGreen += _root.colorChangeGreen * 5 * int(_root.FuckingWait / 10 + 1);
if (_root.maleColorGreen < _root.maleColorGreenMin) {
_root.maleColorGreen = _root.maleColorGreenMin;
}
if (_root.maleColorGreen > _root.maleColorGreenMax) {
_root.maleColorGreen = _root.maleColorGreenMax;
}
}
_root.setColor();
} else {
if (_root.colorChangeBlue != 0) {
++_root.FuckingWait;
if (_root.FuckingWait > _root.FuckingWaitMax || _root.FuckingWait == 1) {
_root.maleColorBlue += _root.colorChangeBlue * 5 * int(_root.FuckingWait / 10 + 1);
if (_root.maleColorBlue < _root.maleColorBlueMin) {
_root.maleColorBlue = _root.maleColorBlueMin;
}
if (_root.maleColorBlue > _root.maleColorBlueMax) {
_root.maleColorBlue = _root.maleColorBlueMax;
}
}
_root.setColor();
} else {
_root.FuckingWait = 0;
}
}
}
gotoAndPlay(1);
}
}
button 3072 {
on (press) {
_root.colorChangeGreen = 1;
}
on (release) {
_root.colorChangeGreen = 0;
}
on (releaseOutside) {
_root.colorChangeGreen = 0;
}
}
button 3073 {
on (press) {
_root.colorChangeGreen = -1;
}
on (release) {
_root.colorChangeGreen = 0;
}
on (releaseOutside) {
_root.colorChangeGreen = 0;
}
}
button 3075 {
on (press) {
_root.colorChangeBlue = 1;
}
on (release) {
_root.colorChangeBlue = 0;
}
on (releaseOutside) {
_root.colorChangeBlue = 0;
}
}
button 3076 {
on (press) {
_root.colorChangeBlue = -1;
}
on (release) {
_root.colorChangeBlue = 0;
}
on (releaseOutside) {
_root.colorChangeBlue = 0;
}
}
movieClip 3082 {
}
movieClip 3085 {
}
movieClip 3087 {
}
button 3091 {
on (release) {
_parent.play();
}
}
button 3092 {
on (release) {
_root.gotoAndStop('title');
}
}
movieClip 3096 {
}
button 3097 {
on (release) {
nextFrame();
}
}
movieClip 3099 {
}
button 3101 {
on (release) {
prevFrame();
}
}
movieClip 3103 {
frame 1 {
stop();
}
}
movieClip 3107 {
frame 1 {
stop();
}
}
movieClip 3110 {
frame 1 {
gold = 200 + _root.statCuriosity * 15;
if (_root.CurrentAdviser == 0) {
gold += 100;
}
if (_root.CurrentAdviser == 6) {
gold -= 200;
}
if (_root.traitsOwned[7] == 1) {
gold = int(gold * 1.5);
}
}
}
movieClip 3115 {
frame 1 {
stop();
}
}
movieClip 3119 {
frame 1 {
stop();
}
}
movieClip 3123 {
frame 1 {
stop();
}
}
movieClip 3124 {
frame 1 {
townNameInput.tabIndex = 2;
charNameInput.tabIndex = 1;
Button1577.tabIndex = 3;
Button1578.tabIndex = 4;
Button1578.tabIndex = 5;
}
frame 1 {
var traitEnabled = new Array(NaN, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
if (_root.UnlocksGeneric[1][2] == 1) {
traitEnabled[1] = 1;
} else {
traitEnabled[1] = 0;
}
if (_root.UnlocksGeneric[3][2] == 1) {
traitEnabled[12] = 1;
} else {
traitEnabled[12] = 0;
}
if (_root.UnlocksGeneric[8][2] == 1) {
traitEnabled[18] = 1;
} else {
traitEnabled[18] = 0;
}
if (_root.UnlocksGeneric[9][2] == 1) {
traitEnabled[13] = 1;
} else {
traitEnabled[13] = 0;
}
if (_root.UnlocksGeneric[10][2] == 1) {
traitEnabled[24] = 1;
} else {
traitEnabled[24] = 0;
}
if (_root.UnlocksGeneric[11][2] == 1) {
traitEnabled[16] = 1;
} else {
traitEnabled[16] = 0;
}
if (_root.UnlocksGeneric[12][2] == 1) {
traitEnabled[20] = 1;
} else {
traitEnabled[20] = 0;
}
if (_root.UnlocksGeneric[21][2] == 1) {
traitEnabled[30] = 1;
} else {
traitEnabled[30] = 0;
}
if (_root.UnlocksGeneric[22][2] == 1) {
traitEnabled[29] = 1;
} else {
traitEnabled[29] = 0;
}
if (_root.UnlocksGeneric[23][2] == 1) {
traitEnabled[17] = 1;
} else {
traitEnabled[17] = 0;
}
if (_root.UnlocksGeneric[24][2] == 1) {
traitEnabled[26] = 1;
} else {
traitEnabled[26] = 0;
}
if (_root.UnlocksGeneric[15][2] == 1) {
traitEnabled[19] = 1;
} else {
traitEnabled[19] = 0;
}
if (_root.UnlocksGeneric[16][2] == 1) {
traitEnabled[14] = 1;
} else {
traitEnabled[14] = 0;
}
}
frame 1 {
function StatBracketHint() {
descript = 'Stats can be increased to a maximum of Rank 10 and determine your character\'s personality and abilities.';
}
var descript = '';
var traitOrder = new Array(NaN, 7, 3, 26, 15, 8, 14, 2, 23, 18, 9, 28, 29, 6, 21, 19, 27, 25, 17, 5, 4, 1, 10, 11, 16, 13, 24, 30, 22, 12, 20);
var traitsDescription = new Array('', '<font color=\'#FFCC00\'>PROSPECTOR</font>\r' + _root.bonusColor + '+5% Quarry Bonus per nearby house and -75% Happiness Penalty.</font>' + '\n' + _root.penaltyColor + '-1 Quarry Radius, +50% Quarry Cost, Cannot build Gardens</font>' + '\n' + '\n' + 'Some ponies are natural-born explorers, destined to excavate the earth and discover its many wonders.', '<font color=\'#FFCC00\'>HARMONIOUS</font>\r' + _root.bonusColor + 'Increases Happiness per day by +1 for every 5 Defense Rating. This has a maximum effect of +64.</font>' + '\n' + _root.bonusColor + 'The Bonus will be less effective if your population is below 100.</font>' + '\n' + _root.penaltyColor + 'Specialists are half as effective at Raiding.</font>' + '\n' + '\n' + 'Love or Hate. War or Peace. For those who are peaceful at heart, the decision is obvious.', '<font color=\'#FFCC00\'>CHEAPSKATE</font>\r' + _root.bonusColor + 'All structures cost 10% less bits. Doesn\'t change other costs such as Gems or Obsidian.</font>' + '\n' + _root.penaltyColor + 'Maximum ponies per house decreased by 2, including upgraded houses. Does not affect Sky Lounges.</font>' + '\n' + '\n' + 'Sometimes cutting-corners can help speed up the process of creating a city.', '<font color=\'#FFCC00\'>ENVIRONMENTALIST</font>\r' + _root.bonusColor + 'Each point of Eco-Score over 12 will give +4 Happiness per day. This has a maximum effect of +64.</font>' + '\n' + _root.bonusColor + 'The Bonus will be less effective if your population is below 100.</font>' + '\n' + _root.penaltyColor + 'Each point of Eco-Score below 12 will give -4 Happiness per day.</font>' + '\n' + '\n' + 'Only when the earth is healthy can one be happy, or at least that\'s what environmentalists think.', '<font color=\'#FFCC00\'>BOTANIST</font>\r' + _root.bonusColor + 'Garden radius is increased by one, making it similiar to the Town Square radius</font>' + '\n' + _root.penaltyColor + 'Quarries also have a bigger radius, meaning they will be harder to place without overlapping with Houses.</font>' + '\n' + '\n' + 'Gardening can be a great hobby, especially if you\'re fascinated by plant-life.', '<font color=\'#FFCC00\'>HEDONIST</font>\r' + _root.bonusColor + 'Love Magic gained from houses is doubled. Love Magic is how you level up.</font>' + '\n' + _root.penaltyColor + 'Houses give half as much Bits income each day.</font>' + '\n' + '\n' + 'Money is simply an obstacle in the persuit of true pleasure and self-indulgence.', '<font color=\'#FFCC00\'>PREPARED</font>\r' + _root.bonusColor + 'Increases the amount of Bits you start the game with by 50%.</font>' + '\n' + _root.bonusColor + 'The first Town Square you place will be free of cost. Free structures give 0% refund when destroyed.</font>' + '\n' + _root.penaltyColor + 'The amount of Love Magic you need to level up is increased by 10%.</font>' + '\n' + '\n' + 'Being ready for anything is great sign of someone who knows what they\'re doing, even if it means working a little harder.', '<font color=\'#FFCC00\'>SOCIALIST</font>\r' + _root.bonusColor + 'Town Square Radius increased, allowing it\'s effects to reach to houses farther away.</font>' + '\n' + _root.penaltyColor + 'Quarries, Factories and Drills have their total cost, including gems, increased by 30%.</font>' + '\n' + '\n' + 'Even when on the outskirts of society, your ponies will feel comfortable and safe due to such a charismatic and wonderful leader!' + 'Who wouldn\'t want to go fight a pointless war for a guy like that?', '<font color=\'#FFCC00\'>SCIENTIST</font>\r' + _root.bonusColor + '40% more Tech Points are generated from Structures such as Libraries and Tech Labs.</font>' + '\n' + _root.penaltyColor + '10% less Love Magic is generated from all sources.</font>' + '\n' + '\n' + 'Being preoccupied with research and advancement of technologies can slow down other priorities,' + ' but a person of science believes that it\'s worth it in the long run.', '<font color=\'#FFCC00\'>INVESTOR</font>\r' + _root.bonusColor + 'Increased the number of traders that can be at a Town Square by 3.</font>' + '\n' + _root.bonusColor + 'The amount of goods traded is doubled. For example you trade 10 Gems at a time instead of 5.</font>' + '\n' + _root.penaltyColor + 'The price for goods will refresh 80% less often.</font>' + '\n' + '\n' + 'Patience is a virtue, especially when waiting for the right deal.', '<font color=\'#FFCC00\'>MERCANTILE</font>\r' + _root.bonusColor + 'Traders will arrive at Town Squares 5 times as fast, and you gain a flat +8 Happiness per day.</font>' + '\n' + _root.penaltyColor + 'Quarries, Libraries, etc. will not give any Bits, forcing you to rely on trading or taxes to gain bits.</font>' + '\n' + '\n' + 'The life of a merchant is a good life, especially if you love to socialize and make bargains.', '<font color=\'#FFCC00\'>CURSED</font>\r' + _root.bonusColor + 'Each Tree on the map will automatically generate 0.3 Mana per day</font>' + '\n' + _root.penaltyColor + 'Building over a tree will reduce Mana and Happiness to 0</font>' + '\n' + '\n' + 'A terrible fate to be cursed by the forest god.', '<font color=\'#FFCC00\'>SUPERSTITIOUS</font>\r' + _root.bonusColor + 'Increases Mana regeneration by +5, meaning each day you will gain 5 more mana points to spend.</font>' + '\n' + _root.bonusColor + '+25 Max Mana. Since regeneration is based off of max mana, this actually increases it by another 0.5.</font>' + '\n' + _root.penaltyColor + 'Excess happiness will no longer generate mana.</font>' + '\n' + '\n' + 'Many of us try not to let the possibility of supernatural beings interrupt their mojo, but others cannot simply overlook what might be out there.', '<font color=\'#FFCC00\'>TYRANT</font>\r' + _root.bonusColor + 'Effects of Edicts are doubled and only last 1 day, allowing you to change edicts constantly.</font>' + '\n' + _root.penaltyColor + 'Maximum Happiness is reduced by 40.</font>' + '\n' + '\n' + 'A voice that must be constantly heard, a control freak, a ruler that will sacrifice the well being of its citizens to ensure a powerful reign.', '<font color=\'#FFCC00\'>CAREFREE</font>\r' + _root.bonusColor + 'Maximum Happiness is increased by 30.</font>' + '\n' + _root.penaltyColor + 'You can no longer activate Edicts, they are permanently disabled.</font>' + '\n' + '\n' + 'Some things in life are bad. They can really make you mad. Other things just make you swear and curse. ' + 'When you\'re chewing on life\'s gristle. Don\'t grumble, give a whistle. And this\'ll help things turn out for the best... and always look on the bright side of life!', '<font color=\'#FFCC00\'>VENETIAN</font>\r' + _root.bonusColor + 'Increased maximum Defense Rating by +50.</font>' + '\n' + _root.bonusColor + ' Each you make a Trade at the Town Square, you gain some Happiness (excess converted to Mana).</font>' + '\n' + _root.penaltyColor + 'Your starting area will be spread out by water channels, effectively reducing the radius of all buildings by one square.</font>' + '\n' + '\n' + 'The smell of pasta and gondolas is in the air!', '<font color=\'#FFCC00\'>VIGILANTE</font>\r' + _root.bonusColor + 'Start with an extra Specialist, and all Specialists are 50% better at Raiding.</font>' + '\n' + _root.penaltyColor + 'Aggressive Encounters, such as Bandits and Changelings, will appear twice as often.</font>' + '\n' + '\n' + 'For those warmongers ponies who love the thrill of conflict and aren\'t afraid of those stinky Changelings.', '<font color=\'#FFCC00\'>VETERAN</font>\r' + _root.bonusColor + 'Your first Specialist will be Rank 10 automatically.</font>' + '\n' + _root.penaltyColor + 'All Specialists, including the veteran, will rank up 50% slower when Training.</font>' + '\n' + '\n' + 'Sometimes it takes someone with a little military experience to be an effective leader.', '<font color=\'#FFCC00\'>ALCOHOLIC</font>\r' + _root.bonusColor + 'The first Tavern you place is free, has a bigger radius and double effect.</font>' + '\n' + _root.penaltyColor + 'Sources of Happiness per Day outside of the Tavern will have no effect.</font>' + '\n' + '\n' + 'Drink Triple. See Double. Act Single.', '<font color=\'#FFCC00\'>WIZARD</font>\r' + _root.bonusColor + 'You\'re a fucking Wizard</font>' + '\n' + _root.penaltyColor + 'Permanently a Virgin</font>' + '\n' + '\n' + 'Your only weakness is a gun.', '<font color=\'#FFCC00\'>WELL-FED</font>\r' + _root.bonusColor + 'Unhappiness per day from Population size is reduced by 35%.</font>' + '\n' + _root.penaltyColor + 'Each Pony will eat 4 Food per Day, instead of 2, requiring you to have twice as much food production.</font>' + '\n' + '\n' + 'The key to happiness is a full tummy, or at least that\'s what food-enthusiasts like to believe.', '<font color=\'#FFCC00\'>EQUALITY</font>\r<font color=\'#FFCC00\'>All Stats become 5. This happens before Stat-related bonuses are applied.</font>\r<font color=\'#FFCC00\'>Your current and maximum Happiness are always 50.</font>\r\rAbandon your unique talents and unlock true happiness.', '<font color=\'#FFCC00\'>EXPLORER</font>\r' + _root.bonusColor + 'The first 5 Tiles are free to obtain and don\'t increase the cost of additional tiles.</font>' + '\n' + _root.penaltyColor + 'Scouting is 50% less effective.</font>' + '\n' + '\n' + 'Staying in one place for their entire lives works for some, but not for you. You love to get up and about, see the sights, explore new worlds.', '<font color=\'#FFCC00\'>EMPYREAN</font>\r' + _root.bonusColor + 'Town Squares get a gigantic radius and cost half as much.</font>' + '\n' + _root.penaltyColor + 'Town Squares cannot be built at ground level, only on Cloud Tiles.</font>' + '\n' + '\n' + 'Earth Ponies of ancient times often looked to the skies to understand their existence in the world. ' + 'They worshipped the Sun, the Moon, the Clouds and the Stars. Some still do.', '<font color=\'#FFCC00\'>UNDERDOG</font>\r' + _root.bonusColor + 'If you deal with an encounter in the wilderness and lose, you have a second chance of winning.</font>' + '\n' + _root.penaltyColor + 'Stats above 7 are reduced by 1. This happens before Stat-related bonuses are applied.</font>' + '\n' + '\n' + 'Easily underestimated, often mocked, but in the end: always respected.', '<font color=\'#FFCC00\'>CAPITALIST</font>\r' + _root.bonusColor + 'Each Store Generates +2 Bits per day in addition to it\'s normal effects.</font>' + '\n' + _root.bonusColor + 'When increasing Taxes beyond the normal amount, the happiness penalty is reduced by 25%.</font>' + '\n' + _root.penaltyColor + 'Each non-upgraded house will incur a happiness penalty. This does not affect Sky Lounges.</font>' + '\n' + '\n' + 'Ah yes, money~ You love money, especially when it involves legal robbery!', '<font color=\'#FFCC00\'>COMMANDO</font>\r' + _root.bonusColor + 'Every House increases maximum Defense Rating by 1. Ponies consume 25% less Food per day.</font>' + '\n' + _root.penaltyColor + '+50% Unhappiness from population size, meaning larger cities will be harder to manage.</font>' + '\n' + '\n' + 'The militia commander, the harsh taskmaster, the hardass. People don\'t like you, but you don\'t mind: the Commando is a thankless job.', '<font color=\'#FFCC00\'>VERSATILE</font>\r' + _root.bonusColor + 'Start the game with +4 Skill Points, and gain an additional skill point every 5th Level.</font>' + '\n' + _root.penaltyColor + 'Maximum Rank for each skill is 3.</font>' + '\n' + '\n' + 'Flexible Jack of all Trades, you\'ve always been a cut above the rest, but found it difficult to stick with one thing for too long.', '<font color=\'#FFCC00\'>CLOISTERED</font>\r' + _root.bonusColor + '+2 Library Radius, +300 Tech Points, Houses automatically upgrade to Manors when built.</font>' + '\n' + _root.penaltyColor + 'Town Square radiuses are set to 1, overriding all other bonuses from traits or perks.</font>' + '\n' + _root.penaltyColor + 'Houses won\'t move in without a Town Square.</font>' + '\n' + '\n' + 'You value your privacy above all else, even if it means being a little anti-social at times.', '<font color=\'#FFCC00\'>HEROIC</font>\r' + _root.bonusColor + 'Start with an extra Specialist and Neutral Encounters will appear two at a time.</font>' + '\n' + _root.penaltyColor + 'If Neutral Encounters are ignored, they will be replaced by an aggressive Riot encounter.</font>' + '\n' + '\n' + 'A hero\'s duty never ends.', NaN);
}
frame 1 {
function swapChar(which) {
_root.intro.input.char0.gotoAndStop(1);
_root.intro.input.char1.gotoAndStop(1);
_root.intro.input.char2.gotoAndStop(1);
_root.intro.input.char3.gotoAndStop(1);
_root.intro.input['char' + which].gotoAndStop(2);
_root.CurrentAdviser = adviserList[which];
}
function checkstats() {
this.txtCharisma.html = true;
this.txtCharisma.htmlText = '<font color=\'#' + statFontColor[_root.statCharisma - 1] + '\'>' + _root.statCharisma + '</font>';
this.txtCuriosity.html = true;
this.txtCuriosity.htmlText = '<font color=\'#' + statFontColor[_root.statCuriosity - 1] + '\'>' + _root.statCuriosity + '</font>';
this.txtInsight.html = true;
this.txtInsight.htmlText = '<font color=\'#' + statFontColor[_root.statInsight - 1] + '\'>' + _root.statInsight + '</font>';
this.txtKarma.html = true;
this.txtKarma.htmlText = '<font color=\'#' + statFontColor[_root.statKarma - 1] + '\'>' + _root.statKarma + '</font>';
this.txtWillpower.html = true;
this.txtWillpower.htmlText = '<font color=\'#' + statFontColor[_root.statWillpower - 1] + '\'>' + _root.statWillpower + '</font>';
if (_root.statCharisma == 1) {
this.charismadown._alpha = 15;
} else {
this.charismadown._alpha = 100;
}
if (_root.statCharisma == _root.StatMax + statCost) {
this.charismaup._alpha = 15;
} else {
this.charismaup._alpha = 100;
}
if (_root.statInsight == 1) {
this.insightdown._alpha = 15;
} else {
this.insightdown._alpha = 100;
}
if (_root.statInsight == _root.StatMax + statCost) {
this.insightup._alpha = 15;
} else {
this.insightup._alpha = 100;
}
if (_root.statKarma == 1) {
this.karmadown._alpha = 15;
} else {
this.karmadown._alpha = 100;
}
if (_root.statKarma == _root.StatMax + statCost) {
this.karmaup._alpha = 15;
} else {
this.karmaup._alpha = 100;
}
if (_root.statCuriosity == 1) {
this.curiositydown._alpha = 15;
} else {
this.curiositydown._alpha = 100;
}
if (_root.statCuriosity == _root.StatMax + statCost) {
this.curiosityup._alpha = 15;
} else {
this.curiosityup._alpha = 100;
}
if (_root.statWillpower == 1) {
this.willpowerdown._alpha = 15;
} else {
this.willpowerdown._alpha = 100;
}
if (_root.statWillpower == _root.StatMax + statCost) {
this.willpowerup._alpha = 15;
} else {
this.willpowerup._alpha = 100;
}
}
adviserList = new Array(0, 1, 2, 6);
swapChar(0);
_root.intro.input.map1.gotoAndStop(2);
_root.intro.input.map2.gotoAndStop(1);
_root.charSelected = 0;
row = 0;
col = 0;
WW = 265;
HH = 66;
SCALE = 72;
var maxTraits = 30;
wumbo = 1;
while (wumbo <= maxTraits) {
var traitTile = this.traits.traits.attachMovie('traitBtn' + String(traitOrder[wumbo]), 'trait' + String(traitOrder[wumbo]), 3000 + wumbo);
traitTile._xscale = SCALE;
traitTile._yscale = SCALE;
traitTile._x = -265 + WW * row;
traitTile._y = 4 + HH * col;
++row;
if (row == 3) {
++col;
row = 0;
}
++wumbo;
}
p = 1;
while (p <= 9) {
a = this.traits.traits['trait' + p];
a.Selected = false;
if (traitEnabled[p]) {
a.gotoAndStop(1);
a.onPress = function () {
this.gotoAndStop(4);
this.Selected = true;
};
a.onRelease = function () {
if (_root.traitsOwned[(this._name.split(''))[5]] == 1) {
_root.traitsOwned[(this._name.split(''))[5]] = 0;
this.gotoAndStop(2);
++_root.TraitsLeft;
} else {
if (_root.TraitsLeft > 0) {
_root.traitsOwned[(this._name.split(''))[5]] = 1;
this.gotoAndStop(5);
--_root.TraitsLeft;
} else {
this.gotoAndStop(2);
}
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.traitsOwned[(this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(2);
}
this.Selected = true;
descript = traitsDescription[(this._name.split(''))[5]];
};
a.onRollOut = function () {
if (_root.traitsOwned[(this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
descript = '';
};
a.onReleaseOutside = function () {
if (_root.traitsOwned[(this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
descript = '';
};
} else {
a.gotoAndStop(6);
}
++p;
}
p = 10;
while (p <= maxTraits) {
a = this.traits.traits['trait' + p];
a.Selected = false;
if (traitEnabled[p]) {
a.gotoAndStop(1);
a.onPress = function () {
this.gotoAndStop(4);
this.Selected = true;
};
a.onRelease = function () {
if (_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] == 1) {
_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] = 0;
this.gotoAndStop(2);
++_root.TraitsLeft;
} else {
if (_root.TraitsLeft > 0) {
_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] = 1;
this.gotoAndStop(5);
--_root.TraitsLeft;
} else {
this.gotoAndStop(2);
}
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(2);
}
this.Selected = true;
descript = traitsDescription[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))];
};
a.onRollOut = function () {
if (_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
descript = '';
};
a.onReleaseOutside = function () {
if (_root.traitsOwned[Number(String((this._name.split(''))[5]) + String((this._name.split(''))[6]))] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
descript = '';
};
} else {
a.gotoAndStop(6);
}
++p;
}
var statFontColor = new Array('D22B22', 'D28222', 'F3DB31', 'DFF331', 'B4F331', '89F331', '2CFF4A', '2AFF78', '19FFAC', '00DBFF');
checkstats();
}
instance CB1 of movieClip 1608 {
onClipEvent (load) {
if (_root.difficulty == 1) {
this.gotoAndStop(2);
} else {
this.gotoAndStop(1);
}
}
}
instance CB2 of movieClip 1608 {
onClipEvent (load) {
if (_root.difficulty == 2) {
this.gotoAndStop(2);
} else {
this.gotoAndStop(1);
}
}
}
instance char0 of movieClip 3107 {
onClipEvent (release) {
_parent.swapChar(0);
}
onClipEvent (rollOver) {
_parent.descript = '<font color=\'#AB80FE\'>TWILIGHT</font>\r• ' + _root.bonusColor + '+100 Starting Bits</font>' + '\n' + '• ' + _root.bonusColor + '+1 Library Range</font>' + '\n' + '• ' + _root.bonusColor + 'Start with Max Mana</font>' + '\n' + '• ' + _root.bonusColor + '1 Free Tree-House</font>' + '\n' + '• ' + _root.penaltyColor + '-15% Pony Arrival Rate</font>' + '\n' + '• ' + _root.penaltyColor + 'Unhappiness from Houses without a Library</font>' + '\n' + '\n' + 'Adviser Powers:' + '\n' + '• [30 Mana] Power Fortify: Increases Defense Rating permanently' + '\n' + '• [15 Mana] Elemental Balance: Improves Environmental condition permanently' + '\n' + '• [20 Mana] Tech Boost: Converts remaining Mana into Tech Points';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
instance char1 of movieClip 1735 {
onClipEvent (release) {
_parent.swapChar(1);
}
onClipEvent (rollOver) {
_parent.descript = '<font color=\'#FFEEA3\'>FLUTTERS</font>\r• ' + _root.bonusColor + '+5 Base Eco-Score</font>' + '\n' + '• ' + _root.bonusColor + '+20% Love Magic from Gardens</font>' + '\n' + '• ' + _root.bonusColor + 'Start with +35% Environmental Condition</font>' + '\n' + '• ' + _root.bonusColor + 'Gardens cost 100 Bits but have an increased Radius</font>' + '\n' + '• ' + _root.penaltyColor + '-50% Specialist Raid Efficiency</font>' + '\n' + '• ' + _root.penaltyColor + '+10% Aggressive Encounter Frequency</font>' + '\n' + '\n' + 'Adviser Powers:' + '\n' + '• [25 Mana] Relax: Ends all current edicts' + '\n' + '• [32 Mana] Nature\'s Bounty: Generates Gems based on Eco-Score' + '\n' + '• [50 Mana] Regenerate: One Garden is permanently converted into a Tree';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
instance char2 of movieClip 1739 {
onClipEvent (release) {
_parent.swapChar(2);
}
onClipEvent (rollOver) {
_parent.descript = '<font color=\'#FFA210\'>APPLEJAY</font>\r• ' + _root.bonusColor + '+400% Trade Quantity for Food</font>' + '\n' + '• ' + _root.bonusColor + '+1000 Maximum Food Storage</font>' + '\n' + '• ' + _root.bonusColor + '+1 Starting Obsidian</font>' + '\n' + '• ' + _root.bonusColor + '1 Free Farm</font>' + '\n' + '• ' + _root.penaltyColor + '-1 Store Radius</font>' + '\n' + '• ' + _root.penaltyColor + '+10% Unhappiness from Population</font>' + '\n' + '\n' + 'Adviser Powers:' + '\n' + '• [5 Mana] Cider Press: Convert Food into Happiness' + '\n' + '• [8 Mana] Quick Harvest: Gain Food for each Farm' + '\n' + '• [12 Mana] Barter: 5 Traders arrive instantly';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
instance map1 of movieClip 3115 {
onClipEvent (release) {
_root.intro.input.map1.gotoAndStop(2);
_root.intro.input.map2.gotoAndStop(1);
_root.MapType = 1;
}
onClipEvent (rollOver) {
_parent.descript = 'TREE PLACEMENT - Loose Distribuion\rStarting trees will be placed mostly at random, with a bias for the top left half of the map.\rThis is the default tree placement algorithm that has been in since version 1.00.';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
instance map2 of movieClip 3119 {
onClipEvent (release) {
_root.intro.input.map1.gotoAndStop(1);
_root.intro.input.map2.gotoAndStop(2);
_root.MapType = 2;
}
onClipEvent (rollOver) {
_parent.descript = 'TREE PLACEMENT - Tight Distribuion\rStarting trees will be placed very tightly together, with a bias for the top left half of the map.\rThis algorithm will keep trees neatly tucked out of the way for people who like clean building areas.';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
instance char3 of movieClip 3123 {
onClipEvent (release) {
_parent.swapChar(3);
}
onClipEvent (rollOver) {
_parent.descript = '<font color=\'#CAC3FA\'>DERPY</font>\r• ' + _root.bonusColor + 'Structure Costs are Randomized</font>' + '\n' + '• ' + _root.bonusColor + 'Stores and Houses can be placed on Cloud Tiles</font>' + '\n' + '• ' + _root.bonusColor + 'Building over a Tree gives +100% Build Speed and +40 Bits</font>' + '\n' + '• ' + _root.bonusColor + '1 Free House</font>' + '\n' + '• ' + _root.penaltyColor + 'Start with -200 Bits</font>' + '\n' + '• ' + _root.penaltyColor + '-50% Technology Discovery Rate</font>' + '\n' + '\n' + 'Adviser Powers:' + '\n' + '• [3 Mana] Summon Muffin: +1 Food' + '\n' + '• [5 Mana] Mysterious Bubble: +20 Defense Points' + '\n' + '• [15 Mana] Home Improvement: Derpy improves one of your houses';
}
onClipEvent (rollOut) {
_parent.descript = '';
}
}
}
movieClip 3128 {
frame 1 {
var startresource = 'Starting Resources: Normal';
gotoAndPlay(2);
}
instance input of movieClip 3124 {
onClipEvent (enterFrame) {
_root.townName = String(_root.intro.input.townNameInput.text);
_root.charName = String(_root.intro.input.charNameInput.text);
}
}
frame 5 {
_root.queuemusikSingle(0);
_root.MusikLoop = 1;
}
frame 20 {
stop();
}
frame 42 {
_root.StatsLeft = 0;
if (_root.traitsOwned[11] == 1 && _root.traitsOwned[16] == 1) {
_root.charName = 'Doge ' + _root.charName;
}
if (_root.traitsOwned[7] == 1 && _root.traitsOwned[3] == 1) {
_root.charName += ' the Miser';
}
if (_root.traitsOwned[6] == 1 && _root.traitsOwned[15] == 1) {
_root.charName += ' the Lazy';
}
if (_root.traitsOwned[1] == 1 && _root.traitsOwned[19] == 1) {
_root.charName += ' of Armok';
}
if (_root.traitsOwned[12] == 1 && _root.traitsOwned[13] == 1) {
_root.charName = 'Mystic' + _root.charName;
}
if (_root.traitsOwned[20] == 1 && _root.traitsOwned[9] == 1) {
_root.charName += ' the Genius';
}
if (_root.traitsOwned[4] == 1 && _root.traitsOwned[5] == 1) {
_root.charName += ' the Verdant';
}
_root.gotoAndStop('game');
}
}
movieClip 3133 {
}
movieClip 3136 {
}
movieClip 3137 {
}
movieClip 3139 {
}
movieClip 3141 {
}
movieClip 3143 {
}
movieClip 3145 {
}
// unknown tag 88 length 67
movieClip 3152 {
}
button 3156 {
on (release) {
_root.gotoAndStop('intro');
}
}
movieClip 3159 {
}
movieClip 3165 {
}
movieClip 3170 {
}
// unknown tag 88 length 39
movieClip 3178 {
}
movieClip 3180 {
frame 1 {
gotoAndPlay(2);
}
frame 4 {
_root.queuemusikSingle(1);
}
frame 38 {
stop();
}
instance of movieClip 1456 {
onClipEvent (release) {
_root.intro.cinepop.play();
}
}
frame 51 {
stop();
}
frame 90 {
stop();
}
frame 104 {
_root.intro.nextFrame();
}
frame 124 {
stop();
}
frame 151 {
_root.intro.nextFrame();
}
frame 172 {
stop();
}
frame 191 {
_root.gotoAndStop('intro');
}
}
movieClip 3186 {
}
movieClip 3187 {
}
movieClip 3188 {
frame 1 {
stop();
}
}
button 3189 {
on (press) {
_root.deselectAll();
}
}
frame 9 {
}
frame 10 {
gotoAndStop('game');
}
movieClip 3194 {
}
movieClip 3195 {
}
movieClip 3196 {
}
movieClip 3197 {
}
movieClip 3199 {
frame 1 {
function camControl() {
parentColor.setTransform(camColor.getTransform());
var v4 = sX / this._width;
var v3 = sY / this._height;
_parent._x = cX - this._x * v4;
_parent._y = cY - this._y * v3;
_parent._xscale = 100 * v4;
_parent._yscale = 100 * v3;
}
function resetStage() {
var v2 = {'ra': 100, 'rb': 0, 'ga': 100, 'gb': 0, 'ba': 100, 'bb': 0, 'aa': 100, 'ab': 0};
parentColor.setTransform(v2);
_parent._xscale = 100;
_parent._yscale = 100;
_parent._x = 0;
_parent._y = 0;
}
this._visible = false;
var oldMode = Stage.scaleMode;
Stage.scaleMode = 'exactFit';
var cX = Stage.width / 2;
var cY = Stage.height / 2;
var sX = Stage.width;
var sY = Stage.height;
Stage.scaleMode = oldMode;
var camColor = new Color(this);
var parentColor = new Color(_parent);
this.onEnterFrame = camControl;
camControl();
this.onUnload = resetStage;
}
}
movieClip 3200 {
}
movieClip 3203 {
}
button 3208 {
on (release) {
_root.pauseGame();
}
}
movieClip 3211 {
frame 1 {
stop();
}
}
movieClip 3214 {
instance Mask of movieClip 1636 {
onClipEvent (enterFrame) {
this.gotoAndStop(_root.loveDisplay + 1);
}
}
}
instance loveMeter of movieClip 3214 {
onClipEvent (rollOver) {
_root.feedText2 = 'Love Magic: ' + _root.loveDisplay + '%';
_root.feedText = 'Determines how much \'\'love magic\'\' has been generated by your ponies.\rUpon filling this meter your Love Magic Rank will increase by 1.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (release) {
_root.HW.gotoAndStop(2);
_root.showWhat(1);
}
}
movieClip 3219 {
}
movieClip 3223 {
}
button 3226 {
on (release) {
_root.deselectAll();
_root.buildCatalog = -1;
_root.buildPlacement = 'remove';
a = 0;
while (a < 4) {
_root.cost[a] = 0;
++a;
}
}
on (rollOver) {
_root.feedText = 'Remove a structure and salvage 60% of the total cost of the structure, including upgrade costs. \r100% refund for buildings that are still under construction. Free structures give no refund.';
_root.feedText2 = 'Demolish';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
movieClip 3227 {
}
movieClip 3228 {
frame 1 {
stop();
}
}
movieClip 3229 {
}
movieClip 3230 {
frame 1 {
stop();
}
}
movieClip 3233 {
frame 1 {
stop();
}
}
movieClip 3234 {
}
movieClip 3235 {
frame 1 {
stop();
}
}
movieClip 3236 {
}
movieClip 3237 {
frame 1 {
stop();
}
}
movieClip 3240 {
}
movieClip 3241 {
frame 1 {
if (_root.traitsOwned[1] == 1) {
gotoAndStop(2);
} else {
stop();
}
}
}
movieClip 3242 {
frame 1 {
stop();
}
}
movieClip 3245 {
}
movieClip 3246 {
}
movieClip 3247 {
frame 1 {
stop();
}
}
movieClip 3248 {
}
movieClip 3249 {
frame 1 {
stop();
}
}
movieClip 3251 {
}
movieClip 3252 {
frame 1 {
stop();
}
}
movieClip 3253 {
}
movieClip 3254 {
frame 1 {
stop();
}
}
movieClip 3255 {
}
movieClip 3256 {
frame 1 {
stop();
}
}
movieClip 3257 {
}
movieClip 3258 {
frame 1 {
stop();
}
}
movieClip 3261 {
}
movieClip 3262 {
}
movieClip 3263 {
frame 1 {
stop();
}
}
movieClip 3266 {
frame 1 {
stop();
}
}
movieClip 3267 {
}
movieClip 3268 {
frame 1 {
stop();
}
}
movieClip 3269 {
}
movieClip 3270 {
frame 1 {
stop();
}
}
movieClip 3272 {
}
movieClip 3273 {
frame 1 {
stop();
}
}
movieClip 3274 {
}
movieClip 3275 {
frame 1 {
stop();
}
}
movieClip 3277 {
}
movieClip 3278 {
frame 1 {
stop();
}
}
movieClip 3281 {
frame 1 {
stop();
}
}
movieClip 3282 {
}
movieClip 3283 {
frame 1 {
stop();
}
}
movieClip 3286 {
}
movieClip 3287 {
}
movieClip 3288 {
frame 1 {
stop();
}
}
movieClip 3289 {
}
movieClip 3290 {
frame 1 {
stop();
}
}
movieClip 3294 {
}
movieClip 3295 {
}
movieClip 3296 {
frame 1 {
stop();
}
}
movieClip 3299 {
}
movieClip 3300 {
}
movieClip 3301 {
frame 1 {
stop();
}
}
button 3303 {
on (release) {
_root.deselectAll();
}
}
movieClip 3306 {
}
button 3311 {
on (release) {
_root.changeMode(0, _root.nodeSelected);
}
on (rollOver) {
_root.feedTextMode(0);
}
on (rollOut) {
_root.feedTextMode(-1);
}
}
button 3312 {
on (release) {
_root.changeMode(2, _root.nodeSelected);
}
on (rollOver) {
_root.feedTextMode(2);
}
on (rollOut) {
_root.feedTextMode(-1);
}
}
button 3313 {
on (release) {
_root.changeMode(1, _root.nodeSelected);
}
on (rollOver) {
_root.feedTextMode(1);
}
on (rollOut) {
_root.feedTextMode(-1);
}
}
// unknown tag 88 length 64
button 3316 {
on (release) {
_root.UpgradeMode(_root.nodeSelected, false);
}
on (rollOver) {
_root.feedTextUpgradeMode(0);
}
on (rollOut) {
_root.feedTextUpgradeMode(-1);
}
}
movieClip 3319 {
}
movieClip 3320 {
}
movieClip 3321 {
frame 1 {
tooltipBuild = new Array(['Build ' + _root.buildList[0][0] + ': ' + _root.buildList[0][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[0] + ']', 'Provides an effect to nearby houses and can be toggled between 3 different modes. Houses may only be affected by one type of Town Square at a time. Effect does not stack. Can also be used to trade resources. Can be placed on both Cloud and Earth tiles.'], ['Build ' + _root.buildList[1][0] + ': ' + _root.buildList[1][1] + ' Bits, -1 Eco. Hotkey: [' + _root.hotbarKeysAlpha[1] + ']', 'Generates food per day and delivers it to nearby homes. Houses that are outside of the radius or near more than 2 Stores will be unhappy.\rIncreases Food Storage by +200. Houses must be within range of the Store in order to be affected.'], ['Build ' + _root.buildList[2][0] + ': ' + _root.buildList[2][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[2] + ']', 'Provides an effect to nearby houses and can be toggled between 3 different modes. Houses may only be affected by one type of Library at a time. Effect does not stack. Libraries of any mode will increase Discovery Rate.'], ['Build ' + _root.buildList[3][0] + ': ' + _root.buildList[3][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[3] + ']', 'Simple and inexpensive housing for up to 8 Earth Ponies. Generates Income and Love Magic. Requires a nearby store to be satisfied.\rIncreases Food Capacity by +50. Can be upgraded to increase maximum occupancy and food storage capacity.'], ['Build ' + _root.buildList[4][0] + ': ' + _root.buildList[4][1] + ' Bits, +0.5 Eco. Hotkey: [' + _root.hotbarKeysAlpha[4] + ']', 'Garden that beautifies the settlement, calming the hearts of your population and encouraging romance between them.\rIncreases Love-Magic generation by 100% for Houses within range of the Garden. Slight positive impact on the Environment.'], ['Build ' + _root.buildList[5][0] + ': ' + _root.buildList[5][1] + ' Bits, -3 Eco. Hotkey: [' + _root.hotbarKeysAlpha[5] + ']', 'Excavates for precious gemstones or gold ore to increase Income. Requires 50+ Population to function.\rHouses placed within the Quarry\'s range will be displeased.'], ['Build ' + _root.buildList[6][0] + ': ' + _root.buildList[6][1] + ' Bits, ' + _root.buildList[6][4] + ' Gems, -2 Eco. Hotkey: [' + _root.hotbarKeysAlpha[6] + ']', 'The perfect hang-out spot for Earth Ponies. Can be set to one of 3 modes to provide Happiness, boost Love-Magic and/or generate extra Bits depending on the mode. Houses may only be affected by one Tavern at a time. Effect does not stack.'], ['Build ' + _root.buildList[7][0] + ': ' + _root.buildList[7][1] + ' Bits, ' + _root.buildList[7][4] + ' Gems, Requires 3 Power. Hotkey: [' + _root.hotbarKeysAlpha[7] + ']', 'Advanced research facility that requires a nearby Energy Source to function. Requires 3 Power to function.\rGenerates Tech Points or restores the Environment based on its current mode.'], ['Build ' + _root.buildList[8][0] + ': ' + _root.buildList[8][1] + ' Bits, ' + _root.buildList[8][2] + ' Food. Hotkey: [' + _root.hotbarKeysAlpha[8] + ']', 'Requires a few days to fully bloom, but yields approximately 128 Food per Day once harvested.\rYour Food per day will NOT reflect farm yields. Must be within the radius of a Store to be harvested.'], ['Build ' + _root.buildList[9][0] + ': ' + _root.buildList[9][1] + ' Bits, ' + _root.buildList[9][4] + ' Gems, +1 Eco. Hotkey: [' + _root.hotbarKeysAlpha[9] + ']', 'Eco-Friendly housing for Earth Ponies. Must be built over a Tree. Generates Income.\rUp to 4 Ponies can live in a tree house. Increases Food Capacity by +5. Does not count as a Tree for Power Stations.'], ['Build ' + _root.buildList[10][0] + ': ' + _root.buildList[10][1] + ' Bits, ' + _root.buildList[10][4] + ' Gems, +X Eco, +X Power. Hotkey: [' + _root.hotbarKeysAlpha[10] + ']', 'Tree-Powered Energy Station. Increases Eco-Score and Power for each Tree in its radius. Allows nearby Tech Labs to function.\rTree Houses do not count as Trees.'], ['Build ' + _root.buildList[11][0] + ': ' + _root.buildList[11][1] + ' Bits, ' + _root.buildList[11][4] + ' Gems, -3 Eco. Hotkey: [' + _root.hotbarKeysAlpha[11] + ']', 'Produces sex toys or bondage gear which provides a global bonus to all homes. Requires 200+ Population to function.\rHouses placed within the Factory\'s range will be displeased. Multiple Factories stack additively.'], ['Build ' + _root.buildList[12][0] + ': ' + _root.buildList[12][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[12] + ']', 'Unique structure that grants the ability to control Taxes and Food Portions in the town.\rPlacing more than one of these structures is pointless.'], ['Build ' + _root.buildList[13][0] + ': ' + _root.buildList[13][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[13] + ']', 'Temporarily increases Defense Rating by 5 for each House within its radius.\rMultiple Armories touching the same house will have no effect.'], ['Build ' + _root.buildList[14][0] + ': ' + _root.buildList[14][1] + ' Bits, ' + _root.buildList[14][10] + ' Obsidian. Hotkey: [' + _root.hotbarKeysAlpha[14] + ']', 'The ultimate defensive measure. Absorbs love magic from Houses within its radius to charge your town\'s Shield. \rEach House can only be affected by one generator at a time. Once fully charged, you can activate an Ascension (Victory Condition).'], ['Build ' + _root.buildList[15][0] + ': ' + _root.buildList[15][1] + ' Bits, ' + _root.buildList[15][3] + ' Tech Points. Hotkey: [' + _root.hotbarKeysAlpha[15] + ']', 'Mode 1: Converts Tech Points to Specialist EXP. Mode 2: Boosts Tech Point generation for all structures. Mode 3: Generates Tech Points.Houses within the radius generate additional Bits and Happiness. Multiple Academies stack additively.'], ['Build ' + _root.buildList[16][0] + ': ' + _root.buildList[16][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[16] + ']', 'Castle-styled watch tower that increases your city\'s Defense Rating by 15 as long as there are no other Keeps within it\'s radius.\rThe Defense Rating effect of Multiple Keeps stack.'], ['Build ' + _root.buildList[17][0] + ': ' + _root.buildList[17][1] + ' Bits, -8 Eco. Hotkey: [' + _root.hotbarKeysAlpha[17] + ']', 'The ultimate method of striking the earth, fast and precise. Extracts Obsidian over time. Requires 400+ Population to function.\rHouses placed within the Drill\'s range will be highly displeased.'], ['Build ' + _root.buildList[18][0] + ': ' + _root.buildList[18][1] + ' Bits. Hotkey: [' + _root.hotbarKeysAlpha[18] + ']', 'Kinda like a pool, but with plastic balls instead of water. Can be placed on both Cloud and Earth tiles.\rHouses placed within the Ballpit\'s radius will have Happiness extremely lowered, but generate a lot of extra Bits.'], [], [], ['Build ' + _root.buildList[21][0] + ': ' + _root.buildList[21][1] + ' Bits, ' + _root.buildList[21][4] + ' Gems', 'A fancy little home where up to 6 Pegasi can live. Generates Income and Love Magic.\rDoes not require a store to be satisfied, but still consumes food.'], ['Build ' + _root.buildList[22][0] + ': ' + _root.buildList[22][1] + ' Bits, ' + _root.buildList[22][4] + ' Gems', 'Magical crystals known as Prismstones will be formed over time. Requires 30+ Pegasus Population to function.\rEarth Ponies that live within the radius of a Prism Forge will be fascinated by its beauty, increasing Happiness.'], ['Build ' + _root.buildList[23][0] + ': ' + _root.buildList[23][1] + ' Bits, ' + _root.buildList[23][9] + ' Prism', 'Synthesizes materials out of Tech Points and Prism. Can create Obsidian, Gems, Mana or permanently boost Defense Rating.\rWill passively generate Tech Points over time based on current Pegasus population. Effect does not stack.'], [NaN]);
}
frame 1 {
p = 0;
while (p < 7) {
a = _root.hudDynamic['btn' + p];
a.onRelease = function () {
randsfx = _root.randRange(0, _root.sfxbankClick.length - 1);
_root.playsfx1(_root.sfxbankClick, randsfx, 2);
_root.buildCatalog = (this._name.split(''))[3];
_root.deselectAll();
_root.buildPlacement = _root.buildList[_root.buildCatalog][0];
k = 0;
while (k < 6) {
if (k < 4) {
_root.cost[k] = buildList[_root.buildCatalog][k + 1];
} else {
_root.cost[k] = buildList[_root.buildCatalog][k + 5];
}
++k;
}
_root.hudDynamic.gotoAndStop('buildSelect');
_root.feedText = '';
_root.feedText2 = '';
};
a.onRollOver = function () {
if (_root.FreeStructure[int(int((this._name.split(''))[3]))] == 1) {
_root.feedText2 = 'Build ' + _root.buildList[int(int((this._name.split(''))[3]))][0] + ' - FREE';
} else {
_root.feedText2 = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]))][0];
}
_root.feedText = _root.hudDynamic.tooltipBuild[(this._name.split(''))[3]][1];
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(2);
};
a.onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(1);
};
++p;
}
}
frame 1 {
if (_root.traitsOwned[1] == 1) {
tooltipBuild[4][0] = 'Build ' + _root.buildList[4][0] + ': ' + _root.buildList[4][1] + ' Bits Hotkey: [' + _root.hotbarKeysAlpha[4] + ']';
tooltipBuild[4][1] = 'Rubble that beautifies the settlement. Who doesn\'t like a little miscelaneous scrap in their back yard?';
}
}
frame 1 {
stop();
}
frame 2 {
p = 0;
while (p < 7) {
a = _root.hudDynamic['btn' + p];
a.onRelease = function () {
randsfx = _root.randRange(0, _root.sfxbankClick.length - 1);
_root.playsfx1(_root.sfxbankClick, randsfx, 2);
_root.buildCatalog = int(int((this._name.split(''))[3]) + 7);
_root.deselectAll();
_root.buildPlacement = _root.buildList[_root.buildCatalog][0];
k = 0;
while (k < 6) {
if (k < 4) {
_root.cost[k] = buildList[_root.buildCatalog][k + 1];
} else {
_root.cost[k] = buildList[_root.buildCatalog][k + 5];
}
++k;
}
_root.hudDynamic.gotoAndStop('buildSelect');
_root.feedText = '';
_root.feedText2 = '';
};
a.onRollOver = function () {
if (_root.FreeStructure[int(int((this._name.split(''))[3]) + 7)] == 1) {
_root.feedText2 = 'Build ' + _root.buildList[int(int((this._name.split(''))[3]) + 7)][0] + ' - FREE';
} else {
_root.feedText2 = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 7)][0];
}
_root.feedText = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 7)][1];
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(2);
};
a.onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(1);
};
++p;
}
}
frame 3 {
p = 0;
while (p < 7) {
a = _root.hudDynamic['btn' + p];
a.onRelease = function () {
randsfx = _root.randRange(0, _root.sfxbankClick.length - 1);
_root.playsfx1(_root.sfxbankClick, randsfx, 2);
_root.buildCatalog = int(int((this._name.split(''))[3]) + 14);
_root.deselectAll();
_root.buildPlacement = _root.buildList[_root.buildCatalog][0];
k = 0;
while (k < 6) {
if (k < 4) {
_root.cost[k] = buildList[_root.buildCatalog][k + 1];
} else {
_root.cost[k] = buildList[_root.buildCatalog][k + 5];
}
++k;
}
_root.hudDynamic.gotoAndStop('buildSelect');
_root.feedText = '';
_root.feedText2 = '';
};
a.onRollOver = function () {
if (_root.FreeStructure[int(int((this._name.split(''))[3]) + 14)] == 1) {
_root.feedText2 = 'Build ' + _root.buildList[int(int((this._name.split(''))[3]) + 14)][0] + ' - FREE';
} else {
_root.feedText2 = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 14)][0];
}
_root.feedText = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 14)][1];
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(2);
};
a.onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(1);
};
++p;
}
}
frame 4 {
p = 0;
while (p < 7) {
a = _root.hudDynamic['btn' + p];
a.onRelease = function () {
randsfx = _root.randRange(0, _root.sfxbankClick.length - 1);
_root.playsfx1(_root.sfxbankClick, randsfx, 2);
_root.buildCatalog = int(int((this._name.split(''))[3]) + 21);
_root.deselectAll();
_root.buildPlacement = _root.buildList[_root.buildCatalog][0];
k = 0;
while (k < 6) {
if (k < 4) {
_root.cost[k] = buildList[_root.buildCatalog][k + 1];
} else {
_root.cost[k] = buildList[_root.buildCatalog][k + 5];
}
++k;
}
_root.hudDynamic.gotoAndStop('buildSelect');
_root.feedText = '';
_root.feedText2 = '';
};
a.onRollOver = function () {
if (_root.FreeStructure[int(int((this._name.split(''))[3]) + 21)] == 1) {
_root.feedText2 = 'Build ' + _root.buildList[int(int((this._name.split(''))[3]) + 21)][0] + ' - FREE';
} else {
_root.feedText2 = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 21)][0];
}
_root.feedText = _root.hudDynamic.tooltipBuild[int(int((this._name.split(''))[3]) + 21)][1];
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(2);
};
a.onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
_root.hudDynamic['b' + (this._name.split(''))[3]].gotoAndStop(1);
};
++p;
}
}
instance Display of movieClip 3306 {
onClipEvent (load) {
this.gotoAndStop(int(_root.buildCatalog) + 1);
}
onClipEvent (enterFrame) {
this.gotoAndStop(int(_root.buildCatalog) + 1);
}
}
instance of movieClip 1456 {
onClipEvent (press) {
}
}
frame 35 {
gotoAndStop(1);
}
}
movieClip 3326 {
}
instance tier1 of movieClip 3326 {
onClipEvent (release) {
if (_root.tiersUnlocked[0] == true) {
_root.hudDynamic.gotoAndStop('tier1');
_root.tierSelected = 'tier1';
}
}
onClipEvent (rollOver) {
_root.feedText2 = 'Tier I Earth Structures';
_root.feedText = 'Basic structures designed to accomodate Earth Ponies.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
movieClip 3330 {
}
movieClip 3331 {
}
instance tier2 of movieClip 3331 {
onClipEvent (release) {
if (_root.tiersUnlocked[1] == true) {
_root.hudDynamic.gotoAndStop('tier2');
_root.tierSelected = 'tier2';
}
}
onClipEvent (rollOver) {
if (_root.tiersUnlocked[1] == true) {
_root.feedText2 = 'Tier II Earth Structures';
_root.feedText = 'Advanced structures designed to accomodate Earth Ponies.';
} else {
_root.feedText2 = 'Locked (Requires Tavern)';
_root.feedText = 'You don\'t yet have access to these structures.';
}
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
movieClip 3334 {
}
instance tier3 of movieClip 3334 {
onClipEvent (release) {
if (_root.tiersUnlocked[2] == true) {
_root.hudDynamic.gotoAndStop('tier3');
_root.tierSelected = 'tier3';
}
}
onClipEvent (rollOver) {
if (_root.tiersUnlocked[2] == true) {
_root.feedText2 = 'Tier III Earth Structures';
_root.feedText = 'Very advanced structures.';
} else {
_root.feedText2 = 'Locked (Requires Factory)';
_root.feedText = 'You don\'t yet have access to these structures.';
}
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
movieClip 3335 {
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Love Magic Level: ' + _root.loveRank;
_root.feedText = 'Love Magic Level.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
movieClip 3338 {
}
instance projspawner2 of movieClip 3338 {
onClipEvent (load) {
var shottime = 0;
var shotinterval = 1;
var shotvariety = 1;
var aimcomp = 0;
var levelBurst = 0;
var levelBurstMAX = levelBurst;
var levelDeBurst = 0;
var levelBurstTime = 9;
var burstComplexity = 3;
}
onClipEvent (enterFrame) {
if (levelBurst > 0) {
combo = 0;
while (combo <= burstComplexity) {
wombo = 0;
while (wombo <= 1) {
shottime += _root.randRange(1, shotvariety);
if (shottime > shotinterval) {
_root.fireWeapon(this, 'sparklePop', 75, 4, 10, 2.25, 100, 150, int((levelBurst / levelBurstMAX) * 100));
shottime = 0;
}
this._rotation += 10;
++wombo;
}
wombo = 0;
while (wombo <= 2) {
shottime += _root.randRange(1, shotvariety);
if (shottime > shotinterval) {
_root.fireWeapon(this, 'sparklePop', 75, 7, 40, 3.5, 50, 70, int((levelBurst / 12) * 100));
shottime = 0;
}
this._rotation += 6;
++wombo;
}
++combo;
}
--levelBurst;
++levelDeBurst;
_root.levelUpStat._alpha = -50 + (levelDeBurst / levelBurstMAX) * 150;
}
}
}
movieClip 3340 {
}
movieClip 3341 {
}
button 3342 {
on (rollOver) {
_root.feedText2 = 'Rank Up';
_root.feedText = 'You have remaining Skill Points to spend.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 2) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
movieClip 3345 {
}
movieClip 3346 {
}
movieClip 3348 {
}
instance levelUpStat of movieClip 3348 {
onClipEvent (load) {
if (_root.StatsLeft > 0) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (enterFrame) {
if (_root.StatsLeft > 0) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
}
movieClip 3351 {
}
movieClip 3353 {
}
movieClip 3355 {
}
movieClip 3357 {
}
movieClip 3359 {
}
movieClip 3360 {
}
movieClip 3362 {
}
movieClip 3363 {
}
movieClip 3365 {
}
movieClip 3366 {
}
movieClip 3368 {
}
movieClip 3369 {
}
movieClip 3371 {
}
movieClip 3373 {
}
movieClip 3374 {
}
movieClip 3376 {
}
movieClip 3378 {
}
movieClip 3380 {
}
movieClip 3381 {
}
movieClip 3383 {
}
movieClip 3386 {
}
movieClip 3387 {
}
movieClip 3389 {
}
movieClip 3391 {
}
movieClip 3393 {
}
movieClip 3394 {
}
movieClip 3396 {
}
movieClip 3397 {
}
movieClip 3399 {
}
movieClip 3421 {
}
movieClip 3425 {
frame 1 {
stop();
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Unicorns: ' + _root.popUnicorn;
_root.feedText = 'This is how many Unicorn Ponies live in your city.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Pegasi: ' + _root.popPegasus;
_root.feedText = 'This is how many Pegasus Ponies live in your city.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Earth Ponies: ' + _root.popEarth;
_root.feedText = 'This is how many Earth Ponies live in your city.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 3428 {
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[4][0] + ': ' + _root.resourcePrism;
_root.feedText = 'Prismstones are precious magic crystals created by Pegasus engineers.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 3) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[5][0] + ': ' + _root.resourceObsidian;
_root.feedText = 'Obsidian is a rare, extremely durable mineral found deep within the earth.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
}
movieClip 3432 {
}
movieClip 3433 {
}
movieClip 3436 {
}
movieClip 3437 {
}
movieClip 3438 {
frame 1 {
_root.onWildMap = false;
this.popExtra.gotoAndStop(2);
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
if (_root.difficulty == 1) {
_root.feedText2 = 'Difficulty: Normal';
_root.feedText = 'Default mode';
} else {
_root.feedText2 = 'Difficulty: Hard';
_root.feedText = 'Challenge mode';
}
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
instance happyWheel of movieClip 3437 {
onClipEvent (release) {
_root.HW.gotoAndStop(2);
_root.showWhat(0);
}
onClipEvent (enterFrame) {
_root.happinessDisplay = int(_root.happiness);
this.gotoAndStop(_root.happinessDisplay + 1);
}
onClipEvent (rollOver) {
_root.feedText2 = 'Current Satisfaction: ' + _root.happinessDisplay + '/' + _root.maxHappiness + ' Happiness Rating: ' + _root.happinessScore;
_root.feedText = 'This is an overall rating for your entire town. If Happiness drops too low, Ponies will move out.\rYour town\'s happiness rating is ' + _root.happinessDisplay + '. ';
if (_root.happiness >= 110) {
_root.feedText += 'Your ponies are on cloud nine!';
} else {
if (_root.happiness >= 100) {
_root.feedText += 'Your ponies are absolutely ecstatic!';
} else {
if (_root.happiness >= 85) {
_root.feedText += 'Your ponies are extraordinarily happy!';
} else {
if (_root.happiness >= 70) {
_root.feedText += 'Your ponies are quite cheerful.';
} else {
if (_root.happiness >= 45) {
_root.feedText += 'Your ponies are content.';
} else {
if (_root.happiness >= 30) {
_root.feedText += 'Your ponies are somewhat annoyed.';
} else {
if (_root.happiness >= 10) {
_root.feedText += 'Your ponies are very displeased.';
} else {
if (_root.happiness >= 0) {
_root.feedText += 'Your ponies are completely miserable.';
}
}
}
}
}
}
}
}
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[0][0] + ': ' + _root.resourceBits;
_root.feedText = 'Bits are shiny coinage used to fund new structures and research projects.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[1][0] + ': ' + _root.resourceFood;
_root.feedText = 'Food is necessary to keep your ponies satisfied and ensure they have full tummies.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[2][0] + ': ' + _root.resourceTech;
_root.feedText = 'Tech points can be spent to unlock new technologies and upgrades.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 3) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[3][0] + ': ' + _root.resourceGems;
_root.feedText = 'Gems are a valuable luxury resource used for various things.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Total Population: ' + _root.popTotal + ' / ' + _root.popMax;
_root.feedText = 'Citizens are the foundation of any city!';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
_root.resourceMenu.popExtra.nextFrame();
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Ecobalance Score: ' + _root.environmentScore;
_root.feedText = 'Trees increase this by 1 Point but most structures will reduce it. As long as this number remains positive, your environment will not degrade.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
_root.HW.gotoAndStop(2);
_root.showWhat(2);
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Defense Rating: ' + _root.DefenseRatingDisplay;
_root.feedText = 'Defense Points are used to deal with encounters in the wilderness, and are restored over time.\rAggressive Encounters will invade if their strength is significantly higher than your Maximum Defense Rating.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 6;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 6) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 6;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Mana Points';
_root.feedText = 'Mana is used to activate your Adviser Powers.\rIf your town\'s Happiness is full, then 10% of excess daily Happiness is converted to Mana.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 2) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Current Encounters: ' + _root.encCurrent;
_root.feedText = 'These are how many encounters are in the wilderness currently';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 5;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 5) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 5;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3399 {
onClipEvent (release) {
_root.HW.gotoAndStop(2);
_root.showWhat(0);
}
onClipEvent (enterFrame) {
_root.happinessDisplay = int(_root.happiness);
this.gotoAndStop(_root.happinessDisplay + 1);
}
onClipEvent (rollOver) {
_root.feedText2 = 'Current Satisfaction: ' + _root.happinessDisplay + '/' + _root.maxHappiness + ' Happiness Rating: ' + _root.happinessScore;
_root.feedText = 'This is an overall rating for your entire town. If Happiness drops too low, Ponies will move out.\rYour town\'s happiness rating is ' + _root.happinessDisplay + '. ';
if (_root.happiness >= 110) {
_root.feedText += 'Your ponies are on cloud nine!';
} else {
if (_root.happiness >= 100) {
_root.feedText += 'Your ponies are absolutely ecstatic!';
} else {
if (_root.happiness >= 85) {
_root.feedText += 'Your ponies are extraordinarily happy!';
} else {
if (_root.happiness >= 70) {
_root.feedText += 'Your ponies are quite cheerful.';
} else {
if (_root.happiness >= 45) {
_root.feedText += 'Your ponies are content.';
} else {
if (_root.happiness >= 30) {
_root.feedText += 'Your ponies are somewhat annoyed.';
} else {
if (_root.happiness >= 10) {
_root.feedText += 'Your ponies are very displeased.';
} else {
if (_root.happiness >= 0) {
_root.feedText += 'Your ponies are completely miserable.';
}
}
}
}
}
}
}
}
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Environment Condition: ' + _root.environmentDisplay;
_root.feedText = 'If Eco-Score is negative, the Environmental Condition will degrade over time.\rAffects Happiness, Love-Magic production, Flower Farm production, and Aggressive Encounter frequency.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
_root.HW.gotoAndStop(2);
_root.showWhat(2);
}
}
instance of movieClip 3399 {
onClipEvent (rollOver) {
_root.feedText2 = 'Time Elapsed';
_root.feedText = 'This is the current day cycle of the game.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
}
}
}
movieClip 3440 {
}
instance tier1b of movieClip 3440 {
onClipEvent (release) {
if (_root.tiersUnlocked[0] == true) {
_root.hudDynamic.gotoAndStop('tier1B');
_root.tierSelected = 'tier1b';
}
}
onClipEvent (rollOver) {
_root.feedText2 = 'Tier I Cloud Structures';
_root.feedText = 'Basic structures designed to accomodate Pegasus.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
movieClip 3445 {
}
movieClip 3446 {
instance of movieClip 3445 {
onClipEvent (press) {
scrollan = -1;
}
onClipEvent (release) {
scrollan = 0;
}
onClipEvent (enterFrame) {
if (scrollan == -1) {
--_parent.messages.scroll;
}
if (scrollan == 1) {
++_parent.messages.scroll;
}
}
}
instance of movieClip 3445 {
onClipEvent (press) {
scrollan = 1;
}
onClipEvent (release) {
scrollan = 0;
}
onClipEvent (enterFrame) {
if (scrollan == -1) {
--_parent.messages.scroll;
}
if (scrollan == 1) {
++_parent.messages.scroll;
}
}
}
}
movieClip 3449 {
}
movieClip 3451 {
}
movieClip 3452 {
frame 1 {
stop();
}
frame 18 {
stop();
}
instance of movieClip 3451 {
onClipEvent (release) {
_root.hudInfo.gotoAndStop('randomEvent');
}
onClipEvent (rollOver) {
_root.feedText2 = 'Event!';
_root.feedText = 'There\'s an important event awaiting your decision.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
}
movieClip 3457 {
}
movieClip 3462 {
}
movieClip 3463 {
}
movieClip 3467 {
}
movieClip 3472 {
}
// unknown tag 88 length 208
movieClip 3484 {
}
movieClip 3486 {
frame 2 {
stop();
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Rush Resource: Food';
_root.feedText = 'Emergency food surplus. Expensive, but ensures that nobody goes hungry.\rWarning: Any food generated over the maximum capacity (Currently ' + _root.resourceCapFood + ') will be wasted!';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.resources[0][1] >= 50) {
_root.resources[0][1] -= 50;
_root.resources[1][1] += 400;
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Bits.';
}
}
}
frame 15 {
function taxChange(dir) {
_root.taxLevel += dir;
if (_root.taxLevel < -4) {
_root.taxLevel = -4;
}
if (_root.taxLevel > 7) {
_root.taxLevel = 7;
}
updateTaxinfo();
}
function updateTaxinfo() {
taxLevelName.htmlText = taxLevelNames[_root.taxLevel + 4];
taxInfo.htmlText = 'Income: ' + taxLevelIncome[_root.taxLevel + 4] + '\n' + 'Happiness: ' + taxLevelHappy[_root.taxLevel + 4];
taxBar.gotoAndStop(_root.taxLevel + 5);
}
function foodChange(dir) {
_root.foodLevel += dir;
if (_root.foodLevel < 0) {
_root.foodLevel = 0;
}
if (_root.foodLevel > 5) {
_root.foodLevel = 5;
}
updatefoodinfo();
}
function updatefoodinfo() {
foodLevelName.htmlText = foodLevelNames[_root.foodLevel];
foodInfo.htmlText = 'Portions: ' + foodLevelIncome[_root.foodLevel] + '\n' + 'Happiness: ' + foodLevelHappy[_root.foodLevel];
foodBar.gotoAndStop(_root.foodLevel + 1);
}
taxInfo.html = true;
taxLevelName.htmlText = '';
var taxLevelNames = new Array('None', 'Meager', 'Nominal', 'Low', 'Fair', 'High', 'Heavy', 'Excessive', 'Cruel', 'Extreme', 'Ridiculous', 'Ludicrous');
var taxLevelIncome = new Array('0%', '25%', '50%', '75%', '100%', '110%', '120%', '130%', '140%', '150%', '160%', '170%');
var taxLevelHappy = new Array('+20%', '+15%', '+10%', '+5%', '+0%', '-10%', '-20%', '-30%', '-40%', '-60%', '-80%', '-100%');
updateTaxinfo();
foodInfo.html = true;
foodLevelName.htmlText = '';
var foodLevelNames = new Array('Standard', 'Extra', 'Double', 'Surplus', 'Feast', 'Smörgåsbord');
var foodLevelIncome = new Array('1x', '1.5x', '2x', '3x', '4x', '6x');
var foodLevelHappy = new Array('+0%', '+5%', '+10%', '+15%', '+20%', '+25%');
updatefoodinfo();
}
instance of movieClip 3462 {
onClipEvent (press) {
_root.hudCard.upgrades.foodChange(1);
}
}
instance of movieClip 3463 {
onClipEvent (press) {
_root.hudCard.upgrades.foodChange(-1);
}
}
instance of movieClip 3462 {
onClipEvent (press) {
_root.hudCard.upgrades.taxChange(1);
}
}
instance of movieClip 3463 {
onClipEvent (press) {
_root.hudCard.upgrades.taxChange(-1);
}
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Activate Ascension';
_root.feedText = 'Once shields are at 100% you can activate the Ascension process.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.ShieldLevel >= 100) {
_root.hudInfo.gotoAndStop('ascend');
} else {
_root.feedText2 = 'Requires 100% Shield.';
_root.feedText = 'Cannot Ascend until shield is fully activated.';
}
}
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Synthesize Resource: Food';
_root.feedText = 'Use Alchemy to create delicious magical food. Guaranteed to taste exactly the same as normal food probably!\rWarning: Any food generated over the maximum capacity (Currently ' + _root.resourceCapFood + ') will be wasted!';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.resources[4][1] >= 2) {
if (_root.resources[2][1] >= 5) {
_root.resources[4][1] -= 2;
_root.resources[2][1] -= 5;
_root.resources[1][1] += 1000;
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankAlchemy.length - 1);
_root.playsfx1(_root.sfxbankAlchemy, randsfx, 1);
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Tech Points.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Prism.';
}
}
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Synthesize Resource: Gems';
_root.feedText = 'Use Alchemy to create precious gems, a less valuable resource, but useful for building certain structures.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.resources[4][1] >= 5) {
if (_root.resources[2][1] >= 10) {
_root.resources[4][1] -= 5;
_root.resources[2][1] -= 10;
_root.resources[3][1] += 15;
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankAlchemy.length - 1);
_root.playsfx1(_root.sfxbankAlchemy, randsfx, 1);
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Tech Points.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Prism.';
}
}
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Synthesize Resource: Obsidian';
_root.feedText = 'Use Alchemy to create the dark mineral known as Obsidian, normally only found deep within the planet.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.resources[4][1] >= 8) {
if (_root.resources[2][1] >= 100) {
_root.resources[4][1] -= 8;
_root.resources[2][1] -= 100;
_root.resources[5][1] += 1;
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankAlchemy.length - 1);
_root.playsfx1(_root.sfxbankAlchemy, randsfx, 1);
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Tech Points.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Prism.';
}
}
}
instance of movieClip 3457 {
onClipEvent (rollOver) {
_root.feedText2 = 'Synthesize Resource: Mana';
_root.feedText = 'Use Alchemy to create a burst of energy, supplying you with more mana to use on Adviser Powers.';
}
onClipEvent (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
onClipEvent (press) {
if (_root.resources[4][1] >= 1) {
if (_root.resources[2][1] >= 25) {
_root.resources[4][1] -= 1;
_root.resources[2][1] -= 25;
_root.mana += 20;
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankAlchemy.length - 1);
_root.playsfx1(_root.sfxbankAlchemy, randsfx, 1);
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Tech Points.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Prism.';
}
}
}
}
movieClip 3511 {
}
movieClip 3514 {
}
button 3517 {
on (release) {
gotoAndStop(1);
_root.deselectAll();
_root.hudInfo.gotoAndStop('fadeScene');
_root.NextScene = 'Garden';
_root.feedText2 = '';
_root.feedText = '';
}
on (rollOver) {
_root.feedText2 = 'Meet adviser';
_root.feedText = 'Meet your adviser here.';
}
on (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
button 3519 {
on (press) {
gotoAndStop(1);
_root.deselectAll();
_root.hudInfo.gotoAndStop('fadeScene');
_root.NextScene = 'Garden';
_root.feedText2 = '';
_root.feedText = '';
}
on (rollOver) {
_root.feedText2 = 'Meet adviser';
_root.feedText = 'Meet your adviser here.';
}
on (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
button 3520 {
on (press) {
gotoAndStop(1);
_root.charSelected = _root.CurrentAdviser;
_root.deselectAll();
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'sex';
_root.sexScene = 'garden';
_root.feedText2 = '';
_root.feedText = '';
}
on (rollOver) {
_root.feedText2 = 'Garden Clop Scene';
_root.feedText = 'Quickly access the interactive sex scene in the garden.';
}
on (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
button 3522 {
on (press) {
gotoAndStop(1);
_root.deselectAll();
_root.hudInfo.gotoAndStop('fadeScene');
_root.NextScene = 'Tavern';
_root.feedText2 = '';
_root.feedText = '';
}
on (rollOver) {
_root.feedText2 = 'Visit the Tavern';
_root.feedText = 'Meet your adviser here.';
}
on (rollOut) {
_root.feedText2 = '';
_root.feedText = '';
}
}
movieClip 3525 {
}
movieClip 3526 {
}
movieClip 3528 {
}
movieClip 3530 {
}
movieClip 3533 {
instance of movieClip 3457 {
onClipEvent (load) {
function updateText() {
_root.hudInfo.descript.html = true;
var v2 = '';
i = 0;
while (i < _root.upgradeMoreTiles.length - 1) {
if (_root.upgradeMoreTilesRank < i) {
v2 += '<font color = \'#999999\'>';
} else {
if (_root.upgradeMoreTilesRank == i) {
v2 += '<font color = \'#C9C9C9\'>';
} else {
v2 += '<font color = \'#ffcc00\'>';
}
}
v2 += 'Rank ' + (i + 1) + ': ' + _root.upgradeMoreTiles[i][0] + ' Bits - ' + _root.upgradeMoreTiles[i][1] + ': ' + _root.upgradeMoreTiles[i][2];
v2 += '</font>\r';
_root.hudInfo.descript.htmlText = v2;
++i;
}
}
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_parent.b1.gotoAndStop(1);
} else {
_parent.b1.gotoAndStop(4);
}
}
onClipEvent (rollOver) {
if (_root.upgradeMoreTilesRank < 0) {
_root.feedText2 = 'Obtain Free Tile';
_root.feedText = 'This plot of land can be claimed for free. You have ' + _root.upgradeMoreTilesRank * -1 + ' free tiles remaining.';
_parent.b1.gotoAndStop(2);
} else {
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_root.feedText2 = 'Purchase this Tile - ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] + ' Bits';
_root.feedText = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][1] + ': ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][2];
_parent.b1.gotoAndStop(2);
} else {
_root.feedText2 = 'Tile Space Fully Upgraded';
_root.feedText = 'Cannot be upgraded further.';
}
}
updateText();
}
onClipEvent (rollOut) {
if (_root.upgradeMoreTilesRank < 0 || _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_parent.b1.gotoAndStop(1);
}
_root.feedText2 = '';
_root.feedText = '';
_root.hudInfo.descript.htmlText = '';
}
onClipEvent (press) {
if (_root.upgradeMoreTilesRank < 0) {
_parent.b1.gotoAndStop(2);
++_root.upgradeMoreTilesRank;
_root.refreshResources();
updateText();
roll = _root.randRange(0, 100);
treeChance = 30 + _root.statKarma * 3;
if (roll < treeChance) {
_root.nodeSelected.Natural = 'n1';
_root.nodeSelected.gotoAndStop(_root.nodeSelected.Natural);
if (_root.traitsOwned[12] == 1) {
_root.nodeSelected.ModeInt = _root.randRange(40, 41);
} else {
_root.nodeSelected.ModeInt = _root.randRange(0, 10);
}
_root.nodeSelected.Name = naturalList[0][_root.nodeSelected.ModeInt][0];
_root.nodeSelected.Text = naturalList[0][_root.nodeSelected.ModeInt][1];
_root.nodeSelected.Mode = 'Basic';
_root.nodeSelected.NameDisplay = _root.nodeSelected.Name;
_root.nodeSelected.treePosX = _root.randRange(-20, 20);
_root.nodeSelected.treePosY = _root.randRange(-50, -30);
} else {
_root.nodeSelected.Natural = 'blank';
}
_root.displayModel(_root.nodeSelected, false);
_root.selectStructure(_root.nodeSelected);
_root.updateHudCard(_root.nodeSelected);
if (_root.upgradeMoreTilesRank < 0) {
_root.upgradeMoreTilesCost = 'FREE';
_root.feedText2 = 'Obtain Free Tile';
_root.feedText = 'This plot of land can be claimed for free. You have ' + _root.upgradeMoreTilesRank * -1 + ' free tiles remaining.';
} else {
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN || _root.upgradeMoreTilesRank == 27) {
_root.upgradeMoreTilesCost = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
_root.feedText2 = 'Purchase this Tile - ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] + ' Bits';
_root.feedText = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][1] + ': ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][2];
} else {
_parent.b1.gotoAndStop(4);
_root.upgradeMoreTilesCost = 'MAX';
_root.feedText2 = 'Tile Space Fully Upgraded';
_root.feedText = 'Cannot be upgraded further.';
}
}
} else {
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_parent.b1.gotoAndStop(2);
if (_root.resources[0][1] >= _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0]) {
_root.resources[0][1] -= _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
++_root.upgradeMoreTilesRank;
_root.refreshResources();
updateText();
roll = _root.randRange(0, 100);
treeChance = 30 + _root.statKarma * 3;
if (roll < treeChance) {
_root.nodeSelected.Natural = 'n1';
_root.nodeSelected.gotoAndStop(_root.nodeSelected.Natural);
if (_root.traitsOwned[12] == 1) {
_root.nodeSelected.ModeInt = _root.randRange(40, 41);
} else {
_root.nodeSelected.ModeInt = _root.randRange(0, 10);
}
_root.nodeSelected.Name = naturalList[0][_root.nodeSelected.ModeInt][0];
_root.nodeSelected.Text = naturalList[0][_root.nodeSelected.ModeInt][1];
_root.nodeSelected.Mode = 'Basic';
_root.nodeSelected.NameDisplay = _root.nodeSelected.Name;
_root.nodeSelected.treePosX = _root.randRange(-20, 20);
_root.nodeSelected.treePosY = _root.randRange(-50, -30);
} else {
_root.nodeSelected.Natural = 'blank';
}
_root.displayModel(_root.nodeSelected, false);
_root.selectStructure(_root.nodeSelected);
_root.updateHudCard(_root.nodeSelected);
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN || _root.upgradeMoreTilesRank == 27) {
_root.upgradeMoreTilesCost = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
_root.feedText2 = 'Purchase this Tile - ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] + ' Bits';
_root.feedText = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][1] + ': ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][2];
} else {
_parent.b1.gotoAndStop(4);
_root.upgradeMoreTilesCost = 'MAX';
_root.feedText2 = 'Tile Space Fully Upgraded';
_root.feedText = 'Cannot be upgraded further.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Bits to purchase additional city tiles.';
}
}
}
}
onClipEvent (releaseOutside) {
if (_root.upgradeMoreTilesRank < 0 || _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_parent.b1.gotoAndStop(1);
}
}
onClipEvent (release) {
if (_root.upgradeMoreTilesRank < 0 || _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
_parent.b1.gotoAndStop(1);
}
}
}
}
movieClip 3534 {
frame 1 {
stop();
}
frame 2 {
var marketpriceBuy1 = _root.tradingPrices[0][1] + ' for $' + _root.tradingPrices[0][4];
var marketpriceSell1 = _root.tradingPrices[0][7] + ' for $' + _root.tradingPrices[0][10];
var marketpriceBuy2 = _root.tradingPrices[1][1] + ' for $' + _root.tradingPrices[1][4];
var marketpriceSell2 = _root.tradingPrices[1][7] + ' for $' + _root.tradingPrices[1][10];
var marketpriceBuy3 = _root.tradingPrices[2][1] + ' for $' + _root.tradingPrices[2][4];
var marketpriceSell3 = _root.tradingPrices[2][7] + ' for $' + _root.tradingPrices[2][10];
gotoAndStop(2);
a = this.b1;
a.onPress = function () {
if (_root.resources[0][1] >= _root.tradingPrices[0][4]) {
if (_root.resources[1][1] + _root.tradingPrices[0][1] <= _root.resourceCap[1][1]) {
_root.resources[0][1] -= _root.tradingPrices[0][4];
_root.resources[1][1] += _root.tradingPrices[0][1];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(2, 8);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Storage Capacity to make this trade.';
_root.feedText2 = '';
}
} else {
_root.feedText = 'Not enough Bits to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Buy Food';
_root.feedText = 'Exchange Bits for Food based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
a = this.b2;
a.onPress = function () {
if (_root.resources[0][1] >= _root.tradingPrices[1][4]) {
if (_root.resources[3][1] + _root.tradingPrices[1][1] <= _root.resourceCap[3][1]) {
_root.resources[0][1] -= _root.tradingPrices[1][4];
_root.resources[3][1] += _root.tradingPrices[1][1];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(12, 20);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Storage Capacity to make this trade.';
_root.feedText2 = '';
}
} else {
_root.feedText = 'Not enough Bits to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Buy Gems';
_root.feedText = 'Exchange Bits for Gems based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
a = this.b3;
a.onPress = function () {
if (_root.resources[0][1] >= _root.tradingPrices[1][4]) {
if (_root.resources[4][1] + _root.tradingPrices[2][1] <= _root.resourceCap[4][1]) {
_root.resources[0][1] -= _root.tradingPrices[2][4];
_root.resources[4][1] += _root.tradingPrices[2][1];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(12, 20);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Storage Capacity to make this trade.';
_root.feedText2 = '';
}
} else {
_root.feedText = 'Not enough Bits to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Buy Prism';
_root.feedText = 'Exchange Bits for Prism based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
a = this.s1;
a.onPress = function () {
if (_root.resources[1][1] >= _root.tradingPrices[0][7]) {
_root.resources[0][1] += _root.tradingPrices[0][10];
_root.resources[1][1] -= _root.tradingPrices[0][7];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(2, 8);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Food to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Sell Food';
_root.feedText = 'Exchange Food for Bits based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
a = this.s2;
a.onPress = function () {
if (_root.resources[3][1] >= _root.tradingPrices[1][7]) {
_root.resources[0][1] += _root.tradingPrices[1][10];
_root.resources[3][1] -= _root.tradingPrices[1][7];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(12, 20);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Gems to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Sell Gems';
_root.feedText = 'Exchange Gems for Bits based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
a = this.s3;
a.onPress = function () {
if (_root.resources[4][1] >= _root.tradingPrices[2][7]) {
_root.resources[0][1] += _root.tradingPrices[2][10];
_root.resources[4][1] -= _root.tradingPrices[2][7];
_root.tradeCooldown[0] -= 5;
if (_root.traitsOwned[16] == 1) {
_root.happiness += _root.randRange(12, 20);
}
_root.refreshResources();
randsfx = _root.randRange(0, _root.sfxbankCoin.length - 1);
_root.playsfx1(_root.sfxbankCoin, randsfx, 1);
_root.updateHudCard(_root.nodeSelected);
_root.showExtraInfo();
} else {
_root.feedText = 'Not enough Prism to trade for this.';
_root.feedText2 = '';
}
};
a.onRollOver = function () {
_root.feedText2 = 'Sell Prism';
_root.feedText = 'Exchange Prism for Bits based on the current market price.';
};
a.onRollOut = function () {
_root.feedText2 = '';
_root.feedText = '';
};
}
instance of movieClip 3514 {
onClipEvent (load) {
this.useHandCursor = false;
}
onClipEvent (press) {
}
}
frame 6 {
if (_root.UnlocksGeneric[0][2] == 1) {
gotoAndStop('Garden2');
}
}
}
movieClip 3536 {
frame 2 {
stop();
}
}
movieClip 3537 {
frame 12 {
_root.updateHudCard(_root.nodeSelected);
}
}
movieClip 3539 {
}
instance sfxplayer1 of movieClip 3539 {
onClipEvent (load) {
sfx = new Sound(this);
}
}
instance sfxplayer2 of movieClip 3539 {
onClipEvent (load) {
sfx = new Sound(this);
}
}
button 3542 {
on (release) {
_root.pauseGame();
}
on (rollOver) {
_root.feedText2 = 'Pause Game';
_root.feedText = 'Suspends all time-related game actions in case you need a break, or want to plan your layout.\rWhile paused you can still perform actions, build structures, toggle between modes, etc.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
button 3547 {
on (rollOver) {
_root.feedText2 = 'Upgrades';
_root.feedText = 'List of available research options to improve your town.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 3) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
button 3550 {
on (rollOver) {
_root.feedText2 = 'Statistics';
_root.feedText = 'Quick rundown of your town\'s population and resources.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 2) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
button 3553 {
on (rollOver) {
_root.feedText2 = 'Options';
_root.feedText = 'Tweak various gameplay options.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 14;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 14) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 14;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
movieClip 3556 {
}
button 3558 {
on (rollOver) {
_root.feedText2 = 'Edicts';
_root.feedText = 'List of available edicts you can issue to have various effects on your town.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 4;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 4) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 4;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
button 3562 {
on (rollOver) {
_root.feedText2 = 'Map';
_root.feedText = 'View the wilderness map.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 5;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 5) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 5;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
button 3563 {
on (rollOver) {
_root.feedText2 = 'Specialists';
_root.feedText = 'Manage the military aspect of your city.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 6;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 6) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 6;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
button 3564 {
on (rollOver) {
_root.feedText2 = 'Zoom in';
_root.feedText = 'Zoom the camera closer.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
_root.Zoomy(-5);
}
}
button 3565 {
on (rollOver) {
_root.feedText2 = 'Zoom out';
_root.feedText = 'Zoom the camera further away.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
_root.Zoomy(5);
}
}
button 3568 {
on (rollOver) {
_root.feedText2 = 'Unlocks';
_root.feedText = 'List of content unlocked by playing the game.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 7;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 7) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 7;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
movieClip 3570 {
}
button 3573 {
on (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 15;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 15) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 15;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
on (rollOver) {
_root.feedText2 = 'Game Menu';
_root.feedText = 'Access the game menu in which you can save, view the tutorial again, etc.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
button 3577 {
on (release) {
_root.HW.gotoAndStop(1);
}
}
button 3578 {
on (release) {
_root.showWhat(0);
}
}
movieClip 3580 {
}
button 3581 {
on (release) {
_root.showWhat(1);
}
}
movieClip 3583 {
}
button 3584 {
on (release) {
_root.showWhat(2);
}
}
movieClip 3586 {
instance of movieClip 3445 {
onClipEvent (press) {
scrollan = -1;
}
onClipEvent (release) {
scrollan = 0;
}
onClipEvent (enterFrame) {
if (scrollan == -1) {
--_parent.messages.scroll;
}
if (scrollan == 1) {
++_parent.messages.scroll;
}
}
}
instance of movieClip 3445 {
onClipEvent (press) {
scrollan = 1;
}
onClipEvent (release) {
scrollan = 0;
}
onClipEvent (enterFrame) {
if (scrollan == -1) {
--_parent.messages.scroll;
}
if (scrollan == 1) {
++_parent.messages.scroll;
}
}
}
}
movieClip 3588 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 3590 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 3592 {
}
instance of movieClip 3592 {
onClipEvent (release) {
_root.debug.nextFrame();
}
}
movieClip 3595 {
frame 1 {
_root.onWildMap = false;
}
}
button 3607 {
on (release) {
gotoAndStop(2);
}
}
button 3611 {
on (release) {
gotoAndStop(3);
}
}
button 3615 {
on (release) {
gotoAndStop(14);
}
}
button 3616 {
on (release) {
_root.deselectAll();
}
}
button 3620 {
on (release) {
gotoAndStop(4);
}
}
button 3624 {
on (release) {
gotoAndStop(5);
}
}
button 3628 {
on (release) {
gotoAndStop(6);
}
}
button 3632 {
on (release) {
gotoAndStop(7);
}
}
movieClip 3650 {
frame 30 {
x = _root.randRange(0, 100);
if (x > 75) {
this.head.ear1.gotoAndPlay('wiggle');
}
y = _root.randRange(0, 100);
if (y > 75) {
this.head.ear2.gotoAndPlay('wiggle');
}
}
frame 60 {
x = _root.randRange(0, 100);
if (x > 90) {
gotoAndPlay('loop2');
} else {
gotoAndPlay('loop1');
}
}
frame 90 {
x = _root.randRange(0, 100);
if (x > 75) {
this.head.ear1.gotoAndPlay('wiggle');
}
y = _root.randRange(0, 100);
if (y > 75) {
this.head.ear2.gotoAndPlay('wiggle');
}
}
frame 132 {
x = _root.randRange(0, 100);
if (x > 80) {
gotoAndPlay('loop3');
} else {
gotoAndPlay('loop1');
}
}
frame 162 {
x = _root.randRange(0, 100);
if (x > 75) {
this.head.ear1.gotoAndPlay('wiggle');
}
y = _root.randRange(0, 100);
if (y > 75) {
this.head.ear2.gotoAndPlay('wiggle');
}
}
frame 192 {
gotoAndPlay('loop1');
}
}
movieClip 3660 {
}
movieClip 3661 {
}
movieClip 3662 {
}
movieClip 3666 {
}
movieClip 3667 {
}
movieClip 3668 {
}
movieClip 3671 {
}
movieClip 3672 {
}
movieClip 3680 {
}
movieClip 3681 {
}
movieClip 3685 {
}
movieClip 3687 {
}
movieClip 3688 {
}
movieClip 3689 {
}
movieClip 3692 {
}
movieClip 3693 {
}
movieClip 3702 {
}
movieClip 3705 {
}
movieClip 3708 {
}
movieClip 3709 {
}
movieClip 3710 {
}
movieClip 3714 {
}
movieClip 3715 {
frame 2 {
stop();
}
}
movieClip 3717 {
}
movieClip 3719 {
}
movieClip 3721 {
}
movieClip 3723 {
}
movieClip 3724 {
}
movieClip 3725 {
}
movieClip 3726 {
}
movieClip 3730 {
}
movieClip 3731 {
}
// unknown tag 88 length 96
movieClip 3736 {
frame 1 {
stop();
}
}
movieClip 3741 {
}
movieClip 3742 {
}
movieClip 3743 {
}
movieClip 3746 {
}
movieClip 3747 {
}
movieClip 3751 {
}
movieClip 3752 {
}
movieClip 3753 {
frame 1 {
function checkMystic() {
if (_root.perksOwned[6] == 1) {
_root.resources[3][1] += _root.manaMax / 20;
}
if (perksOwned[18] == 1) {
_root.refreshTradePrices();
}
}
}
frame 1 {
function refreshPowers() {
x = 0;
while (x < 3) {
if (_root.mana < this['power' + x].power.manaCost) {
this['power' + x].gotoAndStop(2);
} else {
this['power' + x].gotoAndStop(1);
}
++x;
}
if (_root.environment >= 200) {
this.power1.gotoAndStop(2);
}
}
power0.power.manaCost = 30;
power1.power.manaCost = 15;
power2.power.manaCost = 20;
power0.onRollOver = function () {
_root.feedText2 = 'Power Fortify';
_root.feedText = 'Permanently increases your Town\'s Defense by 2.';
};
power0.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
_root.DefenseRating += 2;
_root.DefenseRatingTotal += 2;
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
power1.onRollOver = function () {
_root.feedText2 = 'Elemental Balance';
_root.feedText = 'Permanently increases the environmental condition by 5% (Maximum of 200%).\rIf condition is still below 100% after the effect, it restores an additional 5%.';
};
power1.onRelease = function () {
if (_root.environment < 200) {
if (_root.mana >= this.power.manaCost) {
_root.environment += 5;
if (_root.environment < 100) {
_root.environment += 5;
}
if (_root.environment > 200) {
_root.environment = 200;
}
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
}
};
power2.onRollOver = function () {
_root.feedText2 = 'Tech Boost';
_root.feedText = 'Converts all Mana into Tech Points. This power will drain your Mana to 0.\rThe first 20 Mana spent generates only 3 Tech Points, but each additional point past 20 will gives +0.5 Tech Points.';
};
power2.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
_root.resources[2][1] += 3;
_root.resources[2][1] += _root.mana * 0.5;
_root.mana = 0;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
x = 0;
while (x < 3) {
this['power' + x].onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
};
++x;
}
refreshPowers();
}
frame 2 {
function refreshPowers() {
x = 0;
while (x < 3) {
if (_root.mana < this['power' + x].power.manaCost) {
this['power' + x].gotoAndStop(2);
} else {
this['power' + x].gotoAndStop(1);
}
++x;
}
if (_root.strCount[4][0] > 0) {
} else {
this.power2.gotoAndStop(2);
}
if (_root.resourceEcoCycle > 0) {
} else {
this.power1.gotoAndStop(2);
}
}
power0.power.manaCost = 25;
power1.power.manaCost = 32;
power2.power.manaCost = 50;
power0.onRollOver = function () {
_root.feedText2 = 'Relax';
_root.feedText = 'Ends all current Edicts, stopping further fatigue and allowing you to assign new ones.';
};
power0.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
_root.edictResidentialActive = -1;
_root.edictLibraryActive = -1;
_root.edictIndustrialActive = -1;
_root.edictResidentialTimer = 1;
_root.edictLibraryTimer = 1;
_root.edictIndustrialTimer = 1;
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
power1.onRollOver = function () {
_root.feedText2 = 'Nature\'s Bounty';
_root.feedText = 'Generates Gems equal to 33% of your Town\'s current Eco-Score. (i.e. +9 Eco Score = 3 Gems)\rEnvironmental Condition percentage has no impact on this power.';
};
power1.onRelease = function () {
if (_root.resourceEcoCycle > 0) {
if (_root.mana >= this.power.manaCost) {
_root.resources[3][1] += int(_root.resourceEcoCycle / 3);
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
}
};
power2.onRollOver = function () {
_root.feedText2 = 'Regenerate';
_root.feedText = 'Transforms a random garden in your town into a Tree.';
};
power2.onRelease = function () {
if (_root.strCount[4][0] > 0) {
if (_root.mana >= this.power.manaCost) {
randGroup = [];
n = _root.nodeDepthInitial + 1;
while (n < _root.nodeDepth + 1) {
if (_root.world['node' + n].Catalog == 4) {
randGroup.push(_root.world['node' + n]);
}
++n;
}
AA = randGroup[_root.randRange(0, randGroup.length - 1)];
_root.findBuffers(AA, -1);
--_root.strCount[AA.Catalog][AA.ModeInt];
AA.gotoAndStop(AA.Natural);
AA.BuildText = '';
AA.ModesEnabled = false;
AA.UpgradeRank = 0;
AA.Catalog = -1;
var v3 = 0;
AA.Natural = 'n1';
if (_root.traitsOwned[12] == 1) {
AA.ModeInt = _root.randRange(40, 41);
} else {
AA.ModeInt = _root.randRange(0, 10);
}
AA.Name = naturalList[v3][AA.ModeInt][0];
AA.Text = naturalList[v3][AA.ModeInt][1];
AA.Mode = 'Basic';
AA.NameDisplay = AA.Name;
AA.AddOn = 1;
AA.treePosX = _root.randRange(-20, 20);
AA.treePosY = _root.randRange(-50, -30);
_root.displayModel(AA, false);
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
}
};
x = 0;
while (x < 3) {
this['power' + x].onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
};
++x;
}
refreshPowers();
}
frame 3 {
function refreshPowers() {
x = 0;
while (x < 3) {
if (_root.mana < this['power' + x].power.manaCost) {
this['power' + x].gotoAndStop(2);
} else {
this['power' + x].gotoAndStop(1);
}
++x;
}
if (_root.resources[1][1] > _root.popMax * 1 && _root.popTotal > 50) {
} else {
this.power0.gotoAndStop(2);
}
if (_root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != undefined && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != NaN && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != 0) {
} else {
this.power1.gotoAndStop(2);
}
}
power0.power.manaCost = 5;
power1.power.manaCost = 10;
power2.power.manaCost = 12;
power0.onRollOver = function () {
_root.feedText2 = 'Cider Press';
_root.feedText = 'Each Pony consumes 1 Food instantly, generating +25 Happiness.\rCannot be used if there is insuffecient food stock or if population is below 50.';
};
power0.onRelease = function () {
if (_root.resources[1][1] > _root.popMax * 1 && _root.popTotal > 50) {
if (_root.mana >= this.power.manaCost) {
_root.resources[1][1] -= _root.popMax * 1;
_root.happiness += 25;
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
}
};
power1.onRollOver = function () {
_root.feedText2 = 'Quick Harvest';
_root.feedText = 'Instantly gain 500 Food per Flower Farm.';
};
power1.onRelease = function () {
if (_root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != undefined && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != NaN && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != 0) {
if (_root.mana >= this.power.manaCost) {
if (_root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != undefined && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != NaN && _root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2] != 0) {
_root.resources[1][1] += 500 * (_root.strCount[8][0] + _root.strCount[8][1] + _root.strCount[8][2]);
}
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
}
};
power2.onRollOver = function () {
_root.feedText2 = 'Barter';
_root.feedText = 'Up to 5 Traders will arrive at the Town Square. Cannot exceed max trader limit.';
};
power2.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
_root.tradeCooldown[0] += 25;
if (_root.tradeCooldown[0] > _root.tradeMax) {
_root.tradeCooldown[0] = _root.tradeMax;
}
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
x = 0;
while (x < 3) {
this['power' + x].onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
};
++x;
}
refreshPowers();
}
frame 4 {
function refreshPowers() {
x = 0;
while (x < 3) {
if (_root.mana < this['power' + x].power.manaCost) {
this['power' + x].gotoAndStop(2);
} else {
this['power' + x].gotoAndStop(1);
}
++x;
}
if (_root.strCount[3][0] != undefined && _root.strCount[3][0] != NaN && _root.strCount[3][0] > 0) {
} else {
this.power2.gotoAndStop(2);
}
}
power0.power.manaCost = 3;
power1.power.manaCost = 5;
power2.power.manaCost = 15;
power0.onRollOver = function () {
_root.feedText2 = 'Summon Muffin';
_root.feedText = 'Creates +1 Food in the form of a Yummy Muffin.';
};
power0.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
Glempy = _root.randRange(1, 32);
if (Glempy == 1) {
Shlimpini = _root.randRange(1, 2);
if (Shlimpini == 1) {
_root.newMSG('Derpy tried to bake a muffin, but instead created an extremely valuable <font color=\'#ffcc00\'>Prismstone</font>!');
_root.resources[4][1] += Shlimpini;
} else {
_root.newMSG('Derpy tried to bake a muffin, but instead created an extremely valuable <font color=\'#ffcc00\'>Muffin</font>! Oh, wait...');
_root.resources[1][1] += 1;
}
} else {
if (Glempy == 2) {
Shlimpini = _root.randRange(1, 1500);
_root.newMSG('Derpy tried to bake a single muffin, but accidentally baked more. <font color=\'#ffcc00\'>+' + Shlimpini + ' Food</font>.');
_root.resources[1][1] += Shlimpini;
} else {
if (Glempy == 3) {
Shlimpini = _root.randRange(5, 15);
_root.newMSG('Derpy tried to bake a muffin, but accidentally generated <font color=\'#ffcc00\'>' + Shlimpini + ' Tech</font> instead.');
_root.resources[2][1] += Shlimpini;
} else {
if (Glempy == 4) {
_root.newMSG('Derpy tried to bake a muffin but accidentally burnt it instead.');
} else {
if (Glempy == 5) {
Shlimpini = 5;
_root.newMSG('Derpy tried to bake a muffin, but somehow created a huge gemstone instead. <font color=\'#ffcc00\'>+ 5 Gems</font>.');
_root.resources[3][1] += Shlimpini;
} else {
if (Glempy == 6) {
Shlimpini = _root.randRange(100, 400);
_root.newMSG('Derpy tried to bake a muffin, but somehow ended up in the red light district. <font color=\'#ffcc00\'>+' + Shlimpini + ' Bits</font>.');
_root.resources[0][1] += Shlimpini;
} else {
if (Glempy == 7) {
_root.newMSG('Derpy tried to make a muffin but forgot what she was supposed to be doing half-way through.');
} else {
if (Glempy == 8) {
_root.newMSG('Derpy made a muffin. In the bathroom. Uhh... don\'t think that one is edible.');
} else {
if (Glempy == 9) {
_root.newMSG('Derpy made a muffin. But then she ate it.');
} else {
if (Glempy == 10) {
_root.newMSG('Derpy accidentally forged an Armored Muffin. Permanently increased Max Defense Rating by +2.');
_root.DefenseRatingTotal += 2;
_root.DefenseRating += 2;
} else {
Shlimpini = 1;
_root.newMSG('Derpy baked a muffin. <font color=\'#ffcc00\'>+' + Shlimpini + ' Food</font>.');
_root.resources[1][1] += Shlimpini;
}
}
}
}
}
}
}
}
}
}
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
power1.onRollOver = function () {
_root.feedText2 = 'Mysterious Bubble';
_root.feedText = 'Generates +20 Defense Points.';
};
power1.onRelease = function () {
if (_root.mana >= this.power.manaCost) {
_root.DefensePoints += 20;
_root.drDisplay();
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
}
};
power2.onRollOver = function () {
_root.feedText2 = 'Home Improvement';
_root.feedText = 'Derpy improves one of your houses!\rNote that structures created this way have no value when demolished.';
};
randGroup = new Array();
power2.onRelease = function () {
if (_root.strCount[3][0] != undefined && _root.strCount[3][0] != NaN && _root.strCount[3][0] != 0) {
if (_root.mana >= this.power.manaCost) {
randCatalog = _root.randRange(1, 2000);
if (randCatalog >= 2000) {
randCatalog = 14;
} else {
if (randCatalog >= 1990) {
randCatalog = 18;
} else {
if (randCatalog >= 1975) {
randCatalog = 17;
} else {
if (randCatalog >= 1950) {
randCatalog = 11;
} else {
if (randCatalog >= 1940) {
randCatalog = 15;
} else {
if (randCatalog >= 1930) {
randCatalog = 7;
} else {
if (randCatalog >= 1920) {
randCatalog = 10;
} else {
if (randCatalog >= 1900) {
randCatalog = 6;
} else {
if (randCatalog >= 1850) {
randCatalog = 16;
} else {
if (randCatalog >= 1700) {
randCatalog = 13;
} else {
if (randCatalog >= 1600) {
randCatalog = 5;
} else {
if (randCatalog >= 1500) {
randCatalog = 12;
} else {
if (randCatalog >= 1400) {
randCatalog = 0;
} else {
if (randCatalog >= 1000) {
randCatalog = 2;
} else {
if (randCatalog >= 500) {
randCatalog = 1;
} else {
randCatalog = 28;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
randGroup = [];
n = _root.nodeDepthInitial + 1;
while (n < _root.nodeDepth + 1) {
if (_root.world['node' + n].Catalog == 3 && _root.world['node' + n].ModeInt == 0) {
randGroup.push(_root.world['node' + n]);
}
++n;
}
a = randGroup[_root.randRange(0, randGroup.length - 1)];
_root.findBuffers(a, -1);
--_root.strCount[a.Catalog][a.ModeInt];
a.Name = 'Blank Node';
a.Mode = '';
a.NameDisplay = a.Name;
a.Text = 'An empty place waiting for something to be built on it.';
a.BuildText = '';
a.ModesEnabled = false;
a.UpgradeRank = 0;
a.ModeInt = 0;
a.Catalog = -1;
g = 0;
while (g < 3) {
_root.population[g][1] -= a.Ponies[g];
a.Ponies[g] = 0;
++g;
}
a.Value[NaN] = 0;
a.Value[0] = 0;
a.Value[1] = 0;
a.Value[2] = 0;
a.Value[3] = 0;
a.Value[4] = 0;
a.Value[5] = 0;
a.Catalog = randCatalog;
_root.newMSG('Derpy remodeled one of your houses into a <font color=\'#ffcc00\'>' + _root.buildList[a.Catalog][0] + '</font>.');
if (!_root.WarnDerpy) {
_root.WarnDerpy = true;
_root.newMSG('Note: Structures created by Derpy are treated as Free Structures and give nothing when demolished.');
}
a.buildTime = 1;
a.Natural = 'blank';
a.buildProgress = 99;
a.buildProgressPercent = 99;
a.Name = _root.buildList[a.Catalog][0];
a.Mode = 'Constructing';
a.ModeInt = 10;
a.ModesEnabled = false;
a.UpgradesEnabled = false;
if (a.Catalog == 3) {
a.PoniesMax[0] = _root.basePopHouse;
}
if (a.Catalog == 9) {
a.PoniesMax[0] = _root.basePopTreeHouse;
}
if (a.Catalog == 21) {
a.PoniesMax[1] = _root.basePopHouseCloud;
}
_root.displayModel(a, false);
randsfx = _root.randRange(0, _root.sfxbankWood.length - 1);
_root.playsfx1(_root.sfxbankWood, randsfx, 1);
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
a.Text = _root.modeList[a.Catalog][0][1];
a.BuildText = _root.modeList[a.Catalog][0][0].toUpperCase();
++_root.strCount[a.Catalog][a.ModeInt];
_root.mana -= this.power.manaCost;
_root.hudInfo.charSheet.checkMystic(this.power.manaCost);
_root.refreshResources();
_root.hudInfo.charSheet.refreshPowers();
_root.writeData();
}
}
};
x = 0;
while (x < 3) {
this['power' + x].onRollOut = function () {
_root.feedText = '';
_root.feedText2 = '';
};
++x;
}
refreshPowers();
}
}
movieClip 3766 {
}
movieClip 3768 {
}
button 3777 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Diplomacy + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Diplomacy += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
button 3778 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Knowledge + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Knowledge += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
button 3779 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Architecture + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Architecture += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
button 3780 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Leadership + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Leadership += 1;
_root.StatsLeft -= statCost;
}
}
}
button 3781 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Discipline + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Discipline += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
button 3782 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Ecology + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Ecology += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
button 3783 {
on (release) {
x = 0;
while (x < _root.StatBracket.length) {
if (_root.skill_Tradecraft + 1 < _root.StatBracket[x][0]) {
statCost = _root.StatBracket[x][1];
break;
}
++x;
}
if (_root.StatsLeft >= statCost) {
_root.skill_Tradecraft += 1;
_root.StatsLeft -= statCost;
}
}
on (rollOver) {
_parent.StatBracketHint();
}
on (rollOut) {
_parent.descript = '';
}
}
movieClip 3784 {
frame 1 {
stop();
}
}
movieClip 3805 {
}
movieClip 3817 {
frame 1 {
function StatBracketHint() {
descript = 'Skills cost more Stat Points as you increase their level.\r';
descript += 'Level 2 - ' + (_root.StatBracket[0][0] - 1) + ' ' + _root.StatBracket[0][1] + ' Point(s) per Skill Level' + '\n';
descript += 'Level ' + _root.StatBracket[0][0] + ' - ' + (_root.StatBracket[1][0] - 1) + ' ' + _root.StatBracket[1][1] + ' Point(s) per Skill Level' + '\n';
descript += 'Level ' + _root.StatBracket[1][0] + ' - ' + (_root.StatBracket[2][0] - 1) + ' ' + _root.StatBracket[2][1] + ' Point(s) per Skill Level' + '\n';
descript += 'Level ' + _root.StatBracket[2][0] + ' - ' + (_root.StatBracket[3][0] - 1) + ' ' + _root.StatBracket[3][1] + ' Point(s) per Skill Level' + '\n';
descript += 'Level ' + _root.StatBracket[3][0] + ' - ' + (_root.StatBracket[4][0] - 1) + ' ' + _root.StatBracket[4][1] + ' Point(s) per Skill Level' + '\n';
descript += 'Level ' + _root.StatBracket[4][0] + '+ ' + _root.StatBracket[5][1] + ' Point(s) per Skill Level';
}
var descript = '';
var perkHave = 0;
var traitGet = NaN;
var coolguy = false;
var scaleBase = 62;
var WW = 357.1 * (scaleBase / 100) + 0;
var HH = 81 * (scaleBase / 100) + 0;
var startX = 4 + WW / 2;
var startY = 2;
var curW = 0;
var curH = 0;
var maxW = 3;
i = 1;
while (i < _root.traitsOwned.length) {
if (_root.traitsOwned[i] == 1 && traitGet != i || coolguy == true && perkHave < 13) {
traitGet = i;
++perkHave;
var perkicon = this.perkTable.attachMovie('trait' + String(i), 'ayylmao' + perkHave, _root.extraDepthInitial + i);
perkicon._x = startX + WW * curW;
perkicon._y = startY + HH * curH;
perkicon._xscale = scaleBase;
perkicon._yscale = scaleBase;
++curW;
if (curW == maxW) {
curW = 0;
++curH;
}
}
++i;
}
i = 1;
while (i < _root.perksOwned.length) {
if (_root.perksOwned[i] == 1) {
++perkHave;
var perkicon = this.perkTable.attachMovie('perk' + String(i), 'ayylmao' + perkHave, _root.extraDepthInitial + i);
perkicon._x = startX + WW * curW;
perkicon._y = startY + HH * curH;
perkicon._xscale = scaleBase;
perkicon._yscale = scaleBase;
++curW;
if (curW == maxW) {
curW = 0;
++curH;
}
}
++i;
}
}
instance of movieClip 3784 {
onClipEvent (load) {
if (_root.StatsLeft > 0) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (enterFrame) {
if (_root.StatsLeft > 0) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
}
}
movieClip 3821 {
}
movieClip 3833 {
}
movieClip 3835 {
}
movieClip 3837 {
}
movieClip 3840 {
}
movieClip 3841 {
}
movieClip 3843 {
}
movieClip 3845 {
}
movieClip 3846 {
}
movieClip 3849 {
}
movieClip 3850 {
}
movieClip 3852 {
}
movieClip 3853 {
}
movieClip 3855 {
}
movieClip 3858 {
}
movieClip 3860 {
}
movieClip 3861 {
}
movieClip 3864 {
}
movieClip 3865 {
}
movieClip 3867 {
}
movieClip 3868 {
}
movieClip 3871 {
}
movieClip 3873 {
}
movieClip 3874 {
}
movieClip 3876 {
}
movieClip 3878 {
}
movieClip 3880 {
}
movieClip 3881 {
}
movieClip 3886 {
}
movieClip 3888 {
}
movieClip 3889 {
}
movieClip 3890 {
}
movieClip 3893 {
}
movieClip 3894 {
}
movieClip 3896 {
}
movieClip 3898 {
}
movieClip 3899 {
}
movieClip 3909 {
}
movieClip 3913 {
}
movieClip 3915 {
}
movieClip 3917 {
}
movieClip 3920 {
}
movieClip 3921 {
}
movieClip 3927 {
}
button 3935 {
on (release) {
_root.hudInfo.diplomacy(0, 'bandits');
}
}
button 3936 {
on (release) {
_root.hudInfo.diplomacy(1, 'bandits');
}
}
button 3937 {
on (release) {
_root.hudInfo.diplomacy(2, 'bandits');
}
}
button 3938 {
on (release) {
_root.hudInfo.diplomacy(4, 'bandits');
}
}
button 3939 {
on (release) {
_root.hudInfo.diplomacy(5, 'bandits');
}
}
movieClip 3941 {
}
movieClip 3943 {
}
movieClip 3945 {
}
movieClip 3947 {
}
button 3950 {
on (release) {
_root.hudInfo.diplomacy(0, 'changelings');
}
}
button 3951 {
on (release) {
_root.hudInfo.diplomacy(1, 'changelings');
}
}
button 3952 {
on (release) {
_root.hudInfo.diplomacy(2, 'changelings');
}
}
movieClip 3953 {
}
movieClip 3957 {
}
movieClip 3958 {
}
button 3960 {
on (release) {
_root.hudInfo.diplomacy(3, 'changelings');
}
}
button 3962 {
on (release) {
_root.hudInfo.diplomacy(1, 'natives');
}
}
button 3966 {
on (release) {
_root.hudInfo.diplomacy(0, 'natives');
}
}
button 3967 {
on (release) {
_root.hudInfo.diplomacy(3, 'natives');
}
}
movieClip 3970 {
}
movieClip 3973 {
}
movieClip 3975 {
}
movieClip 3977 {
}
button 3979 {
on (release) {
_root.hudInfo.diplomacy(2, 'natives');
}
}
movieClip 3982 {
}
movieClip 3983 {
}
button 3985 {
on (release) {
_root.hudInfo.diplomacy(0, 'riot');
}
}
button 3988 {
on (release) {
_parent.gotoAndStop(1);
}
}
movieClip 3990 {
}
button 3994 {
on (release) {
gotoAndStop(1);
}
}
movieClip 3995 {
frame 1 {
stop();
}
}
movieClip 4011 {
}
movieClip 4014 {
frame 1 {
function updateQuirks() {
if (_root.specialistSelected != -1) {
quirkGet1 = _root.specialistsStats[_root.specialistSelected][6];
quirkGet2 = _root.specialistsStats[_root.specialistSelected][7];
} else {
quirkGet1 = 0;
quirkGet2 = 0;
}
if (quirkGet1 != 0) {
this.firstquirk.attachMovie('quirk' + String(quirkGet1), 'ayylmao1', _root.extraDepthInitial);
this.firstquirk._alpha = 100;
} else {
this.firstquirk._alpha = 0;
}
if (quirkGet2 != 0) {
this.secondquirk.attachMovie('quirk' + String(quirkGet2), 'ayylmao2', _root.extraDepthInitial + 1);
this.secondquirk._alpha = 100;
} else {
this.secondquirk._alpha = 0;
}
}
var expShow = '';
var nameRank = '';
var Rank = '';
var Name = '';
var EXP = '';
var Descript = '';
this.IMG.gotoAndStop('disabled');
var quirkGet1 = 0;
var quirkGet2 = 0;
updateQuirks();
}
}
button 4038 {
on (release) {
_root.forceSave();
}
}
button 4039 {
on (release) {
gotoAndStop('helpstart');
}
}
button 4040 {
on (release) {
_root.deselectAll();
}
}
button 4042 {
on (release) {
gotoAndStop('options');
}
}
button 4044 {
on (release) {
_root.pingy();
if (_quality == 'MEDIUM') {
_quality = 'HIGH';
} else {
if (_quality == 'HIGH') {
_quality = 'LOW';
} else {
if (_quality == 'LOW') {
_quality = 'MEDIUM';
}
}
}
var MSG = '';
if (_quality == 'MEDIUM') {
MSG = 'High';
} else {
if (_quality == 'HIGH') {
MSG = 'Low';
} else {
if (_quality == 'LOW') {
MSG = 'Medium';
}
}
}
_root.feedText2 = 'Change Quality to ' + MSG;
_root.feedText = 'If the game\'s framerate is being sluggish, consider lowering quality.';
}
on (rollOver) {
var MSG = '';
if (_quality == 'MEDIUM') {
MSG = 'High';
} else {
if (_quality == 'HIGH') {
MSG = 'Low';
} else {
if (_quality == 'LOW') {
MSG = 'Medium';
}
}
}
_root.feedText2 = 'Change Quality to ' + MSG;
_root.feedText = 'If the game\'s framerate is being sluggish, consider lowering quality.';
}
on (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
button 4046 {
on (release) {
_root.queuemusik(_root.MusikTrack + 1);
}
}
button 4048 {
on (release) {
if (_root.MusikLoop == 0) {
_root.MusikLoop = 1;
} else {
_root.MusikLoop = 0;
}
}
}
button 4055 {
on (release) {
_root.unlockpop.gotoAndStop('datafolder');
}
}
movieClip 4065 {
frame 20 {
if (_root.NextScene == 'disabled') {
_root.fader.gotoAndPlay('fadeinFast');
if (_root.pauseDuringMeet == true && _root.gamePaused == true) {
_root.pauseGame();
}
}
_root.hudInfo.gotoAndStop(_root.NextScene);
}
frame 21 {
stop();
}
}
movieClip 4069 {
}
movieClip 4070 {
}
movieClip 4078 {
frame 1 {
stop();
}
}
movieClip 4083 {
}
movieClip 4088 {
}
movieClip 4089 {
frame 200 {
gotoAndPlay(1);
}
}
movieClip 4094 {
}
movieClip 4100 {
}
movieClip 4101 {
frame 1 {
stop();
}
frame 2 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn1 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn2 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn3 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn4 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 3 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 4 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 5 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 6 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 7 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 8 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 9 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 10 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn1 of movieClip 1574 {
onClipEvent (release) {
this._parent._parent.storyChoice(1);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 11 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 12 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn2 of movieClip 1574 {
onClipEvent (release) {
this._parent._parent.storyChoice(2);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 13 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn3 of movieClip 1574 {
onClipEvent (release) {
this._parent._parent.storyChoice(3);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 14 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
stop();
}
instance choiceBtn4 of movieClip 1574 {
onClipEvent (release) {
this._parent._parent.storyChoice(4);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 15 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn4 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 16 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 17 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn3 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 18 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 19 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn2 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 20 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 21 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 22 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 23 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance choiceBtn1 of movieClip 1574 {
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 24 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 25 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 26 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 27 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 28 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
frame 29 {
if (choice2 == '') {
choiceBtn2.unloadMovie();
}
if (choice3 == '') {
choiceBtn3.unloadMovie();
}
if (choice4 == '') {
choiceBtn4.unloadMovie();
}
}
}
button 4102 {
on (release) {
_root.hudInfo.leFadeFace.play();
_root.NextScene = 'disabled';
}
}
movieClip 4105 {
frame 1 {
function storyChoice(number) {
this.choices.nextFrame();
this.choices.play();
choicesBusy = false;
textcurrent = '';
textlength = 0;
choiceID = choiceNumberID[number - 1];
if (choiceID == '01') {
textmessage = 'We\'re trying to impede the development of evil Changeling Citadels. They feast off of love and want to destroy us, but if we create enough of it we can keep them at bay and stop them from expanding.';
this.choices.choice1 = 'Isn\'t there a stronger magic we could use against them?';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('01b', '02', '03', '');
} else {
if (choiceID == '02') {
textcurrent = '';
textmessage = 'Build Town Squares and surround them with Houses, ideally you want 2 Deli Stores per 8 Houses. Try to get your Happiness to 100% as soon as possible. Quarries should be placed far away from towns, and Taverns should touch as many Houses as possible.';
textlength = 0;
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice2 = ChoiceGeneric3[x];
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('01', '03', '', '');
} else {
if (choiceID == '03') {
textmessage = 'Hehe, thank you! That is a very nice thing of you to say. I like you too, ' + _root.charName + '.';
choiceNumberID = new Array('03b', '03c', '', '');
this.choices.choice1 = 'You\'re welcome. Could we talk about something else?';
this.choices.choice2 = 'Could you explain how love magic works in-depth?';
if (!_root.StoryFlags[0]) {
if (_root.statCharisma >= 6) {
this.choices.choice3 = 'Let\'s generate some \'love magic\'. Hehe.';
choiceNumberID[2] = '03d';
} else {
x = _root.randRange(0, ChoiceGeneric4b.length - 1);
this.choices.choice3 = ChoiceGeneric4b[x];
choiceNumberID[2] = '03e';
}
} else {
this.choices.choice3 = '';
}
this.choices.choice4 = '';
} else {
if (choiceID == '03b') {
textmessage = 'Sure thing! What did you want to ask about?';
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('01', '02', '', '');
} else {
if (choiceID == '03c') {
textmessage = 'Of course! There are many types of magic in this world, some of the more known and controllable powers are something all Unicorns are born with. Various Mythical creatures also have different kinds of magic, some lesser, some greater.';
this.choices.choice1 = 'I\'m with you so far.';
this.choices.choice2 = '';
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('03c2', '', '', '');
} else {
if (choiceID == '03c2') {
textmessage = 'There\'s also the magic of friendship and love, which usually require a unicorn\'s magic to utilize, but can be generated from anyone - even creatures other than ponies! These types of magic are incredibly powerful if utilized properly.';
this.choices.choice1 = 'How exactly does love magic get \'generated\'?';
this.choices.choice2 = 'What about fart magic? Hehhehh...';
this.choices.choice3 = 'Er, could you re-explain that last bit?';
this.choices.choice4 = '';
choiceNumberID = new Array('03c3', '03e', '03c', '');
} else {
if (choiceID == '03c3') {
textmessage = 'Usually if two ponies are deeply in-love it can create magic so powerful it can totally annhilate evil. However, just having a community filled with loving, happy ponies will create plenty of usable magic. When ponies have sex, this magic is even greater.';
this.choices.choice1 = 'I\'d like to generate some Magic with you, if possible';
this.choices.choice2 = 'If you pissed in my mouth, would that generate any magic?';
this.choices.choice3 = 'Could you start over? I wasn\'t listening.';
this.choices.choice4 = '';
choiceNumberID = new Array('03c4', '03e', '03c', '');
} else {
if (choiceID == '03c4' || choiceID == '03e4' || choiceID == '03d') {
textmessage = 'You wanted to make love to me? Well, we are pretty good friends, and I suppose if it\'s for the purpose of creating additional magic I wouldn\'t mind helping out in the battle versus tyranny! Hehe. Wanna do it right here in the garden?';
this.choices.choice1 = 'Alright!';
this.choices.choice2 = '...Let\'s talk about something else...';
this.choices.choice3 = 'Woah woah, could you start over? I\'m confused.';
this.choices.choice4 = 'I just shit my rainbow dash adult diaper.';
choiceNumberID = new Array('03c5', '03b', '03c', '03e');
} else {
if (choiceID == '03c5') {
if (traitsOwned[20] != 1) {
_root.UnlockGeneric(0);
_root.charSelected = _root.CurrentAdviser;
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'sex';
_root.sexScene = 'garden';
} else {
_root.hudInfo.gotoAndStop(1);
}
} else {
if (choiceID == '04' && _root.statCharisma >= 6) {
if (!_root.StoryFlags[0]) {
textmessage = 'Hmmm... well you\'ve already been given a small amount of resources to start with by our kingdom, but I suppose I can see what I can do to whip up some more. What did you need me to get?';
this.choices.choice1 = 'Throw a big party to celebrate the new town!';
this.choices.choice2 = 'Some gems and coins to help me build stuff.';
this.choices.choice3 = 'Extra food and tech points to speed up research.';
this.choices.choice4 = '';
choiceNumberID = new Array('04b', '04c', '04d', '');
_root.StoryFlags[0] = true;
} else {
textmessage = 'Sorry, I think I\'ve got you all the extra supplies I can offer. I don\'t wanna push my luck.';
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('01', '02', '03', '');
}
} else {
if (choiceID == '04' && _root.statCharisma < 6 || choiceID == '03e') {
textmessage = 'Uh... I uh... well. That\'s a really weird thing of you to say... Let\'s just pretend that never happened. What else did you want to talk about?';
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('01', '02', '03', '');
} else {
if (choiceID == '01b') {
textmessage = 'Love is the most powerful magic that we currently know how to harness. However, as our technology improves we may find something better.';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice1 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice2 = ChoiceGeneric3[x];
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('02', '03', '', '');
} else {
if (choiceID == '04b' || choiceID == '04c' || choiceID == '04d') {
if (choiceID == '04b') {
_root.happiness += 200;
}
if (choiceID == '04c') {
_root.resources[0][1] += _root.randRange(20, 30);
_root.resources[3][1] += _root.randRange(5, 10);
}
if (choiceID == '04d') {
_root.resources[1][1] += _root.randRange(300, 500);
_root.resources[2][1] += _root.randRange(10, 20);
}
_root.refreshResources();
textmessage = 'Alright, consider it done. Was there anything else I could help you with?';
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('01', '02', '03', '');
}
}
}
}
}
}
}
}
}
}
}
}
}
}
stop();
var textcurrent = '';
var textmessage = '';
var textlength = 0;
var choicesBusy = false;
var HelloTwilight = new Array('Hello again ' + _root.charName + ', it\'s always nice to see you around!');
var PositiveTwilight = new Array('It seems the the citizens of ' + _root.townName + ' are doing quite well, nice work so far!');
var NeutralTwilight = new Array(_root.townName + ' Seems to be rather content today, keep up the good work.');
var NegativeTwilight = new Array('However, I feel the citizens of ' + _root.townName + ' could be doing better.');
var QuestionTwilight = new Array('So, anyways, what did you want to talk about?');
var choiceID;
x = _root.randRange(0, HelloTwilight.length - 1);
var textcurrent = '';
var textmessage = HelloTwilight[x];
textmessage += ' ';
if (happiness > 75) {
x = _root.randRange(0, PositiveTwilight.length - 1);
textmessage += PositiveTwilight[x];
} else {
if (happiness < 50) {
x = _root.randRange(0, NegativeTwilight.length - 1);
textmessage += NegativeTwilight[x];
} else {
x = _root.randRange(0, NeutralTwilight.length - 1);
textmessage += NeutralTwilight[x];
}
}
textmessage += ' ';
x = _root.randRange(0, QuestionTwilight.length - 1);
textmessage += QuestionTwilight[x];
var ChoiceGeneric1 = new Array('What am I supposed to be doing?', 'Other than building a town, what is my goal?');
var ChoiceGeneric2 = new Array('Any general tips for building a town?', 'What\'s a good strategy for a town layout?', 'Any advice on how to create my town layout?');
var ChoiceGeneric3 = new Array('You look really pretty today...', 'You know, I\'ve always really liked you...', 'This garden smells almost as lovely as you do...', 'Your coat and mane look really soft lately...', 'Your mane looks wonderful and brushable...');
var ChoiceGeneric4a = new Array('(CHARM) Could I get some extra supplies?');
var ChoiceGeneric4b = new Array('I want to sniff your butthole.', 'I wanna smack your crotchtits with my dick.', 'I want to bend you over and make you my bitch.', 'I wanna do to you what I do to AJ\'s dog.', 'You look tired. You should sleep at my place tonight.', 'Let\'s play the \'pop up pirate game\', only we use my cock.', 'Let\'s play the \'put my dick in your ass\' minigame.', 'Shut up and suck me off already!', 'Shut up and bend over, I\'m ready for hot pony sex!', 'I want to sniff your hair and brush you.', 'Y-you too.');
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
if (!_root.StoryFlags[0]) {
if (_root.statCharisma >= 6) {
x = _root.randRange(0, ChoiceGeneric4a.length - 1);
this.choices.choice4 = ChoiceGeneric4a[x];
} else {
x = _root.randRange(0, ChoiceGeneric4b.length - 1);
this.choices.choice4 = ChoiceGeneric4b[x];
}
} else {
this.choices.choice4 = '';
}
choiceID = '0';
choiceNumberID = new Array('01', '02', '03', '04');
}
frame 1 {
this.lighting.gotoAndStop(1);
var clockDate = new Date();
var minutes = clockDate.getMinutes();
var hours = clockDate.getHours();
this.minutesHand._rotation = minutes * 6;
this.hoursHand._rotation = hours * 30 + minutes / 2;
if (hours >= 16 && hours <= 24) {
light._visible = true;
night._alpha = hours * 5 - 20;
var i = 1;
while (i < 38) {
var mc = light['window' + i];
mc.ran = Math.random() * 10000;
if (mc.ran > 9985) {
mc._visible = !mc._visible;
}
++i;
}
} else {
if (hours >= 0 && hours <= 7) {
light._visible = true;
night._alpha = 100 - hours * 5;
var i = 1;
while (i < 38) {
var mc = light['window' + i];
mc.ran = Math.random() * 10000;
if (mc.ran > 9999) {
mc._visible = !mc._visible;
}
++i;
}
} else {
light._visible = false;
night._alpha = 0;
}
}
switch (hours) {
case 0:
messageTxt.text = 'The witching hour arrives';
break;
case 4:
messageTxt.text = 'The streets are swept clean';
break;
case 6:
messageTxt.text = 'The workers prepare for a new day';
break;
case 8:
messageTxt.text = 'The city welcomes the new day';
break;
case 12:
messageTxt.text = 'The workers head off for lunch';
break;
case 16:
messageTxt.text = 'The city begins to wind down the working day';
break;
case 20:
messageTxt.text = 'The residents get ready to party';
break;
default:
messageTxt.text = '';
}
}
instance textcontroller of movieClip 4094 {
onClipEvent (load) {
var textInterval = 0;
var soundInterval = 2;
var textSpeed = 4;
var textWrap = 22;
}
onClipEvent (enterFrame) {
++textInterval;
++soundInterval;
if (textInterval > 0) {
x = 0;
while (x < textSpeed) {
if (this._parent.textlength <= this._parent.textmessage.length) {
this._parent.textlength += 1;
}
this._parent.textcurrent += this._parent.textmessage.substr(this._parent.textlength - 1, 1);
++x;
}
textInterval = 0;
}
if (soundInterval > 2) {
if (this._parent.textlength <= this._parent.textmessage.length) {
}
soundInterval = 0;
}
if (this._parent.textcurrent.length > this._parent.textmessage.length / 2 && this._parent.choicesBusy == false) {
this._parent.choices.gotoAndPlay(2);
this._parent.choicesBusy = true;
}
}
}
}
movieClip 4107 {
frame 21 {
stop();
}
}
movieClip 4110 {
}
movieClip 4112 {
}
button 4115 {
on (release) {
_root.hudInfo.gotoAndStop('Gamble');
}
}
button 4117 {
on (release) {
if (traitsOwned[20] != 1) {
_root.hudInfo.gotoAndStop('Private');
}
}
}
movieClip 4119 {
frame 1 {
function storyChoice(number) {
this.choices.nextFrame();
this.choices.play();
choicesBusy = false;
textcurrent = '';
textlength = 0;
choiceID = choiceNumberID[number - 1];
if (choiceID == '01') {
textmessage = 'What, do you think this is a dating sim or something? Surely you have something better to do than make idle chit-chat!';
this.choices.choice1 = 'I was just trying to break the ice...';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('01b', '02', '03', '');
} else {
if (choiceID == '02') {
textcurrent = '';
textmessage = 'Private Rooms are a place where you can make \'Love Magic\' with different guests of the tavern. There\'s no limit on how often you can do this and it\'s completely free.';
textlength = 0;
this.choices.choice1 = 'I\'m gonna go check them out.';
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice2 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceNumberID = new Array('02b', '01', '03', '');
} else {
if (choiceID == '02b') {
if (traitsOwned[20] != 1) {
_root.hudInfo.gotoAndStop('Private');
} else {
_root.hudInfo.gotoAndStop(1);
}
} else {
if (choiceID == '03') {
textmessage = 'If you\'re feeling lucky you can go wager some Bits in order to win some prizes. They play a game called \'Happy Merchants\'.';
choiceNumberID = new Array('03b', '03c', '02', '');
this.choices.choice1 = 'Can you explain how \'Happy Merchants\' is played?';
this.choices.choice2 = 'I am gonna go check that out';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice3 = ChoiceGeneric2[x];
this.choices.choice4 = '';
} else {
if (choiceID == '03b') {
textmessage = 'Happy Merchants is a game where you place bets on various locations then draw a card. If you draw a supply card that matches your location you get paid out. However if you draw the Bandit card, you lose all of your placed bets. You can clear your bets anytime without a penalty.';
this.choices.choice1 = 'I am gonna go check that out';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('03c', '02', '', '');
} else {
if (choiceID == '03c') {
_root.hudInfo.gotoAndStop('Gamble');
} else {
if (choiceID == '01b') {
textmessage = 'You should meet me one of the private rooms if you\'re interested in something like that, hehe.';
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice1 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice2 = ChoiceGeneric3[x];
this.choices.choice3 = '';
this.choices.choice4 = '';
choiceNumberID = new Array('02', '03', '', '');
}
}
}
}
}
}
}
}
stop();
var textcurrent = '';
var textmessage = '';
var textlength = 0;
var choicesBusy = false;
var HelloTwilight = new Array('Hi there ' + _root.charName + '! Managing a city sure is hard work, come to relax for a bit?');
var PositiveTwilight = new Array('It seems the the citizens of ' + _root.townName + ' are doing quite well, nice work so far!');
var NeutralTwilight = new Array(_root.townName + ' Seems to be rather content today, keep up the good work.');
var NegativeTwilight = new Array('However, I feel the citizens of ' + _root.townName + ' could be doing better.');
var QuestionTwilight = new Array('So, anyways, what did you want to talk about?');
var choiceID;
x = _root.randRange(0, HelloTwilight.length - 1);
var textcurrent = '';
var textmessage = HelloTwilight[x];
textmessage += ' ';
if (happiness > 75) {
x = _root.randRange(0, PositiveTwilight.length - 1);
textmessage += PositiveTwilight[x];
} else {
if (happiness < 50) {
x = _root.randRange(0, NegativeTwilight.length - 1);
textmessage += NegativeTwilight[x];
} else {
x = _root.randRange(0, NeutralTwilight.length - 1);
textmessage += NeutralTwilight[x];
}
}
var ChoiceGeneric1 = new Array('So... what\'s up?', 'How\'re you doing, by the way?', 'Whatcha been up to?', 'Nice day today, huh?');
var ChoiceGeneric2 = new Array('Can you tell me about the Private Rooms?');
var ChoiceGeneric3 = new Array('Can you tell me about the Gambling Table?');
var ChoiceGeneric4a = new Array('(CHARM) Could I get some extra supplies?');
var ChoiceGeneric4b = new Array('I want to sniff your butthole.', 'I wanna smack your crotchtits with my dick.', 'I want to bend you over and make you my bitch.', 'I wanna do to you what I do to AJ\'s dog.', 'You look tired. You should sleep at my place tonight.', 'Let\'s play the \'pop up pirate game\', only we use my cock.', 'Let\'s play the \'put my dick in your ass\' minigame.', 'Shut up and suck me off already!', 'Shut up and bend over, I\'m ready for hot pony sex!', 'I want to sniff your hair and brush you.');
x = _root.randRange(0, ChoiceGeneric1.length - 1);
this.choices.choice1 = ChoiceGeneric1[x];
x = _root.randRange(0, ChoiceGeneric2.length - 1);
this.choices.choice2 = ChoiceGeneric2[x];
x = _root.randRange(0, ChoiceGeneric3.length - 1);
this.choices.choice3 = ChoiceGeneric3[x];
this.choices.choice4 = '';
choiceID = '0';
choiceNumberID = new Array('01', '02', '03', '04');
}
frame 1 {
this.lighting.gotoAndStop(1);
var clockDate = new Date();
var minutes = clockDate.getMinutes();
var hours = clockDate.getHours();
this.minutesHand._rotation = minutes * 6;
this.hoursHand._rotation = hours * 30 + minutes / 2;
if (hours >= 16 && hours <= 24) {
light._visible = true;
night._alpha = hours * 5 - 20;
var i = 1;
while (i < 38) {
var mc = light['window' + i];
mc.ran = Math.random() * 10000;
if (mc.ran > 9985) {
mc._visible = !mc._visible;
}
++i;
}
} else {
if (hours >= 0 && hours <= 7) {
light._visible = true;
night._alpha = 100 - hours * 5;
var i = 1;
while (i < 38) {
var mc = light['window' + i];
mc.ran = Math.random() * 10000;
if (mc.ran > 9999) {
mc._visible = !mc._visible;
}
++i;
}
} else {
light._visible = false;
night._alpha = 0;
}
}
switch (hours) {
case 0:
messageTxt.text = 'The witching hour arrives';
break;
case 4:
messageTxt.text = 'The streets are swept clean';
break;
case 6:
messageTxt.text = 'The workers prepare for a new day';
break;
case 8:
messageTxt.text = 'The city welcomes the new day';
break;
case 12:
messageTxt.text = 'The workers head off for lunch';
break;
case 16:
messageTxt.text = 'The city begins to wind down the working day';
break;
case 20:
messageTxt.text = 'The residents get ready to party';
break;
default:
messageTxt.text = '';
}
}
instance textcontroller of movieClip 4094 {
onClipEvent (load) {
var textInterval = 0;
var soundInterval = 2;
var textSpeed = 4;
var textWrap = 22;
}
onClipEvent (enterFrame) {
++textInterval;
++soundInterval;
if (textInterval > 0) {
x = 0;
while (x < textSpeed) {
if (this._parent.textlength <= this._parent.textmessage.length) {
this._parent.textlength += 1;
}
this._parent.textcurrent += this._parent.textmessage.substr(this._parent.textlength - 1, 1);
++x;
}
textInterval = 0;
}
if (soundInterval > 2) {
if (this._parent.textlength <= this._parent.textmessage.length) {
}
soundInterval = 0;
}
if (this._parent.textcurrent.length > this._parent.textmessage.length / 2 && this._parent.choicesBusy == false) {
this._parent.choices.gotoAndPlay(2);
this._parent.choicesBusy = true;
}
}
}
}
movieClip 4121 {
}
movieClip 4124 {
}
movieClip 4127 {
}
movieClip 4130 {
}
movieClip 4133 {
}
movieClip 4136 {
}
movieClip 4139 {
frame 1 {
stop();
}
}
movieClip 4142 {
}
movieClip 4145 {
}
movieClip 4148 {
}
movieClip 4150 {
}
movieClip 4153 {
frame 121 {
_parent.lightText._alpha -= 3;
gotoAndPlay(120);
}
}
movieClip 4156 {
frame 121 {
if (_parent.lightText._alpha > 0) {
_parent.lightText._alpha -= 3;
gotoAndPlay(120);
} else {
gotoAndStop(1);
}
}
}
movieClip 4158 {
}
movieClip 4160 {
}
movieClip 4162 {
}
movieClip 4164 {
}
movieClip 4166 {
}
movieClip 4168 {
}
movieClip 4169 {
}
movieClip 4171 {
}
movieClip 4172 {
frame 1 {
stop();
}
frame 7 {
gotoAndStop(14);
}
frame 15 {
gotoAndStop(1);
}
}
movieClip 4187 {
frame 1 {
if (!init) {
var init = true;
if (_root.funds > 0 || _root.tokens > 0) {
this.gotoAndStop(2);
} else {
stop();
}
}
}
frame 3 {
gotoAndStop(1);
}
}
button 4196 {
on (release) {
rollEm();
}
}
button 4197 {
on (release) {
clearEm(false);
}
}
movieClip 4227 {
}
movieClip 4250 {
}
movieClip 4253 {
}
movieClip 4254 {
frame 1 {
stop();
}
frame 2 {
_parent.showEm();
}
frame 15 {
_parent.payEm();
}
frame 15 {
stop();
}
frame 20 {
gotoAndPlay(2);
}
}
button 4257 {
on (release) {
placeEmAll();
}
}
button 4259 {
on (release) {
clearEm(false);
_root.hudInfo.gotoAndStop('Prize');
}
}
movieClip 4263 {
}
button 4264 {
on (release) {
if (_root.tokens >= 125) {
_root.tokens -= 125;
_root.resources[0][1] += 100;
}
this.chiphint.gotoAndStop('disabled');
}
}
button 4266 {
on (release) {
if (_root.resources[0][1] >= 100) {
_root.resources[0][1] -= 100;
_root.funds += 100;
}
_root.refreshResources();
this.chiphint.gotoAndStop('disabled');
}
}
movieClip 4269 {
}
movieClip 4270 {
frame 1 {
if (_root.funds > 0 || _root.tokens > 0) {
this.gotoAndStop('disabled');
}
}
frame 60 {
gotoAndPlay(1);
}
}
button 4271 {
on (release) {
this.hinty.nextFrame();
}
}
button 4273 {
on (release) {
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
placeEmAll();
}
}
button 4275 {
on (release) {
clearEm(false);
_root.hudInfo.gotoAndStop('Tavern');
}
}
movieClip 4277 {
frame 1 {
function rollEm() {
if (!cardBusy) {
roll1 = _root.randRange(1, 7);
roll2 = _root.randRange(1, 7);
rollResult = roll1 + roll2;
if (rollResult == 14) {
rollResult = 2;
}
this.card.play();
cardBusy = true;
}
}
function showEm() {
this.card.card.gotoAndStop(rollResult);
}
function payEm() {
if (rollResult == 8) {
clearEm(true);
} else {
if (rollResult == 3) {
i = 1;
while (i <= 7) {
a = this['b' + i];
if (a.bet > 0) {
a.bet += betPrice;
++a.betCurrent;
var v3 = a.attachMovie('leChip', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
}
++i;
}
} else {
if (rollResult == 4) {
payOutBonus = 2;
} else {
if (rollResult == 12) {
rollResult = _root.randRange(4, 11);
if (rollResult == 8) {
rollResult = 2;
}
}
}
}
}
i = 1;
while (i <= 7) {
a = this['b' + i];
if (rollResult == a.hit) {
if (a.bet > 0) {
_root.tokens += int(a.bet * a.win * payOutBonus);
_root.fundsDisplay = int(_root.funds);
a.bet = 0;
++a.betCurrent;
var v3 = a.attachMovie('leChipWin', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 4, 10, -1);
++p;
}
a.betCurrent = 0;
payOutBonus = 1;
}
}
++i;
}
if (!chipMoving) {
cardBusy = false;
}
_root.writeData();
}
function clearEm(crap) {
if (!cardBusy || crap) {
i = 1;
while (i <= 7) {
a = this['b' + i];
if (a.bet > 0 && !crap) {
_root.funds += a.bet;
_root.fundsDisplay = int(_root.funds);
}
if (!crap) {
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 24, 10, -1);
++p;
}
} else {
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 8, 10, 1);
++p;
}
}
a.betCurrent = 0;
a.bet = 0;
++i;
}
}
}
function fireWeapon(projectileMC, projectileLifeMax, projectileSpeed, projectileSpread, projectileTarget) {
cardBusy = true;
chipMoving = true;
var v7;
var v4 = projectileMC.ypos - 450 * projectileTarget;
if (projectileTarget == -1) {
projectileTarget = -400;
}
var v5 = projectileMC.xpos - projectileTarget;
projectileMC.projectileLife = 0;
projectileAngle = Math.atan2(v4, v5);
projectileMC.xMove = Math.cos(projectileAngle) * projectileSpeed;
projectileMC.yMove = Math.sin(projectileAngle) * projectileSpeed;
projectileMC.onEnterFrame = function () {
this._x -= this.xMove * 1.5 * (this.projectileLife * this.projectileLife * 0.08);
this._y += this.yMove * (this.projectileLife * this.projectileLife * 0.08);
if (this.projectileLife > projectileLifeMax) {
this.removeMovieClip();
cardBusy = false;
chipMoving = false;
}
if (projectileLifeMax != 0) {
++this.projectileLife;
}
};
}
function placeEm(which) {
a = this['b' + which];
if (_root.funds >= betPrice && a.bet < maxBet) {
_root.funds -= betPrice;
_root.fundsDisplay = int(_root.funds);
a.bet += betPrice;
++a.betCurrent;
var v3 = a.attachMovie('leChip', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
}
}
function placeEmAll() {
if (!cardBusy) {
i = 1;
while (i <= 7) {
placeEm(i);
++i;
}
}
}
function setEmUp() {
i = 1;
while (i <= 7) {
a = this['b' + i];
a.bet = 0;
a.betCurrent = 0;
a.onRelease = function () {
if (!cardBusy) {
if (_root.funds >= betPrice && this.bet < maxBet) {
_root.funds -= betPrice;
_root.fundsDisplay = int(_root.funds);
this.bet += betPrice;
++this.betCurrent;
var v3 = this.attachMovie('leChip', 'leChip' + this.betCurrent, this.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * this.betCurrent;
v3.xpos = this._x;
v3.ypos = this._y;
}
}
};
++i;
}
this.b1.win = 2;
this.b2.win = 1.5;
this.b3.win = 1.2;
this.b4.win = 3;
this.b5.win = 1.2;
this.b6.win = 1.5;
this.b7.win = 2;
this.b1.hit = 5;
this.b2.hit = 6;
this.b3.hit = 7;
this.b4.hit = 2;
this.b5.hit = 9;
this.b6.hit = 10;
this.b7.hit = 11;
}
stop();
var roll1 = 0;
var roll2 = 0;
var rollResult = 0;
var fundsDisplay = int(_root.funds);
var betPrice = 5;
var cardBusy = false;
var maxBet = 50;
var payOutBonus = 1;
var chipMoving = false;
setEmUp();
}
instance hinty of movieClip 4187 {
onClipEvent (press) {
this.gotoAndStop(2);
}
}
}
movieClip 4284 {
frame 1 {
if (_root.UnlocksGeneric[9][2] != 1) {
stop();
} else {
gotoAndStop(2);
}
}
instance of movieClip 119 trait??? {
onClipEvent (release) {
if (_root.tokens >= 500) {
_root.tokens -= 500;
_root.UnlockGeneric(9);
_root.writeData();
_root.hudInfo.prizeScene.tt1.gotoAndStop(2);
}
}
}
}
movieClip 4286 {
frame 1 {
if (_root.UnlocksGeneric[10][2] != 1) {
stop();
} else {
gotoAndStop(2);
}
}
instance of movieClip 119 trait??? {
onClipEvent (release) {
if (_root.tokens >= 750) {
_root.tokens -= 750;
_root.UnlockGeneric(10);
_root.writeData();
_root.hudInfo.prizeScene.tt2.gotoAndStop(2);
}
}
}
}
movieClip 4288 {
frame 1 {
if (_root.UnlocksGeneric[11][2] != 1) {
stop();
} else {
gotoAndStop(2);
}
}
instance of movieClip 119 trait??? {
onClipEvent (release) {
if (_root.tokens >= 1500) {
_root.tokens -= 1500;
_root.UnlockGeneric(11);
_root.writeData();
_root.hudInfo.prizeScene.tt3.gotoAndStop(2);
}
}
}
}
movieClip 4290 {
frame 1 {
if (_root.UnlocksGeneric[12][2] != 1) {
stop();
} else {
gotoAndStop(2);
}
}
instance of movieClip 119 trait??? {
onClipEvent (release) {
if (_root.tokens >= 6000) {
_root.tokens -= 6000;
_root.UnlockGeneric(12);
_root.writeData();
_root.hudInfo.prizeScene.tt4.gotoAndStop(2);
}
}
}
}
button 4291 {
on (release) {
_root.hudInfo.gotoAndStop('Tavern');
}
}
movieClip 4292 {
frame 1 {
function rollEm() {
if (!cardBusy) {
roll1 = _root.randRange(1, 7);
roll2 = _root.randRange(1, 7);
rollResult = roll1 + roll2;
if (rollResult == 14) {
rollResult = 2;
}
this.card.play();
cardBusy = true;
}
}
function showEm() {
this.card.card.gotoAndStop(rollResult);
}
function payEm() {
if (rollResult == 8) {
clearEm(true);
} else {
if (rollResult == 3) {
i = 1;
while (i <= 7) {
a = this['b' + i];
if (a.bet > 0) {
a.bet += betPrice;
++a.betCurrent;
var v3 = a.attachMovie('leChip', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
}
++i;
}
} else {
if (rollResult == 4) {
payOutBonus = 2;
} else {
if (rollResult == 12) {
rollResult = _root.randRange(4, 11);
if (rollResult == 8) {
rollResult = 2;
}
}
}
}
}
i = 1;
while (i <= 7) {
a = this['b' + i];
if (rollResult == a.hit) {
if (a.bet > 0) {
funds += a.bet * a.win * payOutBonus;
fundsDisplay = int(funds);
a.bet = 0;
++a.betCurrent;
var v3 = a.attachMovie('leChipWin', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 4, 10, -1);
++p;
}
a.betCurrent = 0;
payOutBonus = 1;
}
}
++i;
}
if (!chipMoving) {
cardBusy = false;
}
}
function clearEm(crap) {
if (!cardBusy || crap) {
i = 1;
while (i <= 7) {
a = this['b' + i];
if (a.bet > 0 && !crap) {
funds += a.bet;
fundsDisplay = int(funds);
}
if (!crap) {
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 24, 10, -1);
++p;
}
} else {
p = 1;
while (p <= a.betCurrent) {
fireWeapon(a['leChip' + p], 25, 8, 10, 1);
++p;
}
}
a.betCurrent = 0;
a.bet = 0;
++i;
}
}
}
function fireWeapon(projectileMC, projectileLifeMax, projectileSpeed, projectileSpread, projectileTarget) {
cardBusy = true;
chipMoving = true;
var v7;
var v4 = projectileMC.ypos - 450 * projectileTarget;
if (projectileTarget == -1) {
projectileTarget = -400;
}
var v5 = projectileMC.xpos - projectileTarget;
projectileMC.projectileLife = 0;
projectileAngle = Math.atan2(v4, v5);
projectileMC.xMove = Math.cos(projectileAngle) * projectileSpeed;
projectileMC.yMove = Math.sin(projectileAngle) * projectileSpeed;
projectileMC.onEnterFrame = function () {
this._x -= this.xMove * 1.5 * (this.projectileLife * this.projectileLife * 0.08);
this._y += this.yMove * (this.projectileLife * this.projectileLife * 0.08);
if (this.projectileLife > projectileLifeMax) {
this.removeMovieClip();
cardBusy = false;
chipMoving = false;
}
if (projectileLifeMax != 0) {
++this.projectileLife;
}
};
}
function placeEm(which) {
a = this['b' + which];
if (funds >= betPrice && a.bet < maxBet) {
funds -= betPrice;
fundsDisplay = int(funds);
a.bet += betPrice;
++a.betCurrent;
var v3 = a.attachMovie('leChip', 'leChip' + a.betCurrent, a.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * a.betCurrent;
v3.xpos = a._x;
v3.ypos = a._y;
}
}
function placeEmAll() {
if (!cardBusy) {
i = 1;
while (i <= 7) {
placeEm(i);
++i;
}
}
}
function setEmUp() {
i = 1;
while (i <= 7) {
a = this['b' + i];
a.bet = 0;
a.betCurrent = 0;
a.onRelease = function () {
if (!cardBusy) {
if (funds >= betPrice && this.bet < maxBet) {
funds -= betPrice;
fundsDisplay = int(funds);
this.bet += betPrice;
++this.betCurrent;
var v3 = this.attachMovie('leChip', 'leChip' + this.betCurrent, this.getNextHighestDepth());
v3._x = _root.randRange(-5, 5);
v3._y = 60 - 10 * this.betCurrent;
v3.xpos = this._x;
v3.ypos = this._y;
}
}
};
++i;
}
this.b1.win = 2;
this.b2.win = 1.5;
this.b3.win = 1.2;
this.b4.win = 3;
this.b5.win = 1.2;
this.b6.win = 1.5;
this.b7.win = 2;
this.b1.hit = 5;
this.b2.hit = 6;
this.b3.hit = 7;
this.b4.hit = 2;
this.b5.hit = 9;
this.b6.hit = 10;
this.b7.hit = 11;
}
stop();
var roll1 = 0;
var roll2 = 0;
var rollResult = 0;
var funds = 100;
var fundsDisplay = int(funds);
var betPrice = 5;
var cardBusy = false;
var maxBet = 50;
var payOutBonus = 1;
var chipMoving = false;
setEmUp();
}
}
movieClip 4293 {
}
button 4295 {
on (release) {
_root.hudInfo.gotoAndStop('Tavern');
}
}
button 4296 {
on (release) {
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'sex';
_root.sexScene = 'tavern';
_root.feedText2 = '';
_root.feedText = '';
_root.deselectAll();
}
}
movieClip 4298 {
frame 1 {
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
stop();
var charTotal = 6;
var charsUnlocked = new Array(1, 0, 0, 0, 0, 0);
if (_root.UnlocksGeneric[5][2] == 1) {
charsUnlocked[1] = 1;
}
if (_root.UnlocksGeneric[6][2] == 1) {
charsUnlocked[2] = 1;
}
if (_root.UnlocksGeneric[7][2] == 1) {
charsUnlocked[3] = 1;
}
if (_root.UnlocksGeneric[18][2] == 1) {
charsUnlocked[4] = 1;
}
if (_root.UnlocksGeneric[20][2] == 1) {
charsUnlocked[5] = 1;
}
wumbo = 0;
while (wumbo < charTotal) {
var charTile = lePrivate.attachMovie('pHead', 'p' + String(wumbo), _root.extraDepthInitial + wumbo);
charTile.charX = -375 + wumbo * 150;
charTile.charY = 100;
charTile._x = charTile.charX;
charTile._y = charTile.charY;
if (charsUnlocked[wumbo] == 1) {
charTile.gotoAndStop(1);
charTile.head.gotoAndStop(wumbo + 1);
charTile.head.eyelid.stop();
charTile.hairback.gotoAndStop(wumbo + 1);
charTile.hairback2.gotoAndStop(wumbo + 1);
changeColor('charTile.head.outline', _root.charColor[wumbo][0]);
changeColor('charTile.head.fill', _root.charColor[wumbo][1]);
changeColor('charTile.head.shade', _root.charColor[wumbo][2]);
changeColor('charTile.head.ear1.outline', _root.charColor[wumbo][0]);
changeColor('charTile.head.ear1.fill', _root.charColor[wumbo][1]);
changeColor('charTile.head.ear1.shade', _root.charColor[wumbo][2]);
changeColor('charTile.head.ear2.outline', _root.charColor[wumbo][0]);
changeColor('charTile.head.ear2.fill', _root.charColor[wumbo][1]);
changeColor('charTile.head.ear2.shade', _root.charColor[wumbo][2]);
changeColor('charTile.head.horn.outline', _root.charColor[wumbo][0]);
changeColor('charTile.head.horn.fill', _root.charColor[wumbo][1]);
changeColor('charTile.head.horn.shade', _root.charColor[wumbo][2]);
changeColor('charTile.neck.outline', _root.charColor[wumbo][0]);
changeColor('charTile.neck.fill', _root.charColor[wumbo][1]);
changeColor('charTile.neck.shade', _root.charColor[wumbo][2]);
charTile.onRollOver = function () {
this._xscale = 110;
this._yscale = 110;
this._y -= 10;
};
charTile.onRollOut = function () {
this._xscale = 100;
this._yscale = 100;
this._y += 10;
};
charTile.onPress = function () {
j = 0;
while (j < charTotal) {
lePrivate['p' + j].Highlight._alpha = 0;
++j;
}
this.Highlight._alpha = 100;
_root.charSelected = int((this._name.split(''))[1]);
_root.RefreshSpecalistSelected();
};
} else {
charTile.gotoAndStop(2);
}
++wumbo;
}
}
}
movieClip 4314 {
}
movieClip 4317 {
}
movieClip 4320 {
}
button 4324 {
on (release) {
gotoAndStop('help2');
}
}
button 4338 {
on (release) {
prevFrame();
}
}
movieClip 4346 {
}
button 4370 {
on (release) {
gotoAndStop('help');
}
}
button 4380 {
on (release) {
if (_root.perksLeft < 1) {
_root.townName = String(_root.hudInfo.townNameInput.text);
_root.ascensionNG();
} else {
nextFrame();
}
}
}
movieClip 4386 {
}
button 4388 {
on (release) {
_root.townName = String(_root.hudInfo.townNameInput.text);
_root.ascensionNG();
}
}
movieClip 4394 {
frame 1 {
stop();
}
frame 2 {
if (showHints == 1) {
_root.topRightHUD.adviserHintArrow.play();
showHints = 2;
}
}
frame 2 {
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
_root.hudInfo.underlay.useHandCursor = false;
_root.hudCard._alpha = 0;
_root.adviserHint();
var scheme = 0;
if (_root.CurrentAdviser == 0) {
scheme = 0;
_root.hudInfo.charSheet.gotoAndStop(scheme + 1);
_root.hudInfo.charSheet.adviserName;
}
if (_root.CurrentAdviser == 1) {
scheme = 1;
_root.hudInfo.charSheet.gotoAndStop(scheme + 1);
}
if (_root.CurrentAdviser == 2) {
scheme = 2;
_root.hudInfo.charSheet.gotoAndStop(scheme + 1);
}
if (_root.CurrentAdviser == 6) {
scheme = 6;
_root.hudInfo.charSheet.gotoAndStop(4);
}
_root.hudInfo.charSheet.gotoAndStop(scheme + 1);
_root.hudInfo.charSheet.adviser.head.gotoAndStop(scheme + 1);
_root.hudInfo.charSheet.adviser.hairback.gotoAndStop(scheme + 1);
_root.hudInfo.charSheet.adviser.hairback2.gotoAndStop(scheme + 1);
changeColor('_root.hudInfo.charSheet.adviser.neck.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.charSheet.adviser.neck.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.charSheet.adviser.neck.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.charSheet.adviser.head.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.charSheet.adviser.head.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.charSheet.adviser.head.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear1.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear1.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear1.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear2.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear2.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.charSheet.adviser.head.ear2.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.charSheet.adviser.head.horn.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.charSheet.adviser.head.horn.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.charSheet.adviser.head.horn.shade', _root.charColor[scheme][2]);
}
frame 2 {
_root.playsound('click.wav');
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[0][0] + ': ' + _root.resourceBits;
_root.feedText = 'Bits are shiny coinage used to fund new structures and research projects.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Income: ' + _root.resourceBitsCycle;
_root.feedText = 'This is how many Bits you recieve each day. Increase your population to get higher income.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[1][0] + ': ' + _root.resourceFood;
_root.feedText = 'Food is necessary to keep your ponies satisfied and ensure they have full tummies.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Production: ' + _root.resourceFoodCycleDisplay;
_root.feedText = 'This is how much Food you produce and consume each day. Stores can increase production.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[2][0] + ': ' + _root.resourceTech;
_root.feedText = 'Tech points can be spent to unlock new technologies and upgrades.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Research: ' + _root.resourceTechCycle;
_root.feedText = 'This is how many Tech points you gain each day.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[3][0] + ': ' + _root.resourceGems;
_root.feedText = 'Gems are a valuable luxury resource used for various things.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Excavation: ' + _root.resourceGemsCycle;
_root.feedText = 'This is how many Gems are extracted each day.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Food Storage Capacity: ' + _root.resourceCapFood;
_root.feedText = 'This is how much Food your city can currently hold. Increased by building Stores and Houses.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Mana Points';
_root.feedText = 'Mana is used to activate your Adviser Powers.\rIf your town\'s Happiness is full, then 10% of excess daily Happiness is converted to Mana.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[4][0] + ': ' + _root.resourcePrism;
_root.feedText = 'Prismstones are precious magic crystals created by Pegasus engineers.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
if (_root.hudInfoToggle == 3) {
_root.deselectAll();
} else {
_root.hudInfoToggle = 3;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
}
}
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = _root.resources[5][0] + ': ' + _root.resourceObsidian;
_root.feedText = 'Obsidian is a rare, extremely durable mineral found deep within the earth.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Forged: ' + _root.resourcePrismCycle;
_root.feedText = 'This is how much Prism you gain each day.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Excavation: ' + _root.resourceObsidianCycle;
_root.feedText = 'This is how much Obsidian is extracted each day.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Leadership Skill';
_root.feedText = 'Your population will generate an extra 5% bits per rank.\rDoes not affect Quarries, Libraries, etc.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Diplomacy Skill';
_root.feedText = 'Decreases Unhappiness by 2% per Rank.\rDecreases the negative Happiness effect of edicts by 3% per Rank.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Knowledge Skill';
_root.feedText = 'Tech Point Generation and Discovery Rate increased by 5% per Rank.\rDoes not affect Edicts.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Architecture Skill';
_root.feedText = 'Increases the how fast structures are built by 15% per Rank.\rIncreases the how quickly the Shield Generator works by 10% per Rank.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Discipline Skill';
_root.feedText = 'Specialists are 2% better at Scouting, Raiding and Preparing per Rank.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Ecology Skill';
_root.feedText = 'Decreases the negative eco-score from structures by 5%.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Tradecraft Skill';
_root.feedText = 'Increases the frequency at which Traders are available by 8% per Rank.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
}
instance of movieClip 3335 {
onClipEvent (rollOver) {
_root.feedText2 = 'Time Elapsed';
_root.feedText = 'This is the current day cycle of the game.';
}
onClipEvent (rollOut) {
_root.feedText = '';
_root.feedText2 = '';
}
onClipEvent (release) {
if (_root.hudInfoToggle == 1) {
_root.deselectAll();
_root.hudInfoToggle = 2;
_root.hudInfo.gotoAndStop(_root.hudInfoToggle);
} else {
_root.deselectAll();
}
}
}
frame 3 {
function refreshTechs() {
i = 0;
while (i < 100) {
loadMovie('', 'ayylmao' + i);
++i;
}
techHave = 0;
curW = 0;
curH = 0;
i = 0;
while (i < _root.newUpgradesOwned.length) {
++techHave;
var v3 = this.techTable.attachMovie('techBtn', 'ayylmao' + techHave, _root.extraDepthInitial + i);
if (_root.newUpgradesOwned[i][1] == 2) {
v3.gotoAndStop(2);
} else {
v3.gotoAndStop(1);
}
v3.ID = _root.newUpgradesOwned[i][0];
v3.name = _root.newUpgrades[v3.ID][3];
v3.descript = _root.newUpgrades[v3.ID][4];
v3.techCost = _root.newUpgrades[v3.ID][0];
v3._x = startX + WW * curW;
v3._y = startY + HH * curH;
v3._xscale = scaleBase;
v3._yscale = scaleBase;
v3.xbtn.onRelease = function () {
z = 0;
while (z < _root.newUpgradesOwned.length) {
if (this._parent.ID == _root.newUpgradesOwned[z][0]) {
_root.newUpgradesOwned.splice(z, 1);
break;
}
++z;
}
_root.discoveryProgress += 50;
loadMovie('', this._parent);
};
v3.techBtn.onRelease = function () {
if (_root.resources[2][1] >= this._parent.techCost) {
_root.researchTech(this._parent.ID);
_root.resources[2][1] -= this._parent.techCost;
_root.refreshResources();
this._parent.gotoAndStop(2);
}
};
++curW;
if (curW == maxW) {
curW = 0;
++curH;
}
++i;
}
}
var descript = '';
var techHave = 0;
var coolguy = false;
var scaleBase = 100;
var WW = 259.35 * (scaleBase / 100) + 4;
var HH = 56.1 * (scaleBase / 100) + 0;
var startX = 1;
var startY = 1;
var curW = 0;
var curH = 0;
var maxW = 3;
refreshTechs();
}
frame 3 {
_root.playsound('click.wav');
}
frame 4 {
p = 1;
while (p < 6) {
a = _root.hudInfo['re' + p];
a.gotoAndStop(1);
a.Selected = false;
if (_root.edictResidentialActive != 0 || _root.traitsOwned[15] == 1) {
a.Disabled = true;
if (_root.edictResidentialActive == (a._name.split(''))[2]) {
a.gotoAndStop(5);
} else {
a.gotoAndStop(3);
}
} else {
a.Disabled = false;
}
a.onEnterFrame = function () {
if (_root.edictResidentialActive != 0 || _root.traitsOwned[15] == 1) {
this.Disabled = true;
if (_root.edictResidentialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.Disabled = false;
if (this.Selected == false) {
this.gotoAndStop(1);
}
}
};
a.onPress = function () {
if (this.Disabled == false) {
this.gotoAndStop(4);
}
this.Selected = true;
};
a.onRelease = function () {
if (this.Disabled == false) {
_root.activateEdict((this._name.split(''))[2], 'Residential');
this.gotoAndStop(2);
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.edictResidentialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictResidentialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
_root.feedText2 = 'Activate Edict';
_root.feedText = 'Issues a command to your entire town that modifies the attributes of your town for 1 week.\rThis edict is free to activate, but cannot be cancelled or changed until it expires.';
this.gotoAndStop(2);
}
this.Selected = true;
};
a.onRollOut = function () {
if (_root.edictResidentialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictResidentialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
_root.feedText2 = '';
_root.feedText = '';
this.Selected = false;
};
a.onReleaseOutside = function () {
if (_root.edictResidentialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictResidentialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
++p;
}
p = 0;
while (p < 6) {
a = _root.hudInfo['le' + p];
a.gotoAndStop(1);
a.Selected = false;
if (_root.edictLibraryActive != 0 || _root.traitsOwned[15] == 1) {
a.Disabled = true;
if (_root.edictLibraryActive == (a._name.split(''))[2]) {
a.gotoAndStop(5);
} else {
a.gotoAndStop(3);
}
} else {
a.Disabled = false;
}
a.onEnterFrame = function () {
if (_root.edictLibraryActive != 0 || _root.traitsOwned[15] == 1) {
this.Disabled = true;
if (_root.edictLibraryActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.Disabled = false;
if (this.Selected == false) {
this.gotoAndStop(1);
}
}
};
a.onPress = function () {
if (this.Disabled == false) {
this.gotoAndStop(4);
}
this.Selected = true;
};
a.onRelease = function () {
if (this.Disabled == false) {
_root.activateEdict((this._name.split(''))[2], 'Library');
this.gotoAndStop(2);
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.edictLibraryActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictLibraryActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
_root.feedText2 = 'Activate Edict';
_root.feedText = 'Issues a command to your entire town that modifies the attributes of your town for 1 week.\rThis edict is free to activate, but cannot be cancelled or changed until it expires.';
this.gotoAndStop(2);
}
this.Selected = true;
};
a.onRollOut = function () {
if (_root.edictLibraryActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictLibraryActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
_root.feedText2 = '';
_root.feedText = '';
this.Selected = false;
};
a.onReleaseOutside = function () {
if (_root.edictLibraryActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictLibraryActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
++p;
}
p = 0;
while (p < 6) {
a = _root.hudInfo['ie' + p];
a.gotoAndStop(1);
a.Selected = false;
if (_root.edictIndustrialActive != 0 || _root.traitsOwned[15] == 1) {
a.Disabled = true;
if (_root.edictIndustrialActive == (a._name.split(''))[2]) {
a.gotoAndStop(5);
} else {
a.gotoAndStop(3);
}
} else {
a.Disabled = false;
}
a.onEnterFrame = function () {
if (_root.edictIndustrialActive != 0 || _root.traitsOwned[15] == 1) {
this.Disabled = true;
if (_root.edictIndustrialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.Disabled = false;
if (this.Selected == false) {
this.gotoAndStop(1);
}
}
};
a.onPress = function () {
if (this.Disabled == false) {
this.gotoAndStop(4);
}
this.Selected = true;
};
a.onRelease = function () {
if (this.Disabled == false) {
_root.activateEdict((this._name.split(''))[2], 'Industrial');
this.gotoAndStop(2);
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.edictIndustrialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictIndustrialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
_root.feedText2 = 'Activate Edict';
_root.feedText = 'Issues a command to your entire town that modifies the attributes of your town for 1 week.\rThis edict is free to activate, but cannot be cancelled or changed until it expires.';
this.gotoAndStop(2);
}
this.Selected = true;
};
a.onRollOut = function () {
if (_root.edictIndustrialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictIndustrialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
_root.feedText2 = '';
_root.feedText = '';
this.Selected = false;
};
a.onReleaseOutside = function () {
if (_root.edictIndustrialActive != 0 || _root.traitsOwned[15] == 1) {
if (_root.edictIndustrialActive == (this._name.split(''))[2]) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(3);
}
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
++p;
}
}
frame 4 {
_root.playsound('click.wav');
}
instance of movieClip 1608 {
onClipEvent (load) {
if (_root.cache.data.PlayerDataOptions[7] == false) {
this.gotoAndStop(1);
} else {
this.gotoAndStop(2);
}
}
onClipEvent (release) {
if (_root.cache.data.PlayerDataOptions[7] == false) {
_root.renewEdicts = true;
_root.cache.data.PlayerDataOptions[7] = true;
this.gotoAndStop(2);
} else {
_root.renewEdicts = false;
_root.cache.data.PlayerDataOptions[7] = false;
this.gotoAndStop(1);
}
}
}
frame 5 {
function refreshEncounters() {
gumbo = 0;
while (gumbo < 20) {
wildMap['encounter' + String(gumbo)].removeMovieClip();
++gumbo;
}
_root.encCurrent = _root.currentEncounters.length;
gumbo = 0;
while (gumbo < _root.currentEncounters.length) {
if (_root.currentEncounters[gumbo][0] != 0 && _root.currentEncounters[gumbo][0] != NaN && _root.currentEncounters[gumbo][0] != undefined) {
wildTile = wildMap.attachMovie('wildEncounter', 'encounter' + String(gumbo), _root.extraDepthInitial + gumbo);
angle = 6.283185307179586 / _root.currentEncounters.length;
wildTile._x = 475 + Math.sin(angle * gumbo) * 300;
wildTile._y = +(Math.cos(angle * gumbo) * 150);
wildTile.ID = gumbo;
wildTile.Name = _root.currentEncounters[gumbo][0];
wildTile.Descript = _root.currentEncounters[gumbo][1];
wildTile.Cooldown = 10;
wildTile.Strength = int(_root.currentEncounters[gumbo][2]);
wildTile.MinStr = int(_root.currentEncounters[gumbo][7]);
wildTile.Aggressive = _root.currentEncounters[gumbo][6];
wildTile.Border.gotoAndStop(wildTile.Aggressive);
wildTile.IMG = _root.currentEncounters[gumbo][5];
wildTile.Image.gotoAndStop(wildTile.IMG);
wildTile.Image.gotoAndStop(wildTile.IMG);
wildTile.forceUsed = wildTile.Strength;
wildTile.Chance = 0;
wildTile.successChance = '0%';
ChangeForce(wildTile, 'MAX');
_root.encCurrent = _root.currentEncounters.length;
}
++gumbo;
}
}
function toggleEncounters(UID) {
gumbo = 0;
while (gumbo < _root.currentEncounters.length) {
if (wildMap['encounter' + String(gumbo)] != UID) {
wildMap['encounter' + String(gumbo)].gotoAndStop(1);
}
++gumbo;
}
if (wildSelected != NaN) {
wildSelected.swapDepths(dummyTile);
}
if (UID != NaN) {
UID.nextFrame();
wildSelected = UID;
UID.swapDepths(dummyTile);
} else {
wildSelected = NaN;
}
if (_root.DefensePoints < UID.forceUsed) {
UID.Attack.gotoAndStop(2);
} else {
if (UID.Aggressive == 'aggro') {
UID.Attack.gotoAndStop(1);
} else {
UID.Attack.gotoAndStop(3);
}
}
}
function ChangeForce(UID, Amount) {
if (Amount == 1 || Amount == -1 || Amount == 0) {
UID.forceUsed += 1 * Amount;
} else {
if (Amount == '25%') {
UID.forceUsed = int(UID.Strength / 4);
}
if (Amount == '50%') {
UID.forceUsed = int(UID.Strength / 2);
}
if (Amount == '100%') {
UID.forceUsed = int(UID.Strength / 1);
}
if (Amount == 'MAX') {
UID.forceUsed = int(_root.DefensePoints);
}
}
if (UID.forceUsed > UID.Strength) {
UID.forceUsed = int(UID.Strength);
}
if (UID.forceUsed < UID.Strength / 10) {
UID.forceUsed = int(UID.Strength / 10);
}
UID.Chance = 100 * (UID.forceUsed / UID.Strength);
UID.successChance = int(UID.Chance) + '%';
if (_root.DefensePoints < UID.forceUsed) {
UID.Attack.gotoAndStop(2);
} else {
if (UID.Aggressive == 'aggro') {
UID.Attack.gotoAndStop(1);
} else {
UID.Attack.gotoAndStop(3);
}
}
}
function Attack(UID) {
if (_root.DefensePoints < UID.forceUsed) {
} else {
_root.DefensePoints -= UID.forceUsed;
_root.drDisplay();
x = _root.randRange(0, 100);
underdog = 0;
if (traitsOwned[25] == 1) {
if (x >= UID.Chance) {
x = _root.randRange(0, 100);
underdog = 1;
}
}
if (x <= UID.Chance) {
eventpop.gotoAndStop(2);
eventpop.Token.Image.gotoAndStop(UID.IMG);
if (UID.Aggressive == 'aggro') {
eventpop.Descript = 'You\'ve sucessfully defeated the ' + UID.Name + '.';
if (underdog == 1) {
eventpop.Descript += '\rYou nearly lost, but they underestimated you as the Underdog!';
}
if (UID.IMG == 'riot') {
eventpop.Descript += '\rYou feel a cold chill down your back as you think about what you\'ve done.';
} else {
eventpop.Descript += '\rWill you peacefully negotiate with them or just take their supplies?';
}
eventpop.diplomat.gotoAndStop(UID.IMG);
} else {
eventpop.diplomat.gotoAndStop('end');
if (UID.IMG == 'traveler') {
eventpop.Descript = 'You\'ve sucessfully helped the Merchants safely get home.';
rollem = _root.randRange(1, 3);
if (rollem == 1) {
rollem2 = int(_root.randRange(10, 20) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe merchants thank you for your help and offer a small treasure reward.';
eventpop.Descript += '\rGained +' + rollem2 + ' Bits.';
_root.resources[0][1] += rollem2;
}
if (rollem == 2) {
rollem2 = int(_root.randRange(3, 5) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe merchants thank you for your help and offer a small treasure reward.';
eventpop.Descript += '\rGained +' + rollem2 + ' Gems.';
_root.resources[3][1] += rollem2;
}
if (rollem == 3) {
rollem2 = int(_root.randRange(10, 20) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe merchants offer you a magical charm to show their gratitude.';
eventpop.Descript += '\rRestored ' + rollem2 + ' Mana.';
_root.mana += rollem2;
}
}
if (UID.IMG == 'bear') {
eventpop.Descript = 'You\'ve sucessfully scared the bear off.';
rollem = _root.randRange(1, 3);
if (rollem == 1) {
rollem2 = int(_root.randRange(10, 20) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rSome travelers offer a small reward for getting rid of that menace.';
eventpop.Descript += '\rGained +' + rollem2 + ' Bits.';
_root.resources[0][1] += rollem2;
}
if (rollem == 2) {
rollem2 = int(_root.randRange(3, 5) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe Bear was hoarding some treasure, lucky you!';
eventpop.Descript += '\rGained +' + rollem2 + ' Gems.';
_root.resources[3][1] += rollem2;
}
if (rollem == 3) {
rollem2 = int(_root.randRange(2, 3) * (1 + _root.clockTime / 120));
eventpop.Descript += '\rYou learned a lot from fighting such a beast!';
eventpop.Descript += '\rDefense Rating permanently increased by +' + rollem2 + '.';
_root.DefenseRating += rollem2;
}
}
if (UID.IMG == 'townbesieged') {
eventpop.Descript = 'You\'ve sucessfully helped the Town avoid being razed further.';
rollem = _root.randRange(1, 6);
if (rollem == 1) {
rollem2 = int(_root.randRange(30, 60) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe Town offers a payment for helping them fend off the attackers.';
eventpop.Descript += '\rGained +' + rollem2 + ' Bits.';
_root.resources[0][1] += rollem2;
}
if (rollem == 2) {
eventpop.Descript += '\rThe Town is grateful, but regrettably has nothing to offer as payment.';
}
if (rollem == 3) {
rollem2 = int(_root.randRange(20, 30) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThey Town held a small party to celebrate their new hero: you!';
eventpop.Descript += '\rGained ' + rollem2 + ' Happiness (Excess turned to Mana).';
_root.happiness += rollem2;
}
if (rollem == 4) {
rollem2 = int(_root.randRange(5, 10) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe Town had nothing to offer you as a reward, but the bandits had treasure.';
eventpop.Descript += '\rGained +' + rollem2 + ' Gems.';
_root.resources[3][1] += rollem2;
}
if (rollem == 5) {
eventpop.Descript += '\rHoaxed! It was just a distraction - there were no bandits at all!';
}
if (rollem == 6) {
rollem2 = int(_root.randRange(10, 20) * (1 + _root.clockTime / 120) * (UID.Strength / 15));
eventpop.Descript += '\rThe Town didn\'t have much left, but they scraped together all they could to reward you';
eventpop.Descript += '\rGained +' + rollem2 + ' Bits.';
_root.resources[0][1] += rollem2;
}
}
}
destroyEncounter(UID);
} else {
eventpop.gotoAndStop(3);
eventpop.Token.Image.gotoAndStop(UID.IMG);
eventpop.Token.Border.gotoAndStop(UID.Aggressive);
eventpop.Descript = 'Your forces weren\'t enough to handle the encounter.';
}
toggleEncounters(NaN);
_root.writeData();
}
}
function diplomacy(Method, Type) {
if (Type == 'bandits') {
if (Method == 0) {
rollem = _root.randRange(1, 20) + _root.statCharisma;
if (rollem > 20) {
eventpop.Descript = 'The Bandits found your words to be very convincing and logical.\r-10% aggressive encounter frequency.';
_root.encRateAggro -= 0.1;
} else {
if (rollem > 15) {
eventpop.Descript = 'The Bandits found your argument to be fairly rational.\r-5% aggressive encounter frequency.';
_root.encRateAggro -= 0.05;
} else {
eventpop.Descript = 'The Bandits listened but were ultimately unconvinced.\rAggressive encounter frequency unchanged.';
}
}
}
if (Method == 1) {
rollem = _root.randRange(10, 20) + _root.statInsight;
eventpop.Descript = 'You had the Bandits help restore some of your defense before sending them home.\rRestored ' + rollem + ' Defense Points.';
_root.DefensePoints += rollem;
}
if (Method == 2) {
rollem = _root.randRange(1, 20) + _root.statCharisma;
rollem2 = int(_root.randRange(3, 6) * (1 + _root.clockTime / 120));
if (rollem > 20) {
eventpop.Descript = 'If it means you won\'t hunt them down later, they are glad to share some treasure...\rGained +' + rollem2 + ' Gems.';
_root.resources[3][1] += rollem2;
} else {
if (rollem > 15) {
eventpop.Descript = 'Reluctantly, the Bandits decide to give up some of their treasure.\rGained +' + int(rollem2 / 2) + ' Gems.';
_root.resources[3][1] += int(rollem2 / 2);
} else {
eventpop.Descript = 'Annoyed by your begging, they leave in a disgruntled fashion.\r+10% aggressive encounter frequency.';
_root.encRateAggro += 0.1;
}
}
}
if (Method == 3) {
rollem = _root.randRange(1, 20) + _root.statWillpower;
if (rollem > 25) {
eventpop.Descript = 'The Bandits were legitimately shaken by your threats.\r-15% aggressive encounter frequency.';
_root.encRateAggro -= 0.15;
} else {
if (rollem > 20) {
eventpop.Descript = 'You made it quite clear: you mean business.\r-10% aggressive encounter frequency.';
_root.encRateAggro -= 0.1;
} else {
if (rollem > 15) {
eventpop.Descript = 'The Bandits listened but were ultimately unintimdated.\rAggressive encounter frequency unchanged.';
} else {
eventpop.Descript = 'The Bandits laughed at your weak attempt to scare them off.\r+10% aggressive encounter frequency.';
_root.encRateAggro += 0.1;
}
}
}
}
if (Method == 4) {
rollem = int(_root.randRange(50, 100) * (1 + _root.clockTime / 120));
rollem2 = int(_root.randRange(5, 10) * (1 + _root.clockTime / 120));
eventpop.Descript = 'You take as many supplies as you can get without pushing your luck.\rGained +' + rollem + ' Food and +' + rollem2 + ' Bits.';
_root.resources[1][1] += rollem;
_root.resources[0][1] += rollem2;
}
if (Method == 5) {
rollem = int(_root.randRange(150, 300) * (1 + _root.clockTime / 120));
rollem2 = int(_root.randRange(50, 100) * (1 + _root.clockTime / 120));
eventpop.Descript = 'You take everything they\'ve got. They don\'t seem too happy about it.\rGained +' + rollem + ' Food and +' + rollem2 + ' Bits.' + '+20% aggressive encounter frequency.';
_root.resources[1][1] += rollem;
_root.resources[0][1] += rollem2;
_root.encRateAggro += 0.2;
}
}
if (Type == 'riot') {
if (Method == 0) {
eventpop.Descript = 'You carry on.';
}
}
if (Type == 'natives') {
if (Method == 0) {
rollem = _root.randRange(1, 20) + _root.statCharisma;
if (rollem > 20) {
eventpop.Descript = 'The Natives found your words to be very convincing and logical.\r-10% aggressive encounter frequency.';
_root.encRateAggro -= 0.1;
} else {
if (rollem > 15) {
eventpop.Descript = 'The Natives found your argument to be fairly rational.\r-5% aggressive encounter frequency.';
_root.encRateAggro -= 0.05;
} else {
eventpop.Descript = 'The Natives listened but were ultimately unconvinced.\rAggressive encounter frequency unchanged.';
}
}
}
if (Method == 1) {
rollem = _root.randRange(10, 20) + _root.statInsight;
if (rollem > 25) {
rollem2 = _root.randRange(1, 2) * 5;
eventpop.Descript = 'The Natives were pleased and offered some knowledge of their own\rPermanently increased Max Mana by +' + rollem2 + '.';
_root.manaMax += rollem2;
} else {
if (rollem > 20) {
rollem2 = _root.randRange(3, 9);
eventpop.Descript = 'The Natives were pleased and offered some knowledge of their own\rPermanently increased Defense Rating by +' + rollem2 + '.';
_root.DefenseRating += rollem2;
} else {
if (rollem > 15) {
rollem2 = _root.randRange(15, 30);
eventpop.Descript = 'The Natives did not learn much, but they appreciated the attempt and performed an ancient ritual to honor you.\rGained +' + rollem2 + ' Mana points.';
_root.mana += rollem2;
} else {
eventpop.Descript = 'The Natives learned nothing, you must be a bad teacher! They\'ve become angered.\r+15% aggressive encounter frequency.';
_root.encRateAggro += 0.15;
}
}
}
}
if (Method == 2) {
rollem = _root.randRange(1, 20) + _root.statWillpower;
if (rollem > 25) {
eventpop.Descript = 'The Natives are indeed fearful of your modern ways!\r-15% aggressive encounter frequency.';
_root.encRateAggro -= 0.15;
} else {
if (rollem > 20) {
eventpop.Descript = 'You made it quite clear: you mean business.\r-10% aggressive encounter frequency.';
_root.encRateAggro -= 0.1;
} else {
if (rollem > 15) {
eventpop.Descript = 'The Natives laughed as they ran back into the wilderness.\rAggressive encounter frequency unchanged.';
} else {
eventpop.Descript = 'The Natives took offense to your pathetic scare tactics. They\'ll be back.\r+15% aggressive encounter frequency.';
_root.encRateAggro += 0.15;
}
}
}
}
if (Method == 3) {
rollem = int(_root.randRange(5, 10) * (1 + _root.clockTime / 120));
rollem2 = int(_root.randRange(30, 50) * (1 + _root.clockTime / 120));
eventpop.Descript = 'You go back to the Native\'s homes and take everything.\rGained +' + rollem + ' Gems and +' + rollem2 + ' Bits.' + '\n' + '+20% aggressive encounter frequency.';
_root.resources[1][1] += rollem;
_root.resources[0][1] += rollem2;
_root.encRateAggro += 0.2;
}
}
if (Type == 'changelings') {
if (Method == 0) {
rollem = _root.randRange(1, 20) + _root.statWillpower;
if (rollem > 25) {
eventpop.Descript = 'The Changelings were legitimately shaken by your threats.\r-15% aggressive encounter frequency.';
_root.encRateAggro -= 0.15;
} else {
if (rollem > 20) {
eventpop.Descript = 'You made it quite clear: you mean business.\r-10% aggressive encounter frequency.';
_root.encRateAggro -= 0.1;
} else {
if (rollem > 15) {
eventpop.Descript = 'The Changelings listened but were ultimately unintimdated.\rAggressive encounter frequency unchanged.';
} else {
eventpop.Descript = 'The Changelings laughed at your weak attempt to scare them off.\r+10% aggressive encounter frequency.';
_root.encRateAggro += 0.1;
}
}
}
}
if (Method == 1) {
rollem = _root.randRange(1, 20) + _root.statWillpower;
if (rollem > 20) {
eventpop.Descript = 'It didn\'t take long to get these weak-minded Changelings to spit out some valuable info.\rRevealed a Neutral Encounter.';
_root.newNormalEncounter();
} else {
if (rollem > 15) {
eventpop.Descript = 'After a few hours of interrogation you decided to give up. The Changelings wouldn\'t talk.\rNo new information given,';
} else {
eventpop.Descript = 'After trying to get some information out of them, the Changelings lead you to another encounter. Unfortunately it was a trick!\rRevealed an Aggressive Encounter.';
_root.newAggroEncounter();
}
}
}
if (Method == 2) {
rollem = _root.randRange(1, 20) + _root.statWillpower;
rollem2 = int(_root.randRange(3, 6) * (1 + _root.clockTime / 120));
Tempy = 0;
if (rollem > 20) {
xxx = 0;
while (xxx < _root.currentEncounters.length) {
if (_root.currentEncounters[xxx][0] != NaN && _root.currentEncounters[xxx][0] != undefined && _root.currentEncounters[xxx][6] == 'aggro') {
_root.currentEncounters[xxx][2] = int(_root.currentEncounters[xxx][2] / 2);
Tempy = 1;
break;
}
++x;
}
if (Tempy == 1) {
eventpop.Descript = 'The Changelings agree to betray their own by your convincing words.\rThey have weakened an aggressive encounter.';
} else {
eventpop.Descript = 'The Changelings were unable to find another encounter to actually betray...';
}
} else {
if (rollem > 15) {
eventpop.Descript = 'The Changelings are unconvinced they should take your side.\rNothing happens.';
} else {
xxx = 0;
while (xxx < _root.currentEncounters.length) {
if (_root.currentEncounters[xxx][0] != NaN && _root.currentEncounters[xxx][0] != undefined && _root.currentEncounters[xxx][6] == 'aggro') {
_root.currentEncounters[xxx][2] = int(_root.currentEncounters[xxx][2] * 1.5);
Tempy = 1;
break;
}
++x;
}
if (Tempy == 1) {
eventpop.Descript = 'The Changelings find your idea of betrayal to be pathetic.\rThey have banded together with another encounter.';
} else {
eventpop.Descript = 'The Changelings were unable to find another encounter to actually betray...';
}
}
}
}
if (Method == 3) {
eventpop.Descript = 'Right. No point in negotiating with these cunning bug bastards.';
}
}
_root.writeData();
_root.drDisplay();
_root.refreshResources();
refreshEncounters();
eventpop.diplomat.gotoAndStop('end');
}
function destroyEncounter(UID) {
_root.currentEncounters.splice(UID.ID, 1);
UID.removeMovieClip();
refreshEncounters();
}
var dummyTile = wildMap.attachMovie('specialistIcon', 'dummy', _root.extraDepthInitial + 500);
dummyTile._x = 2000;
dummyTile._y = 2000;
var wildSelected = NaN;
var rollem = 0;
var rollem2 = 0;
refreshEncounters();
}
frame 5 {
_root.playsound('click.wav');
}
frame 5 {
_root.onWildMap = true;
}
frame 6 {
_root.playsound('click.wav');
}
frame 6 {
var dummyTile = specialistTable.attachMovie('specialistIcon', 'dummy', _root.extraDepthInitial + 50);
dummyTile._x = 2000;
dummyTile._y = 2000;
_root.specialistSelected = -1;
wumbo = 0;
while (wumbo < _root.specialistsTotal) {
var specialistTile = specialistTable.attachMovie('specialistIcon', 'specialist' + String(wumbo), _root.extraDepthInitial + wumbo);
angle = 6.283185307179586 / _root.specialistsTotal;
specialistTile.specialistX = -435 + Math.sin(angle * wumbo) * 50;
specialistTile.specialistY = 20 + Math.cos(angle * wumbo) * 40;
specialistTile._xscale = 50;
specialistTile._yscale = 50;
specialistTile._x = specialistTile.specialistX;
specialistTile._y = specialistTile.specialistY;
specialistTile.nameRank = _root.specialistsStats[wumbo][0] + '\n' + 'Rank ' + _root.specialistsStats[wumbo][1];
specialistTile.Rank = '' + _root.specialistsStats[wumbo][1];
specialistTile.ID = _root.specialistsStats[wumbo][5];
specialistTile.IMG.gotoAndStop(specialistTile.ID);
j = 1;
while (j < 5) {
_root.hudInfo['snap' + j + 'a'].Slotted = false;
_root.hudInfo['snap' + j + 'b'].Slotted = false;
_root.hudInfo['snap' + j + 'c'].Slotted = false;
_root.hudInfo['snap' + j + 'd'].Slotted = false;
++j;
}
var checkHit = false;
j = 1;
while (j < 5) {
if (_root.specialistsStats[wumbo][2] == String('snap' + j + 'a')) {
specialistTile._x = _root.hudInfo['snap' + j + 'a']._x;
specialistTile._y = _root.hudInfo['snap' + j + 'a']._y - 80;
_root.hudInfo['snap' + j + 'a'].Slotted = true;
break;
} else {
if (_root.specialistsStats[wumbo][2] == String('snap' + j + 'b')) {
specialistTile._x = _root.hudInfo['snap' + j + 'b']._x;
specialistTile._y = _root.hudInfo['snap' + j + 'b']._y - 80;
_root.hudInfo['snap' + j + 'b'].Slotted = true;
break;
} else {
if (_root.specialistsStats[wumbo][2] == String('snap' + j + 'c')) {
specialistTile._x = _root.hudInfo['snap' + j + 'c']._x;
specialistTile._y = _root.hudInfo['snap' + j + 'c']._y - 80;
_root.hudInfo['snap' + j + 'c'].Slotted = true;
break;
} else {
if (_root.specialistsStats[wumbo][2] == String('snap' + j + 'd')) {
specialistTile._x = _root.hudInfo['snap' + j + 'd']._x;
specialistTile._y = _root.hudInfo['snap' + j + 'd']._y - 80;
_root.hudInfo['snap' + j + 'd'].Slotted = true;
break;
}
}
}
}
++j;
}
specialistTile.onPress = function () {
startDrag(this, true);
this.swapDepths(dummyTile);
j = 0;
while (j < 5) {
_root.hudInfo.specialistTable['specialist' + j].Highlight._alpha = 0;
++j;
}
this.Highlight._alpha = 100;
_root.specialistSelected = int((this._name.split(''))[10]);
_root.RefreshSpecalistSelected();
j = 1;
while (j < 5) {
if (_root.specialistsStats[int((this._name.split(''))[10])][2] == String('snap' + j + 'a')) {
_root.hudInfo['snap' + j + 'a'].Slotted = false;
}
if (_root.specialistsStats[int((this._name.split(''))[10])][2] == String('snap' + j + 'b')) {
_root.hudInfo['snap' + j + 'b'].Slotted = false;
}
if (_root.specialistsStats[int((this._name.split(''))[10])][2] == String('snap' + j + 'c')) {
_root.hudInfo['snap' + j + 'c'].Slotted = false;
}
if (_root.specialistsStats[int((this._name.split(''))[10])][2] == String('snap' + j + 'd')) {
_root.hudInfo['snap' + j + 'd'].Slotted = false;
}
++j;
}
};
specialistTile.onRelease = function () {
checkHit = false;
this.swapDepths(dummyTile);
j = 1;
while (j < 5) {
if (_root.hudInfo['snap' + j + 'a'].hitTest(_root._xmouse, _root._ymouse, true)) {
if (_root.hudInfo['snap' + j + 'a'].Slotted == false) {
this._x = _root.hudInfo['snap' + j + 'a']._x;
this._y = _root.hudInfo['snap' + j + 'a']._y - 80;
_root.specialistsStats[int((this._name.split(''))[10])][2] = String('snap' + j + 'a');
_root.hudInfo['snap' + j + 'a'].Slotted = true;
checkHit = true;
break;
}
} else {
if (_root.hudInfo['snap' + j + 'b'].hitTest(_root._xmouse, _root._ymouse, true)) {
if (_root.hudInfo['snap' + j + 'b'].Slotted == false) {
this._x = _root.hudInfo['snap' + j + 'b']._x;
this._y = _root.hudInfo['snap' + j + 'b']._y - 80;
_root.specialistsStats[int((this._name.split(''))[10])][2] = String('snap' + j + 'b');
_root.hudInfo['snap' + j + 'b'].Slotted = true;
checkHit = true;
break;
}
} else {
if (_root.hudInfo['snap' + j + 'c'].hitTest(_root._xmouse, _root._ymouse, true)) {
if (_root.hudInfo['snap' + j + 'c'].Slotted == false) {
this._x = _root.hudInfo['snap' + j + 'c']._x;
this._y = _root.hudInfo['snap' + j + 'c']._y - 80;
_root.specialistsStats[int((this._name.split(''))[10])][2] = String('snap' + j + 'c');
_root.hudInfo['snap' + j + 'c'].Slotted = true;
checkHit = true;
break;
}
} else {
if (_root.hudInfo['snap' + j + 'd'].hitTest(_root._xmouse, _root._ymouse, true)) {
if (_root.hudInfo['snap' + j + 'd'].Slotted == false) {
this._x = _root.hudInfo['snap' + j + 'd']._x;
this._y = _root.hudInfo['snap' + j + 'd']._y - 80;
_root.specialistsStats[int((this._name.split(''))[10])][2] = String('snap' + j + 'd');
_root.hudInfo['snap' + j + 'd'].Slotted = true;
checkHit = true;
break;
}
}
}
}
}
++j;
}
if (checkHit == false) {
_root.specialistsStats[int((this._name.split(''))[10])][2] = '';
this._x = this.specialistX;
this._y = this.specialistY;
}
_root.CheckSpecialists();
_root.RefreshSpecalistSelected();
stopDrag();
};
++wumbo;
}
_root.CheckSpecialists();
}
frame 7 {
_root.playsound('click.wav');
}
frame 7 {
if (_root.UnlocksGallery[0][1] == 1) {
this.u1.Locked._alpha = 0;
this.u1.onRelease = function () {
_root.MiniScene = 2;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[1][1] == 1) {
this.u2.Locked._alpha = 0;
this.u2.onRelease = function () {
_root.MiniScene = 3;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[2][1] == 1) {
this.u3.Locked._alpha = 0;
this.u3.onRelease = function () {
_root.MiniScene = 4;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[3][1] == 1) {
this.u4.Locked._alpha = 0;
this.u4.onRelease = function () {
_root.MiniScene = 5;
_root.unlockpop.gotoAndStop(5);
};
}
if (_root.UnlocksGallery[4][1] == 1) {
this.u5.Locked._alpha = 0;
this.u5.onRelease = function () {
_root.MiniScene = 7;
_root.unlockpop.gotoAndStop(5);
};
}
var counting = 0;
if (_root.UnlocksGeneric[1][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[2][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[3][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[8][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[9][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[10][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[11][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[12][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[13][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[14][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[15][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[16][2] == 1) {
++counting;
}
var traitsunlocked = counting + ' out of 12';
counting = 1;
if (_root.UnlocksGeneric[5][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[6][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[7][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[18][2] == 1) {
++counting;
}
if (_root.UnlocksGeneric[20][2] == 1) {
++counting;
}
var charactersunlocked = counting + ' out of 6';
counting = 0;
i = 0;
while (i < _root.optionsTableLocked.length - 1) {
if (_root.optionsTableLocked[i][2] == 1) {
++counting;
}
++i;
}
var optionsunlocked = counting + ' out of 3';
}
frame 9 {
gotoAndStop(3);
}
frame 14 {
_root.playsound('click.wav');
}
frame 15 {
_root.playsound('click.wav');
}
frame 16 {
if (_root.REchoice2 == '') {
choiceBtn2.unloadMovie();
}
if (_root.REchoice3 == '') {
choiceBtn3.unloadMovie();
}
if (_root.REchoice4 == '') {
choiceBtn4.unloadMovie();
}
}
instance of movieClip 1574 {
onClipEvent (release) {
_root.eventAction1(_root.CurrentEvent, 1);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn2 of movieClip 1574 {
onClipEvent (release) {
_root.eventAction1(_root.CurrentEvent, 2);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn3 of movieClip 1574 {
onClipEvent (release) {
_root.eventAction1(_root.CurrentEvent, 3);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
instance choiceBtn4 of movieClip 1574 {
onClipEvent (release) {
_root.eventAction1(_root.CurrentEvent, 4);
}
onClipEvent (load) {
this.gotoAndStop(1);
}
onClipEvent (rollOver) {
this.gotoAndStop(2);
}
onClipEvent (rollOut) {
this.gotoAndStop(1);
}
onClipEvent (releaseOutside) {
this.gotoAndStop(1);
}
}
frame 17 {
gotoAndStop('randomEvent');
}
frame 20 {
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
_root.hudInfo.underlay.useHandCursor = false;
if (_root.pauseDuringMeet == true && _root.gamePaused != true) {
_root.pauseGame();
}
var scheme = 0;
if (_root.CurrentAdviser == 0) {
scheme = 0;
}
if (_root.CurrentAdviser == 1) {
scheme = 1;
}
if (_root.CurrentAdviser == 2) {
scheme = 2;
}
if (_root.CurrentAdviser == 6) {
scheme = 6;
}
_root.hudInfo.gardenScene.adviser.head.gotoAndStop(scheme + 1);
_root.hudInfo.gardenScene.adviser.hairback.gotoAndStop(scheme + 1);
_root.hudInfo.gardenScene.adviser.hairback2.gotoAndStop(scheme + 1);
_root.hudInfo.gardenScene.adviser.legs1.gotoAndStop(scheme + 1);
_root.hudInfo.gardenScene.adviser.legs2.gotoAndStop(scheme + 1);
_root.hudInfo.gardenScene.adviser.tail.gotoAndStop(scheme + 1);
changeColor('_root.hudInfo.gardenScene.adviser.neck.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.gardenScene.adviser.neck.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.gardenScene.adviser.neck.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.gardenScene.adviser.head.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.gardenScene.adviser.head.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.gardenScene.adviser.head.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear1.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear1.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear1.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear2.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear2.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.gardenScene.adviser.head.ear2.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.gardenScene.adviser.head.horn.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.gardenScene.adviser.head.horn.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.gardenScene.adviser.head.horn.shade', _root.charColor[scheme][2]);
}
frame 21 {
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
_root.hudInfo.underlay.useHandCursor = false;
if (_root.pauseDuringMeet == true && _root.gamePaused != true) {
_root.pauseGame();
}
var scheme = 0;
_root.hudInfo.tavernScene.adviser.head.gotoAndStop(scheme + 1);
_root.hudInfo.tavernScene.adviser.hairback.gotoAndStop(scheme + 1);
_root.hudInfo.tavernScene.adviser.hairback2.gotoAndStop(scheme + 1);
_root.hudInfo.tavernScene.adviser.legs1.gotoAndStop(scheme + 1);
_root.hudInfo.tavernScene.adviser.legs2.gotoAndStop(scheme + 1);
_root.hudInfo.tavernScene.adviser.tail.gotoAndStop(scheme + 1);
changeColor('_root.hudInfo.tavernScene.adviser.neck.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.tavernScene.adviser.neck.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.tavernScene.adviser.neck.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.tavernScene.adviser.head.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.tavernScene.adviser.head.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.tavernScene.adviser.head.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear1.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear1.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear1.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear2.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear2.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.tavernScene.adviser.head.ear2.shade', _root.charColor[scheme][2]);
changeColor('_root.hudInfo.tavernScene.adviser.head.horn.outline', _root.charColor[scheme][0]);
changeColor('_root.hudInfo.tavernScene.adviser.head.horn.fill', _root.charColor[scheme][1]);
changeColor('_root.hudInfo.tavernScene.adviser.head.horn.shade', _root.charColor[scheme][2]);
}
frame 29 {
if (_root.gamePaused != true) {
_root.pauseGame();
}
}
frame 30 {
if (_root.gamePaused != true) {
_root.pauseGame();
}
}
frame 35 {
_root.hudInfo.underlay.useHandCursor = false;
if (_root.gamePaused != true) {
_root.pauseGame();
}
_root.feedText = '';
_root.feedText2 = '';
}
frame 36 {
p = 0;
while (p < 4) {
var perkTile = perkTable.attachMovie('perkBtn' + _root.perkChoice[p], 'perk' + _root.perkChoice[p], _root.extraDepthInitial + p);
if (p == 0 || p == 2) {
perkTile.perkX = -185;
} else {
perkTile.perkX = 190;
}
if (p == 0 || p == 1) {
perkTile.perkY = 0;
} else {
perkTile.perkY = 100;
}
a = perkTile;
a.Selected = false;
a._x = perkTile.perkX;
a._y = perkTile.perkY;
if (_root.perksOwned[_root.perkChoice[p]] == 1) {
a.gotoAndStop(5);
} else {
a.gotoAndStop(1);
}
a.onPress = function () {
this.gotoAndStop(4);
this.Selected = true;
};
if (_root.perkChoice[p] < 10) {
a.onRelease = function () {
if (_root.perksOwned[(this._name.split(''))[4]] == 1) {
_root.perksOwned[(this._name.split(''))[4]] = 0;
this.gotoAndStop(2);
++_root.perksLeft;
} else {
if (_root.perksLeft > 0) {
_root.perksOwned[(this._name.split(''))[4]] = 1;
this.gotoAndStop(5);
--_root.perksLeft;
} else {
this.gotoAndStop(2);
}
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.perksOwned[(this._name.split(''))[4]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(2);
}
this.Selected = true;
};
a.onRollOut = function () {
if (_root.perksOwned[(this._name.split(''))[4]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
a.onReleaseOutside = function () {
if (_root.perksOwned[(this._name.split(''))[4]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
} else {
a.onRelease = function () {
if (_root.perksOwned['1' + (this._name.split(''))[5]] == 1) {
_root.perksOwned['1' + (this._name.split(''))[5]] = 0;
this.gotoAndStop(2);
++_root.perksLeft;
} else {
if (_root.perksLeft > 0) {
_root.perksOwned['1' + (this._name.split(''))[5]] = 1;
this.gotoAndStop(5);
--_root.perksLeft;
} else {
this.gotoAndStop(2);
}
}
this.Selected = false;
};
a.onRollOver = function () {
if (_root.perksOwned['1' + (this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(2);
}
this.Selected = true;
};
a.onRollOut = function () {
if (_root.perksOwned['1' + (this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
a.onReleaseOutside = function () {
if (_root.perksOwned['1' + (this._name.split(''))[5]] == 1) {
this.gotoAndStop(5);
} else {
this.gotoAndStop(1);
}
this.Selected = false;
};
}
++p;
}
}
}
movieClip 4397 {
}
instance of movieClip 4397 {
onClipEvent (enterFrame) {
if (_root.feedText == '') {
this._alpha = 0;
} else {
this._alpha = 100;
}
}
}
movieClip 4398 {
}
instance of movieClip 4398 {
onClipEvent (enterFrame) {
if (_root.feedText2 == '') {
this._alpha = 0;
} else {
this._alpha = 100;
}
}
}
movieClip 4404 {
}
instance specialMSG of movieClip 4404 {
onClipEvent (release) {
if (this._alpha == 100) {
this._alpha = 0;
}
}
}
movieClip 4407 {
}
movieClip 4414 {
frame 2 {
if (_root.loadGame == true) {
_root.readData();
}
_root.autoSave = _root.cache.data.PlayerDataOptions[1];
if (_root.FAPMODE == 1 || _root.charName == 'fapmode') {
_root.charSelected = _root.CurrentAdviser;
_root.deselectAll();
_root.gotoAndStop('sex');
_root.sexScene = 'garden';
_root.feedText2 = '';
_root.feedText = '';
} else {
_root.queuemusik(0);
_root.MusikLoop = 0;
}
}
frame 34 {
stop();
}
frame 48 {
}
frame 52 {
stop();
_root.gotoAndStop(_root.fadeOutTarget);
}
frame 63 {
stop();
}
}
frame 11 {
var CurrentEvent = -1;
var CurrentEventList = 1;
var eventPosition = 0;
var REdescript = '';
var REchoice1 = '';
var REchoice2 = '';
var REchoice3 = '';
var REchoice4 = '';
dialogueEvents = new Array(['Purple Smart', 'Greetings ' + _root.charName + '!']);
}
frame 11 {
stop();
var SepDistance = 110;
var SepStretch = 1;
var SepXYRatio = 0.43;
var xSep = SepDistance;
var ySep = SepDistance * SepXYRatio;
var MapSize = 15;
var MapThird = 3;
if (_root.loadGame == true) {
difficulty = cache.data.PlayerData[27];
}
if (difficulty == 2) {
MapSize = 13;
MapThird = 2;
}
var X9 = MapSize * xSep * SepStretch;
var X3 = MapThird * xSep * SepStretch;
var Y9 = MapSize * ySep * SepStretch;
var Y3 = MapThird * ySep * SepStretch;
var encounterTypesAggro = new Array(['Bandits', 'Slightly less concerned with the law than most ponies.', 5, 10, 1, 'bandit', 'aggro', 0], ['Changelings', 'They want to take over your city and turn it into a nest!', 1, 2, 2, 'changeling', 'aggro', 0], ['Natives', 'Wild Native ponies are disturbed by your running water and electricity.', 3, 6, 1, 'native', 'aggro', 0], [NaN]);
var encounterTypesNormal = new Array(['Lost Merchant', 'Safely guide them home for a small reward.', 3, 5, -1, 'traveler', 'normal', 5], ['Town Besieged', 'A nearby town is being attacked by Bandits, a messenger promises a reasonable reward for assistance.', 10, 20, -5, 'townbesieged', 'normal', 20], ['Grizzly', 'This bear is legitimately upset about the wage gap and demands policy changes.', 8, 10, -1, 'bear', 'normal', 15], [NaN]);
var newLand = new Array([MapSize, MapSize, 0, 0], [MapThird, MapThird, X9, Y9], [MapThird, MapThird, X9 - X3, Y9 + Y3], [MapThird, MapThird, X9 - X3 - X3, Y9 + Y3 + Y3], [MapThird, MapThird, X9 + X3, Y9 + Y3], [MapThird, MapThird, X9, Y9 + Y3 + Y3], [MapThird, MapThird, X9 - X3, Y9 + Y9], [MapThird, MapThird, X9 + X3 + X3, Y9 + Y3 + Y3], [MapThird, MapThird, X9 + X3, Y9 + Y9], [MapThird, MapThird, X9, Y9 + Y9 + Y3], [MapThird, MapThird, -X9, Y9], [MapThird, MapThird, -X9 - X3, Y9 + Y3], [MapThird, MapThird, -X9 + X3, Y9 + Y3], [MapThird, MapThird, -X9, Y9 + Y3 + Y3], [MapThird, MapThird, -X9 - X3 - X3, Y9 + Y3 + Y3], [MapThird, MapThird, -X9 + X3 + X3, Y9 + Y3 + Y3], [MapThird, MapThird, -X9 - X3, Y9 + Y9], [MapThird, MapThird, -X9 + X3, Y9 + Y9], [MapThird, MapThird, -X9, Y9 + Y9 + Y3], [MapThird, MapThird, 0, Y9 * 2], [MapThird, MapThird, -X3, Y9 * 2 + Y3], [MapThird, MapThird, +X3, Y9 * 2 + Y3], [MapThird, MapThird, 0, Y9 * 2 + Y3 + Y3], [MapThird, MapThird, -X3 - X3, Y9 * 2 + Y3 + Y3], [MapThird, MapThird, +X3 + X3, Y9 * 2 + Y3 + Y3], [MapThird, MapThird, -X3, Y9 * 3], [MapThird, MapThird, +X3, Y9 * 3], [MapThird, MapThird, 0, Y9 * 3 + Y3], [NaN]);
var buildList = new Array(['Town Square', 100, 0, 0, 0, 36, 110, 1, 1, 0, 0, 'TownHall'], ['Store', 30, 0, 0, 0, 16, 135, 1, 0, 0, 0, 'Store'], ['Library', 75, 0, 0, 0, 32, 50, 1, 0, 0, 0, 'Library'], ['House', 10, 0, 0, 0, 16, 50, 1, 0, 0, 0, 'House'], ['Garden', 20, 0, 0, 0, 8, 75, 1, 0, 0, 0, 'Garden'], ['Gem Quarry', 350, 0, 0, 0, 48, 230, 1, 0, 0, 0, 'Mine'], ['Tavern', 250, 0, 0, 40, 96, 230, 1, 0, 0, 0, 'Tavern'], ['Laboratory', 350, 0, 0, 50, 64, 50, 1, 0, 0, 0, 'Lab'], ['Flower Farm', 120, 800, 0, 0, 16, 50, 1, 0, 0, 0, 'Farm'], ['Tree House', 40, 0, 0, 10, 32, 50, 1, 0, 0, 0, 'TreeHouse'], ['Power Station', 150, 0, 0, 50, 32, 110, 1, 0, 0, 0, 'PowerStation'], ['Sex Factory', 600, 0, 0, 50, 128, 180, 1, 0, 0, 0, 'Factory'], ['Mayor\'s Office', 150, 0, 0, 0, 16, 50, 1, 0, 0, 0, 'MayorHouse'], ['Armory', 250, 0, 0, 0, 32, 75, 1, 0, 0, 0, 'Armory'], ['Shield Generator', 3000, 0, 0, 0, 256, 230, 1, 0, 0, 10, 'ShieldGen'], ['Academy', 500, 0, 325, 0, 128, 110, 1, 0, 0, 0, 'Academy'], ['Keep', 325, 0, 0, 0, 128, 230, 1, 0, 0, 0, 'Keep'], ['Deep Drill', 1175, 0, 0, 0, 128, 180, 1, 0, 0, 0, 'Drill'], ['Ballpit', 17000, 0, 0, 0, 8, 180, 1, 1, 0, 0, 'Ballpit'], [], [], ['Sky Lounge', 70, 0, 0, 5, 24, 50, 0, 1, 0, 0, 'HouseCloud'], ['Prism Forge', 450, 0, 0, 75, 64, 350, 0, 1, 0, 0, 'Prism'], ['Alchemist Lab', 320, 0, 0, 0, 64, 50, 0, 1, 5, 0, 'AlchLab'], [], [], [], [], ['Pile of Rubble', 5, 0, 0, 0, 1, 50, 1, 1, 0, 0, 'Rubble'], [], [NaN]);
var naturalList = new Array([['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.'], ['Tree', 'Improves Eco Score. Is destroyed if another building is placed here.']], [['n2--', '?????'], ['n2++', '?????']]);
var modeList = new Array(new Array(['Growth', 'Encourages population growth, causing ponies to move in faster. Global Effect: increases Love Magic generated by your ponies by 10%.'], ['Economic', 'Promotes a hard-working community to increase Bits-Income, but lowers Happiness. Global Effect: Traders visit your town\'s Local Food Market 50% more often.'], ['Relaxed', 'Creates a relaxing environment for citizens to increase Happiness. Global Effect: Increases Happiness by +4 per Day.'], [NaN]), new Array(['Bakery', 'Bakes warm cupcakes and pies for all to enjoy, increasing Happiness for each house within the Store\'s radius. Generates 48 Food per Day.', 'Store', true, true, 15, 0, 0, 0, 0, 0], ['Deli', 'Makes sandwiches, which are less exciting but more filling. Generates 64 Food per Day.', 'Store', 15, 0, 0, 0, true, true], ['Party', 'Throws exciting parties for ponies in nearby nodes, significantly improving their Happiness. Ponies must live within the radius of this structure to be satisfied.', 'Store', true, true, 15, 0, 0, 0, 0, 0], ['Basic', 'Advanced, all-purpose store. Cannot be toggled through different modes but generates 96 Food per Day, increases Happiness and has increased Food Storage size.', 'Super Store', 0, 0, 120, 0, 0, 5, 0, 0], [NaN]), new Array(['Book Checkout', 'Provides a friendly community service for a humble profit. Nearby houses generate additional Bits.'], ['Research', 'Dedicates the library towards generating Tech points. Nearby houses generate Tech Points.'], ['Symposiums', 'Ponies gather at the library in collaboration. Nearby houses have increased happiness and pony arrival rate.'], [NaN]), new Array(['Basic', 'Simple house. Holds up to 8 Earth Ponies.', 'House', false, true, 10, 0, 0, 0, 0, 0], [NaN], [NaN], ['Basic', 'Fancy house. Holds up to 12 Earth Ponies.', 'Manor', false, true, 80, 0, 0, 0, 0, 0], ['Basic', 'Luxurious house. Holds up to 16 Earth Ponies.', 'Villa', 0, 0, 160, 0, 0, 20, 0, 0], [NaN]), new Array(['Basic', 'Beautiful garden that increases Love Magic generation by 100% for all nearby homes. Improves Ecobalance slightly.'], [NaN], [NaN], [NaN]), new Array(['Extracting Gems', 'Quarries will not function with a population of less than 50. Although Gems are plentiful in this land, only the most precious of gems are considered currency.', false, true, 350, 0, 0, 0, 0, 0], ['Mining Gold', 'Quarries will not function with a population of less than 50. Mines for gold ore, which is turned over for direct profit in Bits. Generates 32 Bits each Day.'], ['No Mining', 'Halts the mining process, which will also temporarily cease any negative effects the Quarry has on nearby homes.'], ['Basic', 'Highly effecient quarry. Generates both bits and gems over time. 50% happiness penalty reduction for nearby homes (100% reduction for Pegasi). Requires 50 Population.', 'Super Quarry', 0, 0, 0, 0, 0, 0, 0, 1], [NaN]), new Array(['Serving Drinks', 'Serves drinks to customers at a fair price, boosting Bits-Income and Happiness for each House within its radius.'], ['Happy Hour', 'Gives away free drinks and serves as the perfect hang out, boosting Love-Magic and Happiness for each house within its radius.'], ['Bordello', 'Provides free sexy entertainment for guests, significantly boosting Love-Magic.'], [NaN]), new Array(['Research', 'Dedicates the laboratory towards research in order to generate Tech points over time.'], ['Eco-Tech', 'Slowly restores the Environmental condition, adding 1% per Day. Maximum of 200%.'], ['Outlawed Tech', 'Works under the table to gain Tech points very quickly, but brings about certain risks.'], [NaN]), new Array(['Basic', 'Not yet ready for harvesting.'], ['Basic', 'Not yet ready for harvesting.'], ['Bloomed', 'If a Store is within it\'s radius, it will automatically be harvested soon for a large Food yield.'], [NaN]), new Array(['Basic', 'Eco-friendly house. Holds up to 4 Earth Ponies. Improves Ecobalance.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Tree-Powered energy station. Increases Eco-Score for each tree in its radius, and allows nearby Tech Labs to function.'], [NaN], [NaN], [NaN]), new Array(['Sex Toys', 'Manufactures silicone horsecocks for ponies to enjoy. Global: Increases Bits-Income of Houses by 25%. Stacks multiple times.'], ['Latex Gear', 'Manufactures bondage paraphernalia for ponies to enjoy. Global: Increases Love-Magic generation of Houses by 25%. Stacks multiple times.'], ['Gem Cutter', 'Automatically converts 60 Bits into 4 Gems per day. Requires a nearby Store.'], [NaN]), new Array(['Basic', 'Makes your town look prettier.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Passively increases Defense Rating by 5 for each House within it\'s radius.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Once activated, this town will be fully protected and an Ascension can take place.'], [NaN], [NaN], [NaN]), new Array(['Training', 'Daily upkeep is 4 Tech Points. Each day every Specialists will automatically recieve experience. Nearby houses generate Happiness and additional Bits.'], ['Research', 'Global: Increases Tech Point generation for all structures by 25%. Nearby houses generate Happiness and additional Bits.'], ['Mana Tech', 'Gradually drains Mana to generate Tech Points. Nearby houses generate Happiness and additional Bits.'], [NaN]), new Array(['Basic', 'Passively increases Defense Rating by 15, divided by the total number of keeps within this structure\'s radius (Self Included)'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Slowly extracts Obsidian from the earth. Heavily reduces Ecobalance.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Totally worth the price. Nearby homes might not agree with you, though.'], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', 'Simple Cloud house that supports up to 6 Pegasi.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Generates Prismstone over time. Earth Pony homes within its radius will be facinated by the glow, increasing their happiness.'], [NaN], [NaN], [NaN]), new Array(['Basic', 'Able to create new materials out of Prismstone and Tech Points.'], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', ''], [NaN], [NaN], [NaN]), new Array(['Basic', 'Oops'], [NaN], [NaN], [NaN]), [NaN]);
var Specialist = new Array(['', 0, 0, 0, 0, 0, NaN, NaN], ['', 0, 0, 0, 0, 0, NaN, NaN], ['', 0, 0, 0, 0, 0, NaN, NaN], ['', 0, 0, 0, 0, 0, NaN, NaN], ['', 0, 0, 0, 0, 0, NaN, NaN], [NaN]);
var discoveryRate = 0;
var discoveryProgress = 0;
var discoveryProgressDisplay = '0%';
var discoveryTotal = 0;
var newUpgradesOwned = new Array();
var undiscoveredTechs = new Array();
var newUpgrades = new Array([100, 0, 0, 'Delivery Service', 'Large Store Radius', 0], [25, 0, 0, 'Efficient Stores', 'Stores produce +4 Food per Day', 1], [150, 0, 0, 'Flash-Freeze', '+150% Food Storage from Stores', 2], [75, 0, 0, 'Networking', '+1 Library Radius', 3], [320, 0, 0, 'Diamond-Cutter', '-5 Gem-Cutting cost for Factories with nearby Library', 4], [175, 0, 0, 'Arcane Knowledge', '+1.0 Mana Regeneration for each Library', 5], [220, 0, 0, 'Chemistry', '+10% Tech Points from all sources', 6], [25, 0, 0, 'Organization', 'Libraries produce 10% more Tech Points', 7], [250, 0, 0, 'Shield-Tech', '+30% Shield Generation Rate', 8], [400, 0, 0, 'Ecstasy-Emitter', 'Houses within range of a Tech Lab generate extra Love Magic', 9], [500, 0, 0, 'Green Barrier', 'Defense Rating by +1 per point of Eco-Score', 10], [325, 0, 0, 'Smog-Suppression', '-1 Factory Radius', 11], [600, 0, 0, 'Project Aegis', 'Academies Generate Shield', 12], [35, 0, 0, 'Appliances', '+25% Pony Arrival Rate', 13], [85, 0, 0, 'Micro-Brewing', '+20% Tavern Efficiency', 14], [45, 0, 0, 'Dank Gardens', 'Gardens also increase Happiness', 15], [210, 0, 0, 'Observatory', 'Keeps also generate 4 Tech Points per Day', 16], [80, 0, 0, 'Powermining', '+2 Quarry Radius, +30% Efficiency', 17], [110, 0, 0, 'Resilient Siding', 'Each House provides +0.25 Defense', 18], [150, 0, 0, 'Optics', '+50% Scouting Efficiency', 19], [180, 0, 0, 'Hybrid Weapons', '+50% Raid Efficiency', 20], [220, 0, 0, 'Hybrid Armor', '+20% Armory Efficiency', 21], [25, 0, 0, 'Sweeteners', '+20% Happiness from Bakeries', 22], [50, 0, 0, 'Demo-Gear', '75% Refund for Demolished Structures', 23], [210, 0, 0, 'Astronomy', 'Keeps increase Discovery Rate by 20%', 24], [NaN]);
i = 0;
while (i < newUpgrades.length) {
if (newUpgrades[i][2] == 1) {
newUpgradesOwned.push([i, 2]);
} else {
if (newUpgrades[i][1] == 1) {
newUpgradesOwned.push([i, 1]);
} else {
undiscoveredTechs.push(i);
}
}
++i;
}
var upgradeStoreRank = 0;
var upgradeStore = new Array([15, 'More Productive Stores', 'Stores produce +4 Food per Day.'], [30, 'Self-Sufficient Citizens', 'Each Home produces 4 Food per Day.'], [65, 'Delivery Service', 'Increases the Store\'s range of influence.'], [135, 'Flash-Freeze', 'Food Storage provided by Stores increased by 150%'], [155, 'Party-Tech', 'Party Stores provide 20% more Happiness.'], [400, 'Aphrodisiacs', 'Stores increase Love-Magic generation of affected Homes.'], [600, 'Special Cookies', '5% of Food becomes Love Magic each day. Requires 400+ Pop.'], [NaN]);
var upgradeStoreCost = 15;
var upgradeLibraryRank = 0;
var upgradeLibrary = new Array([25, 'Organized Aisles', 'Libraries are 10% more effective at generating Tech Points.'], [75, 'Community Research', 'Library radius increased. Affected Houses generate more Tech.'], [200, 'Arcane Knowledge', 'Gain 0.1 Mana each Day per Library.'], [325, 'Industrial Sciences', 'Libraries reduce gem-cutting cost of nearby Factories by 5.'], [400, 'Networking', 'Library radius increased further.'], [NaN]);
var upgradeLibraryCost = 25;
var upgradeTechLabRank = 0;
var upgradeTechLab = new Array([150, 'Chemical Tests', 'All structures produce 10% more Tech Points.'], [275, 'Monetization', 'Tech Labs also generate 40 Bits per day each. (60 in Mode 3)'], [400, 'Armor Apparatus', 'Specialists are 50% more effective at Preparing.'], [525, 'Ecstasy Emitters', 'Houses within range of a Tech Lab generate extra Love Magic'], [650, 'Shield Tech', 'Increases Shield Generation rate by 100%.'], [NaN]);
var upgradeTechLabCost = 150;
var upgradeMoreTilesRank = 0;
var upgradeMoreTiles = new Array();
x = 1;
while (x < 50) {
upgradeMoreTiles.push([20 + 5 * int(x * x / 8), 'Additional Land ' + x, 'Purchase this tile of land, allowing for construction.']);
++x;
}
var upgradeMoreTilesCost = 0;
var specialistsTotal = 0;
var upgradeHireSpecialistRank = _root.specialistsTotal;
var upgradeHireSpecialist = new Array([200, 'Hire 1st Specialist', 'Hires a new Specialist to be added to your defense force.'], [500, 'Hire 2nd Specialist', 'Hires a new Specialist to be added to your defense force.'], [1000, 'Hire 3rd Specialist', 'Hires a new Specialist to be added to your defense force.'], [1500, 'Hire 4th Specialist', 'Hires a new Specialist to be added to your defense force.'], [2000, 'Hire 5th Specialist', 'Hires a new Specialist to be added to your defense force.'], [NaN]);
var upgradeHireSpecialistCost = 250;
var tradingPrices = new Array(['Food Market', 50, 40, 60, 3, 3, 3, 50, 40, 60, 3, 3, 3, true], ['Gems Market', 5, 5, 5, 60, 40, 65, 5, 5, 5, 45, 30, 55, true], ['Prism Market', 3, 3, 3, 110, 75, 120, 3, 3, 3, 80, 50, 100, true]);
var bankNameFirst = new Array('Apple', 'Starlight', 'Summer', 'Ribbon', 'Sugar', 'Windy', 'Cloudy', 'Snowflake', 'Berry', 'Rainy', 'Scarlet', 'Silky', 'Cinnamon', 'Emerald', 'Ivory', 'Misty', 'Essence', 'Autumn', 'Bubbly', 'Licky', 'Slurpy', 'Bouncy', 'Squishie', 'Tender', 'Rosewood', 'Silver', 'Sloppy', 'Sunset', 'Sniffy', 'Slappy', 'Stinky', 'Hyper', 'Speedy');
var bankNameSecond = new Array('Tart', 'Sweet', 'Sprinkle', 'Twinkle', 'Shimmer', 'Snuggles', 'Swirl', 'Bouquet', 'Brew', 'Grace', 'Blossom', 'Bubbles', 'Buttercup', 'Hooves', 'Clops', 'Quick', 'Stout', 'Squish', 'Prance', 'Plop', 'Roll', 'Buns', 'Plot', 'Moon', 'Gem', 'Loves', 'Sparkle', 'Dash', 'Pie', 'Whisper', 'Flop', 'Cake', 'Pop', 'Bounce', 'Boop', 'Twirl');
var charColor = new Array(['A76BC2', 'D19FE2', 'C390D4'], ['EAD463', 'FDF6AF', 'FEE78F'], ['F26F31', 'FFC261', 'EFB05D'], ['BEC2C3', 'EBEFF1', 'DEE3E4'], ['EB81B4', 'F3B6CF', 'EC9DC4'], ['77B0E0', '9EDBF9', '88C4EB'], ['8189A7', 'C1C6D5', 'ABB4CD']);
}
frame 11 {
function newAggroTimer() {
encTimerAggro = _root.randRange(60, 80);
}
function newNormalTimer() {
encTimerNormal = _root.randRange(80, 100);
}
function newAggroEncounter() {
if (encCurrent < encMax && ShieldLevel < 100) {
x = randRange(0, encounterTypesAggro.length - 2);
Tempy = int(randRange(encounterTypesAggro[x][2], encounterTypesAggro[x][3]) * (1 + clockTime / 200)) * 5;
currentEncounters.splice(-1, 0, [encounterTypesAggro[x][0], encounterTypesAggro[x][1], Tempy, encounterTypesAggro[x][3], encounterTypesAggro[x][4], encounterTypesAggro[x][5], encounterTypesAggro[x][6], encounterTypesAggro[x][7], encCooldown]);
newAggroTimer();
if (traitsOwned[17] == 1) {
encTimerAggro *= 0.5;
}
if (CurrentAdviser == 1) {
encTimerAggro *= 0.9;
}
if (perksOwned[15] == 1) {
evilCometh *= 1.3;
}
if (difficulty == 2) {
encTimerAggro *= 0.5;
}
if (statWillpower < 3) {
encTimerAggro *= 0.75;
}
encTimerAggro *= 0.8 + (environment / 100) * 0.2;
encRateAggro += randRange(0, 3) * 0.05;
newMSG('A new group of <font color=\'#ff0000\'>' + encounterTypesAggro[x][0] + '</font> have been spotted in the wilderness.');
}
_root.hudInfo.refreshEncounters();
}
function newNormalEncounter() {
if (encCurrent < encMax && ShieldLevel < 100) {
x = randRange(0, encounterTypesNormal.length - 2);
currentEncounters.splice(-1, 0, [encounterTypesNormal[x][0], encounterTypesNormal[x][1], randRange(encounterTypesNormal[x][2], encounterTypesNormal[x][3]) * 5, encounterTypesNormal[x][3], encounterTypesNormal[x][4], encounterTypesNormal[x][5], encounterTypesNormal[x][6], encounterTypesNormal[x][7]]);
newMSG('A new neutral encounter has been spotted in the wild: <font color=\'#ff0000\'>' + encounterTypesNormal[x][0] + '</font>.');
if (traitsOwned[30] == 1) {
x = randRange(0, encounterTypesNormal.length - 2);
currentEncounters.splice(-1, 0, [encounterTypesNormal[x][0], encounterTypesNormal[x][1], randRange(encounterTypesNormal[x][2], encounterTypesNormal[x][3]) * 5, encounterTypesNormal[x][3], encounterTypesNormal[x][4], encounterTypesNormal[x][5], encounterTypesNormal[x][6], encounterTypesNormal[x][7]]);
newMSG('Another one, too: <font color=\'#ff0000\'>' + encounterTypesNormal[x][0] + '</font>. A hero\'s work never ends!');
}
newNormalTimer();
if (statKarma >= 3) {
encTimerNormal = int(encTimerNormal * 0.75);
}
}
_root.hudInfo.refreshEncounters();
}
function HireSpecialist() {
++specialistsTotal;
specialistsStats[specialistsTotal - 1][1] = 1;
specialistsStats[specialistsTotal - 1][2] = '';
specialistsStats[specialistsTotal - 1][3] = 0;
specialistsStats[specialistsTotal - 1][4] = 0;
Tempini = randRange(1, specAvatars);
specialistsStats[specialistsTotal - 1][5] = specialistsAvailable[Tempini];
specialistsAvailable.splice(Tempini, 1);
if (specialistsStats[specialistsTotal - 1][5] == undefined || specialistsStats[specialistsTotal - 1][5] == 0 || specialistsStats[specialistsTotal - 1][5] == NaN) {
specialistsStats[specialistsTotal - 1][5] = 1;
}
specialistsStats[specialistsTotal - 1][6] = 0;
specialistsStats[specialistsTotal - 1][7] = 0;
specialistsStats[specialistsTotal - 1][0] = bankNameFirst[_root.randRange(0, bankNameFirst.length - 1)] + ' ' + bankNameSecond[_root.randRange(0, bankNameSecond.length - 1)];
newMSG('A new Specialist named <font color=\'#ffcc00\'>' + specialistsStats[specialistsTotal - 1][0] + '</font> has been added to your defense force.');
CheckSpecialists();
}
function LoseSpecialist() {
if (specialistsTotal > 0) {
specialistsStats[specialistsTotal - 1][1] = 1;
specialistsStats[specialistsTotal - 1][2] = '';
specialistsStats[specialistsTotal - 1][3] = 0;
specialistsStats[specialistsTotal - 1][4] = 0;
newMSG('<font color=\'#ff0000\'>' + specialistsStats[specialistsTotal - 1][0] + '</font> is gone.');
--specialistsTotal;
CheckSpecialists();
}
}
function CheckSpecialists() {
specialistStatusCount = specialistsTotal;
wumbo = 0;
while (wumbo < specialistsTotal) {
_root.hudInfo.specialistTable['specialist' + wumbo].nameRank = _root.specialistsStats[wumbo][0] + '\n' + 'Rank ' + _root.specialistsStats[wumbo][1];
_root.hudInfo.specialistTable['specialist' + wumbo].Rank = '' + _root.specialistsStats[wumbo][1];
_root.hudInfo.specialistTable['specialist' + wumbo].perXP = '';
j = 0;
while (j < 5) {
specialistsStats[wumbo][4] = int(8 + 8 * (specialistsStats[wumbo][1] * specialistsStats[wumbo][1] * expGrowth));
if (specialistsStats[wumbo][2] == '') {
--specialistStatusCount;
_root.hudInfo.specialistTable['specialist' + wumbo].Job = 'idle';
--specWarn;
if (specialistStatusCount > 0 && specWarn <= 0) {
specWarn = 30;
newMSG('<font color=\'#ffcc00\'>One or more of your Specialists aren\'t assigned to a task!</font>');
}
break;
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'a') {
_root.hudInfo.specialistTable['specialist' + wumbo].Job = 'prepare';
break;
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'b') {
_root.hudInfo.specialistTable['specialist' + wumbo].perXP = int(100 * (_root.specialistsStats[wumbo][3] / _root.specialistsStats[wumbo][4])) + '%';
_root.hudInfo.specialistTable['specialist' + wumbo].Job = 'train';
break;
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'c') {
_root.hudInfo.specialistTable['specialist' + wumbo].Job = 'raid';
break;
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'd') {
_root.hudInfo.specialistTable['specialist' + wumbo].Job = 'scout';
break;
}
}
}
}
}
++j;
}
++wumbo;
}
specialistStatus = specialistStatusCount + '/' + specialistsTotal;
upgradeHireSpecialistRank = specialistsTotal;
refreshResources();
}
function TickSpecialists() {
CheckSpecialists();
wumbo = 0;
while (wumbo < specialistsTotal) {
j = 0;
while (j < 5) {
if (specialistsStats[wumbo][2] == 'snap' + j + 'a') {
DefensePoints += (5 * (1 + specialistsStats[wumbo][1] * 0.1) / 4) * (1 + skill_Discipline * 0.02);
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'b') {
trainAmount = _root.randRange(1, 3);
if (statWillpower >= 10) {
if (perksOwned[16] == 1) {
trainAmount *= 1.5;
} else {
trainAmount *= 1.25;
}
}
if (traitsOwned[18] == 1) {
trainAmount *= 0.5;
}
specialistsStats[wumbo][3] += trainAmount;
if (specialistsStats[wumbo][3] > specialistsStats[wumbo][4]) {
specialistsStats[wumbo][3] = 0;
++specialistsStats[wumbo][1];
newMSG('Training Specialist <font color=\'#ffcc00\'>' + specialistsStats[wumbo][0] + '</font> has achieved <font color=\'#ffcc00\'>Rank ' + specialistsStats[wumbo][1] + '</font>');
RefreshSpecalistSelected();
}
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'c') {
raidChance = 25;
roll = randRange(0, 100) * (1 + skill_Discipline * 2 / 100);
if (roll < raidChance) {
encTimerRaid += 1;
if (encTimerRaid >= 3) {
Tempy = randRange(5, 15) * (1 + specialistsStats[wumbo][1] * 0.1);
if (traitsOwned[17] == 1) {
Tempy *= 1.5;
}
if (CurrentAdviser == 1) {
Tempy *= 0.5;
}
if (perksOwned[10] == 1) {
Tempy *= 1.5;
}
if (_root.newUpgrades[20][2] == 1) {
Tempy *= 1.5;
}
xxx = 0;
while (xxx < currentEncounters.length) {
if (currentEncounters[xxx][0] != NaN && currentEncounters[xxx][0] != undefined && currentEncounters[xxx][6] == 'aggro') {
currentEncounters[xxx][2] -= Tempy;
if (currentEncounters[xxx][2] <= currentEncounters[xxx][7]) {
newMSG('Raiding Specialist <font color=\'#ffcc00\'>' + specialistsStats[wumbo][0] + '</font> defeated a group of ' + currentEncounters[xxx][0] + '!');
newMSG('<font color=\'#ffcc00\'>' + int(Tempy * 10 * (1 + clockTime / 120)) + ' Bits were obtained from the encounter and added to ' + townName + '\'s treasury.');
resources[0][1] += int(Tempy * 10 * (1 + clockTime / 120));
currentEncounters.splice(xxx, 1);
UnlockGeneric(23);
} else {
newMSG('Raiding Specialist <font color=\'#ffcc00\'>' + specialistsStats[wumbo][0] + '</font> has weakened ' + currentEncounters[xxx][0] + ' by ' + int(Tempy) + '.');
}
encTimerRaid = 0;
break;
}
++xxx;
}
}
}
} else {
if (specialistsStats[wumbo][2] == 'snap' + j + 'd') {
raidChance = 50 * (1 + statCuriosity * 0.05) * (1 + skill_Discipline * 0.02);
if (traitsOwned[23] == 1) {
raidChance *= 0.5;
}
if (perksOwned[15] == 1) {
raidChance *= 1.5;
}
if (_root.newUpgrades[19][2] == 1) {
raidChance *= 1.5;
}
roll = randRange(0, 100);
if (roll < raidChance) {
encTimerScout += 1;
if (encTimerScout >= 12) {
newNormalEncounter();
newMSG('Scouting Specialist <font color=\'#ffcc00\'>' + specialistsStats[wumbo][0] + '</font> has scouted out a new encounter in the wild.');
encTimerScout = 0;
}
}
}
}
}
}
++j;
}
++wumbo;
}
evilCometh = 1;
if (_root.edictIndustrialActive == 3) {
evilCometh += 0.5;
}
if (encRateAggro * evilCometh < 0.5) {
encTimerAggro -= 0.5;
} else {
encTimerAggro -= encRateAggro * evilCometh;
}
encTimerNormal -= 1;
if (encTimerAggro <= 0) {
newAggroEncounter();
writeData();
}
if (encTimerNormal <= 0) {
newNormalEncounter();
writeData();
}
RefreshSpecalistSelected();
CheckSpecialists();
}
function EvilAttacks() {
if (ShieldLevel < 100 && attackingAlready == false && defeated == false) {
attackingAlready = true;
CheckSpecialists();
EvilForce = DefenseRatingTotal * 2 + 50;
EvilForceDisplay = int(EvilForce);
if (_root.gamePaused == false) {
_root.pauseGame();
}
_root.unlockpop.gotoAndStop('invasion3');
_root.unlockpop.DescriptHeader = 'INVASION';
roll = randRange(0, 100);
Threat = 75;
if (roll < Threat) {
fate = 1;
goobs = 0;
while (goobs < 5) {
roll = randRange(0, 100);
if (roll < Threat - statKarma * 0.1) {
++fate;
} else {
break;
}
++goobs;
}
if (fate == 1) {
rolls[0] = randRange(10 - int(statKarma * 0.25), 50 - int(statKarma * 0.25) + int(resources[0][1] * 0.33));
rolls[1] = randRange(10 - int(statKarma * 0.25), 50 - int(statKarma * 0.25) + int(resources[1][1] * 0.6));
rolls[2] = randRange(2, 2 + int(resources[3][1] * 0.2));
if (rolls[0] > resources[0][1]) {
rolls[0] = resources[0][1];
}
if (rolls[1] > resources[1][1]) {
rolls[1] = resources[1][1];
}
if (rolls[2] > resources[3][1]) {
rolls[2] = resources[3][1];
}
resources[0][1] -= rolls[0];
resources[1][1] -= rolls[1];
resources[3][1] -= rolls[2];
happiness -= 20 - statWillpower * 2 + int(happiness * 0.35);
if (happiness < minHappiness) {
}
_root.unlockpop.Descript = 'Uh oh. They managed to break through your defenses, but luckily it was only a very minor attack. They barely managed to steal some resources before escaping.';
_root.unlockpop.DescriptGet = 'You have lost ' + rolls[0] + ' Coins, ' + rolls[1] + ' Food and ' + rolls[2] + ' Gems. Happiness reduced severely';
}
if (fate == 2) {
resources[0][1] = int(resources[0][1] * 0.1);
resources[1][1] = int(resources[1][1] * 0.25);
resources[3][1] = int(resources[3][1] * 0.15);
LoseSpecialist();
happiness = minHappiness;
_root.unlockpop.Descript = 'Agh! They managed to break through your defenses, laying waste to your town!';
_root.unlockpop.DescriptGet = 'Nearly all of your resources were taken. One of your Specialists was permanently captured. All joy is gone from ' + townName + '.';
}
if (fate > 2) {
if (statKarma >= 10 && extraLives > 0) {
--extraLives;
_root.unlockpop.Descript = 'Due to your city\'s outstandingly poor defenses, they nearly conquered your city.';
_root.unlockpop.DescriptGet = 'Fortunately your good Karma has paid off, allowing you to avoid sheer defeat through a miracle of decision-making.';
} else {
defeated = true;
cache.data.PlayerData[17] = true;
_root.gotoAndStop('rubble');
_root.unlockpop.Descript = 'Due to your city\'s outstandingly poor defenses, they have captured you and your entire city has been destroyed.';
_root.unlockpop.DescriptGet = 'You have been conquered. You will have to create a new town from scratch but any content you\'ve unlocked will stay unlocked permanently.';
}
}
} else {
fate = 0;
_root.unlockpop.Descript = 'Although it was a very close call, you were able to fend them off without any harm to your town or its citizens.';
_root.unlockpop.DescriptGet = 'No harm done, for now.';
}
writeData();
} else {
EvilData[2] = 9999;
}
}
function RefreshSpecalistSelected() {
if (specialistSelected != -1) {
_root.hudInfo.specialistTable.nameRank = _root.specialistsStats[specialistSelected][0] + ', Rank ' + _root.specialistsStats[specialistSelected][1];
_root.hudInfo.specialistTable.Rank = 'Rank ' + _root.specialistsStats[specialistSelected][1];
_root.hudInfo.specialistTable.Name = _root.specialistsStats[specialistSelected][0];
_root.hudInfo.specialistTable.expShow = 'EXP:';
_root.hudInfo.specialistTable['specialist' + specialistSelected].nameRank = _root.specialistsStats[specialistSelected][0] + '\n' + 'Rank ' + _root.specialistsStats[specialistSelected][1];
_root.hudInfo.specialistTable['specialist' + specialistSelected].Rank = '' + _root.specialistsStats[specialistSelected][1];
_root.hudInfo.specialistTable.EXP = int(_root.specialistsStats[specialistSelected][3]) + '/' + _root.specialistsStats[specialistSelected][4];
_root.hudInfo.specialistTable.IMG.gotoAndStop(_root.specialistsStats[specialistSelected][5]);
if (_root.hudInfo.specialistTable['specialist' + specialistSelected].Job == 'train') {
_root.hudInfo.specialistTable.Descript = 'Training to increase Rank. Each Rank improves effectiveness at all tasks by 10%.';
}
if (_root.hudInfo.specialistTable['specialist' + specialistSelected].Job == 'raid') {
_root.hudInfo.specialistTable.Descript = 'Seeking out Aggressive Encounters to weaken their forces.';
}
if (_root.hudInfo.specialistTable['specialist' + specialistSelected].Job == 'scout') {
_root.hudInfo.specialistTable.Descript = 'Seeking out new Neutral Encounters to assist.';
}
if (_root.hudInfo.specialistTable['specialist' + specialistSelected].Job == 'prepare') {
_root.hudInfo.specialistTable.Descript = 'Regenerating Defense Points over time.';
}
if (_root.hudInfo.specialistTable['specialist' + specialistSelected].Job == 'idle') {
_root.hudInfo.specialistTable.Descript = 'Taking a break apparently, what a lazy bum.';
}
_root.hudInfo.specialistTable.updateQuirks();
} else {
_root.hudInfo.specialistTable.IMG.gotoAndStop('disabled');
_root.hudInfo.specialistTable.Descript = '';
}
}
function firstTimeBonuses() {
perkList = [];
perkList.length = 0;
i = 1;
while (i <= perkCount) {
if (perksOwned[i] == 0) {
perkList.push(i);
}
++i;
}
p = 0;
while (p < 4) {
x = randRange(0, perkList.length - 1);
perkChoice[p] = perkList[x];
perkList.splice(x, 1);
++p;
}
if (traitsOwned[22] == 1) {
statCharisma = 5;
statCuriosity = 5;
statWillpower = 5;
statInsight = 5;
statKarma = 5;
}
if (traitsOwned[25] == 1) {
if (statCharisma > 7) {
statCharisma -= 1;
}
if (statInsight > 7) {
statInsight -= 1;
}
if (statCuriosity > 7) {
statCuriosity -= 1;
}
if (statKarma > 7) {
statKarma -= 1;
}
if (statWillpower > 7) {
statWillpower -= 1;
}
}
happiness += 4 * statCharisma - 20;
if (traitsOwned[15] == 1) {
happiness += 30;
}
if (statCuriosity >= 3) {
resources[1][1] += 200;
} else {
resources[1][1] += 50;
}
environment = 80 + statKarma * 5;
if (CurrentAdviser == 1) {
environment += 35;
}
resources[0][1] += 15 * statCuriosity + 200;
if (resources[1][1] < 0) {
resources[1][1] = 0;
}
if (statInsight >= 7) {
if (perksOwned[16] == 1) {
resources[2][1] += 60;
} else {
resources[2][1] += 30;
}
}
if (statKarma >= 7) {
if (perksOwned[16] == 1) {
resources[3][1] += 20;
} else {
resources[3][1] += 10;
}
}
if (perksOwned[2] == 1) {
resources[0][1] += 100;
}
if (CurrentAdviser == 0) {
resources[0][1] += 100;
}
if (CurrentAdviser == 6) {
resources[0][1] -= 200;
}
if (CurrentAdviser == 2) {
resources[5][1] += 1;
}
if (traitsOwned[29] == 1) {
resources[2][1] += 300;
}
if (traitsOwned[7] == 1) {
resources[0][1] *= 1.5;
}
if (ascensionLevel == 0) {
HireSpecialist();
if (statCharisma >= 3) {
HireSpecialist();
}
if (traitsOwned[17] == 1) {
HireSpecialist();
}
if (traitsOwned[30] == 1) {
HireSpecialist();
}
if (traitsOwned[18] == 1) {
specialistsStats[0][0] = 'The Veteran';
specialistsStats[0][1] = 10;
}
}
DefenseRating = +(statWillpower * 5);
newAggroTimer();
newNormalTimer();
if (traitsOwned[16] == 1) {
DefenseRating += 50;
}
if (perksOwned[1] == 1) {
DefenseRating += 50;
}
discoverTech(7);
if (statCuriosity >= 7) {
if (perksOwned[16] == 1) {
discoverTech(0);
discoverTech(1);
discoverTech(13);
discoverTech(3);
discoverTech(2);
discoverTech(6);
} else {
discoverTech(0);
discoverTech(1);
discoverTech(13);
}
}
if (ascensionLevel == 0) {
manaMax = 10 + statInsight * 5;
if (statInsight >= 3) {
manaMax += 20;
}
mana = int(manaMax / 3);
if (CurrentAdviser == 0) {
mana = manaMax;
}
if (traitsOwned[20] == 1) {
skill_Leadership += 1;
skill_Diplomacy += 1;
skill_Knowledge += 1;
skill_Architecture += 1;
skill_Discipline += 1;
skill_Ecology += 1;
skill_Tradecraft += 1;
manaMax += 50;
}
StatsLeft += 1;
if (traitsOwned[28] == 1) {
StatsLeft += 4;
}
if (traitsOwned[13] == 1) {
manaMax += 25;
}
}
checkDebugCodes();
if (traitsOwned[22] == 1) {
statCharisma = 5;
statCuriosity = 5;
statWillpower = 5;
statInsight = 5;
statKarma = 5;
}
if (perksOwned[9] == 1) {
upgradeMoreTilesRank -= 5;
_root.upgradeMoreTilesCost = 'FREE';
}
if (traitsOwned[23] == 1) {
upgradeMoreTilesRank -= 5;
_root.upgradeMoreTilesCost = 'FREE';
}
if (statKarma >= 10) {
extraLives = 1;
if (perksOwned[16] == 1) {
extraLives = 2;
}
} else {
extraLives = 0;
}
if (CurrentAdviser == 6) {
i = 0;
while (i < buildList.length) {
derpyRandom[i] = randRange(50, 140) * 0.01;
++i;
}
}
maxDP = true;
refreshResources();
edictFatigue = -100;
writeData();
}
function statBonusInitialize() {
if (_root.loadGame != true) {
firstTimeBonuses();
} else {
_root.loadGame = false;
}
basePopHouse = 8;
basePopTreeHouse = 4;
if (perksOwned[12] == 1) {
basePopHouse += 4;
}
if (perksOwned[3] == 1) {
basePopTreeHouse += 8;
}
if (traitsOwned[3] == 1) {
basePopHouse -= 2;
}
if (statWillpower >= 7) {
if (perksOwned[16] == 1) {
maxHappiness += 30;
} else {
maxHappiness += 15;
}
}
if (traitsOwned[15] == 1) {
maxHappiness += 30;
}
if (traitsOwned[14] == 1) {
maxHappiness -= 40;
}
if (perksOwned[4] == 1) {
maxHappiness += 15;
}
if (statCuriosity >= 10) {
if (perksOwned[16] == 1) {
buildList[0][1] -= 80;
buildList[1][1] -= 24;
} else {
buildList[0][1] -= 40;
buildList[1][1] -= 12;
}
}
if (statInsight >= 10) {
if (perksOwned[16] == 1) {
buildList[7][1] = int(0.5 * buildList[7][1]);
buildList[10][1] *= 0.5;
buildList[7][4] = int(0.5 * buildList[7][4]);
buildList[10][4] *= 0.5;
} else {
buildList[7][1] = int(0.75 * buildList[7][1]);
buildList[10][1] *= 0.75;
buildList[7][4] = int(0.75 * buildList[7][4]);
buildList[10][4] *= 0.75;
}
}
if (CurrentAdviser == 1) {
buildList[4][1] = 100;
buildList[4][6] += 50;
}
if (CurrentAdviser == 2) {
buildList[1][6] -= 25;
}
if (perksOwned[3] == 1) {
buildList[9][4] = 0;
buildList[4][1] = 0;
}
if (traitsOwned[5] == 1) {
buildList[4][6] += 50;
}
if (traitsOwned[8] == 1) {
buildList[0][6] += 50;
buildList[5][1] *= 1.3;
buildList[11][1] *= 1.3;
buildList[11][4] *= 1.3;
buildList[17][1] *= 1.3;
buildList[17][4] *= 1.3;
}
if (traitsOwned[24] == 1) {
buildList[0][1] *= 0.5;
buildList[0][6] += 150;
buildList[0][7] = 0;
}
if (traitsOwned[29] == 1) {
buildList[0][6] = 75;
buildList[2][6] += 100;
}
if (perksOwned[17] == 1) {
buildList[13][6] += 50;
}
if (CurrentAdviser == 6) {
buildList[3][8] = 1;
buildList[1][8] = 1;
}
if (traitsOwned[19] == 1) {
buildList[6][6] += 50;
}
if (perksOwned[11] == 1) {
buildList[14][6] += 50;
}
if (perksOwned[8] == 1) {
buildList[0][6] += 50;
}
if (perksOwned[9] == 1) {
i = 0;
while (i < upgradeMoreTiles.length) {
upgradeMoreTiles[i][0] *= 0.75;
++i;
}
}
if (statChasima >= 7) {
i = 0;
while (i < upgradeMoreTiles.length) {
if (perksOwned[16] == 1) {
upgradeMoreTiles[i][0] *= 0.8;
} else {
upgradeMoreTiles[i][0] *= 0.9;
}
++i;
}
}
if (traitsOwned[22] == 1) {
maxHappiness = 50;
minHappiness = 50;
happiness = 50;
}
if (traitsOwned[3] == 1) {
i = 0;
while (i < buildList.length) {
buildList[i][1] = int(buildList[i][1] * 0.9);
++i;
}
}
if (perksOwned[2] == 1) {
i = 0;
while (i < buildList.length) {
buildList[i][1] = int(buildList[i][1] * 0.9);
++i;
}
}
if (CurrentAdviser == 6) {
i = 0;
while (i < buildList.length) {
buildList[i][1] = int(buildList[i][1] * derpyRandom[i]);
++i;
}
}
if (_root.traitsOwned[1] == 1) {
buildList[5][1] *= 1.5;
}
if (traitsOwned[28] == 1) {
StatMax = 3;
} else {
StatMax = 10;
}
StatBracket[0][0] = StatMax + 1;
setLoveToRank();
hudDynamic.gotoAndStop('refresh');
cycleBig();
}
function setLoveToRank() {
loveToRank = int(8 + 8 * (loveRank * loveRank * loveGrowth));
loveToRank *= 0.5;
if (traitsOwned[7] == 1) {
loveToRank = int(loveToRank * 1.1);
}
}
function loveGain(amount, lovesource) {
if (ShieldLevel < 100) {
if (traitsOwned[20] == 1 || amount == NaN || amount == undefined || amount < 0 || lovesource == NaN || lovesource == undefined) {
} else {
love += amount;
loveTotal += amount;
ii = 0;
while (ii < loveGainSource.length) {
if (loveGainSource[ii][1] == lovesource) {
loveGainSource[ii][0] += amount;
}
++ii;
}
loveDisplay = int((love / loveToRank) * 100);
loveTotalDisplay = int(loveTotal);
if (loveDisplay > 100) {
love -= loveToRank;
setLoveToRank();
levelUp(1);
}
}
}
}
function statBonusCheck() {}
function newMSG(msg) {
_root.hudMSG.messages.html = true;
_root.hudMSG.messages.htmlText += msg;
++_root.hudMSG.messages.scroll;
}
function newSpecialMSG(msg) {
trace(msg);
dialogueLerp = 0;
dialogueTimer = msg.length * 2 + 120;
_root.specialMSG.dialogueToLerp = msg;
_root.specialMSG.dialogue.htmlText = '';
_root.specialMSG._alpha = 100;
}
function lerpSpecialMSG() {
if (dialogueTimer > 0) {
++dialogueLerp;
--dialogueTimer;
_root.specialMSG.dialogue.htmlText = _root.specialMSG.dialogueToLerp.substr(0, dialogueLerp);
}
}
function levelUp(amount) {
_root.projspawner2.levelDeBurst = 0;
_root.projspawner2.levelBurst = _root.projspawner2.levelBurstTime;
_root.projspawner2.levelBurstMAX = _root.projspawner2.levelBurstTime;
i = 0;
while (i < amount) {
_root.StatsLeftPartial += statInsight * 0.05;
if (traitsOwned[28] == 1) {
_root.StatsLeftPartial += 0.2;
}
if (_root.StatsLeftPartial >= 1) {
++_root.StatsLeft;
--_root.StatsLeftPartial;
}
++_root.StatsLeft;
++loveRank;
++i;
}
}
function showExtraInfo() {}
function refreshResources() {
if (!inCycle) {
bonus = 0;
resourceBits = int(resources[0][1]);
resourceFood = int(resources[1][1]);
resourceTech = int(resources[2][1] * 10) / 10;
resourceGems = int(resources[3][1] * 10) / 10;
resourcePrism = int(resources[4][1] * 10) / 10;
resourceObsidian = int(resources[5][1] * 10) / 10;
if (resources[5][1] > 0) {
_root.resourceMenu.extra.gotoAndStop(3);
} else {
if (resources[4][1] > 0) {
_root.resourceMenu.extra.gotoAndStop(2);
} else {
_root.resourceMenu.extra.gotoAndStop(1);
}
}
maxHousingEarth = (basePopHouse + 0) * strCount[3][0] + (basePopHouse + 4) * strCount[3][3] + (basePopHouse + 8) * strCount[3][4] + basePopTreeHouse * strCount[9][0];
maxHousingPegasus = (basePopHouseCloud + 0) * strCount[21][0];
if (perksOwned[14] == 1) {
maxHousingEarth += 50;
}
maxHousingUnicorn = 0;
maxHousing = maxHousingEarth + maxHousingPegasus + maxHousingUnicorn;
popEarth = population[0][1];
if (perksOwned[14] == 1) {
popEarth += 50;
}
popPegasus = population[1][1];
popUnicorn = population[2][1];
popTotal = popEarth + popUnicorn + popPegasus;
popMax = maxHousing;
popTotalMax = popTotal + '/' + maxHousing;
bonus = 1 * taxIncome[taxLevel + 4];
ayy = 0;
while (ayy <= 6) {
resourcePerCycle[ayy][1] = 0;
++ayy;
}
if (traitsOwned[6] == 0) {
resourcePerCycle[0][1] = 1 * (popTotal / 80) * bonus * (happiness / 100) * factoryBuffIncome * (1 + skill_Leadership * 0.05);
resourcePerCycle[0][1] += bonusPerCycle[0][1];
} else {
resourcePerCycle[0][1] = 0.5 * (popTotal / 80) * bonus * (happiness / 100) * factoryBuffIncome * (1 + skill_Leadership * 0.05);
resourcePerCycle[0][1] += bonusPerCycle[0][1];
}
if (_root.edictResidentialActive == 1) {
resourcePerCycle[0][1] *= 0.8;
}
if (_root.edictResidentialActive == 2) {
if (traitsOwned[14] == 1) {
resourcePerCycle[0][1] *= 1.4;
} else {
resourcePerCycle[0][1] *= 1.2;
}
}
if (popTotal >= 50) {
if (traitsOwned[11] == 0) {
resourcePerCycle[0][1] += 2 * (strCount[5][1] + strCount[5][3]);
}
}
if (_root.newUpgrades[1][2] == 1) {
bonus = 1;
} else {
bonus = 0;
}
resourcePerCycle[1][1] = (3 + bonus) * strCount[1][0] + (4 + bonus) * strCount[1][1] + (6 + bonus) * strCount[1][3] + bonusPerCycle[1][1];
resourcePerCycle[2][1] = +bonusPerCycle[2][1];
if (popPegasus >= 30) {
prismBonus = 1.4;
resourcePerCycle[4][1] = 0.125 * (strCount[22][0] * prismBonus) + bonusPerCycle[4][1];
}
if (popTotal >= 400) {
obsidianBonus = 1.4;
resourcePerCycle[5][1] = 0.03125 * (strCount[17][0] * obsidianBonus) + bonusPerCycle[5][1];
}
if (popTotal >= 50) {
quarryBonus = 1.4;
if (_root.edictIndustrialActive == 1) {
if (traitsOwned[14] == 1) {
quarryBonus += 0.4;
} else {
quarryBonus += 0.2;
}
}
if (_root.newUpgrades[17][2] == 1) {
quarryBonus *= 1.3;
}
if (traitsOwned[1] == 1) {
quarryBonus *= 1 + ProspectorBonus;
}
resourcePerCycle[3][1] = 0.125 * ((strCount[5][0] + strCount[5][3]) * quarryBonus) + bonusPerCycle[3][1];
}
if (perksOwned[7] == 1 && popTotal >= 100) {
resourcePerCycle[3][1] += 0.02083333333333333 * (strCount[1][0] + strCount[1][1] + strCount[1][2] + strCount[1][3]);
}
if (traitsOwned[11] == 0) {
if (traitsOwned[26] == 1) {
resourcePerCycle[0][1] += 0.125 * (strCount[1][0] + strCount[1][1] + strCount[1][2] + strCount[1][3]);
}
}
resourceCap[1][1] = 300 + 200 * (strCount[1][0] + strCount[1][1] + strCount[1][2]) + 400 * strCount[1][3] + 50 * strCount[3][0] + 75 * strCount[3][3] + 100 * strCount[3][4] + 25 * strCount[9][0];
if (_root.newUpgrades[2][2] == 1) {
resourceCap[1][1] *= 1.5;
resourceCap[1][1] = int(resourceCap[1][1]);
}
if (CurrentAdviser == 2) {
resourceCap[1][1] += 1000;
}
resourceCap[1][1];
resourceCapFood = resourceCap[1][1];
resourceBitsCycle = int(resourcePerCycle[0][1] * 16);
resourceFoodCycle = int(resourcePerCycle[1][1] * 4);
foodConsumed = 0.5;
if (traitsOwned[21] == 1) {
foodConsumed *= 2;
}
if (traitsOwned[27] == 1) {
foodConsumed *= 0.75;
}
foodConsumed *= foodIncome[foodLevel];
if (_root.edictResidentialActive == 3) {
if (traitsOwned[14] == 1) {
foodConsumed *= 0.25;
} else {
foodConsumed *= 0.5;
}
}
if (perksOwned[14] == 1) {
resourceFoodCycleDisplay = int(resourceFoodCycle - (popTotal - 50) * foodConsumed) * 4;
} else {
resourceFoodCycleDisplay = int(resourceFoodCycle - popTotal * foodConsumed) * 4;
}
resourceTechCycle = int(resourcePerCycle[2][1] * 16);
resourceGemsCycle = int(resourcePerCycle[3][1] * 16);
resourcePrismCycle = int(resourcePerCycle[4][1] * 16);
resourceObsidianCycle = int(resourcePerCycle[5][1] * 16);
environmentDisplay = int(environment);
TopRightTicker = '';
if (edictResidentialTimer > 0 && edictResidentialActive != -1) {
edictResidentalDaysLeft = 'Days left: ' + int((edictResidentialTimer + 3) / 4);
if (edictResidentialBuff[edictResidentialActive] != '' && edictResidentialBuff[edictResidentialActive] != NaN) {
TopRightTicker += edictResidentialBuff[edictResidentialActive] + ' - ' + int((edictResidentialTimer + 3) / 4) + ' days left' + '\n';
}
} else {
if (edictResidentialTimer <= 0) {
if (renewEdicts != 1) {
edictResidentialActive = 0;
} else {
if (edictResidentialActive != -1) {
activateEdict(edictResidentialActive, 'Residential');
}
}
}
}
if (edictLibraryTimer > 0 && edictLibraryActive != -1) {
edictLibraryDaysLeft = 'Days left: ' + int((edictLibraryTimer + 3) / 4);
if (edictLibraryBuff[edictLibraryActive] != '' && edictLibraryBuff[edictLibraryActive] != NaN) {
TopRightTicker += edictLibraryBuff[edictLibraryActive] + ' - ' + int((edictLibraryTimer + 3) / 4) + ' days left' + '\n';
}
} else {
if (edictLibraryTimer <= 0) {
if (renewEdicts != 1) {
edictLibraryActive = 0;
} else {
if (edictLibraryActive != -1) {
activateEdict(edictLibraryActive, 'Library');
}
}
}
}
if (edictIndustrialTimer > 0 && edictIndustrialActive != -1) {
edictIndustrialDaysLeft = 'Days left: ' + int((edictIndustrialTimer + 3) / 4);
if (edictIndustrialBuff[edictIndustrialActive] != '' && edictIndustrialBuff[edictIndustrialActive] != NaN) {
TopRightTicker += edictIndustrialBuff[edictIndustrialActive] + ' - ' + int((edictIndustrialTimer + 3) / 4) + ' days left' + '\n';
}
} else {
if (edictIndustrialTimer <= 0) {
if (renewEdicts != 1) {
edictIndustrialActive = 0;
} else {
if (edictIndustrialActive != -1) {
activateEdict(edictIndustrialActive, 'Industrial');
}
}
}
}
edictFatigueDisplay = int(edictFatigue) + '%';
happinessDisplay = int(happiness);
resourceHappyCycle = int(happinessPerCycle * 4);
if (resourceHappyCycle >= 0) {
happinessScore = '+' + resourceHappyCycle;
} else {
happinessScore = resourceHappyCycle;
}
if (mana > manaMax) {
mana = manaMax;
}
manaDisplay = int(mana) + ' / ' + manaMax;
_root.hudInfo.charSheet.refreshPowers();
loveDisplay = int((love / loveToRank) * 100);
loveTotalDisplay = int(loveTotal);
if (traitsOwned[20] == 1) {
love = 0;
loveDisplay = 0;
loveTotalDisplay = 0;
}
if (loveDisplay > 100) {
love -= loveToRank;
setLoveToRank();
levelUp(1);
}
upgradeStoreCost = upgradeStore[upgradeStoreRank][0];
if (upgradeStoreCost == NaN) {
upgradeStoreCost = 'MAX';
}
upgradeLibraryCost = upgradeLibrary[upgradeLibraryRank][0];
if (upgradeLibraryCost == NaN) {
upgradeLibraryCost = 'MAX';
}
if (upgradeMoreTilesRank >= 0) {
upgradeMoreTilesCost = upgradeMoreTiles[upgradeMoreTilesRank][0];
if (upgradeMoreTilesCost == NaN) {
upgradeMoreTilesCost = 'MAX';
}
} else {
upgradeMoreTilesCost = 'FREE';
}
upgradeHireSpecialistCost = upgradeHireSpecialist[upgradeHireSpecialistRank][0];
if (upgradeHireSpecialistCost == NaN || _root.upgradeHireSpecialistRank == _root.specialistsMax) {
upgradeHireSpecialistCost = 'MAX';
}
upgradeTechLabCost = upgradeTechLab[upgradeTechLabRank][0];
if (upgradeTechLabCost == NaN) {
upgradeTechLabCost = 'MAX';
}
drDisplay();
checkForUnlocks();
checkUpgrades();
}
}
function order(a, b) {
var v2 = Number(a[0]);
var v1 = Number(b[0]);
if (v2 < v1) {
return 1;
} else {
if (v2 > v1) {
return -1;
} else {
return 0;
}
}
}
function displayHappinessWhat() {
_root.HW.msg.messages.html = true;
_root.HW.msg.messages.htmlText = '';
_root.HW.msg.messages.htmlText += 'Happiness: ' + int(happiness * 100) / 100 + '/' + maxHappiness + '\n';
_root.HW.msg.messages.htmlText += 'Happiness Rating: ' + int(happinessPerCycle * 4 * 100) / 100 + '\n';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>--------------------------------------------------------</font>';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>Sources:</font>\r';
happinessWhat.sort(order);
i = 0;
while (i < happinessWhat.length) {
if (happinessWhat[i][0] != 0) {
if (happinessWhat[i][0] > 0) {
fontColor = '91FF79\'>+';
} else {
fontColor = 'C94747\'>';
}
_root.HW.msg.messages.htmlText += '<font color=\'#' + fontColor + int(happinessWhat[i][0] * 4 * 100) / 100 + ', ' + happinessWhat[i][1] + '</font>' + '\n';
}
++i;
}
}
function displayLoveWhat() {
_root.HW.msg.messages.html = true;
_root.HW.msg.messages.htmlText = '';
_root.HW.msg.messages.htmlText += 'Love Magic: ' + int(love * 100) / 100 + ' / ' + loveToRank + ' (' + int((love / loveToRank) * 100) + '%)' + '\n';
_root.HW.msg.messages.htmlText += 'Total: ' + int(loveTotal * 100) / 100 + '\n';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>--------------------------------------------------------</font>';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>Sources:</font>\r';
loveGainSource.sort(order);
i = 0;
while (i < loveGainSource.length) {
if (loveGainSource[i][0] != 0) {
fontColor = 'FF6BB3';
_root.HW.msg.messages.htmlText += '<font color=\'#' + fontColor + '\'>' + int(loveGainSource[i][0] * 100) / 100 + ', ' + loveGainSource[i][1] + '</font>' + '\n';
}
++i;
}
}
function displayEcoWhat() {
_root.HW.msg.messages.html = true;
_root.HW.msg.messages.htmlText = '';
_root.HW.msg.messages.htmlText += 'Eco-Score: ' + environmentScore + '\n';
_root.HW.msg.messages.htmlText += 'Environmental Condition: ' + int(environment * 100) / 100 + '%' + '\n';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>--------------------------------------------------------</font>';
_root.HW.msg.messages.htmlText += '<font color=\'#999999\'>Sources:</font>\r';
ecoWhat.sort(order);
i = 0;
while (i < ecoWhat.length) {
if (ecoWhat[i][0] != 0 && ecoWhat[i][0] != undefined) {
if (ecoWhat[i][0] > 0) {
fontColor = '91FF79\'>+';
} else {
fontColor = 'C94747\'>';
}
_root.HW.msg.messages.htmlText += '<font color=\'#' + fontColor + ecoWhat[i][0] + ', ' + ecoWhat[i][1] + '</font>' + '\n';
}
++i;
}
}
function showWhat(what) {
if (what != NaN) {
displayWhat = what;
}
if (displayWhat == 0) {
displayHappinessWhat();
} else {
if (displayWhat == 1) {
displayLoveWhat();
} else {
if (displayWhat == 2) {
displayEcoWhat();
}
}
}
}
function clearHappinessWhat() {
i = 0;
while (i < 250) {
happinessWhat[i][0] = 0;
happinessWhat[i][1] = '';
++i;
}
}
function clearEcoWhat() {
i = 0;
while (i < 150) {
ecoWhat[i][0] = 0;
ecoWhat[i][1] = '';
++i;
}
}
function checkForUnlocks() {
if (strCount[5][0] + strCount[5][1] + strCount[5][2] >= 3) {
UnlockGeneric(1);
}
if (TreeCount == 1) {
UnlockGeneric(3);
}
if (strCount[13][0] >= 4 && strCount[16][0] >= 4) {
UnlockGeneric(21);
}
if (strCount[13][0] >= 4 && strCount[16][0] >= 4) {
UnlockGeneric(21);
}
if (strCount[7][0] + strCount[7][1] + strCount[7][2] >= 2) {
UnlockGeneric(22);
}
if (resourcePerCycle[0][1] * 16 >= 500) {
UnlockGeneric(24);
}
if (strCount[13][0] >= 10) {
UnlockOption(0);
}
if (ascensionLevel >= 2) {
UnlockGeneric(5);
UnlockGeneric(6);
UnlockGeneric(7);
UnlockGeneric(18);
UnlockGeneric(20);
UnlockOption(1);
}
if (ascensionLevel >= 1 && strCount[6][0] + strCount[6][1] + strCount[6][2] >= 1) {
UnlockOption(2);
}
if (ascensionLevel >= 1) {
UnlockGeneric(5);
}
if (resources[1][1] >= 5000) {
UnlockGeneric(6);
}
if (resources[3][1] >= 300) {
UnlockGeneric(7);
}
if (_root.newUpgrades[0][2] == 1 && _root.newUpgrades[1][2] == 1 && _root.newUpgrades[2][2] == 1) {
UnlockGeneric(18);
}
if (ShieldLevel >= 100 && clockTime <= 300) {
UnlockGeneric(20);
}
glumbo = 0;
while (glumbo < specialistsTotal) {
if (specialistsStats[glumbo][1] >= 10) {
UnlockGeneric(8);
}
++glumbo;
}
if (strCount[6][0] > 0 && strCount[6][1] > 0 && strCount[6][2] > 0) {
UnlockGeneric(15);
}
if (skill_Diplomacy >= 5) {
UnlockGeneric(16);
}
}
function housePop() {
if (currentlyPopping == false && traitsOwned[20] != 1) {
i = randRange(nodeDepthInitial, nodeDepth);
a = _root.world['node' + i];
goodToGo = false;
if (a.Catalog != -1) {
if (a.Catalog == 3 && a.UpgradeRank == 0) {
MiniScene = 2;
a.Pop.unlockgallery = 0;
UnlocksGallery[0][1] = 1;
_root.cache.data.OptionGalleryUnlocked[0] = 1;
goodToGo = true;
bonusGET = randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
resources[0][1] += bonusGET;
refreshResources();
prizeDescript = bonusGET + ' Bits were added to ' + townName + '\'s treasury.';
} else {
if (a.Catalog == 3 && a.UpgradeRank == 1) {
MiniScene = 5;
a.Pop.unlockgallery = 3;
UnlocksGallery[3][1] = 1;
_root.cache.data.OptionGalleryUnlocked[3] = 1;
goodToGo = true;
bonusGET = 1.5 * randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
resources[0][1] += bonusGET;
refreshResources();
prizeDescript = bonusGET + ' Bits were added to ' + townName + '\'s treasury.';
} else {
if (a.Catalog == 3 && a.UpgradeRank == 2) {
MiniScene = 5;
a.Pop.unlockgallery = 3;
UnlocksGallery[3][1] = 1;
_root.cache.data.OptionGalleryUnlocked[3] = 1;
goodToGo = true;
bonusGET = 2 * randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
resources[0][1] += bonusGET;
refreshResources();
prizeDescript = bonusGET + ' Bits were added to ' + townName + '\'s treasury.';
} else {
if (a.Catalog == 8) {
MiniScene = 3;
a.Pop.unlockgallery = 1;
UnlocksGallery[1][1] = 1;
_root.cache.data.OptionGalleryUnlocked[1] = 1;
goodToGo = true;
bonusGET = 10 * randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
resources[1][1] += bonusGET;
refreshResources();
prizeDescript = bonusGET + ' Food was added to ' + townName + '\'s stocks.';
} else {
if (a.Catalog == 1) {
MiniScene = 4;
a.Pop.unlockgallery = 2;
UnlocksGallery[2][1] = 1;
_root.cache.data.OptionGalleryUnlocked[2] = 1;
goodToGo = true;
bonusGET = randRange(20, 200);
happiness += bonusGET;
refreshResources();
prizeDescript = 'Happiness increased by ' + bonusGET + '. Excess happiness converted to Mana.';
} else {
if (a.Catalog == 5) {
MiniScene = 7;
a.Pop.unlockgallery = 4;
UnlocksGallery[4][1] = 1;
_root.cache.data.OptionGalleryUnlocked[4] = 1;
goodToGo = true;
bonusGET = randRange(5 + int(popMax / 200) * (a.Age + 1), 10 + int(popMax / 25) * (a.Age + 1));
happiness += bonusGET;
refreshResources();
prizeDescript = bonusGET + ' Gems were added to ' + townName + '\'s treasury.';
}
}
}
}
}
}
if (goodToGo == true) {
currentlyPopping = true;
a.Pop.gotoAndPlay(2);
a.Pop.popfloat.onPress = function () {
if (_root.pauseDuringMeet == true && _root.gamePaused == false) {
_root.pauseGame();
}
_root.unlockpop.gotoAndStop(4);
_root.unlockpop.DescriptHeader = 'Event';
_root.unlockpop.Descript = _root.UnlocksGallery[this._parent.unlockgallery][0];
_root.unlockpop.Descript += '\r\r' + prizeDescript;
this._parent.gotoAndStop(1);
currentlyPopping = false;
};
}
}
}
}
function cycle() {
if (gamePaused == true && ASCENDING == false) {
refreshResources();
writeData();
}
if (ASCENDING == false && gamePaused == false && autoSave == true && saveWait == false && _root.onWildMap == false) {
++currentCycle;
refreshResources();
i = 0;
while (i < 6) {
resources[i][1] += resourcePerCycle[i][1];
if (resources[i][1] > resourceCap[i][1]) {
resources[i][1] = resourceCap[i][1];
}
++i;
}
refreshResources();
if (currentCycle >= 4) {
currentCycle = 0;
cycleBig();
} else {
writeData();
}
}
}
function cycleBig() {
if (ASCENDING == false && gamePaused == false && saveWait == false && _root.onWildMap == false || cycleBigInitialize == true) {
findAllBuffers();
}
}
function forceSave() {
saveWait = true;
fadeToTitle();
}
function fadeToTitle() {
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'title';
}
function cb_init() {
inCycle = true;
++_root.clockTime;
_root.clock = _root.clockType + ' ' + int(_root.clockTime / _root.clockDivider);
var v2 = int(28 - statCuriosity * 0.5);
if (clockTime % v2 == 0 && CurrentEvent == -1 && popTotal >= 32 && randomEventsEnabled == true) {
CurrentEvent = randRange(0, _root.eventList1.length - 2);
_root.randomEvent.play();
eventPosition = 0;
writeRandomEvent();
}
if (_root.edictResidentialTimer > 0) {
--_root.edictResidentialTimer;
}
if (_root.edictLibraryTimer > 0) {
--_root.edictLibraryTimer;
}
if (_root.edictIndustrialTimer > 0) {
--_root.edictIndustrialTimer;
}
if (_root.edictResidentialActive > 0 && _root.edictResidentialActive != 4) {
edictFatigue += 0.75;
}
if (_root.edictLibraryActive > 0) {
edictFatigue += 0.75;
}
if (_root.edictIndustrialActive > 0) {
edictFatigue += 0.75;
}
_root.edictFatigue -= (1 + statWillpower * 0.5) / 4;
if (_root.edictResidentialActive == 4) {
if (traitsOwned[14] == 1) {
_root.edictFatigue -= (1 + statWillpower * 0.5) / 2;
} else {
_root.edictFatigue -= (1 + statWillpower * 0.5) / 4;
}
}
if (_root.edictFatigue < 0) {
_root.edictFatigue = 0;
}
discoveryRate = 0;
_root.TickSpecialists();
showWhat(NaN);
clearHappinessWhat();
happinessPerCycle = 0;
HWC = 0;
clearHappinessWhat();
if (strCount[7][2] > 0) {
happinessPerCycle += -8 * strCount[7][2];
happinessWhat[HWC][0] = -8 * strCount[7][2];
happinessWhat[HWC][1] = 'Laboratories (Outlawed Tech)';
}
++HWC;
if (strCount[0][2] > 0) {
if (traitsOwned[19] != 1) {
happinessPerCycle += 1;
happinessWhat[HWC][0] = 1;
happinessWhat[HWC][1] = 'Town Square Relaxed Global Bonus';
}
}
++HWC;
unhappiness = 1 + 0.25 * ascensionLevel;
if (difficulty == 2) {
happinessPerCycle -= (popTotal / 80) * unhappiness;
happinessWhat[HWC][0] = -(popTotal / 80) * unhappiness;
happinessWhat[HWC][1] = 'Challenge Mode';
}
++HWC;
if (traitsOwned[21] == 1) {
unhappiness *= 0.65;
}
if (perksOwned[8] == 1) {
unhappiness -= 0.02 * statCharisma;
}
unhappiness -= skill_Diplomacy * 0.02;
popPenalty = 1;
if (traitsOwned[27] == 1) {
popPenalty += 0.5;
}
if (CurrentAdviser == 2) {
popPenalty += 0.1;
}
if (popTotal > 100) {
happinessPerCycle -= ((popTotal - 100) / 16) * unhappiness * popPenalty;
happinessWhat[HWC][0] = -((popTotal - 100) / 16) * unhappiness * popPenalty;
happinessWhat[HWC][1] = 'Population Count';
}
++HWC;
if (traitsOwned[26] == 1) {
if (popTotal < 100) {
happinessPerCycle -= strCount[3][0] * unhappiness * +(popTotal * 0.01) * 0.25;
happinessWhat[HWC][0] = -strCount[3][0] * unhappiness * +(popTotal * 0.01 * 0.25);
} else {
happinessPerCycle -= strCount[3][0] * unhappiness * 0.25;
happinessWhat[HWC][0] = -strCount[3][0] * unhappiness * 0.25;
}
happinessWhat[HWC][1] = 'Capitalist Housing Penalty';
}
++HWC;
taxPenalty = 1;
if (taxLevel != 0 && popTotal > 0) {
if (traitsOwned[26] == 1 && taxHappy[taxLevel + 4] < 0) {
taxPenalty = 0.75;
}
happinessPerCycle += taxHappy[taxLevel + 4] * ((popTotal / 16) * unhappiness) * taxPenalty;
happinessWhat[HWC][0] = taxHappy[taxLevel + 4] * ((popTotal / 16) * unhappiness) * taxPenalty;
happinessWhat[HWC][1] = 'Resident Taxes';
}
++HWC;
foodBonus = 1;
if (foodLevel != 0 && popTotal > 0) {
happinessPerCycle += foodHappy[foodLevel] * ((popTotal / 16) * unhappiness) * foodBonus;
happinessWhat[HWC][0] = foodHappy[foodLevel] * ((popTotal / 16) * unhappiness) * foodBonus;
happinessWhat[HWC][1] = 'Additional Food Rations';
}
++HWC;
if (edictFatigue >= 50 && popTotal > 100) {
happinessPerCycle -= ((popTotal - 100) / 18) * unhappiness * (100 / edictFatigue);
happinessWhat[HWC][0] = -((popTotal - 100) / 18) * unhappiness * (100 / edictFatigue);
happinessWhat[HWC][1] = 'Edict Fatigue';
}
++HWC;
environmentPerCycle = 0;
EWC = 0;
negativeScore = 0;
clearEcoWhat();
if (perksOwned[13] == 1) {
environmentPerCycle += TreeCount * 1.25;
ecoWhat[EWC][0] = TreeCount * 1.25;
} else {
environmentPerCycle += TreeCount;
ecoWhat[EWC][0] = TreeCount;
}
ecoWhat[EWC][1] = 'Trees';
++EWC;
if (CurrentAdviser == 1) {
environmentPerCycle += 5;
ecoWhat[EWC][0] = 5;
ecoWhat[EWC][1] = 'Yellow Timid Advisor';
}
++EWC;
if (traitsOwned[1] == 0) {
if (traitsOwned[5] == 0) {
environmentPerCycle += 0.5 * strCount[4][0];
ecoWhat[EWC][0] = 0.5 * strCount[4][0];
ecoWhat[EWC][1] = 'Gardens';
} else {
environmentPerCycle += 0.55 * strCount[4][0];
ecoWhat[EWC][0] = 0.55 * strCount[4][0];
ecoWhat[EWC][1] = 'Gardens (Botanist)';
}
}
++EWC;
if (_root.edictLibraryActive == 1) {
countEmBoys = strCount[2][0] + strCount[2][1] + strCount[2][2];
environmentPerCycle -= 2 * countEmBoys;
negativeScore += 2 * countEmBoys;
ecoWhat[EWC][0] = -2 * countEmBoys;
ecoWhat[EWC][1] = 'Prodigal Research Edict';
}
++EWC;
environmentPerCycle += 1 * strCount[9][0];
ecoWhat[EWC][0] = 1 * strCount[9][0];
ecoWhat[EWC][1] = 'Tree Houses';
++EWC;
environmentPerCycle -= 1 * (strCount[1][0] + strCount[1][1] + strCount[1][2] + strCount[1][3]);
negativeScore += 1 * (strCount[1][0] + strCount[1][1] + strCount[1][2] + strCount[1][3]);
ecoWhat[EWC][0] = -1 * (strCount[1][0] + strCount[1][1] + strCount[1][2] + strCount[1][3]);
ecoWhat[EWC][1] = 'Stores';
++EWC;
environmentPerCycle -= 2 * (strCount[6][0] + strCount[6][1] + strCount[6][2]);
negativeScore += 2 * (strCount[6][0] + strCount[6][1] + strCount[6][2]);
ecoWhat[EWC][0] = -2 * (strCount[6][0] + strCount[6][1] + strCount[6][2]);
ecoWhat[EWC][1] = 'Taverns';
++EWC;
environmentPerCycle -= 3 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
negativeScore += 3 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
ecoWhat[EWC][0] = -3 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
ecoWhat[EWC][1] = 'Gem Quarries';
++EWC;
environmentPerCycle -= 3 * (strCount[11][0] + strCount[11][1] + strCount[11][2]);
negativeScore += 3 * (strCount[11][0] + strCount[11][1] + strCount[11][2]);
ecoWhat[EWC][0] = -3 * (strCount[11][0] + strCount[11][1] + strCount[11][2]);
ecoWhat[EWC][1] = 'Factories';
++EWC;
environmentPerCycle -= 8 * (strCount[17][0] + strCount[17][1] + strCount[17][2]);
negativeScore += 8 * (strCount[17][0] + strCount[17][1] + strCount[17][2]);
ecoWhat[EWC][0] = -8 * (strCount[17][0] + strCount[17][1] + strCount[17][2]);
ecoWhat[EWC][1] = 'Deep Drills';
++EWC;
if (_root.edictIndustrialActive == 1) {
environmentPerCycle -= 1 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
negativeScore += 1 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
ecoWhat[EWC][0] = -1 * (strCount[5][0] + strCount[5][1] + strCount[5][3]);
ecoWhat[EWC][1] = 'Strike the Earth Edict';
}
++EWC;
environmentPerCycle += negativeScore * (skill_Ecology * 0.05);
ecoWhat[EWC][0] = negativeScore * (skill_Ecology * 0.05);
ecoWhat[EWC][1] = 'Ecology Skill';
++EWC;
tradeMax = 20 + statCuriosity;
if (traitsOwned[10] == 1) {
tradeMax += 15;
}
if (perksOwned[18] == 1) {
tradeMax += 25;
}
i = 0;
while (i < tradeCooldown.length) {
if (tradeCooldown[i] < tradeMax) {
RN = 1 * (1 + skill_Tradecraft * 0.08) * (1 + statCuriosity * 0.1);
if (strCount[0][1] > 0) {
RN *= 1.5;
}
if (traitsOwned[11] == 1) {
RN *= 5;
}
tradeCooldown[i] += RN;
} else {
tradeCooldown[i] = tradeMax;
}
++i;
}
if (traitsOwned[19] != 1) {
if (traitsOwned[11] == 1) {
happinessPerCycle += 2;
happinessWhat[HWC][0] = 2;
happinessWhat[HWC][1] = 'Mercantile Bonus';
}
}
++HWC;
if (traitsOwned[19] != 1) {
if (traitsOwned[2] == 1) {
if (popTotal < 100) {
Tempy = (DefenseRatingTotal / 20) * (popTotal / 100);
} else {
Tempy = DefenseRatingTotal / 20;
}
if (Tempy > 16) {
Tempy = 16;
}
happinessPerCycle += Tempy;
happinessWhat[HWC][0] = Tempy;
happinessWhat[HWC][1] = 'Harmony Bonus';
}
}
++HWC;
if (clockTime % 4 == 0 && traitsOwned[10] == 0 || clockTime % 20 == 0 && traitsOwned[10] == 1) {
refreshTradePrices();
}
showExtraInfo();
_root.foodConsumed = 0.5;
if (traitsOwned[21] == 1) {
_root.foodConsumed *= 2;
}
if (_root.edictResidentialActive == 3) {
if (traitsOwned[14] == 1) {
_root.foodConsumed *= 0.25;
} else {
_root.foodConsumed *= 0.5;
}
}
if (!ASCENDING) {
setTimeout(cb_upkeep, 20 * initWait);
}
}
function refreshTradePrices() {
i = 0;
while (i < tradingPrices.length) {
tradingPrices[i][1] = randRange(tradingPrices[i][2], tradingPrices[i][3]);
tradingPrices[i][4] = randRange(tradingPrices[i][5], tradingPrices[i][6]);
tradingPrices[i][7] = randRange(tradingPrices[i][8], tradingPrices[i][9]);
tradingPrices[i][10] = randRange(tradingPrices[i][11], tradingPrices[i][12]);
if (tradingPrices[i][13] == true) {
tradingPrices[i][1] = tradingPrices[i][7];
}
++i;
}
}
function cb_upkeep() {
i = 0;
while (i < 6) {
_root.bonusPerCycle[i][1] = 0;
++i;
}
if (upgradeStoreRank >= 7 && popTotal > 400) {
loveGain(resources[1][1] * 0.005, 'Stores');
resources[1][1] *= 0.95;
}
if (perksOwned[7] == 1) {
if (resources[3][1] > popTotal / 200) {
resources[3][1] -= popTotal / 200;
happinessPerCycle += popTotal / 32;
happinessWhat[HWC][0] = popTotal / 32;
happinessWhat[HWC][1] = 'Rock Candy Perk';
}
}
++HWC;
popIncrease = 0;
popDecrease = 0;
libraryBonusTech = 0;
reasonForLeaving = 0;
starving = false;
bonusModifier = 1;
houseHitEvent = false;
TechBonusModifier = 1 * (1 + skill_Knowledge * 0.05) * (1 + statInsight * 0.1);
if (traitsOwned[9] == 1) {
TechBonusModifier += 0.4;
}
if (_root.newUpgrades[6][2] == 1) {
TechBonusModifier += 0.1;
}
if (_root.edictLibraryActive == 2) {
if (traitsOwned[11] == 0) {
if (traitsOwned[14] == 1) {
if (environment > 10) {
_root.bonusPerCycle[0][1] += (environment / 8) * (strCount[2][0] + strCount[2][1] + strCount[2][2]);
} else {
_root.bonusPerCycle[0][1] += 0.625 * (strCount[2][0] + strCount[2][1] + strCount[2][2]);
}
} else {
if (environment > 10) {
_root.bonusPerCycle[0][1] += (environment / 16) * (strCount[2][0] + strCount[2][1] + strCount[2][2]);
} else {
_root.bonusPerCycle[0][1] += 0.3125 * (strCount[2][0] + strCount[2][1] + strCount[2][2]);
}
}
}
environment -= 2.5 * (strCount[2][0] + strCount[2][1] + strCount[2][2]);
}
HWCbase = HWC;
if (popTotal >= 200) {
factoryBuffIncome = 1 + 0.25 * strCount[11][0];
factoryBuffLove = 1 + 0.25 * strCount[11][1];
} else {
factoryBuffIncome = 1;
factoryBuffLove = 1;
}
if (strCount[15][0] > 0) {
yubbo = 0;
while (yubbo < strCount[15][0]) {
if (resources[2][1] > 0) {
wumbo = 0;
while (wumbo < specialistsTotal) {
trainAmount = _root.randRange(0.5, 0.75);
if (statWillpower >= 10) {
if (perksOwned[16] == 1) {
trainAmount *= 1.5;
} else {
trainAmount *= 1.25;
}
}
if (traitsOwned[18] == 1) {
trainAmount *= 0.5;
}
specialistsStats[wumbo][3] += trainAmount;
if (specialistsStats[wumbo][3] > specialistsStats[wumbo][4]) {
specialistsStats[wumbo][3] = 0;
++specialistsStats[wumbo][1];
newMSG('Training Specialist <font color=\'#ffcc00\'>' + specialistsStats[wumbo][0] + '</font> has achieved <font color=\'#ffcc00\'>Rank ' + specialistsStats[wumbo][1] + '</font>');
RefreshSpecalistSelected();
}
++wumbo;
}
resources[2][1] -= 1;
}
++yubbo;
}
}
if (strCount[15][1] > 0) {
yubbo = 0;
while (yubbo < strCount[15][1]) {
TechBonusModifier += 0.25;
++yubbo;
}
}
if (strCount[15][2] > 0) {
yubbo = 0;
while (yubbo < strCount[15][2]) {
if (mana > 1) {
mana -= 1;
bonusPerCycle[2][1] += 0.5 * TechBonusModifier;
}
++yubbo;
}
}
if (!ASCENDING) {
setTimeout(cb_events, 20 * initWait);
}
}
function cb_events() {
maxRandom = 100 + int(Karma / 2);
if (popTotal > 50) {
housePopper += randRange(7, 12 + statKarma);
}
if (housePopper > 100) {
_root.housePop();
housePopper = 0;
}
i = 0;
while (i < strCount[5][0] + strCount[5][1] + strCount[5][3]) {
j = randRange(1, maxRandom);
if (popTotal > 50 && j >= 100) {
u = randRange(1, 4);
if (u == 1) {
bonusGET = randRange(6, 13);
newMSG('One of your quarry-miners discovered a giant deposit containing <font color=\'#ffcc00\'>' + bonusGET + '</font> Gems!');
resources[3][1] += bonusGET;
} else {
if (u == 2) {
bonusGET = randRange(50, 150);
newMSG('One of your quarry-miners discovered a rare mineral valued at <font color=\'#ffcc00\'>' + bonusGET + '</font> Bits!');
resources[0][1] += bonusGET;
} else {
if (u == 3) {
bonusGET = randRange(5, 10);
newMSG('<font color=\'#7F4AFF\'>There seems to be a spooky ghost haunting one of your Quarries. Uh oh.</font>');
happiness -= bonusGET;
if (happiness < minHappiness) {
happiness = minHappiness;
}
} else {
if (u == 4) {
h = randRange(1, 25 * strCount[5][0] + strCount[5][1] + strCount[5][3]);
if (h >= 50) {
newMSG('<font color=\'#FF0000\'>While mining a Quarry, a cave of monsters was discovered and demanded a tribute.</font>');
u = randRange(1, 2);
if (u == 1) {
bonusGET = randRange(10, 50 + int(resources[1][1] * 0.33));
if (resources[1][1] >= bonusGET) {
resources[1][1] -= bonusGET;
newMSG('<font color=\'#FF0000\'>The creatures took ' + bonusGET + ' Food and were satisfied.</font>');
} else {
newMSG('<font color=\'#FF0000\'>Unfortunately they weren\'t satisfied with the offer, so they raped the miners instead.</font>');
happiness -= 20 - statWillpower;
if (happiness < minHappiness) {
happiness = minHappiness;
}
}
} else {
if (u == 2) {
bonusGET = randRange(10, 10 + int(resources[0][1] * 0.2));
if (resources[1][1] >= bonusGET) {
resources[1][1] -= bonusGET;
newMSG('<font color=\'#FF0000\'>The creatures took ' + bonusGET + ' Bits and were satisfied.</font>');
} else {
newMSG('<font color=\'#FF0000\'>Unfortunately they weren\'t satisfied with the offer, so they raped the miners instead.</font>');
happiness -= 20 - statWillpower;
if (happiness < minHappiness) {
happiness = minHappiness;
}
}
}
}
}
}
}
}
}
}
++i;
}
i = 0;
while (i < strCount[6][0] + strCount[6][1] + strCount[6][2]) {
j = randRange(1, maxRandom);
if (popTotal > 50 && j >= 100) {
u = randRange(1, 7);
if (u == 1) {
bonusGET = randRange(15 + int(loveToRank / 60), 30 + int(loveToRank / 40));
newMSG('<font color=\'#ffcc00\'>A sweaty pony orgy begin in one of your Taverns, generating ' + bonusGET + ' Love Magic!</font>');
loveGain(bonusGET, 'Taverns');
} else {
if (u == 2) {
bonusGET = randRange(250, 500);
newMSG('<font color=\'#ffcc00\'>One of your Taverns had an especially drunk patron who spent ' + bonusGET + ' Bits today.</font>');
resources[0][1] += bonusGET;
} else {
if (u == 3) {
bonusGET = randRange(5, 10);
newMSG('<font color=\'#7F4AFF\'>A mysterious hooded figure has visited one of your Taverns.</font>');
happiness -= bonusGET;
if (happiness < minHappiness) {
happiness = minHappiness;
}
} else {
if (u == 4) {
newMSG('One of your Taverns got an award today for \'most cum-drenched floorboards\'.');
} else {
if (u == 5) {
newMSG('Ponies all over ' + townName + ' are talking about how much fun they had playing \'Happy Merchants\' yesterday.');
newMSG('In unrelated news, the line at the debt-management office is bigger than ever today for some reason!');
} else {
if (u == 6) {
newMSG('Patrons of a local Tavern are commending its great customer service and free cum-stains in every room.');
} else {
if (u == 7) {
newMSG('Miaka was spotted in a local Tavern today. The bartender mentioned how surprised she was to see them serving drinks.');
}
}
}
}
}
}
}
}
++i;
}
j = randRange(1, 100);
if (j >= 99) {
if (popTotal > 50 && popTotal < 200) {
u = randRange(1, 13);
if (u == 1) {
if (happiness > 80) {
newMSG('One of your households threw a really fun block party recently.');
newMSG('Attendees mention that \'more than just dancing\' happened.');
} else {
newMSG('A household hosted a casual meet and greet that raised everyone\'s spirits.');
}
}
if (u == 2) {
if (happiness > 90) {
newMSG('Ponies all over ' + townName + ' are talking about how great the atmosphere is!');
} else {
if (happiness < 60) {
newMSG('Although ponies of ' + townName + ' could be happier, they seem to make the best of things and have a positive attitude.');
happiness += 5;
}
}
}
if (u == 3) {
newMSG('Derpy found a shiny Bit on the ground and insisted that it goes towards founding a new Library.');
newMSG('Local superstitious gypsy pony claims a spooky ghost stole her lucky Bit this afternoon.');
resources[0][1] += 1;
}
if (u == 4) {
newMSG('Derpy found a fresh Apple Pie and insisted that it be used to feed the less fortunate.');
newMSG('Local bakery owners continue to complain about a mysterious pie-thief in ' + townName + '.');
resources[1][1] += 1;
}
if (u == 5) {
if (happiness < 90) {
newMSG('Ponies in ' + townName + ' are really excited over a potential celebrity visit.');
happiness += 5;
}
}
if (u == 6) {
newMSG('Local Ponies are celebrating the death of annoying blue animal in ' + townName + '.');
happiness += 10;
}
if (u == 7) {
newMSG('A conference was held today to discuss whether or not gay love magic is as potent as straight love magic.');
}
if (u == 8) {
newMSG('Local Stallion has been questioning his quintessential existence where all he knows is eat, sleep and fuck.');
}
if (u == 9) {
newMSG('Earlier today, a changeling was caught in the city disguised as a grey pegasus.');
newMSG('Upon interrogation the only response the changeling would give was \'I just don\'t know what went wrong.\'');
}
} else {
if (popTotal > 200) {
u = randRange(1, 20);
if (u == 1) {
newMSG('With ' + townName + '\'s population at ' + popTotal + ', ponies are beginning to wonder if they\'ll run out of room!');
}
if (u == 2) {
newMSG('Property values in ' + townName + ' have increased since a celebrity was caught masturbating in public.');
}
if (u == 3) {
newMSG('Living in ' + townName + ' is simply a privilege!');
}
if (u == 4) {
newMSG('Derpy has been fertilizing the trees on a daily basis to ensure the environment stays healthy.');
newMSG('Local residents are complaining more and more each day, demanding owners clean up after their dogs.');
}
if (u == 5) {
newMSG('Ever since the introduction of the Happy Merchants card game, Tavern profits have been extraordinary.');
newMSG('Also: recent reports of outraged, drunken ponies running through the streets screaming about bandits.');
}
if (u == 6) {
newMSG('Public Service Announcement in ' + townName + ': friendly reminder to stay hydrated.');
}
if (u == 7) {
newMSG('Derpy claims she can explain why ghosts haunt the quarry, but no one believes her.');
}
}
}
}
if (!ASCENDING) {
setTimeout(cb_checkNodes, 20 * initWait);
}
}
function cb_checkNodes() {
loveBuff = 1 * (1 - popTotal / 800);
if (loveBuff < 0.1) {
loveBuff = 0.1;
}
if (traitsOwned[6] == 1) {
loveBuff *= 3;
}
if (strCount[0][0] > 0) {
loveBuff *= 1.1;
}
if (traitsOwned[9] == 1) {
loveBuff *= 0.9;
}
if (environment < 100) {
if (environment > 10) {
loveBuff *= environment / 100;
} else {
loveBuff *= 0.1;
}
}
if (popTotal >= 200) {
factoryBuffIncome = 1 + 0.25 * strCount[11][0];
factoryBuffLove = 1 + 0.25 * strCount[11][1];
} else {
factoryBuffIncome = 1;
factoryBuffLove = 1;
}
DefenseRatingMod = 0;
ProspectorBonus = 0;
i = nodeDepthInitial + 1;
while (i < nodeDepth + 1) {
HWC = HWCbase;
a = _root.world['node' + i];
pones = 0;
if (a.Ponies[0] != NaN || a.Ponies[0] > 0) {
pones += a.Ponies[0];
}
if (a.Ponies[1] != NaN || a.Ponies[1] > 0) {
pones += a.Ponies[1];
}
if (a.Ponies[0] != undefined && a.Ponies[0] > 0) {
loveGain((a.Ponies[0] / 400) * (happiness / 100) * loveBuff * factoryBuffLove, 'Population');
}
if (a.Catalog != -1) {
if (a.Catalog == 7) {
if (a.ModeInt == 0 && a.Power >= 3) {
_root.bonusPerCycle[2][1] += 1 * TechBonusModifier;
}
if (a.ModeInt == 1 && a.Power >= 3) {
if (environment < 200) {
environment += 0.25;
}
}
if (a.ModeInt == 2 && a.Power >= 3) {
_root.bonusPerCycle[2][1] += 1.5 * TechBonusModifier;
}
} else {
if (a.Catalog == 10) {
environmentPerCycle += a.TreeCount;
ecoWhat[EWC][0] = a.TreeCount;
ecoWhat[EWC][1] = 'Power Stations';
++EWC;
} else {
if (a.Catalog == 8 && a.ModeInt != 10) {
if (environment > 0) {
++a.Age;
a.Yield += randRange(26, 38) * (environment / 100);
}
if (a.Age >= 4) {
if (a.ModeInt < 2) {
a.Age = 0;
a.FoodYield;
++a.ModeInt;
changeMode(a.ModeInt, a);
} else {
if (a.Buffs[1][0] > 0 || a.Buffs[1][1] > 0 || a.Buffs[1][3] > 0) {
resources[1][1] += a.Yield;
a.Yield = 0;
a.Age = 0;
a.ModeInt = 0;
changeMode(a.ModeInt, a);
}
}
}
} else {
if (a.Catalog == 16 && a.ModeInt != 10) {
DefenseRatingMod += int(20 / a.Buffs[16][0]);
if (_root.newUpgrades[16][2] == 1) {
_root.bonusPerCycle[2][1] += int(1 / a.Buffs[16][0]);
}
if (_root.newUpgrades[24][2] == 1) {
discoveryRate += int(20 / a.Buffs[16][0]);
}
} else {
if (a.Catalog == 11 && a.ModeInt != 10) {
if (a.ModeInt == 2) {
if (a.Buffs[1][0] > 0 || a.Buffs[1][1] > 0 || a.Buffs[1][3] > 0) {
if (_root.newUpgrades[4][2] == 1 && (a.Buffs[2][0] > 0 || a.Buffs[2][1] > 0 || a.Buffs[2][2] > 0)) {
if (resources[0][1] >= 10) {
resources[0][1] -= 10;
resources[3][1] += 1;
}
} else {
if (resources[0][1] >= 10) {
resources[0][1] -= 15;
resources[3][1] += 1;
}
}
}
}
if (perksOwned[5] == 1) {
DefenseRating += 0.25;
}
} else {
if ((a.Catalog == 3 || a.Catalog == 9) && a.buildProgressPercent >= 100) {
Buffed = (1 * _root.happiness / 50) * (1 + statCharisma * 0.1);
Penalty = 1 * (1 - statKarma * 0.02);
if (resources[1][1] >= a.Ponies[0] * foodConsumed) {
resources[1][1] -= a.Ponies[0] * foodConsumed;
} else {
happinessPerCycle -= (a.Ponies[0] / 4) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[0] / 4) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Starving Ponies';
popDecrease += a.Ponies[0];
}
++HWC;
if (_root.edictResidentialActive == 1) {
if (traitsOwned[14] == 1) {
Buffed *= 6;
} else {
Buffed *= 3;
}
}
if (_root.edictResidentialActive == 2) {
happinessPerCycle -= (a.Ponies[0] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[0] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Income Tax Edict';
}
++HWC;
if (_root.edictIndustrialActive == 2) {
happinessPerCycle -= (a.Ponies[0] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[0] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Garrison Drills Edict';
}
++HWC;
if (_root.edictResidentialActive == 3) {
Penalty *= 5;
}
if (_root.upgradeStoreRank >= 2) {
_root.bonusPerCycle[1][1] += 0.25;
}
j = randRange(1, maxRandom);
if (j >= 99 && happiness > 90 && houseHitEvent == false) {
if (a.Age < 5) {
a.Age += 1;
}
u = randRange(1, 5);
if (u == 1 && a.Age >= 3 && a.ModeInt < 5) {
UpgradeMode(a, true);
a.Age = 0;
}
if (u == 2) {
bonusGET = (happiness / 100) * randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
newMSG('A generous group of ponies has decided to donate <font color=\'#ffcc00\'>' + int(bonusGET) + ' Bits</font> to ' + townName + '\'s treasury.');
resources[0][1] += bonusGET;
}
if (u == 3) {
bonusGET = (happiness / 100) * randRange(int(popMax / 40) * (a.Age + 1), int(popMax / 5) * (a.Age + 1));
newMSG('A group of ponies has grown a surplus of food, donating the extra <font color=\'#ffcc00\'>' + int(bonusGET) + '</font> to your town\'s stockpile.');
resources[1][1] += bonusGET;
}
if (u == 4) {
if (ShieldLevel < 100) {
bonusGET = (happiness / 100) * randRange(5 + int(loveToRank / 100), 10 + int(loveToRank / 80));
newMSG('One of your ' + a.Name + 's has generated an extra <font color=\'#ffcc00\'>' + int(bonusGET) + ' Love Magic</font>. They\'re really frisky this week!');
loveGain(bonusGET, 'Population');
}
}
if (u == 5) {
newMSG('Citizens of ' + townName + ' seem to be in very high spirits lately.');
}
houseHitEvent = true;
}
TSB = false;
if (a.Buffs[0][0] > 0) {
Buffed += 2.5 * (1 + statCharisma * 0.04);
TSB = true;
}
if (a.Buffs[0][1] > 0 && TSB == false) {
if (traitsOwned[6] == 0) {
_root.bonusPerCycle[0][1] += 0.375 * (_root.happiness / 100) * (1 + statCharisma * 0.04);
happinessPerCycle -= 0.375 * Penalty;
happinessWhat[HWC][0] -= 0.375 * Penalty;
happinessWhat[HWC][1] = 'Town Square Economic Penalty';
}
TSB = true;
}
++HWC;
if (a.Buffs[0][2] > 0 && TSB == false) {
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.25 * (1 + statCharisma * 0.04);
happinessWhat[HWC][0] += 0.25 * (1 + statCharisma * 0.04);
happinessWhat[HWC][1] = 'Town Square Relaxed Bonus';
}
TSB = true;
}
++HWC;
if (traitsOwned[29] == 1) {
if (a.Ponies[0] > 0 && a.Buffs[0][0] + a.Buffs[0][1] + a.Buffs[0][2] <= 0) {
happinessPerCycle -= 3 * Penalty;
happinessWhat[HWC][0] -= 3 * Penalty;
happinessWhat[HWC][1] = 'No Town Square Penalty';
newMSG('<font color=\'#ff0000\'>' + a.Ponies[0] + ' have abandoned ' + townName + ' due to no Town Square.</font>');
population[0][1] -= a.Ponies[0];
a.Ponies[0] -= a.Ponies[0];
Buffed = -100;
}
}
++HWC;
var v2 = 1;
if (CurrentAdviser == 1) {
v2 += 0.2;
}
if (traitsOwned[5] == 1) {
v2 += 0.1;
}
if (a.Buffs[4][0] > 0) {
loveGain((a.Ponies[0] / 400) * (happiness / 100) * loveBuff * factoryBuffLove * v2, 'Gardens');
if (_root.newUpgrades[15][2] == 1) {
happinessPerCycle += 0.01666666666666667 * a.Ponies[0] * v2;
happinessWhat[HWC][0] += 0.01666666666666667 * a.Ponies[0] * v2;
happinessWhat[HWC][1] = 'Dank Garden Bonus';
TSB = true;
}
}
++HWC;
TSB = false;
bonusModifier = 1;
if (traitsOwned[19] == 1) {
bonusModifier += 1;
}
if (_root.newUpgrades[14][2] == 1) {
bonusModifier += 0.2;
}
if (a.Buffs[6][0] > 0) {
if (traitsOwned[11] == 0) {
_root.bonusPerCycle[0][1] += 0.1875 * (_root.happiness / 100) * bonusModifier;
}
happinessPerCycle += 0.03125 * a.Ponies[0] * bonusModifier;
loveGain((a.Ponies[0] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 0.33 * bonusModifier, 'Taverns');
happinessWhat[HWC][0] += 0.03125 * a.Ponies[0] * bonusModifier;
happinessWhat[HWC][1] = 'Tavern Bonus';
TSB = true;
}
++HWC;
if (a.Buffs[6][1] > 0 && TSB == false) {
happinessPerCycle += 0.03125 * a.Ponies[0] * bonusModifier;
loveGain((a.Ponies[0] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 0.5 * bonusModifier, 'Taverns');
happinessWhat[HWC][0] += 0.03125 * a.Ponies[0] * bonusModifier;
happinessWhat[HWC][1] = 'Tavern Bonus';
TSB = true;
}
++HWC;
if (a.Buffs[6][2] > 0 && TSB == false) {
loveGain((a.Ponies[0] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 1 * bonusModifier, 'Taverns');
TSB = true;
}
bonusModifier = 1;
if (a.Buffs[15][0] > 0 || a.Buffs[15][1] > 0 || a.Buffs[15][2] > 0) {
if (_root.newUpgrades[12][2] == 1) {
if (ShieldLevel < 100) {
if (perksOwned[11] == 1) {
ShieldLevel += (a.Ponies[0] / 100) * 0.3;
}
if (_root.newUpgrades[8][2] == 1) {
ShieldLevel += (a.Ponies[0] / 100) * 0.3;
}
ShieldLevel += (a.Ponies[0] / 100) * (1 + skill_Architecture * 0.1);
} else {
ShieldLevel = 100;
}
ShieldLevelDisplay = 'SHIELD: ' + int(ShieldLevel) + '%';
}
if (traitsOwned[11] == 0) {
_root.bonusPerCycle[0][1] += 0.1875 * (_root.happiness / 100);
}
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.015625 * a.Ponies[0];
happinessWhat[HWC][0] += 0.015625 * a.Ponies[0];
happinessWhat[HWC][1] = 'Academy Bonus';
}
}
++HWC;
TSB = false;
bonusModifier = 1;
if (a.Buffs[18][0] > 0) {
if (traitsOwned[11] == 0) {
_root.bonusPerCycle[0][1] += 0.1875 * a.Ponies[0] * (_root.happiness / 100);
}
happinessPerCycle -= 0.125 * a.Ponies[0];
happinessWhat[HWC][0] -= 0.125 * a.Ponies[0];
happinessWhat[HWC][1] = 'Ballpit Disappointment';
TSB = true;
}
++HWC;
bonusModifier = 1;
if (a.Buffs[22][0] > 0) {
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.03125 * a.Ponies[0];
happinessWhat[HWC][0] += 0.03125 * a.Ponies[0];
happinessWhat[HWC][1] = 'Prism Forge Bonus';
}
}
++HWC;
if (a.Buffs[1][0] > 0 || a.Buffs[1][1] > 0 || a.Buffs[1][3] > 0) {
if (a.Buffs[1][0] > 2 || a.Buffs[1][1] > 2 || a.Buffs[1][3] > 2) {
happinessPerCycle -= 0.09375 * a.Ponies[0] * Penalty;
happinessWhat[HWC][0] -= 0.09375 * a.Ponies[0] * Penalty;
happinessWhat[HWC][1] = 'Crowded by Stores Penalty';
}
if (upgradeStoreRank >= 6) {
loveGain((a.Ponies[0] / 800) * (happiness / 100) * loveBuff * factoryBuffLove, 'Stores');
}
}
++HWC;
if (a.Buffs[1][0] == 0 && a.Buffs[1][1] == 0 && a.Buffs[1][3] == 0) {
happinessPerCycle -= 0.0625 * a.Ponies[0] * Penalty;
happinessWhat[HWC][0] -= 0.0625 * a.Ponies[0] * Penalty;
happinessWhat[HWC][1] = 'No Food-Store Penalty';
}
++HWC;
if (a.Buffs[1][2] > 0 || a.Buffs[1][3] > 0) {
if (_root.upgradeStoreRank >= 5) {
bonus = 1.2;
} else {
bonus = 1;
}
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.0625 * a.Ponies[0] * bonus;
happinessWhat[HWC][0] += 0.0625 * a.Ponies[0] * bonus;
happinessWhat[HWC][1] = 'Party Store Bonus';
}
}
++HWC;
if (a.Buffs[1][0] > 0) {
if (traitsOwned[19] != 1) {
if (_root.newUpgrades[22][2] == 1) {
happinessPerCycle += 0.03125 * a.Ponies[0] * 1.2;
happinessWhat[HWC][0] += 0.03125 * a.Ponies[0] * 1.2;
} else {
happinessPerCycle += 0.03125 * a.Ponies[0];
happinessWhat[HWC][0] += 0.03125 * a.Ponies[0];
}
happinessWhat[HWC][1] = 'Bakery Store Bonus';
}
}
++HWC;
if (a.Buffs[7][0] > 0 || a.Buffs[7][1] > 0 || a.Buffs[7][2] > 0) {
if (_root.newUpgrades[9][2] == 1) {
loveGain((a.Ponies[0] / 400) * (happiness / 100) * loveBuff * factoryBuffLove, 'Ecstasy-Emitter (Tech Lab)');
}
}
bonusModifier = 1;
TSB = false;
if (_root.newUpgrades[7][2] == 1) {
bonusModifier += 0.1;
}
if (a.Buffs[2][0] > 0 && TSB == false) {
if (traitsOwned[11] == 0) {
_root.bonusPerCycle[0][1] += 0.125 * a.Ponies[0];
TSB = true;
}
}
if (a.Buffs[2][1] > 0 && TSB == false) {
bonusPerCycle[2][1] += 0.003 * a.Ponies[0] * bonusModifier * TechBonusModifier;
libraryBonusTech += 0.003 * a.Ponies[0] * bonusModifier * TechBonusModifier;
TSB = true;
}
if (a.Buffs[2][2] > 0 && TSB == false) {
Buffed += 0.5;
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.09375 * a.Ponies[0];
happinessWhat[HWC][0] += 0.09375 * a.Ponies[0];
happinessWhat[HWC][1] = 'Library Bonus';
}
TSB = true;
}
++HWC;
if (TSB == true) {
discoveryRate += a.Ponies[0];
}
if (a.Buffs[2][0] <= 0 && a.Buffs[2][1] <= 0 && a.Buffs[2][2] <= 0 && CurrentAdviser == 0) {
happinessPerCycle -= 0.03125 * a.Ponies[0] * Penalty;
happinessWhat[HWC][0] -= 0.03125 * a.Ponies[0] * Penalty;
happinessWhat[HWC][1] = 'No Library Penalty';
}
++HWC;
if (a.Buffs[5][0] + a.Buffs[5][1] > 0 && a.Ponies[0] > 0) {
if (traitsOwned[1] == 0) {
happinessPerCycle -= 3 * Penalty;
happinessWhat[HWC][0] -= 3 * Penalty;
happinessWhat[HWC][1] = 'Quarry Penalty';
} else {
happinessPerCycle -= 0.3 * Penalty;
happinessWhat[HWC][0] -= 0.3 * Penalty;
happinessWhat[HWC][1] = 'Quarry Penalty';
ProspectorBonus += 0.05;
}
}
++HWC;
if (a.Buffs[5][3] > 0 && a.Ponies[0] > 0 && traitsOwned[1] == 0) {
happinessPerCycle -= 1.5 * Penalty;
happinessWhat[HWC][0] -= 1.5 * Penalty;
happinessWhat[HWC][1] = 'Super Quarry Penalty';
}
++HWC;
if (a.Buffs[11][0] + a.Buffs[11][1] + a.Buffs[11][2] > 0 && a.Ponies[0] > 0) {
happinessPerCycle -= 2 * Penalty;
Buffed -= 0.5 * Penalty;
happinessWhat[HWC][0] -= 2 * Penalty;
happinessWhat[HWC][1] = 'Factory Penalty';
}
++HWC;
if (a.Buffs[17][0] > 0 && a.Ponies[0] > 0) {
happinessPerCycle -= 3 * Penalty;
Buffed -= 1.5 * Penalty;
happinessWhat[HWC][0] -= 3 * Penalty;
happinessWhat[HWC][1] = 'Deep Driller Penalty';
}
++HWC;
if (a.Buffs[13][0] + a.Buffs[13][1] + a.Buffs[13][2] > 0 && a.Ponies[0] > 0) {
DefenseRatingMod += 5;
if (perksOwned[17] == 1) {
DefenseRatingMod += 2.5;
}
if (_root.newUpgrades[21][2] == 1) {
DefenseRatingMod += 1;
}
}
if (a.Buffs[14][0] + a.Buffs[14][1] + a.Buffs[14][2] > 0 && a.Ponies[0] > 0) {
if (ShieldLevel < 100) {
if (perksOwned[11] == 1) {
ShieldLevel += (a.Ponies[0] / 100) * 0.3;
}
if (_root.newUpgrades[8][2] == 1) {
ShieldLevel += (a.Ponies[0] / 100) * 0.3;
}
ShieldLevel += (a.Ponies[0] / 100) * (1 + skill_Architecture * 0.1);
} else {
ShieldLevel = 100;
}
ShieldLevelDisplay = 'SHIELD: ' + int(ShieldLevel) + '%';
}
if (_root.happiness <= 40) {
if (_root.happiness <= 20) {
roll = randRange(0, 2);
if (roll == 0) {
population[0][1] -= roll;
a.Ponies[0] -= roll;
}
} else {
roll = randRange(0, 8);
if (roll == 0) {
population[0][1] -= roll;
a.Ponies[0] -= roll;
}
}
} else {
if (CurrentAdviser == 0) {
Buffed *= 0.85;
}
if (_root.newUpgrades[13][2] == 1) {
Buffed *= 1.25;
}
if (a.Ponies[0] > 2) {
Buffed *= 0.9;
} else {
if (a.Ponies[0] > 4) {
Buffed *= 0.75;
} else {
if (a.Ponies[0] > 6) {
Buffed *= 0.6;
} else {
if (a.Ponies[0] > 8) {
Buffed *= 0.45;
} else {
if (a.Ponies[0] > 10) {
Buffed *= 0.3;
} else {
if (a.Ponies[0] > 12) {
Buffed *= 0.15;
}
}
}
}
}
}
a.PonyGrow += int(randRange(10, 30) * Buffed);
while (a.PonyGrow > 100) {
a.PonyGrow -= 100;
if (traitsOwned[29] == 1) {
if (a.Buffs[0][0] + a.Buffs[0][1] + a.Buffs[0][2] > 0) {
population[0][1] += 1;
a.Ponies[0] += 1;
}
} else {
population[0][1] += 1;
a.Ponies[0] += 1;
}
}
if (a.Ponies[0] > a.PoniesMax[0]) {
population[0][1] -= a.Ponies[0] - a.PoniesMax[0];
a.Ponies[0] -= a.Ponies[0] - a.PoniesMax[0];
}
}
} else {
if (a.Catalog == 21 && a.buildProgressPercent >= 100) {
Buffed = (1 * _root.happiness / 50) * (1 + statCharisma * 0.05);
Penalty = 1 * (1 - statKarma * 0.02);
if (resources[1][1] >= a.Ponies[1] * foodConsumed) {
resources[1][1] -= a.Ponies[1] * foodConsumed;
} else {
happinessPerCycle -= (a.Ponies[1] / 4) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[1] / 4) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Starving Pegasi';
popDecrease += a.Ponies[1];
}
++HWC;
bonusPerCycle[2][1] += 0.125 * a.Ponies[1] * TechBonusModifier * strCount[23][0];
if (_root.edictResidentialActive == 1) {
if (traitsOwned[14] == 1) {
Buffed *= 6;
} else {
Buffed *= 3;
}
}
if (_root.edictResidentialActive == 2) {
happinessPerCycle -= (a.Ponies[1] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[1] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Income Tax Edict';
}
++HWC;
if (_root.edictIndustrialActive == 2) {
happinessPerCycle -= (a.Ponies[1] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][0] -= (a.Ponies[1] / 32) * (1 - skill_Diplomacy * 0.03);
happinessWhat[HWC][1] = 'Garrison Drills Edict';
}
++HWC;
if (_root.edictResidentialActive == 3) {
Penalty *= 5;
}
if (_root.upgradeStoreRank >= 2) {
_root.bonusPerCycle[1][1] += 0.25;
}
var TSB = false;
if (a.Buffs[0][0] > 0) {
if (perksOwned[16] == 1) {
Buffed += 2.5 * (1 + statCharisma * 0.1);
} else {
Buffed += 2.5 * (1 + statCharisma * 0.05);
}
TSB = true;
}
if (a.Buffs[0][1] > 0 && TSB == false) {
if (traitsOwned[6] == 0) {
_root.bonusPerCycle[0][1] += 0.375 * (_root.happiness / 100) * (1 + statCharisma * 0.05);
happinessPerCycle -= 0.375 * Penalty;
happinessWhat[HWC][0] -= 0.375 * Penalty;
happinessWhat[HWC][1] = 'Town Square Economic Penalty (Pegasus)';
}
TSB = true;
}
++HWC;
if (a.Buffs[0][2] > 0 && TSB == false) {
if (traitsOwned[19] != 1) {
happinessPerCycle += 0.25 * (1 + statCharisma * 0.05);
happinessWhat[HWC][0] += 0.25 * (1 + statCharisma * 0.05);
happinessWhat[HWC][1] = 'Town Square Relaxed Bonus (Pegasus)';
}
TSB = true;
}
++HWC;
if (traitsOwned[29] == 1) {
if (a.Ponies[1] > 0 && a.Buffs[0][0] + a.Buffs[0][1] + a.Buffs[0][2] <= 0) {
happinessPerCycle -= 3 * Penalty;
happinessWhat[HWC][0] -= 3 * Penalty;
happinessWhat[HWC][1] = 'No Town Square Penalty';
newMSG('<font color=\'#ff0000\'>' + a.Ponies[1] + ' have abandoned ' + townName + ' due to no Town Square.</font>');
population[1][1] -= a.Ponies[1];
a.Ponies[1] -= a.Ponies[1];
Buffed = -100;
}
}
++HWC;
var v2 = 1;
if (CurrentAdviser == 1) {
v2 += 0.2;
}
if (traitsOwned[5] == 1) {
v2 += 0.1;
}
if (traitsOwned[1] == 0) {
if (a.Buffs[4][0] > 0) {
loveGain((a.Ponies[1] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * v2, 'Gardens');
}
}
var TSB = false;
bonusModifier = 1;
if (traitsOwned[19] == 1) {
bonusModifier += 1;
}
if (_root.newUpgrades[14][2] == 1) {
bonusModifier += 0.2;
}
if (a.Buffs[6][0] > 0) {
if (traitsOwned[11] == 0) {
_root.bonusPerCycle[0][1] += 0.1875 * ((_root.happiness / 100) * bonusModifier);
}
happinessPerCycle += 0.03125 * a.Ponies[1] * bonusModifier;
loveGain((a.Ponies[1] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 0.33 * bonusModifier, 'Taverns');
happinessWhat[HWC][0] += 0.03125 * a.Ponies[1] * bonusModifier;
happinessWhat[HWC][1] = 'Tavern Bonus (Pegasus)';
TSB = true;
}
++HWC;
if (a.Buffs[6][1] > 0 && TSB == false) {
happinessPerCycle += 0.03125 * a.Ponies[1] * bonusModifier;
loveGain((a.Ponies[1] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 0.5 * bonusModifier, 'Taverns');
happinessWhat[HWC][0] += 0.03125 * a.Ponies[1] * bonusModifier;
happinessWhat[HWC][1] = 'Tavern Bonus (Pegasus)';
TSB = true;
}
++HWC;
if (a.Buffs[6][2] > 0 && TSB == false) {
loveGain((a.Ponies[1] / 800) * (happiness / 100) * loveBuff * factoryBuffLove * 1 * bonusModifier, 'Taverns');
TSB = true;
}
var TSB = false;
bonusModifier = 1;
if (a.Buffs[15][0] > 0 || a.Buffs[15][1] > 0 || a.Buffs[15][2] > 0) {
_root.bonusPerCycle[0][1] += 0.1875 * (_root.happiness / 100);
happinessPerCycle += 0.015625 * a.Ponies[1];
happinessWhat[HWC][0] += 0.015625 * a.Ponies[1];
happinessWhat[HWC][1] = 'Academy Bonus (Pegasus)';
TSB = true;
}
++HWC;
if (a.Buffs[7][0] > 0 || a.Buffs[7][1] > 0 || a.Buffs[7][2] > 0) {
if (_root.upgradeTechLabRank >= 4) {
loveGain((a.Ponies[1] / 400) * (happiness / 100) * loveBuff * factoryBuffLove, 'Tech Labs');
}
}
if (a.Buffs[5][0] + a.Buffs[5][1] > 0 && a.Ponies[1] > 0 && traitsOwned[1] == 0) {
happinessPerCycle -= 2 * Penalty;
happinessWhat[HWC][0] -= 2 * Penalty;
happinessWhat[HWC][1] = 'Quarry Penalty (Pegasus)';
}
++HWC;
if (a.Buffs[11][0] + a.Buffs[11][1] + a.Buffs[11][2] > 0 && a.Ponies[1] > 0) {
happinessPerCycle -= 2 * Penalty;
Buffed -= 0.5 * Penalty;
happinessWhat[HWC][0] -= 2 * Penalty;
happinessWhat[HWC][1] = 'Factory Penalty (Pegasus)';
}
++HWC;
if (a.Buffs[17][0] > 0 && a.Ponies[1] > 0) {
happinessPerCycle -= 3 * Penalty;
Buffed -= 1.5 * Penalty;
happinessWhat[HWC][0] -= 3 * Penalty;
happinessWhat[HWC][1] = 'Deep Driller Penalty (Pegasus)';
}
++HWC;
if (a.Buffs[13][0] + a.Buffs[13][1] + a.Buffs[13][2] > 0 && a.Ponies[1] > 0) {
DefenseRatingMod += 5;
if (perksOwned[17] == 1) {
DefenseRatingMod += 2.5 * strCount[13][0];
}
}
if (a.Buffs[14][0] + a.Buffs[14][1] + a.Buffs[14][2] > 0 && a.Ponies[1] > 0) {
if (ShieldLevel < 100) {
if (perksOwned[11] == 1) {
ShieldLevel += (a.Ponies[1] / 100) * 0.3;
}
if (_root.upgradeTechLabRank >= 5) {
ShieldLevel += (a.Ponies[1] / 100) * 0.3;
}
ShieldLevel += (a.Ponies[1] / 100) * (1 + skill_Architecture * 0.1);
} else {
ShieldLevel = 100;
}
ShieldLevelDisplay = 'SHIELD: ' + int(ShieldLevel) + '%';
}
if (_root.happiness <= 40) {
if (_root.happiness <= 20) {
roll = randRange(0, 2);
if (roll == 0) {
population[1][1] -= roll;
a.Ponies[1] -= roll;
}
} else {
roll = randRange(0, 8);
if (roll == 0) {
population[1][1] -= roll;
a.Ponies[1] -= roll;
}
}
} else {
if (CurrentAdviser == 0) {
Buffed *= 0.85;
}
if (_root.newUpgrades[13][2] == 1) {
Buffed *= 1.25;
}
if (a.Ponies[1] > 1) {
Buffed *= 0.9;
} else {
if (a.Ponies[1] > 2) {
Buffed *= 0.75;
} else {
if (a.Ponies[1] > 3) {
Buffed *= 0.6;
} else {
if (a.Ponies[1] > 4) {
Buffed *= 0.45;
} else {
if (a.Ponies[1] > 5) {
Buffed *= 0.3;
} else {
if (a.Ponies[1] > 6) {
Buffed *= 0.15;
}
}
}
}
}
}
a.PonyGrow += int(randRange(10, 30) * Buffed);
while (a.PonyGrow > 100) {
a.PonyGrow -= 100;
if (traitsOwned[29] == 1) {
if (a.Buffs[0][0] + a.Buffs[0][1] + a.Buffs[0][2] > 0) {
population[1][1] += 1;
a.Ponies[1] += 1;
}
} else {
population[1][1] += 1;
a.Ponies[1] += 1;
}
}
if (a.Ponies[1] > a.PoniesMax[1]) {
population[1][1] -= a.Ponies[1] - a.PoniesMax[1];
a.Ponies[1] -= a.Ponies[1] - a.PoniesMax[1];
}
}
}
}
}
}
}
}
}
}
++i;
}
discoveryRate *= 1 + statInsight * 0.1;
if (CurrentAdviser == 6) {
discoveryRate *= 0.5;
}
discoveryRateDisplay = int(discoveryRate * 100) / 100;
discoveryProgress += randRange(1, 3) * (discoveryRate * 0.01) * (5 / (discoveryTotal + 5));
discoveryProgressDisplay = int(discoveryProgress) + '%';
if (discoveryProgress >= 100 && undiscoveredTechs.length > 0) {
if (newUpgradesOwned.length < 12) {
techRand = randRange(0, undiscoveredTechs.length - 1);
discoverTech(undiscoveredTechs[techRand]);
discoveryProgress -= 100;
++discoveryTotal;
} else {
discoveryProgress = 100;
}
}
HWC = HWCbase;
if (int(environmentPerCycle) >= 0) {
environmentScore = '+' + int(environmentPerCycle);
} else {
environmentScore = '<font color=\'#FF0000\'>' + int(environmentPerCycle) + '</font>';
}
if (_root.newUpgrades[10][2] == 1) {
if (environmentPerCycle > 0) {
DefenseRatingMod += int(environmentPerCycle);
}
}
if (traitsOwned[4] == 1) {
if (popTotal < 100) {
Tempy = int((environmentPerCycle - 12) * 1) * (popTotal / 100);
} else {
Tempy = int((environmentPerCycle - 12) * 1);
}
if (Tempy > 16) {
Tempy = 16;
}
happinessPerCycle += Tempy;
happinessWhat[HWC][0] += Tempy;
happinessWhat[HWC][1] = 'Environmentalist Trait';
}
++HWC;
if (perksOwned[5] == 1) {
if (environmentPerCycle < 0) {
happinessPerCycle += int(environmentPerCycle * -0.25);
happinessWhat[HWC][0] += int(environmentPerCycle * -0.25);
happinessWhat[HWC][1] = 'Industrious Perk';
}
}
++HWC;
if (environmentPerCycle < -1) {
if (environment > 30) {
if (EcoWarning == 0) {
newMSG('<font color=\'#FF0000\'>Your Ecobalance is negative. Your Environmental Condition will degrade over time.</font>');
newMSG('<font color=\'#FF0000\'>Trees and Gardens can reduce the negative impact.</font>');
EcoWarning = 5;
} else {
--EcoWarning;
}
} else {
if (environment < 30 && environment > 10) {
if (EcoWarning == 0) {
newMSG('<font color=\'#FF0000\'>Your Environment is in terrible condition and will continue to degrade, but very slowly.</font>');
newMSG('<font color=\'#FF0000\'>Aggressive Encounters will be more frequent and your citizens will be unhappy.</font>');
EcoWarning = 10;
} else {
--EcoWarning;
}
} else {
if (environment < 10) {
if (EcoWarning == 0) {
newMSG('<font color=\'#FF0000\'>Your Environment is completely destroyed.</font>');
EcoWarning = 100;
} else {
--EcoWarning;
}
}
}
}
}
if (environment < 30 && environment > 10) {
if (environmentPerCycle <= -1) {
environmentPerCycle = -1;
}
removeKebab = 12 - statWillpower * 0.8;
if (removeKebab > 0) {
happinessPerCycle -= removeKebab;
happinessWhat[HWC][0] -= removeKebab;
happinessWhat[HWC][1] = 'Weakened Environment';
}
} else {
if (environment < 10) {
if (environmentPerCycle <= -1) {
environmentPerCycle = -1;
}
removeKebab = 36 - statWillpower * 0.8;
if (removeKebab > 0) {
happinessPerCycle -= removeKebab;
happinessWhat[HWC][0] -= removeKebab;
happinessWhat[HWC][1] = 'Destroyed Environment';
}
}
}
resourceEcoCycle = int(environmentPerCycle);
if (environmentPerCycle > -1) {
environmentPerCycle = 0;
}
++HWC;
environment += environmentPerCycle;
if (environment < -100) {
environment = -100;
}
environmentDisplay = int(environment);
if (popDecrease != 0) {
newMSG('<font color=\'#ff0000\'>' + popDecrease + ' ponies don\'t have enough food and are upset!</font>');
if (happiness > 90) {
happiness -= 30 - statWillpower;
} else {
if (happiness > 70) {
happiness -= 20 - int(statWillpower / 3);
} else {
happiness -= 10 - int(statWillpower / 3);
}
}
}
loveBuff += happinessPerCycle / 800;
loveGain((a.Ponies[0] / 400) * (happiness / 100) * loveBuff * factoryBuffLove, 'Factories');
if (int(happinessPerCycle) >= 0) {
happiness += 1.25;
if (traitsOwned[13] != 1) {
mana += happinessPerCycle * (happiness / 100) * 0.1;
}
if (perksOwned[4] == 1) {
loveGain(happinessPerCycle * (happiness / 100) * 0.1, 'Tranquil Perk');
}
Reputation += happinessPerCycle / 10;
ReputationDisplay = int(Reputation);
} else {
if (int(happinessPerCycle) >= -5) {
happiness -= happinessPerCycle;
} else {
happiness -= 5;
}
}
if (happiness < 20) {
Reputation *= 0.8;
if (Reputation < 0) {
}
ReputationDisplay = int(Reputation);
}
if (happiness < minHappiness) {
happiness = minHappiness;
}
if (happiness > maxHappiness) {
if (traitsOwned[13] != 1) {
mana += (happiness - maxHappiness) * 0.1;
}
happiness = maxHappiness;
}
if (_root.newUpgrades[5][2] == 1) {
mana += (_root.strCount[2][0] + _root.strCount[2][1] + _root.strCount[2][2]) * 0.25;
}
if (traitsOwned[13] == 1) {
mana += 1.25;
}
if (StoryFlags[1] == 1) {
++mana;
}
if (traitsOwned[12] == 1) {
mana += TreeCount * 0.3 / 4;
}
mana += 0.125 + manaMax * 0.02;
if (perksOwned[13] == 1) {
DefenseRatingMod += 1 * TreeCount * 3;
} else {
DefenseRatingMod += 1 * TreeCount * 1;
}
if (traitsOwned[27] == 1) {
DefenseRatingMod += _root.strCount[3][0] + strCount[3][3] + strCount[3][4];
}
if (_root.newUpgrades[18][2] == 1) {
DefenseRatingMod += 0.25 * (_root.strCount[3][0] + strCount[3][3] + strCount[3][4]);
}
DefenseRatingTotal = int(DefenseRating) + int(DefenseRatingMod);
DefensePoints += (5 + statWillpower * 1) / 4;
if (perksOwned[1] == 1) {
DefensePoints += 1.25;
}
if (_root.edictIndustrialActive == 2) {
if (traitsOwned[14] == 1) {
DefensePoints += _root.strCount[13][0] * 2.5;
} else {
DefensePoints += _root.strCount[13][0] * 1.25;
}
}
if (DefensePoints > DefenseRatingTotal || maxDP == true) {
DefensePoints = DefenseRatingTotal;
maxDP = false;
}
attackingAlready = false;
LevelUpAggro();
inCycle = false;
refreshResources();
if (!ASCENDING) {
writeData();
}
}
function researchTech(TECH) {
_root.newUpgrades[TECH][2] = 1;
z = 0;
while (z < newUpgradesOwned.length) {
if (newUpgradesOwned[z][0] == TECH) {
newUpgradesOwned[z][1] = 2;
}
++z;
}
}
function discoverTech(TECH) {
newUpgradesOwned.push([TECH, 1]);
i = 0;
while (i < newUpgradesOwned.length) {
if (newUpgradesOwned[i][1] == 1) {
newUpgrades[newUpgradesOwned[i][0]][1] = 1;
}
if (newUpgradesOwned[i][1] == 2) {
newUpgrades[newUpgradesOwned[i][0]][1] = 1;
newUpgrades[newUpgradesOwned[i][0]][2] = 1;
}
++i;
}
undiscoveredTechs.splice(0, undiscoveredTechs.length);
undiscoveredTechs = [];
i = 0;
while (i < newUpgrades.length) {
if (newUpgrades[i][1] == 0 && newUpgrades[i][2] == 0) {
undiscoveredTechs.push(i);
}
++i;
}
_root.hudInfo.refreshTechs();
newMSG('Discovered new Technology: <font color=\'#33FFFF\'>' + newUpgrades[TECH][3] + '</font>! It is available for Research now.');
}
function LevelUpAggro() {
if (aggroWarn > 0) {
--aggroWarn;
}
encounterThreshold = 50 + DefenseRatingTotal * 2;
x = 0;
while (x < currentEncounters.length) {
if (currentEncounters[x][0] != NaN && currentEncounters[x][0] != undefined && currentEncounters[x][0] != 0) {
currentEncounters[x][2] += currentEncounters[x][4];
currentEncounters[x][8] -= 1;
trace(currentEncounters[x][2] + ' vs ' + currentEncounters[x][7]);
trace('ShieldLevel = ' + ShieldLevel);
if (currentEncounters[x][2] < currentEncounters[x][7] && ShieldLevel < 100) {
if (traitsOwned[30] == 1 && ShieldLevel < 100) {
currentEncounters[x][0] = 'Rioters';
currentEncounters[x][1] = 'They were promised a hero, but in the end found only disappointment.';
currentEncounters[x][2] = randRange(30, 100) * (1 + clockTime / 200) * 5;
currentEncounters[x][4] = 2;
currentEncounters[x][5] = 'riot';
currentEncounters[x][6] = 'aggro';
newMSG('<font color=\'#ff0000\'>' + currentEncounters[x][0] + ' has been ignored and turns Aggressive! Uh oh.</font>');
} else {
currentEncounters.splice(x, 1);
}
}
if (aggroWarn == 0 && currentEncounters[x][2] > encounterThreshold * 0.75 && currentEncounters[x][2] < encounterThreshold * 1) {
aggroWarn = 12;
newMSG('<font color=\'#ff0000\'>' + currentEncounters[x][0] + ' continue to grow in force (' + int(currentEncounters[x][2]) + ') and might attack ' + townName + ' soon.</font>');
} else {
if (currentEncounters[x][2] >= encounterThreshold * 1 && currentEncounters[x][6] == 'aggro' && currentEncounters[x][8] <= 0) {
EvilAttacks();
currentEncounters.splice(x, 1);
}
}
}
++x;
}
_root.hudInfo.refreshEncounters();
}
function drDisplay() {
DefenseRatingDisplay = int(DefensePoints) + '/' + DefenseRatingTotal;
}
function selectStructure(building) {
if (_root.buildPlacement == 'blank' && (building.Catalog != -1 || building.Natural == 'n2' || selectBlanks == true || building.AddOn != 1)) {
deselectAll();
_root.nodeSelected = building;
building.selectArrow.gotoAndPlay('loop');
building.selectArrow._alpha = 100;
building.selectOutline._alpha = 100;
_root.hudDynamic.gotoAndStop('displayNode');
if (building.ModesEnabled == false) {
if (building.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(3);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(4);
}
} else {
if (building.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(1);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(2);
}
}
if (a.Catalog != -1) {
if (building.UpgradeRank == 0) {
building.Name = _root.buildList[building.Catalog][0];
} else {
building.Name = _root.modeList[building.Catalog][building.UpgradeRank + 2][2];
}
if (building.ModeInt == 10) {
building.Text = _root.modeList[building.Catalog][0][1];
building.BuildText = _root.modeList[building.Catalog][0][0].toUpperCase();
} else {
building.Text = _root.modeList[a.Catalog][building.ModeInt][1];
building.BuildText = _root.modeList[AA.Catalog][building.ModeInt][0].toUpperCase();
}
} else {
if (a.Natural == 'blank') {
a.Name = 'Blank Node';
a.Text = 'Empty lot. Structures can be built here.';
} else {
if (a.Natural == 'n2') {
a.Name = 'Uncontrolled Land';
a.Text = 'Land you don\'t currently own. You can gain control of this lot by purchasing it.';
} else {
a.Name = 'Tree';
a.Text = 'Improves Eco Score. Is destroyed if another building is placed here.';
}
}
}
if (building.Mode != 'Basic') {
building.NameDisplay = building.Name + ' (' + building.Mode + ')';
} else {
building.NameDisplay = building.Name;
}
_root.nodeDisplayName = building.NameDisplay;
_root.nodeDisplayText = building.Text;
if (showRadiusOnSelect == true) {
showRadius(building, building.Catalog);
} else {
showRadius(NaN, -1);
}
updateHudCard(building);
} else {
if (_root.buildPlacement != 'blank') {
_root.feedText2 = '';
_root.feedText = 'Can\'t place a structure there.';
} else {
deselectAll();
}
}
}
function updateHudCard(building) {
if (building != NaN && building != undefined && _root.hudInfoToggle != 2) {
_root.hudCard._alpha = 100;
_root.hudCard.field1.text = building.NameDisplay;
_root.hudCard.trade.gotoAndStop(1);
_root.hudCard.upgrades.gotoAndStop(1);
var v3 = '';
if (building.ModeInt == 10) {
v3 += 'This structure is currently under construction.';
} else {
_root.hudCard.upgrades.gotoAndStop(int(building.Catalog) + 3);
_root.hudCard.needs.gotoAndStop(int(building.Catalog) + 3);
}
if (building.ModeInt != 10) {
if (building.Catalog == 3) {
v3 = 'This ' + building.Name + ' is occupied by <font color=\'#FFCC00\'>' + building.Ponies[0] + ' </font>out of <font color=\'#FFCC00\'>' + building.PoniesMax[0] + '</font> Ponies.' + '\n';
var v4 = '';
if (building.Buffs[0][0] > 0) {
v3 += 'Due to the nearby Town Square Residents will move into this house more quickly than usual, ';
v4 = 'and';
} else {
if (building.Buffs[0][1] > 0) {
v3 += 'Due to the nearby Town Square Residents here generate more income than usual, ';
v4 = 'and';
} else {
if (building.Buffs[0][2] > 0) {
v3 += 'Due to the nearby Town Square Residents of this house are happier than usual, ';
v4 = 'and';
} else {
v3 += 'Residents of this home wonder why there\'s no nearby Town Square, ';
v4 = 'but';
}
}
}
if (building.Buffs[1][0] + building.Buffs[1][1] + building.Buffs[1][3] < 1) {
if (v4 == 'but') {
v4 = 'and';
} else {
if (v4 == 'and') {
v4 = 'but';
}
}
v3 += v4 + ' no nearby Food options means they\'ll have to travel to get supplies.';
} else {
if (building.Buffs[1][0] + building.Buffs[1][1] + building.Buffs[1][3] > 2) {
if (v4 == 'but') {
v4 = 'and';
} else {
if (v4 == 'and') {
v4 = 'but';
}
}
v3 += v4 + ' they feel crowded by all of the nearby commercial buildings.';
} else {
v3 += v4 + ' they are content with local Food options.';
}
}
if (building.Buffs[5][0] + building.Buffs[5][1] + building.Buffs[5][3] > 0 && traitsOwned[1] == 0) {
v3 += ' Due to the nearby Gem Quarry, Ponies are very unhappy.';
}
}
if (building.Catalog == 21) {
v3 = 'This ' + building.Name + ' is occupied by <font color=\'#FFCC00\'>' + building.Ponies[1] + ' </font>out of <font color=\'#FFCC00\'>' + building.PoniesMax[1] + '</font> Pegasi.' + '\n';
}
if (building.Catalog == 0) {
if (building.ModeInt == 0) {
v3 += 'Affected Homes have increased Arrival Rate. Houses can only be affected by 1 type of Town Square aura.';
}
if (building.ModeInt == 1) {
v3 += 'Affected Homes have increased Bits Income. Houses can only be affected by 1 type of Town Square aura.';
}
if (building.ModeInt == 2) {
v3 += 'Affected Homes have increased Happiness. Houses can only be affected by 1 type of Town Square aura.';
}
v3 += '\n';
if (_root.tradeCooldown[0] >= 0) {
_root.hudCard.trade.gotoAndStop(2);
v3 += 'There are <font color=\'#FFCC00\'>' + int((_root.tradeCooldown[0] + 5) / 5) + '</font> traders available at your local marketplace.';
} else {
_root.hudCard.trade.gotoAndStop(3);
}
}
if (building.Catalog == 4) {
_root.hudCard.trade.gotoAndStop('Garden');
}
if (building.Catalog == 6) {
_root.hudCard.trade.gotoAndStop('Tavern');
}
if (building.Natural == 'n2') {
_root.hudCard.trade.gotoAndStop('Uncontrolled');
}
}
_root.hudCard.field2.html = true;
_root.hudCard.field2.htmlText = v3;
}
}
function displayModel(NODE, placing) {
NODE.sprite.model.removeMovieClip();
if (placing == true) {
NODE.sprite.attachMovie('Structure' + buildList[_root.buildCatalog][11], 'model', NODE.sprite.getNextHighestDepth());
NODE.sprite.model._alpha = 35;
} else {
if (NODE.Natural == 'blank') {
if (NODE.Catalog != -1) {
NODE.sprite.attachMovie('Structure' + buildList[NODE.Catalog][11], 'model', NODE.sprite.getNextHighestDepth());
}
} else {
if (NODE.Natural == 'n1') {
NODE.sprite.attachMovie('StructureNaturalTrees', 'model', NODE.sprite.getNextHighestDepth());
NODE.sprite.model._x += NODE.treePosX;
NODE.sprite.model._y += NODE.treePosY;
} else {
if (NODE.Natural == 'n2') {
NODE.sprite.attachMovie('StructureBlockage', 'model', NODE.sprite.getNextHighestDepth());
}
}
}
if (!NODE.Constructing) {
NODE.sprite.model.gotoAndStop(NODE.ModeInt + 1);
} else {
a.sprite.model.gotoAndStop('construction');
}
NODE.sprite.model._alpha = 100;
}
}
function createNode(xPos, yPos, Natural, type, nodeScale) {
++_root.nodeDepth;
var v4 = _root.world.attachMovie('node', 'node' + _root.nodeDepth, _root.nodeDepth);
a = _root.world['node' + _root.nodeDepth];
v4.cacheAsBitmap = true;
a._x = xPos;
a._y = yPos;
a._xscale = nodeScale;
a._yscale = nodeScale;
a.Catalog = -1;
a.UpgradeRank = 0;
a.Mode = 'Basic';
a.ModeInt = 0;
a.Natural = Natural;
var v3 = 0;
if (a.Natural == 'blank') {
a.Name = 'Blank Node';
a.Text = 'Empty lot. Structures can be built here.';
} else {
if (a.Natural == 'n1') {
if (traitsOwned[12] == 1) {
a.ModeInt = randRange(40, 41);
} else {
a.ModeInt = randRange(0, 10);
}
a.Name = naturalList[v3][a.ModeInt][0];
a.Text = naturalList[v3][a.ModeInt][1];
a.treePosX = randRange(-20, 20);
a.treePosY = randRange(-50, -30);
} else {
if (a.Natural == 'n2') {
a.Name = 'Uncontrolled Tile';
a.Text = 'Structures can be built here once purchased.';
}
}
}
a.Age = 0;
a.Yield = 0;
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
a.AddOn = 1;
a.TileType = type;
a.tileType.gotoAndStop(type);
a.buildProgress = 0;
a.buildProgressPercent = 0;
a.BuildText = '';
a.ModesEnabled = false;
a.UpgradesEnabled = false;
a.Buffs = new Array(30);
glibs = 0;
while (glibs < 30) {
a.Buffs[glibs] = new Array(6);
++glibs;
}
a.Ponies = new Array(0, 0, 0);
a.Arrive = 0;
a.PonyGrow = 0;
a.PoniesMax = new Array(0, 0, 0);
a.Value = new Array(NaN, 0, 0, 0, 0, 0, 0);
a.Power = 0;
a.TreeCount = 0;
displayModel(a, false);
a.btnNodeSelect.onPress = function () {
if (_root.hudInfoToggle == 1) {
_root.nodeSelected.selectArrow.gotoAndStop('disabled');
_root.nodeSelected.selectArrow._alpha = 0;
_root.nodeSelected.selectOutline._alpha = 0;
a = this._parent;
if (buildPlacement == 'blank' || a.Catalog != -1 && buildPlacement != 'remove') {
selectStructure(a);
} else {
if (FreeStructure[_root.buildCatalog] != 1) {
k = 0;
while (k < 6) {
if (k < 4) {
if (_root.resources[k][1] >= buildList[buildCatalog][k + 1]) {
costOK = true;
} else {
costOK = false;
break;
}
} else {
if (_root.resources[k][1] >= buildList[buildCatalog][k + 5]) {
costOK = true;
} else {
costOK = false;
break;
}
}
++k;
}
} else {
costOK = true;
}
if (costOK == true) {
if (_root.buildCatalog == '??') {
} else {
if (a.Natural == 'n2') {
if (buildPlacement == 'remove') {
_root.nodeSelected = a;
if (_root.upgradeMoreTilesRank < 0) {
++_root.upgradeMoreTilesRank;
_root.refreshResources();
roll = randRange(0, 100);
treeChance = 30 + statKarma * 3;
if (roll < treeChance) {
_root.nodeSelected.Natural = 'n1';
_root.nodeSelected.gotoAndStop(_root.nodeSelected.Natural);
if (_root.traitsOwned[12] == 1) {
_root.nodeSelected.ModeInt = _root.randRange(40, 41);
} else {
_root.nodeSelected.ModeInt = _root.randRange(0, 10);
}
_root.nodeSelected.Name = naturalList[0][_root.nodeSelected.ModeInt][0];
_root.nodeSelected.Text = naturalList[0][_root.nodeSelected.ModeInt][1];
_root.nodeSelected.Mode = 'Basic';
_root.nodeSelected.NameDisplay = _root.nodeSelected.Name;
_root.nodeSelected.treePosX = _root.randRange(-20, 20);
_root.nodeSelected.treePosY = _root.randRange(-50, -30);
} else {
_root.nodeSelected.Natural = 'blank';
}
_root.displayModel(_root.nodeSelected, false);
_root.selectStructure(_root.nodeSelected);
_root.updateHudCard(_root.nodeSelected);
if (_root.upgradeMoreTilesRank < 0) {
_root.upgradeMoreTilesCost = 'FREE';
_root.feedText2 = 'Obtain Free Tile';
_root.feedText = 'This plot of land can be claimed for free. You have ' + _root.upgradeMoreTilesRank * -1 + ' free tiles remaining.';
} else {
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN || _root.upgradeMoreTilesRank == 27) {
_root.upgradeMoreTilesCost = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
_root.feedText2 = 'Purchase this Tile - ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] + ' Bits';
_root.feedText = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][1] + ': ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][2];
} else {
_root.upgradeMoreTilesCost = 'MAX';
_root.feedText2 = 'Tile Space Fully Upgraded';
_root.feedText = 'Cannot be upgraded further.';
}
}
} else {
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN) {
if (_root.resources[0][1] >= _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0]) {
_root.resources[0][1] -= _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
++_root.upgradeMoreTilesRank;
_root.refreshResources();
roll = randRange(0, 100);
treeChance = 30 + statKarma * 3;
if (roll < treeChance) {
_root.nodeSelected.Natural = 'n1';
_root.nodeSelected.gotoAndStop(_root.nodeSelected.Natural);
if (_root.traitsOwned[12] == 1) {
_root.nodeSelected.ModeInt = _root.randRange(40, 41);
} else {
_root.nodeSelected.ModeInt = _root.randRange(0, 10);
}
_root.nodeSelected.Name = naturalList[0][_root.nodeSelected.ModeInt][0];
_root.nodeSelected.Text = naturalList[0][_root.nodeSelected.ModeInt][1];
_root.nodeSelected.Mode = 'Basic';
_root.nodeSelected.NameDisplay = _root.nodeSelected.Name;
_root.nodeSelected.treePosX = _root.randRange(-20, 20);
_root.nodeSelected.treePosY = _root.randRange(-50, -30);
} else {
_root.nodeSelected.Natural = 'blank';
}
_root.displayModel(_root.nodeSelected, false);
_root.selectStructure(_root.nodeSelected);
_root.updateHudCard(_root.nodeSelected);
if (_root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] != NaN || _root.upgradeMoreTilesRank == 27) {
_root.upgradeMoreTilesCost = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0];
_root.feedText2 = 'Purchase this Tile - ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][0] + ' Bits';
_root.feedText = _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][1] + ': ' + _root.upgradeMoreTiles[_root.upgradeMoreTilesRank][2];
} else {
_root.upgradeMoreTilesCost = 'MAX';
_root.feedText2 = 'Tile Space Fully Upgraded';
_root.feedText = 'Cannot be upgraded further.';
}
} else {
_root.feedText2 = '';
_root.feedText = 'Insufficient Bits to purchase additional city tiles.';
}
}
}
}
} else {
if (_root.buildCatalog == 9 && a.Natural != 'n1') {
} else {
if (buildPlacement != 'remove') {
if (a.TileType == 'grass' && buildList[_root.buildCatalog][7] == 1 || a.TileType == 'cloud' && buildList[_root.buildCatalog][8] == 1) {
a.Catalog = _root.buildCatalog;
a.buildTime = int(buildList[a.Catalog][5] / (1 + skill_Architecture * 0.15));
if (a.Natural == 'n1') {
if (traitsOwned[12] == 1) {
happiness = minHappiness;
mana = 0;
newMSG('<font color=\'#ff0000\'>You have angered the Forest God.</font>');
}
if (CurrentAdviser == 6) {
a.buildTime *= 0.5;
resources[0][1] += 40;
}
}
if (a.buildTime < 2) {
a.buildTime = 2;
}
a.Natural = 'blank';
a.buildProgress = 0;
a.buildProgressPercent = 0;
a.Name = _root.buildList[a.Catalog][0];
a.Mode = 'Constructing';
a.ModeInt = 10;
a.ModesEnabled = false;
a.UpgradesEnabled = false;
if (a.Catalog == 3) {
a.PoniesMax[0] = basePopHouse;
}
if (a.Catalog == 9) {
a.PoniesMax[0] = basePopTreeHouse;
}
if (a.Catalog == 21) {
a.PoniesMax[1] = basePopHouseCloud;
}
displayModel(a, false);
randsfx = _root.randRange(0, _root.sfxbankWood.length - 1);
_root.playsfx1(_root.sfxbankWood, randsfx, 1);
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
a.Text = _root.modeList[a.Catalog][0][1];
a.BuildText = _root.modeList[a.Catalog][0][0].toUpperCase();
++strCount[a.Catalog][a.ModeInt];
if (FreeStructure[_root.buildCatalog] != 1) {
k = 0;
while (k < 6) {
if (k < 4) {
_root.resources[k][1] -= buildList[a.Catalog][k + 1];
a.Value[k + 1] = buildList[a.Catalog][k + 1];
} else {
_root.resources[k][1] -= buildList[a.Catalog][k + 5];
a.Value[k + 1] = buildList[a.Catalog][k + 5];
}
refreshResources();
++k;
}
} else {
FreeStructure[_root.buildCatalog] = 2;
}
if (!Key.isDown(16)) {
_root.nodeSelected = a;
_root.hudDynamic.gotoAndStop(tierSelected);
if (a.ModesEnabled == false) {
if (a.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(3);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(4);
}
} else {
if (a.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(1);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(2);
}
}
_root.nodeDisplayName = a.NameDisplay;
_root.nodeDisplayText = a.Text;
_root.buildPlacement = 'blank';
a.selectArrow.gotoAndPlay('loop');
a.selectArrow._alpha = 100;
a.selectOutline._alpha = 100;
}
}
} else {
if (a.Catalog != -1) {
findBuffers(a, -1);
--strCount[a.Catalog][a.ModeInt];
a.Name = 'Blank Node';
a.Mode = '';
a.NameDisplay = a.Name;
a.Text = 'An empty place waiting for something to be built on it.';
a.BuildText = '';
a.ModesEnabled = false;
a.UpgradeRank = 0;
k = 0;
while (k < 6) {
if (a.ModeInt == 10 || perksOwned[10] == 1) {
_root.resources[k][1] += int(1 * a.Value[k + 1]);
} else {
if (_root.newUpgrades[23][2] == 1) {
_root.resources[k][1] += int(0.75 * a.Value[k + 1]);
} else {
_root.resources[k][1] += int(0.6 * a.Value[k + 1]);
}
}
refreshResources();
++k;
}
a.ModeInt = 0;
a.Catalog = -1;
displayModel(a, false);
if (!Key.isDown(16)) {
_root.buildPlacement = 'blank';
deselectAll();
}
g = 0;
while (g < 3) {
population[g][1] -= a.Ponies[g];
a.Ponies[g] = 0;
++g;
}
} else {}
}
}
}
}
} else {
_root.feedText = 'Not enough resources.';
}
}
}
};
a.btnNodeSelect.onRollOver = function () {
a = this._parent;
if (_root.buildPlacement != 'blank') {
if (a.Catalog == -1) {
if (a.Natural == 'n2' || (_root.buildCatalog == 9 && a.Natural != 'n1' || a.TileType == 'grass' && buildList[_root.buildCatalog][7] != 1 || a.TileType == 'cloud' && buildList[_root.buildCatalog][8] != 1)) {
showRadius(a, _root.buildCatalog, false);
} else {
if (_root.buildCatalog == '??') {
} else {
displayModel(a, true);
showRadius(a, _root.buildCatalog, true);
}
}
} else {
showRadius(a, _root.buildCatalog, false);
}
}
_root.nodeHighlighted = a;
};
a.btnNodeSelect.onRollOut = function () {
a = this._parent;
displayModel(a, false);
_root.nodeHighlighted = NaN;
};
a.btnNodeSelect.onReleaseOutside = function () {
a = this._parent;
displayModel(a, false);
_root.nodeHighlighted = NaN;
};
}
function pickNodesRadius(node, radius) {
h = nodeDepthInitial + 1;
while (h < nodeDepth + 1) {
var v3 = (node._x - _root.world['node' + h]._x) * SepXYRatio;
var v2 = node._y - _root.world['node' + h]._y;
nodeDistance = Math.sqrt(v3 * v3 + v2 * v2);
if (nodeDistance < radius) {
pickedNodes.push(_root.world['node' + h]);
}
++h;
}
}
function cycleClear() {
if (clearLerp > 0) {
--clearLerp;
n = nodeDepthInitial + 1;
while (n < nodeDepth + 1) {
AA = _root.world['node' + n];
gloobs = 0;
while (gloobs < 4) {
AA.Buffs[clearLerp][gloobs] = 0;
++gloobs;
}
++n;
}
} else {
clearInterval(cycleTimerClear);
n = nodeDepthInitial + 1;
while (n < nodeDepth + 1) {
AA = _root.world['node' + n];
if (AA.Catalog != -1 && buildList[AA.Catalog][6] > 0) {
_root.findBuffers(AA, 1);
} else {
if (AA.Natural == 'n1') {
++TreeCount;
}
}
++n;
}
_root.cb_init();
}
}
function findAllBuffers() {
if (clearLerp == 0) {
clearLerp = 30;
}
TreeCount = 0;
clearInterval(cycleTimerClear);
cycleTimerClear = setInterval(cycleClear, 2);
}
function findBuffers(object, buff) {
if (object.Catalog == 10) {
_root.findTrees(object);
}
if (object.ModeInt != 10) {
pickedNodes = [];
if (object.Natural == 'blank') {
pickNodesRadius(object, buildList[object.Catalog][6]);
}
u = 0;
while (u < pickedNodes.length) {
pickedNodes[u].Buffs[object.Catalog][object.ModeInt] += buff;
if (pickedNodes[u].Catalog == 7) {
if (object.Catalog == 10) {
if (object.Power >= 3) {
pickedNodes[u].Power = 3;
object.Power -= 3;
}
}
if (pickedNodes[u].Power >= 3) {
pickedNodes[u].sprite.noPower._alpha = 0;
pickedNodes[u].sprite.glow.play();
} else {
pickedNodes[u].sprite.noPower._alpha = 100;
pickedNodes[u].sprite.glow.stop();
}
}
++u;
}
}
}
function findTrees(object) {
if (object.Catalog == 10 && object.ModeInt != 10) {
object.TreeCount = 0;
object.Power = 0;
pickedNodes = [];
pickNodesRadius(object, buildList[object.Catalog][6]);
u = 0;
while (u < pickedNodes.length) {
if (pickedNodes[u].Natural == 'n1') {
++object.TreeCount;
++object.Power;
}
++u;
}
}
}
function showRadius(building, catalog, placeOK) {
if (_root.lastShownRadius == building && redundant == false) {
redundant = true;
} else {
redundant = false;
}
pickedNodes = [];
pickNodesRadius(_root.lastShownRadius, buildList[_root.lastShownRadiusCatalog][6]);
u = 0;
while (u < pickedNodes.length) {
pickedNodes[u].btnNodeRadius.gotoAndStop(1);
++u;
}
if (!redundant) {
pickedNodes = [];
pickNodesRadius(building, buildList[catalog][6]);
u = 0;
while (u < pickedNodes.length) {
if (placeOK == false) {
pickedNodes[u].btnNodeRadius.gotoAndStop(4);
} else {
pickedNodes[u].btnNodeRadius.gotoAndStop(3);
}
++u;
}
}
_root.lastShownRadius = building;
_root.lastShownRadiusCatalog = catalog;
}
function generateMap(xTiles, yTiles, xStart, yStart, type, nodeScale) {
var v5 = int((xTiles - 6 + (yTiles - 6)) / 1 + statKarma * 1 - 4);
if (type == 'cloud') {
v5 = 0;
}
var v11;
var v3 = 'blank';
if (MapType == 1 || xTiles == 3) {
NaturalChance = 40;
} else {
if (MapType == 2) {
NaturalChance = 80;
}
}
if (xTiles > yTiles) {
v11 = xTiles;
} else {
v11 = yTiles;
}
var v10 = _root.world.attachMovie('nodeTopReg', 'nodeFloor' + mapDepth, mapDepth);
++mapDepth;
v10._x = xStart * SepStretch - xMapOffset;
v10._y = yStart * SepStretch - yMapOffset - 40;
v10._xscale = nodeScale * v11 * 1.05 * SepStretch;
v10._yscale = nodeScale * v11 * 1.05 * SepStretch;
v10.gotoAndStop(type);
x = 0;
while (x < xTiles) {
y = 0;
while (y < yTiles) {
v3 = 'blank';
if (x < 3 || x > xTiles - 4 || y < 3 || y > yTiles - 4) {
if (type != 'cloud') {
v3 = 'n2';
}
} else {
z = randRange(0, 100);
if (v5 > 0 && z < NaturalChance) {
v3 = 'n1';
--v5;
}
}
createNode(xStart * (SepStretch * (nodeScale / 100)) - xMapOffset + xSep * (SepStretch * (nodeScale / 100)) * (x - y), yStart * (SepStretch * (nodeScale / 100)) - yMapOffset + ySep * (SepStretch * (nodeScale / 100)) * (x + y), v3, type, nodeScale);
++y;
}
++x;
}
}
function checkExtraPreLoad() {
if (_root.traitsOwned[1] == 1) {
buildList[4] = ['Pile of Rubble', 5, 0, 0, 0, 1, 50, 1, 1, 0, 0, 'Rubble'];
modeList[4][0] = ['Basic', 'Pile of worthless rubble.'];
}
if (traitsOwned[16] == 1) {
SepStretch = 1.5;
}
}
function checkExtraPostLoad() {
if (traitsOwned[10] == 1) {
i = 0;
while (i <= 2) {
h = 1;
while (h <= 12) {
tradingPrices[i][h] *= 2;
++h;
}
++i;
}
}
if (CurrentAdviser == 2) {
h = 1;
while (h <= 12) {
tradingPrices[0][h] *= 5;
++h;
}
}
if (starCharisma >= 10) {
if (perksOwned[16] == 1) {
i = 0;
while (i <= 2) {
tradingPrices[i][4] = int(tradingPrices[i][4] * 0.9);
tradingPrices[i][5] = int(tradingPrices[i][5] * 0.9);
tradingPrices[i][6] = int(tradingPrices[i][6] * 0.9);
tradingPrices[i][10] = int(tradingPrices[i][10] * 1.1);
tradingPrices[i][11] = int(tradingPrices[i][11] * 1.1);
tradingPrices[i][12] = int(tradingPrices[i][12] * 1.1);
++i;
}
} else {
i = 0;
while (i <= 2) {
tradingPrices[i][4] = int(tradingPrices[i][4] * 0.8);
tradingPrices[i][5] = int(tradingPrices[i][5] * 0.8);
tradingPrices[i][6] = int(tradingPrices[i][6] * 0.8);
tradingPrices[i][10] = int(tradingPrices[i][10] * 1.2);
tradingPrices[i][11] = int(tradingPrices[i][11] * 1.2);
tradingPrices[i][12] = int(tradingPrices[i][12] * 1.2);
++i;
}
}
}
if (traitsOwned[19] == 1 && FreeStructure[6] == 0) {
FreeStructure[6] = 1;
}
if (CurrentAdviser == 0 && FreeStructure[9] == 0) {
FreeStructure[9] = 1;
}
if (CurrentAdviser == 6 && FreeStructure[3] == 0) {
FreeStructure[3] = 1;
}
if (CurrentAdviser == 2 && FreeStructure[8] == 0) {
FreeStructure[8] = 1;
}
if (traitsOwned[7] == 1) {
if (FreeStructure[0] == 0) {
FreeStructure[0] = 1;
}
}
checkUpgrades();
checkExtraPreLoad();
}
function newMap() {
generateMap(newLand[0][0], newLand[0][1], newLand[0][2], newLand[0][3], 'grass', 100);
generateMap(newLand[1][0], newLand[1][1], newLand[0][2] + 900, newLand[0][3] + 0, 'cloud', 100);
generateMap(newLand[1][0], newLand[1][1], newLand[0][2] - 900, newLand[0][3] + 0, 'cloud', 100);
}
function deleteMap() {
while (_root.nodeDepth > nodeDepthInitial) {
removeMovieClip(_root.world['node' + _root.nodeDepth]);
--_root.nodeDepth;
}
while (_root.mapDepth > mapDepthInitial) {
removeMovieClip(_root.world['nodeFloor' + _root.mapDepth]);
--_root.mapDepth;
}
}
function deselectAll() {
_root.hudInfo.gambleScene.clearEm(false);
_root.nodeSelected.selectArrow.gotoAndStop('disabled');
_root.nodeSelected.selectArrow._alpha = 0;
_root.nodeSelected.selectOutline._alpha = 0;
if (_root.nodeHighlighted.Catalog == -1) {
_root.nodeHighlighted.gotoAndStop(_root.nodeHighlighted.a.Natural);
}
_root.nodeSelected = NaN;
_root.hudDynamic.gotoAndStop(tierSelected);
_root.buildPlacement = 'blank';
_root.hudInfo.gotoAndStop(1);
_root.hudInfoToggle = 1;
_root.showRadius(NaN, -1);
_root.hudCard._alpha = 0;
_root.hudCard.trade.gotoAndStop(1);
_root.hudCard.upgrades.gotoAndStop(1);
refreshResources();
}
function changeMode(number, node) {
AA = node;
findBuffers(AA, -1);
AA.Mode = _root.modeList[AA.Catalog][number][0];
if (AA.Mode != 'Basic') {
AA.NameDisplay = AA.Name + ' (' + AA.Mode + ')';
} else {
AA.NameDisplay = AA.Name;
}
AA.Text = _root.modeList[AA.Catalog][number][1];
AA.BuildText = _root.modeList[AA.Catalog][number][0].toUpperCase();
if (node == _root.nodeSelected) {
_root.nodeDisplayName = AA.NameDisplay;
_root.nodeDisplayText = AA.Text;
}
--strCount[AA.Catalog][AA.ModeInt];
AA.ModeInt = number;
++strCount[AA.Catalog][AA.ModeInt];
displayModel(AA, false);
findBuffers(AA, 1);
}
function UpgradeMode(building, ignoreUpgradeCost) {
if (_root.modeList[building.Catalog][building.UpgradeRank + 3][0] != NaN) {
zz = 0;
while (zz < 6) {
if (_root.resources[zz][1] >= _root.modeList[building.Catalog][building.UpgradeRank + 3][5 + zz]) {
if (_root.modeList[building.Catalog][building.UpgradeRank + 3][5 + zz] != NaN && _root.modeList[building.Catalog][building.UpgradeRank + 3][5 + zz] != undefined) {
costOK = true;
} else {
costOK = false;
break;
}
} else {
costOK = false;
break;
}
++zz;
}
if (costOK == true || ignoreUpgradeCost != false) {
++building.UpgradeRank;
if (ignoreUpgradeCost == false) {
zz = 0;
while (zz < 6) {
_root.resources[zz][1] -= _root.modeList[building.Catalog][building.UpgradeRank + 2][5 + zz];
building.Value[zz + 1] = _root.modeList[building.Catalog][building.UpgradeRank + 2][5 + zz];
++zz;
}
}
refreshResources();
building.Name = _root.modeList[building.Catalog][building.UpgradeRank + 2][2];
building.Mode = _root.modeList[building.Catalog][building.UpgradeRank + 2][0];
if (building.Mode != 'Basic') {
building.NameDisplay = building.Name + ' (' + building.Mode + ')';
} else {
building.NameDisplay = building.Name;
}
building.ModesEnabled = _root.modeList[building.Catalog][building.UpgradeRank + 2][3];
building.UpgradesEnabled = _root.modeList[building.Catalog][building.UpgradeRank + 2][4];
building.Text = _root.modeList[building.Catalog][building.UpgradeRank + 2][1];
building.BuildText = _root.modeList[building.Catalog][building.UpgradeRank + 2][0].toUpperCase();
building.sprite.model.gotoAndStop(building.UpgradeRank + 2 + 1);
--strCount[building.Catalog][building.ModeInt];
findBuffers(building, -1);
building.ModeInt = building.UpgradeRank + 2;
++strCount[building.Catalog][building.ModeInt];
findBuffers(building, 1);
if (ignoreUpgradeCost == true) {
newMSG('One of your more lucrative households has funded their own upgrade to become a <font color=\'#ffcc00\'>' + building.Name + '</font>.');
}
if (building.UpgradeRank == 1 && building.Catalog == 3) {
building.PoniesMax[0] = basePopHouse + 4;
}
if (building.UpgradeRank == 2 && building.Catalog == 3) {
building.PoniesMax[0] = basePopHouse + 8;
}
feedTextUpgradeMode(0);
if (building.ModesEnabled == false) {
if (building.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(3);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(4);
}
} else {
if (building.UpgradesEnabled == true) {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(1);
} else {
_root.hudDynamic.displayNodeBox.modeButtons.gotoAndStop(2);
}
}
if (_root.nodeSelected == building) {
selectStructure(building);
}
_root.feedText2 = '';
_root.feedText = '';
}
}
}
function feedTextMode(number) {
if (_root.nodeSelected != NaN) {
a = _root.nodeSelected;
if (number != -1) {
_root.feedText2 = 'Switch to ' + _root.modeList[a.Catalog][number][0] + ' Mode';
_root.feedText = _root.modeList[a.Catalog][number][1];
} else {
_root.feedText2 = '';
_root.feedText = '';
}
}
}
function feedTextUpgradeMode(number) {
if (_root.nodeSelected != NaN) {
a = _root.nodeSelected;
if (number != -1) {
if (_root.modeList[a.Catalog][a.UpgradeRank + 3][8] > 0) {
_root.feedText2 = 'Upgrade to ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][2] + ' - Costs ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][5] + ' Bits, ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][8] + ' Gems';
} else {
if (_root.modeList[a.Catalog][a.UpgradeRank + 3][10] > 0) {
_root.feedText2 = 'Upgrade to ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][2] + ' - Costs ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][10] + ' Obsidian';
} else {
_root.feedText2 = 'Upgrade to ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][2] + ' - Costs ' + _root.modeList[a.Catalog][a.UpgradeRank + 3][5] + ' Bits';
}
}
_root.feedText = _root.modeList[a.Catalog][a.UpgradeRank + 3][1];
} else {
_root.feedText2 = '';
_root.feedText = '';
}
}
}
function pauseGame() {
if (difficulty != 3) {
if (_root.gamePaused == false) {
_root.gamePaused = true;
_root.pauseoverlay.gotoAndStop(2);
_root.happyWheel.liquidAnim.stop();
_root.happyWheel.sun.stop();
_root.loveMeter.glow.stop();
_root.loveMeter.glow.bubbles.stop();
_root.loveMeter.Mask.wave.wave.stop();
_root.loveMeter.Mask.wave.b1.stop();
_root.loveMeter.Mask.wave.b2.stop();
_root.loveMeter.Mask.wave.b3.stop();
_root.loveMeter.Mask.wave.b4.stop();
_root.loveMeter.Mask.wave.b5.stop();
} else {
if (showHints == 0) {
_root.topRightHUD.adviserHintArrow.play();
showHints = 1;
}
_root.gamePaused = false;
_root.pauseoverlay.gotoAndStop(1);
_root.happyWheel.liquidAnim.play();
_root.happyWheel.sun.play();
_root.loveMeter.glow.play();
_root.loveMeter.glow.bubbles.play();
_root.loveMeter.Mask.wave.wave.play();
_root.loveMeter.Mask.wave.b1.play();
_root.loveMeter.Mask.wave.b2.play();
_root.loveMeter.Mask.wave.b3.play();
_root.loveMeter.Mask.wave.b4.play();
_root.loveMeter.Mask.wave.b5.play();
}
}
}
function Zoomy(Amount) {
_root.world.vcam._yscale += Amount;
_root.world.vcam._xscale += Amount;
if (_root.world.vcam._yscale < minZoom) {
_root.world.vcam._yscale = minZoom;
_root.world.vcam._xscale = minZoom;
} else {
if (_root.world.vcam._yscale > maxZoom) {
_root.world.vcam._yscale = maxZoom;
_root.world.vcam._xscale = maxZoom;
}
}
}
function activateEdict(number, type) {
if (traitsOwned[14] == 1) {
edictTimer = 4;
} else {
edictTimer = 28;
}
if (type == 'Residential') {
edictResidentialActive = number;
edictResidentialTimer = edictTimer;
edictResidentalDaysLeft = 'Days left: ' + int((edictResidentialTimer + 3) / 4);
if (number == 4) {
edictLibraryActive = -1;
edictIndustrialActive = -1;
edictLibraryTimer = edictTimer;
edictIndustrialTimer = edictTimer;
}
}
if (type == 'Library') {
edictLibraryActive = number;
edictLibraryTimer = edictTimer;
edictLibraryDaysLeft = 'Days left: ' + int((edictLibraryTimer + 3) / 4);
}
if (type == 'Industrial') {
edictIndustrialActive = number;
edictIndustrialTimer = edictTimer;
edictIndustrialDaysLeft = 'Days left: ' + int((edictIndustrialTimer + 3) / 4);
}
refreshResources();
}
function writeData() {
if (ASCENDING) {
inCycle = false;
saveWait = false;
}
if (FAPMODE == 1 || inCycle || saveWait) {
} else {
n = nodeDepthInitial + 1;
while (n < nodeDepth + 1) {
a = _root.world['node' + n];
m = n - (nodeDepthInitial + 1);
cache.data.NodeData[m][0] = a.Catalog;
cache.data.NodeData[m][1] = a.UpgradeRank;
cache.data.NodeData[m][2] = a.Mode;
cache.data.NodeData[m][3] = a.ModeInt;
cache.data.NodeData[m][4] = a.Age;
cache.data.NodeData[m][5] = a.BuildText;
cache.data.NodeData[m][6] = a.ModesEnabled;
cache.data.NodeData[m][7] = a.UpgradesEnabled;
cache.data.NodeData[m][8] = a.Natural;
cache.data.NodeData[m][9] = a.buildProgress;
cache.data.NodeData[m][10] = a.buildProgressPercent;
cache.data.NodeData[m][11] = a.AddOn;
cache.data.NodeData[m][12] = a.Yield;
cache.data.NodeData[m][13] = a.treePosX;
cache.data.NodeData[m][14] = a.treePosY;
i = 0;
while (i < a.Ponies.length) {
cache.data.NodeDataPonies[m][i] = a.Ponies[i];
++i;
}
i = 0;
while (i < a.PoniesMax.length) {
cache.data.NodeDataPoniesMax[m][i] = a.PoniesMax[i];
++i;
}
i = 0;
while (i < a.Value.length) {
cache.data.NodeDataValue[m][i] = a.Value[i];
++i;
}
++n;
}
i = 0;
while (i < 6) {
cache.data.PlayerDataResources[i][1] = resources[i][1];
++i;
}
i = 0;
while (i < resourcePerCycle.length) {
cache.data.PlayerDataResourcePerCycle[i][1] = resourcePerCycle[i][1];
++i;
}
i = 0;
while (i < population.length) {
cache.data.PlayerDataPopulation[i][1] = population[i][1];
++i;
}
i = 0;
while (i < cache.data.PlayerDataStrCount.length) {
j = 0;
while (j < cache.data.PlayerDataStrCount[i].length) {
cache.data.PlayerDataStrCount[i][j] = strCount[i][j];
++j;
}
++i;
}
i = 0;
while (i < tiersUnlocked.length) {
cache.data.PlayerDataTiersUnlocked[i] = tiersUnlocked[i];
++i;
}
i = 0;
while (i < tradeCooldown.length) {
cache.data.PlayerDataTradeCooldown[i] = tradeCooldown[i];
++i;
}
i = 0;
while (i < EvilData.length) {
cache.data.PlayerDataEvilData[i] = EvilData[i];
++i;
}
i = 0;
while (i < specialistsStats.length) {
j = 0;
while (j < specialistsStats[i].length) {
cache.data.PlayerDataSpecialistsStats[i][j] = specialistsStats[i][j];
++j;
}
++i;
}
if (cache.data.PlayerDataCurrentEncounters[0][0] == undefined) {
cache.data.PlayerDataCurrentEncounters = new Array(15);
i = 0;
while (i < cache.data.PlayerDataCurrentEncounters.length) {
cache.data.PlayerDataCurrentEncounters[i] = new Array(10);
++i;
}
}
cache.data.PlayerDataCurrentEncounters.splice(0);
i = 0;
while (i < currentEncounters.length) {
if (currentEncounters[i][0] != undefined) {
cache.data.PlayerDataCurrentEncounters[i] = currentEncounters[i];
}
++i;
}
if (cache.data.PlayerDataLoveSources[0][1] == undefined) {
cache.data.PlayerDataLoveSources = new Array([0, 'Stores'], [0, 'Taverns'], [0, 'Population'], [0, 'Gardens'], [0, 'Tech Labs'], [0, 'Tranquil Perk'], [0, 'Factories'], [0, 'Raiding'], [0, 'Invasions']);
}
i = 0;
while (i < cache.data.PlayerDataLoveSources.length) {
cache.data.PlayerDataLoveSources[i][0] = loveGainSource[i][0];
cache.data.PlayerDataLoveSources[i][1] = loveGainSource[i][1];
++i;
}
if (cache.data.PlayerDataDerpyRandom[0] == undefined) {
cache.data.PlayerDataDerpyRandom = new Array(50);
}
i = 0;
while (i < derpyRandom.length) {
cache.data.PlayerDataDerpyRandom[i] = derpyRandom[i];
++i;
}
if (cache.data.PlayerDataPerkRandom[0] == undefined) {
cache.data.PlayerDataPerkRandom = new Array(10);
}
i = 0;
while (i < perkChoice.length) {
cache.data.PlayerDataPerkRandom[i] = perkChoice[i];
++i;
}
cache.data.PlayerDataNewUpgradesOwned = [];
i = 0;
while (i < newUpgradesOwned.length) {
cache.data.PlayerDataNewUpgradesOwned[i] = newUpgradesOwned[i];
++i;
}
cache.data.PlayerData[0] = happiness;
cache.data.PlayerData[1] = environment;
cache.data.PlayerData[3] = love;
cache.data.PlayerData[4] = _root.hudMSG.messages.text;
cache.data.PlayerData[5] = clockTime;
cache.data.PlayerData[6] = townName;
cache.data.PlayerData[8] = loveRank;
cache.data.PlayerData[9] = charName;
cache.data.PlayerData[10] = maleColorRed;
cache.data.PlayerData[11] = maleColorGreen;
cache.data.PlayerData[12] = maleColorBlue;
cache.data.PlayerData[13] = loveTotal;
cache.data.PlayerData[14] = landOwned;
cache.data.PlayerData[15] = DefenseRating;
cache.data.PlayerData[16] = specialistsTotal;
cache.data.PlayerData[17] = defeated;
cache.data.PlayerData[18] = mana;
cache.data.PlayerData[19] = manaMax;
cache.data.PlayerData[20] = funds;
cache.data.PlayerData[21] = tokens;
cache.data.PlayerData[22] = ascensionLevel;
cache.data.PlayerData[23] = perksLeft;
cache.data.PlayerData[24] = ShieldLevel;
cache.data.PlayerData[25] = PrizeSkillTokens;
cache.data.PlayerData[26] = extraLives;
cache.data.PlayerData[27] = difficulty;
cache.data.PlayerData[28] = taxLevel;
cache.data.PlayerData[29] = edictFatigue;
cache.data.PlayerData[30] = CurrentAdviser;
cache.data.PlayerData[31] = DefensePoints;
cache.data.PlayerData[32] = DefenseRatingDisplay;
cache.data.PlayerData[33] = encRateAggro;
cache.data.PlayerData[34] = encTimerNormal;
cache.data.PlayerData[35] = encTimerAggro;
cache.data.PlayerData[36] = encTimerScout;
cache.data.PlayerData[37] = encTimerRaid;
cache.data.PlayerData[38] = MapType;
cache.data.PlayerData[39] = currentCycle;
cache.data.PlayerData[40] = Reputation;
cache.data.PlayerData[41] = foodLevel;
cache.data.PlayerData[42] = discoveryProgress;
cache.data.PlayerData[43] = discoveryTotal;
cache.data.FileExists = true;
cache.data.PlayerDataUpgrades[0] = upgradeStoreRank;
cache.data.PlayerDataUpgrades[1] = upgradeLibraryRank;
cache.data.PlayerDataUpgrades[2] = upgradeMoreTilesRank;
cache.data.PlayerDataUpgrades[3] = upgradeHireSpecialistRank;
cache.data.PlayerDataUpgrades[4] = upgradeTechLabRank;
cache.data.PlayerDataEdicts[0] = edictResidentialActive;
cache.data.PlayerDataEdicts[1] = edictResidentialTimer;
cache.data.PlayerDataEdicts[2] = edictLibraryActive;
cache.data.PlayerDataEdicts[3] = edictLibraryTimer;
cache.data.PlayerDataEdicts[4] = edictIndustrialActive;
cache.data.PlayerDataEdicts[5] = edictIndustrialTimer;
cache.data.PlayerDataStats[0] = statCharisma;
cache.data.PlayerDataStats[1] = statInsight;
cache.data.PlayerDataStats[2] = statCuriosity;
cache.data.PlayerDataStats[3] = statKarma;
cache.data.PlayerDataStats[4] = statWillpower;
cache.data.PlayerDataStats[5] = StatsLeft;
cache.data.PlayerDataStats[6] = StatsLeftPartial;
cache.data.PlayerDataSkills[0] = skill_Leadership;
cache.data.PlayerDataSkills[1] = skill_Diplomacy;
cache.data.PlayerDataSkills[2] = skill_Knowledge;
cache.data.PlayerDataSkills[3] = skill_Architecture;
cache.data.PlayerDataSkills[4] = skill_Discipline;
cache.data.PlayerDataSkills[5] = skill_Ecology;
cache.data.PlayerDataSkills[6] = skill_Tradecraft;
cache.data.StoryFlags;
i = 0;
while (i < StoryFlags.length) {
cache.data.StoryFlags[i] = StoryFlags[i];
++i;
}
i = 0;
while (i < FreeStructure.length) {
cache.data.PlayerDataFreeStructure[i] = FreeStructure[i];
++i;
}
i = 0;
while (i < traitsOwned.length) {
cache.data.PlayerDataTraitsOwned[i] = traitsOwned[i];
++i;
}
i = 0;
while (i < perksOwned.length) {
cache.data.PlayerDataPerksOwned[i] = perksOwned[i];
++i;
}
}
}
function readData() {
landOwned = cache.data.PlayerData[14];
if (landOwned > 0) {
GL = 0;
while (GL < landOwned) {
generateMap(newLand[GL + 1][0], newLand[GL + 1][1], newLand[GL + 1][2], newLand[GL + 1][3], 'grass', 100);
++GL;
}
}
n = nodeDepthInitial + 1;
while (n < nodeDepth + 1) {
a = _root.world['node' + n];
m = n - (nodeDepthInitial + 1);
a.Catalog = cache.data.NodeData[m][0];
a.UpgradeRank = cache.data.NodeData[m][1];
a.Mode = cache.data.NodeData[m][2];
a.ModeInt = cache.data.NodeData[m][3];
a.Age = cache.data.NodeData[m][4];
a.ModesEnabled = cache.data.NodeData[m][6];
a.UpgradesEnabled = cache.data.NodeData[m][7];
a.Natural = cache.data.NodeData[m][8];
a.buildProgress = cache.data.NodeData[m][9];
a.buildProgressPercent = cache.data.NodeData[m][10];
a.AddOn = cache.data.NodeData[m][11];
a.Yield = cache.data.NodeData[m][12];
a.treePosX = cache.data.NodeData[m][13];
a.treePosY = cache.data.NodeData[m][14];
displayModel(a, false);
if (a.Catalog != -1) {
a.Name = _root.buildList[a.Catalog][0];
a.Text = _root.modeList[a.Catalog][0][1];
a.buildTime = buildList[a.Catalog][5];
if (a.ModeInt == 10) {
a.Mode = 'Constructing';
a.sprite.model.gotoAndStop('construction');
} else {
a.sprite.model.gotoAndStop(a.ModeInt + 1);
}
} else {
if (a.Natural == 'blank') {
a.Name = 'Blank Node';
a.Text = 'Empty lot. Structures can be built here.';
} else {
a.Name = 'Tree';
a.Text = 'Improves Eco Score. Is destroyed if another building is placed here.';
a.sprite.model.gotoAndStop(a.ModeInt + 1);
}
}
displayModel(a, false);
if (a.Mode != 'Basic') {
a.NameDisplay = a.Name + ' (' + a.Mode + ')';
} else {
a.NameDisplay = a.Name;
}
i = 0;
while (i < a.Ponies.length) {
a.Ponies[i] = cache.data.NodeDataPonies[m][i];
++i;
}
i = 0;
while (i < a.PoniesMax.length) {
a.PoniesMax[i] = cache.data.NodeDataPoniesMax[m][i];
++i;
}
i = 0;
while (i < a.Value.length) {
a.Value[i] = cache.data.NodeDataValue[m][i];
++i;
}
++n;
}
i = 0;
while (i < 6) {
resources[i][1] = cache.data.PlayerDataResources[i][1];
++i;
}
i = 0;
while (i < resourcePerCycle.length) {
resourcePerCycle[i][1] = cache.data.PlayerDataResourcePerCycle[i][1];
++i;
}
i = 0;
while (i < population.length) {
population[i][1] = cache.data.PlayerDataPopulation[i][1];
++i;
}
i = 0;
while (i < cache.data.PlayerDataStrCount.length) {
j = 0;
while (j < cache.data.PlayerDataStrCount[i].length) {
strCount[i][j] = cache.data.PlayerDataStrCount[i][j];
++j;
}
++i;
}
i = 0;
while (i < tiersUnlocked.length) {
tiersUnlocked[i] = cache.data.PlayerDataTiersUnlocked[i];
if (tiersUnlocked[1] == true) {
_root.tier2.locked._alpha = 0;
}
if (tiersUnlocked[2] == true) {
_root.tier3.locked._alpha = 0;
}
++i;
}
i = 0;
while (i < tradeCooldown.length) {
tradeCooldown[i] = cache.data.PlayerDataTradeCooldown[i];
++i;
}
i = 0;
while (i < EvilData.length) {
EvilData[i] = cache.data.PlayerDataEvilData[i];
++i;
}
i = 0;
while (i < cache.data.PlayerDataSpecialistsStats.length) {
j = 0;
while (j < cache.data.PlayerDataSpecialistsStats[i].length) {
specialistsStats[i][j] = cache.data.PlayerDataSpecialistsStats[i][j];
++j;
}
++i;
}
currentEncounters.splice(0);
i = 0;
while (i < cache.data.PlayerDataCurrentEncounters.length) {
if (cache.data.PlayerDataCurrentEncounters[i][0] != undefined) {
currentEncounters[i] = cache.data.PlayerDataCurrentEncounters[i];
}
++i;
}
i = 0;
while (i < cache.data.PlayerData.length) {
if (cache.data.PlayerData[i] == undefined || cache.data.PlayerData[i] == NaN) {
cache.data.PlayerData[i] = 0;
}
++i;
}
if (cache.data.PlayerDataLoveSources[0][1] == undefined) {
cache.data.PlayerDataLoveSources = new Array([0, 'Stores'], [0, 'Taverns'], [0, 'Population'], [0, 'Gardens'], [0, 'Tech Labs'], [0, 'Tranquil Perk'], [0, 'Factories'], [0, 'Raiding'], [0, 'Invasions']);
}
i = 0;
while (i < cache.data.PlayerDataLoveSources.length) {
loveGainSource[i][0] = cache.data.PlayerDataLoveSources[i][0];
loveGainSource[i][1] = cache.data.PlayerDataLoveSources[i][1];
++i;
}
i = 0;
while (i < cache.data.PlayerDataDerpyRandom.length) {
derpyRandom[i] = cache.data.PlayerDataDerpyRandom[i];
++i;
}
i = 0;
while (i < cache.data.PlayerDataPerkRandom.length) {
perkChoice[i] = cache.data.PlayerDataPerkRandom[i];
++i;
}
if (cache.data.PlayerDataNewUpgradesOwned[0][0] == undefined) {
cache.data.PlayerDataNewUpgradesOwned = new Array(100);
i = 0;
while (i < cache.data.PlayerDataNewUpgradesOwned.length) {
cache.data.PlayerDataNewUpgradesOwned[i] = new Array(2);
j = 0;
while (j < cache.data.PlayerDataNewUpgradesOwned[i].length) {
cache.data.PlayerDataNewUpgradesOwned[i][j] = 'n';
++j;
}
++i;
}
}
i = 0;
while (i < cache.data.PlayerDataNewUpgradesOwned.length) {
if (cache.data.PlayerDataNewUpgradesOwned[i][0] != 'n') {
newUpgradesOwned[i] = cache.data.PlayerDataNewUpgradesOwned[i];
}
++i;
}
z = 0;
while (z < newUpgradesOwned.length) {
if (newUpgradesOwned[z][1] == 1) {
newUpgrades[newUpgradesOwned[z][0]][1] = 1;
}
if (newUpgradesOwned[z][1] == 2) {
newUpgrades[newUpgradesOwned[z][0]][1] = 1;
newUpgrades[newUpgradesOwned[z][0]][2] = 1;
}
++z;
}
happiness = cache.data.PlayerData[0];
environment = cache.data.PlayerData[1];
love = cache.data.PlayerData[3];
clockTime = cache.data.PlayerData[5];
townName = cache.data.PlayerData[6];
loveRank = cache.data.PlayerData[8];
charName = cache.data.PlayerData[9];
maleColorRed = cache.data.PlayerData[10];
maleColorGreen = cache.data.PlayerData[11];
maleColorBlue = cache.data.PlayerData[12];
loveTotal = cache.data.PlayerData[13];
loveTotalDisplay = int(loveTotal);
DefenseRating = cache.data.PlayerData[15];
specialistsTotal = cache.data.PlayerData[16];
defeated = cache.data.PlayerData[17];
mana = cache.data.PlayerData[18];
manaMax = cache.data.PlayerData[19];
funds = cache.data.PlayerData[20];
tokens = cache.data.PlayerData[21];
ascensionLevel = cache.data.PlayerData[22];
perksLeft = cache.data.PlayerData[23];
ShieldLevel = cache.data.PlayerData[24];
PrizeSkillTokens = cache.data.PlayerData[25];
extraLives = cache.data.PlayerData[26];
difficulty = cache.data.PlayerData[27];
taxLevel = cache.data.PlayerData[28];
edictFatigue = cache.data.PlayerData[29];
CurrentAdviser = cache.data.PlayerData[30];
DefensePoints = cache.data.PlayerData[31];
DefenseRatingDisplay = cache.data.PlayerData[32];
encRateAggro = cache.data.PlayerData[33];
encTimerNormal = cache.data.PlayerData[34];
encTimerAggro = cache.data.PlayerData[35];
encTimerScout = cache.data.PlayerData[36];
encTimerRaid = cache.data.PlayerData[37];
MapType = cache.data.PlayerData[38];
currentCycle = cache.data.PlayerData[39];
Reputation = cache.data.PlayerData[40];
foodLevel = cache.data.PlayerData[41];
discoveryProgress = cache.data.PlayerData[42];
discoveryTotal = cache.data.PlayerData[43];
_root.resourceMenu.difficon.gotoAndStop(difficulty);
if (ShieldLevel > 0) {
ShieldLevelDisplay = 'SHIELD: ' + int(ShieldLevel) + '%';
} else {
ShieldLevelDisplay = '';
}
if (ascensionLevel > 0) {
ascensionLevelDisplay = 'ASCENSION ' + ascensionLevel;
}
PrizeSkillTokensDisplay = PrizeSkillTokens + ' Tokens';
upgradeStoreRank = cache.data.PlayerDataUpgrades[0];
upgradeLibraryRank = cache.data.PlayerDataUpgrades[1];
upgradeMoreTilesRank = cache.data.PlayerDataUpgrades[2];
upgradeHireSpecialistRank = cache.data.PlayerDataUpgrades[3];
upgradeTechLabRank = cache.data.PlayerDataUpgrades[4];
edictResidentialActive = cache.data.PlayerDataEdicts[0];
edictResidentialDaysLeft = 'Days left: ' + int((edictResidentialTimer + 3) / 4);
edictResidentialTimer = cache.data.PlayerDataEdicts[1];
edictLibraryActive = cache.data.PlayerDataEdicts[2];
edictLibraryDaysLeft = 'Days left: ' + int((edictLibraryTimer + 3) / 4);
edictLibraryTimer = cache.data.PlayerDataEdicts[3];
edictIndustrialActive = cache.data.PlayerDataEdicts[4];
edictIndustrialDaysLeft = 'Days left: ' + int((edictIndustrialTimer + 3) / 4);
edictIndustrialTimer = cache.data.PlayerDataEdicts[5];
statCharisma = cache.data.PlayerDataStats[0];
statInsight = cache.data.PlayerDataStats[1];
statCuriosity = cache.data.PlayerDataStats[2];
statKarma = cache.data.PlayerDataStats[3];
statWillpower = cache.data.PlayerDataStats[4];
StatsLeft = cache.data.PlayerDataStats[5];
StatsLeftPartial = cache.data.PlayerDataStats[6];
skill_Leadership = cache.data.PlayerDataSkills[0];
skill_Diplomacy = cache.data.PlayerDataSkills[1];
skill_Knowledge = cache.data.PlayerDataSkills[2];
skill_Architecture = cache.data.PlayerDataSkills[3];
skill_Discipline = cache.data.PlayerDataSkills[4];
skill_Ecology = cache.data.PlayerDataSkills[5];
skill_Tradecraft = cache.data.PlayerDataSkills[6];
i = 0;
while (i < cache.data.StoryFlags.length) {
StoryFlags[i] = cache.data.StoryFlags[i];
++i;
}
i = 0;
while (i < traitsOwned.length) {
traitsOwned[i] = cache.data.PlayerDataTraitsOwned[i];
++i;
}
i = 0;
while (i < perksOwned.length) {
perksOwned[i] = cache.data.PlayerDataPerksOwned[i];
++i;
}
i = 0;
while (i < cache.data.PlayerDataFreeStructure.length) {
FreeStructure[i] = cache.data.PlayerDataFreeStructure[i];
++i;
}
checkExtraPostLoad();
refreshResources();
statBonusInitialize();
clock = clockType + ' ' + int(clockTime / clockDivider);
if (_root.defeated == true) {
_root.gotoAndStop('rubble');
}
}
function ascensionNG() {
ASCENDING = true;
++ascensionLevel;
if (ascensionLevel > 0) {
ascensionLevelDisplay = 'ASCENSION ' + ascensionLevel;
}
deleteMap();
newMap();
writeData();
ascensionWipe();
readData();
ascensionSetPerks();
writeData();
ascensionResetGame();
}
function ascensionWipe() {
i = 0;
while (i < 6) {
cache.data.PlayerDataResources[i][1] = 0;
++i;
}
i = 0;
while (i < resourcePerCycle.length) {
cache.data.PlayerDataResourcePerCycle[i][1] = 0;
++i;
}
i = 0;
while (i < population.length) {
cache.data.PlayerDataPopulation[i][1] = 0;
++i;
}
i = 0;
while (i < cache.data.PlayerDataStrCount.length) {
j = 0;
while (j < cache.data.PlayerDataStrCount[i].length) {
cache.data.PlayerDataStrCount[i][j] = 0;
++j;
}
++i;
}
i = 0;
while (i < tradeCooldown.length) {
cache.data.PlayerDataTradeCooldown[i] = 0;
++i;
}
i = 0;
while (i < EvilData.length) {
cache.data.PlayerDataEvilData[i] = 0;
++i;
}
cache.data.PlayerDataCurrentEncounters = new Array();
cache.data.PlayerDataCurrentEncounters = [];
cache.data.PlayerDataCurrentEncounters = new Array(15);
i = 0;
while (i < cache.data.PlayerDataCurrentEncounters.length) {
cache.data.PlayerDataCurrentEncounters[i] = new Array(10);
++i;
}
cache.data.PlayerData[0] = 50;
cache.data.PlayerData[1] = 100;
cache.data.PlayerData[4] = '';
cache.data.PlayerData[14] = 0;
cache.data.PlayerData[15] = 0;
cache.data.PlayerData[20] = 0;
cache.data.PlayerData[21] = 0;
cache.data.PlayerData[24] = 0;
cache.data.PlayerData[29] = 0;
cache.data.PlayerData[33] = 0;
cache.data.PlayerData[34] = 0;
cache.data.PlayerData[35] = 0;
cache.data.PlayerData[36] = 0;
cache.data.PlayerData[37] = 0;
cache.data.PlayerData[41] = 0;
cache.data.PlayerData[42] = 0;
cache.data.PlayerData[43] = 0;
cache.data.FileExists = true;
cache.data.PlayerDataUpgrades[0] = 0;
cache.data.PlayerDataUpgrades[1] = 0;
cache.data.PlayerDataUpgrades[2] = 0;
cache.data.PlayerDataUpgrades[3] = 0;
cache.data.PlayerDataUpgrades[4] = 0;
cache.data.PlayerDataEdicts[0] = 0;
cache.data.PlayerDataEdicts[1] = 0;
cache.data.PlayerDataEdicts[2] = 0;
cache.data.PlayerDataEdicts[3] = 0;
cache.data.PlayerDataEdicts[4] = 0;
cache.data.PlayerDataEdicts[5] = 0;
cache.data.StoryFlags;
i = 0;
while (i < StoryFlags.length) {
cache.data.StoryFlags[i] = 0;
++i;
}
i = 0;
while (i < FreeStructure.length) {
cache.data.PlayerDataFreeStructure[i] = 0;
++i;
}
cache.data.PlayerDataNewUpgradesOwned = new Array(100);
i = 0;
while (i < cache.data.PlayerDataNewUpgradesOwned.length) {
cache.data.PlayerDataNewUpgradesOwned[i] = new Array(2);
j = 0;
while (j < cache.data.PlayerDataNewUpgradesOwned[i].length) {
cache.data.PlayerDataNewUpgradesOwned[i][j] = 'n';
++j;
}
++i;
}
}
function ascensionSetPerks() {
perksLeft = 1;
}
function ascensionResetGame() {
_root.gotoAndStop('reset');
}
function checkUpgrades() {
if (_root.newUpgrades[0][2] == 1) {
_root.buildList[1][6] = 200;
}
_root.buildList[2][6] = 75;
if (_root.newUpgrades[3][2] == 1) {
_root.buildList[2][6] += 50;
}
if (traitsOwned[29] == 1) {
buildList[2][6] += 100;
}
if (CurrentAdviser == 0) {
_root.buildList[2][6] += 50;
}
buildList[11][6] = 180;
if (_root.newUpgrades[11][2] == 1) {
buildList[11][6] -= 50;
}
buildList[5][6] = 230;
if (_root.newUpgrades[17][2] == 1) {
buildList[5][6] += 110;
}
if (perksOwned[12] == 1) {
buildList[5][6] -= 50;
}
if (traitsOwned[5] == 1) {
buildList[5][6] += 50;
}
if (_root.traitsOwned[1] == 1) {
_root.buildList[5][6] -= 50;
}
}
function adviserHint() {
if (CurrentAdviser == 0) {
if (_root.strCount[0][0] + _root.strCount[0][1] + _root.strCount[0][2] < 1) {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'Hello ' + charName + ', to begin your city I suggest you start off by building a Town Square, then surrounding it with some houses as well as a store.';
} else {
adviserDialogue = 'Hey ' + charName + ', I see you\'ve already got a few houses, but no Town Square.';
}
} else {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'You\'ve got a Town Square, that\'s good, but you\'ll need to surround it with houses or else it has no purpose!';
} else {
if (_root.strCount[1][0] + _root.strCount[1][1] + _root.strCount[1][3] < 1) {
adviserDialogue = 'Make sure you build a Store and set it to be either a Bakery or a Deli, otherwise your ponies will get hungry and leave!';
} else {
if (_root.strCount[4][0] < 1) {
adviserDialogue = 'You\'ve got the foundation of your town all laid out, that\'s good! My next suggestion would be to build a Garden near some houses. The most important thing about the Garden is that we can meet up there and discuss things further!';
} else {
if (_root.strCount[6][0] < 1) {
adviserDialogue = 'Everything is looking good so far. I suggest you work Towards getting a Tavern, ponies need entertainment! Let\'s meet up at a Garden to discuss things in further detail.';
} else {
adviserDialogue = 'I think you know what you\'re doing, I\'ll let you hoof things out from here.';
}
}
}
}
}
} else {
if (CurrentAdviser == 1) {
if (_root.strCount[0][0] + _root.strCount[0][1] + _root.strCount[0][2] < 1) {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'Um... maybe you could like... build some Houses... I mean if you want to.';
} else {
adviserDialogue = 'you should probably make a Town Square, well I guess you don\'t have to...';
}
} else {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'Um... maybe you could like... build some Houses... I mean if you want to.';
} else {
if (_root.strCount[1][0] + _root.strCount[1][1] + _root.strCount[1][3] < 1) {
adviserDialogue = 'Oh dear, make sure you build some stores or else those poor little ponies in your town will get hungry!';
} else {
if (_root.strCount[4][0] < 1) {
adviserDialogue = 'Maybe you could, um, build a Garden now? I think that\'d make the town really pretty... also we could meet there.';
} else {
if (_root.strCount[6][0] < 1) {
adviserDialogue = 'I think a Tavern would look nice somewhere in the middle of the town... but only if you think so, too...';
} else {
adviserDialogue = 'I think you know what you\'re doing, I\'ll let you hoof things out from here.';
}
}
}
}
}
} else {
if (CurrentAdviser == 2) {
if (_root.strCount[0][0] + _root.strCount[0][1] + _root.strCount[0][2] < 1) {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'Howdy ' + charName + ', I recommend buildin\' a Town Square with some Houses \'round it, that should get things started off real nice. Oh and don\'t forget to make some stores too! YEEEEHAAW.';
} else {
adviserDialogue = 'Heya ' + charName + ', I noticed ya\'ll got a few houses but ain\'t no Town Square.';
}
} else {
if (_root.strCount[3][0] + strCount[3][3] + strCount[3][4] < 1) {
adviserDialogue = 'You\'ve got a Town Square, that\'s darn tootin\', but ya\'ll should make some houses to go with it, I reckon.';
} else {
if (_root.strCount[1][0] + _root.strCount[1][1] + _root.strCount[1][3] < 1) {
adviserDialogue = 'Make sure ya\'ll got some food stores or else them ponies will get mighty hungry!';
} else {
adviserDialogue = 'Hey now, that\'s lookin\' like a great town. Well unfortunately I\'m too much of a dumb redneck to give any further advice so ya\'ll on yer own. YEEEEEEEE HAW!!!!!!';
}
}
}
}
}
}
}
function UnlockTier2() {
if (_root.tiersUnlocked[1] != true) {
_root.tiersUnlocked[1] = true;
_root.tier2.locked._alpha = 0;
UnlockGeneric(4);
}
}
function UnlockTier3() {
if (_root.tiersUnlocked[2] != true) {
_root.tiersUnlocked[2] = true;
_root.tier3.locked._alpha = 0;
UnlockGeneric(17);
}
}
function UnlockGeneric(Unlock) {
if (_root.UnlocksGeneric[Unlock][2] != 1) {
if (_root.pauseDuringMeet == true && _root.gamePaused == false) {
_root.pauseGame();
}
_root.cache.data.GameDataUnlocked[Unlock] = 1;
_root.UnlocksGeneric[Unlock][2] = 1;
_root.unlockpop.gotoAndStop(2);
_root.unlockpop.iconOptions.gotoAndStop(1);
_root.unlockpop.iconGeneric.gotoAndStop(Unlock + 2);
_root.unlockpop.DescriptHeader = 'Unlocked ' + _root.UnlocksGeneric[Unlock][0];
_root.unlockpop.Descript = _root.UnlocksGeneric[Unlock][1];
}
}
function UnlockOption(Unlock) {
if (_root.optionsTableLocked[Unlock][2] != 1) {
if (_root.pauseDuringMeet == true && _root.gamePaused == false) {
_root.pauseGame();
}
_root.cache.data.OptionDataUnlocked[Unlock] = 1;
_root.optionsTableLocked[Unlock][2] = 1;
_root.unlockpop.gotoAndStop(2);
_root.unlockpop.iconOptions.gotoAndStop(Unlock + 2);
_root.unlockpop.iconGeneric.gotoAndStop(1);
_root.unlockpop.DescriptHeader = 'Unlocked ' + _root.optionsTableLocked[Unlock][0];
_root.unlockpop.Descript = _root.optionsTableLocked[Unlock][1] + '\n' + 'This option can be selected in the sex scenes.';
}
}
function checkDebugCodes() {
if (townName == 'debug' || townName == 'test') {
newMSG('CHEAT ENABLED: DEBUG MODE');
resources[0][1] = 99999;
resources[2][1] = 99999;
resources[3][1] = 99999;
resources[4][1] = 99999;
resources[5][1] = 99999;
skill_Architecture = 9999;
manaMax = 99999;
mana = 99999;
StatsLeft = 100;
tokens = 10000;
funds = 10000;
}
if (townName == 'testb') {
newMSG('CHEAT ENABLED: DEBUG SOFT');
resources[0][1] = 5000;
resources[2][1] = 5000;
resources[3][1] = 5000;
resources[4][1] = 5000;
resources[5][1] = 5000;
}
if (townName == 'master key') {
newMSG('CHEAT ENABLED: UNLOCK EVERYTHING');
i = 0;
while (i < UnlocksGeneric.length) {
UnlocksGeneric[i][2] = 1;
++i;
}
i = 0;
while (i < UnlocksGallery.length) {
UnlocksGallery[i][1] = 1;
++i;
}
i = 0;
while (i < optionsTableLocked.length) {
optionsTableLocked[i][2] = 1;
++i;
}
}
if (townName == 'alltraits') {
newMSG('CHEAT ENABLED: UNLOCK GENERIC');
i = 0;
while (i < UnlocksGeneric.length) {
UnlocksGeneric[i][2] = 1;
++i;
}
_root.gotoAndStop('title');
}
}
function displayfps() {
_root.debug.FPScounter.text = feeps + '/30 FPS';
feeps = 0;
}
var gamePaused = false;
var onWildMap = false;
var camSpeed = 5;
var camSpeedBoost = 15;
var nodeDisplayName = '';
var nodeDisplayText = '';
var nodeSelected = NaN;
var nodeHighlighted = NaN;
var mapDepthInitial = 900;
var nodeDepthInitial = 1000;
var extraDepthInitial = 800;
var optionDepthInitial = 2000;
var mapDepth = mapDepthInitial;
var nodeDepth = nodeDepthInitial;
var buildPlacement = 'blank';
var buildCatalog = -1;
var resourceCap = new Array(['Bits', 999999], ['Food', 100], ['Tech', 999999], ['Gems', 999999], ['Prism', 999999], ['Obsidian', 999999], ['LUXURY3', 999999], ['LUXURY4', 999999], ['LUXURY5', 999999], ['LUXURY6', 999999]);
var resourcePerCycle = new Array(['Bits', 0], ['Food', 0], ['Tech', 0], ['Gems', 0], ['Prism', 0], ['Obsidian', 0], ['LUXURY3', 0], ['LUXURY4', 0], ['LUXURY5', 0], ['LUXURY6', 0]);
var funds = 0;
var tokens = 0;
var bonusPerCycle = new Array(['Bits', 0], ['Food', 0], ['Tech', 0], ['Gems', 0], ['Prism', 0], ['Obsidian', 0], ['LUXURY3', 0], ['LUXURY4', 0], ['LUXURY5', 0], ['LUXURY6', 0]);
var population = new Array(['Earth Ponies', 0], ['Pegasus', 0], ['Unicorns', 0]);
var strCount = new Array(30);
i = 0;
while (i < strCount.length) {
strCount[i] = new Array(20);
j = 0;
while (j < strCount[i].length) {
strCount[i][j] = 0;
++j;
}
++i;
}
var tiersUnlocked = new Array(true, false, false, false, false);
var charSelected = 0;
var tierSelected = 'tier1';
var happinessPerCycle = 0;
var resourceHappyCycle = 0;
var feedText = 'Hello!';
var feedText2 = '';
var resourceBits;
var resourceFood;
var resourceTech;
var resourceGems;
var resourcePrism;
var resourceObsidian;
var resourceCapFood = 0;
var happiness = 50;
var Reputation = 0;
var ReputationDisplay = 0;
var happinessWhat = new Array(250);
i = 0;
while (i < 250) {
happinessWhat[i] = new Array(0, '');
++i;
}
var ecoWhat = new Array(150);
i = 0;
while (i < 150) {
ecoWhat[i] = new Array(0, '');
++i;
}
var happinessWhatDisplay = '';
var minHappiness = 0;
var maxHappiness = 100;
var happinessDisplay = 50;
var happinessScore = 0;
var environment = 100;
var environmentDisplay = 100;
var environmentPerCycle = 0;
var resourceEcoCycle = 0;
var EcoWarning = 0;
var TreeCount = 0;
var mana = 0;
var manaMax = 0;
var manaDisplay = int(mana) + ' / ' + manaMax;
var love = 0;
var loveTotal = 0;
var loveDisplay = 0;
var loveTotalDisplay = 0;
var loveToRank;
var loveRank = 1;
var loveGainSource = new Array([0, 'Stores'], [0, 'Taverns'], [0, 'Population'], [0, 'Gardens'], [0, 'Tech Labs'], [0, 'Tranquil Perk'], [0, 'Factories'], [0, 'Raiding'], [0, 'Invasions']);
var loveGrowth = 0.5;
var expGrowth = 0.25;
var popEarth;
var popUnicorn;
var popPegasus;
var popTotal;
var popMax;
var popTotalMax;
var maxHousing = 0;
var maxHousingEarth = 0;
var maxHousingPegasus = 0;
var maxHousingUnicorn = 0;
var basePopHouse = 8;
var basePopHouseCloud = 6;
var basePopTreeHouse = 4;
var hudInfoToggle = 1;
_root.hudMSG.messages.text = '';
_root.HW.messages.text = '';
var tradeCooldown = new Array(0, 0, 0, 0, 0, 0);
var clockTime = 4;
var clockType = 'Day';
var clockDivider = 4;
var clock = clockType + ' ' + int(clockTime / clockDivider);
townName = String(townName);
charName = String(charName);
var fadeOutTarget = 'title';
defeated = false;
var ascensionLevel = 0;
var ascensionLevelDisplay = '';
var ShieldLevel = 0;
var ShieldLevelDisplay = '';
var extraLives = 1;
var FreeStructure = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
var factoryBuffLove = 1;
var factoryBuffIncome = 1;
var loveBuff = 1;
var StoryFlags = new Array(30);
var landOwned = 0;
var PrizeSkillTokens = 500;
var sexScene = 'Garden';
var taxLevel = 0;
var taxIncome = new Array(0, 0.25, 0.5, 0.75, 1, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7);
var taxHappy = new Array(0.2, 0.15, 0.1, 0.05, 0, -0.1, -0.2, -0.3, -0.4, -0.6, -0.8, -1);
var foodLevel = 0;
var foodIncome = new Array(1, 1.5, 2, 3, 4, 6);
var foodHappy = new Array(0, 0.05, 0.1, 0.15, 0.2, 0.25);
var edictFatigue = 0;
var edictFatigueDisplay = '0%';
var bonusGET = 0;
var bonusGET2 = 0;
if (difficulty != 1 && difficulty != 2) {
difficulty = 1;
}
_root.resourceMenu.difficon.gotoAndStop(difficulty);
var cycleBigInitialize = true;
var specialistsStats = new Array(['name', 1, '', 0, 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0, 0], ['name', 1, '', 0, 0, 0, 0, 0, 0]);
var DefenseRating = 0;
var DefenseRatingMod = 0;
var DefenseRatingDisplay = '0/0';
var DefenseRatingTotal = 0;
var DefensePoints = 0;
var specialistsTotal = 0;
var specialistsMax = 5;
var perksLeft = 1;
var perksOwned = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
var perkChoice = new Array(NaN, NaN, NaN, NaN);
var perkList = new Array();
var perkCount = 18;
var chipperwait = 0;
var derpyRandom = new Array(50);
var WarnDerpy = false;
var ASCENDING = false;
currentEncounters = new Array();
var encRateAggro = 1;
var encTimerNormal = 0;
var encTimerAggro = 0;
var encTimerScout = 0;
var encTimerRaid = 0;
var encCurrent = 0;
var encMax = 12;
var encCooldown = 20;
var countEmBoys = 0;
specAvatars = 13;
specialistsAvailable = new Array(specAvatars);
specialistsAvailable[0] = 1;
xXx = 1;
while (xXx <= specAvatars) {
specialistsAvailable[xXx] = xXx;
++xXx;
}
var specWarn = 3;
var specialistStatus = '';
var specialistStatusCount = 0;
var trainAmount = 0;
var raidChance = 0;
var evilCometh = 0;
var roll = 0;
var rolls = new Array(0, 0, 0, 0);
var fate = 0;
var attackingAlready = false;
var specialistSelected = -1;
var maxDP = false;
statBonusCheck();
var showRadiusOnSelect = cache.data.PlayerDataOptions[0];
var autoSave = false;
var selectBlanks = cache.data.PlayerDataOptions[2];
var pauseDuringMeet = cache.data.PlayerDataOptions[3];
var deselectRightClick = cache.data.PlayerDataOptions[4];
var lastShownRadius = NaN;
var lastShownRadiusCatalog = 0;
var gRpops = false;
var randomEventsEnabled = false;
var DragOnLeftClick = cache.data.PlayerDataOptions[5];
var pauseGameInitially = cache.data.PlayerDataOptions[6];
var renewEdicts = cache.data.PlayerDataOptions[7];
var FutaMode = cache.data.PlayerDataOptions[8];
var EyesReBusy = false;
var EyesRe = 0;
dialogueTimer = 0;
dialogueLerp = 0;
_root.specialMSG._alpha = 0;
_root.specialMSG.dialogue.html = true;
_root.specialMSG.dialogue.htmlText = '';
if (_root.loadGame != true) {
newMSG('The wonderful ' + townName + ' was created!');
statBonusInitialize();
}
var pickedNodes = new Array();
_root.underlay.useHandCursor = false;
var keyBreak = -1;
var StatsLeftPartial = 0;
var showingExtraInfo = false;
var bonus = 0;
var quarryBonus = 0;
var prismBonus = 0;
var obsidianBonus = 0;
var foodconsumed;
var HWC;
var tradeMax;
var unhappiness;
var popIncrease = 0;
var popDecrease = 0;
var libraryBonusTech = 0;
var reasonForLeaving = 0;
var starving = false;
var bonusModifier = 1;
var houseHitEvent = false;
var TechBonusModifier = 1;
var HWCbase;
var fontColor = '';
var displayWhat = 0;
var MiniScene = 1;
var goodToGo = false;
var currentlyPopping = false;
var prizeDescript = '';
refreshResources();
clearInterval(cycleTimer);
clearInterval(cycleTimerBig);
var cycleTimer = setInterval(cycle, 2000);
var housePopper = 0;
var initWait = 1;
var currentCycle = 0;
var inCycle = false;
var saveWait = false;
var maxRandom;
var TSB = false;
var aggroWarn = 0;
var encounterThreshold = 50 + DefenseRatingTotal * 2;
var cycleTimerClear;
var clearCode = 0;
var clearLerp = 0;
var redundant = false;
var xMapOffset = 0;
var yMapOffset = 0;
if (_root.loadGame == false) {
checkExtraPostLoad();
} else {
i = 0;
while (i < traitsOwned.length) {
traitsOwned[i] = cache.data.PlayerDataTraitsOwned[i];
++i;
}
checkExtraPreLoad();
}
newMap();
var maxZoom = 150;
var minZoom = 50;
var lastX = NaN;
var lastY = NaN;
var DragScrollSpeed = 1.5;
var DragKeys = new Array(1, 2, 4);
if (DragOnLeftClick == false) {
DragKeys[0] = 4;
} else {
DragKeys[0] = 1;
}
_root.world.onEnterFrame = function () {
var v2 = 0;
if (Key.isDown(37) || Key.isDown(65)) {
if (!_root.world.vcam.hitTest(_root.world.leftborder)) {
_root.world.vcam._x -= _root.camSpeed + _root.camSpeedBoost;
}
} else {
++v2;
}
if (Key.isDown(39) || Key.isDown(68)) {
if (!_root.world.vcam.hitTest(_root.world.rightborder)) {
_root.world.vcam._x += _root.camSpeed + _root.camSpeedBoost;
}
} else {
++v2;
}
if (Key.isDown(40) || Key.isDown(83)) {
if (!_root.world.vcam.hitTest(_root.world.bottomborder)) {
_root.world.vcam._y += _root.camSpeed + _root.camSpeedBoost;
}
} else {
++v2;
}
if (Key.isDown(38) || Key.isDown(87)) {
if (!_root.world.vcam.hitTest(_root.world.topborder)) {
_root.world.vcam._y -= _root.camSpeed + _root.camSpeedBoost;
}
} else {
++v2;
}
if (v2 == 4) {
if (_root.camSpeedBoost > 15) {
_root.camSpeedBoost -= 3;
}
} else {
if (_root.camSpeedBoost < 30) {
_root.camSpeedBoost += 1;
}
}
if (Key.isDown(DragKeys[0]) || Key.isDown(DragKeys[1]) || Key.isDown(DragKeys[2])) {
if (lastX == NaN) {
lastX = _xmouse;
}
if (lastY == NaN) {
lastY = _ymouse;
}
if (_xmouse != lastX) {
DragQueen = (lastX - _xmouse) * DragScrollSpeed;
if (DragQueen < 0 && !_root.world.vcam.hitTest(_root.world.leftborder)) {
_root.world.vcam._x += DragQueen;
} else {
if (DragQueen > 0 && !_root.world.vcam.hitTest(_root.world.rightborder)) {
_root.world.vcam._x += DragQueen;
}
}
}
if (_ymouse != lastY) {
DragQueen = (lastY - _ymouse) * DragScrollSpeed;
if (DragQueen < 0 && !_root.world.vcam.hitTest(_root.world.topborder)) {
_root.world.vcam._y += DragQueen;
} else {
if (DragQueen > 0 && !_root.world.vcam.hitTest(_root.world.bottomborder)) {
_root.world.vcam._y += DragQueen;
}
}
}
lastX = _xmouse;
lastY = _ymouse;
} else {
lastX = NaN;
lastY = NaN;
}
};
var edictResidentialBuff = new Array('', 'Population Growth', 'Income Tax', 'Regulated Rations', 'Freedom Week');
var edictLibraryBuff = new Array('', 'Prodigal Research', 'Unstable Tests', 'Entertainment Aisle');
var edictIndustrialBuff = new Array('', 'Strike the Earth', 'Garrison Drills', 'Outsourced Labor');
var edictResidentialActive = 0;
var edictLibraryActive = 0;
var edictIndustrialActive = 0;
var edictResidentialTimer = 0;
var edictLibraryTimer = 0;
var edictIndustrialTimer = 0;
var adviserDialogue = '';
var adviserHints = new Array('');
feeps = 0;
onEnterFrame = function () {
++feeps;
lerpSpecialMSG();
};
clearInterval(intervalID);
var intervalID = setInterval(displayfps, 1000);
deselectAll();
showExtraInfo();
CheckSpecialists();
if (pauseGameInitially == true) {
pauseGame();
}
}
frame 11 {
function fireWeapon(projectileSource, projectileGraphic, projectileLifeMax, projectileSpeed, projectileSpread, projectileMass, projectileScaleMin, projectileScaleMax, projectileInitialAlpha) {
var v3 = _root.attachMovie(projectileGraphic, 'shot' + _root.getNextHighestDepth(), _root.getNextHighestDepth());
var v5;
var v11;
v3._x = projectileSource._x;
v3._y = projectileSource._y;
pscale = _root.randRange(projectileScaleMin, projectileScaleMax);
v3._xscale = pscale;
v3._yscale = pscale;
v3._alpha = projectileInitialAlpha;
v3.projectileLife = 0;
v5 = random(projectileSpread) - projectileSpread / 2;
projectileAngle = (projectileSource._rotation + v5) * Math.PI / 180;
v3.pAn = projectileSource._rotation;
v3.newprojectileAngle;
v3._rotation = v3.pAn;
v3.xMove = Math.cos(projectileAngle) * projectileSpeed;
v3.yMove = Math.sin(projectileAngle) * projectileSpeed;
v3.onEnterFrame = function () {
if (projectileMass > 0) {
this.yMove += projectileMass * gravityConstant * this.projectileLife * this.projectileLife / 10;
}
this._x += this.xMove;
this._y += this.yMove;
this._alpha = 100 - (this.projectileLife / projectileLifeMax) * 100;
this._rotation += 3 - (this.projectileLife / projectileLifeMax) * 3;
this._yscale += 1;
this._xscale += 1;
if (this.projectileLife > projectileLifeMax) {
this.removeMovieClip();
}
if (projectileLifeMax != 0) {
++this.projectileLife;
}
};
}
var gravityConstant = 0.005;
var targethits = 0;
gamescale = 100;
randRange = function (min, max) {
var v1 = Math.floor(Math.random() * (max - min + 1)) + min;
return v1;
};
mouseListener = new Object();
mouseListener.onMouseDown = function () {
mouseClicked = true;
};
mouseListener.onMouseUp = function () {
mouseClicked = false;
};
Mouse.addListener(mouseListener);
}
frame 12 {
gotoAndStop('game');
}
frame 13 {
var header = charName + ', Level ' + loveRank + ' Mayor of ' + townName;
var achievements = 'Days of operation: ' + clock + '\n';
}
movieClip 4420 {
frame 10 {
_root.loadGame = true;
_root.gotoAndStop('game');
}
}
frame 16 {
function createOptions() {
var v4 = 0;
var v6 = 0;
var v5 = 0;
var v7 = 0;
j = 0;
while (j < optionsTable.length - 1) {
if (optionsTable[j][2] == 1) {
var v3 = _root.extraMenu.Pop.attachMovie(optionsTable[j][0], j + optionsTable[j][0], _root.optionDepthInitial + v7);
v3._x = -45 + 38 * v6;
v3._y = -15 + 38 * v4;
if (j < 10) {
v3.onPress = function () {
pressOption(optionsTable[int((this._name.split(''))[0])][0]);
};
v3.onRollOver = function () {
_root.extraMenu.Descript = optionsTable[int((this._name.split(''))[0])][1];
_root.extraMenu.DescriptName = optionsTable[int((this._name.split(''))[0])][0];
};
v3.onRollOut = function () {
_root.extraMenu.Descript = '';
_root.extraMenu.DescriptName = '';
};
} else {
v3.onPress = function () {
pressOption(optionsTable[int((this._name.split(''))[0] + (this._name.split(''))[1])][0]);
};
v3.onRollOver = function () {
_root.extraMenu.Descript = optionsTable[int((this._name.split(''))[0] + (this._name.split(''))[1])][1];
_root.extraMenu.DescriptName = optionsTable[int((this._name.split(''))[0] + (this._name.split(''))[1])][0];
};
v3.onRollOut = function () {
_root.extraMenu.Descript = '';
_root.extraMenu.DescriptName = '';
};
}
++v7;
++v4;
++v5;
if (v5 >= 10) {
v5 = 0;
++v6;
v4 = 0;
}
}
++j;
}
j = 0;
while (j < optionsTableLocked.length - 1) {
if (optionsTableLocked[j][2] == 1) {
v3 = _root.extraMenu.Pop.attachMovie(optionsTableLocked[j][0], j + optionsTableLocked[j][0], _root.optionDepthInitial + v7);
v3._x = -45 + 38 * v6;
v3._y = 15 + 38 * v4;
v3.onPress = function () {
pressOption(optionsTableLocked[int((this._name.split(''))[0])][0]);
};
v3.onRollOver = function () {
_root.extraMenu.Descript = optionsTableLocked[int((this._name.split(''))[0])][1];
_root.extraMenu.DescriptName = optionsTableLocked[int((this._name.split(''))[0])][0];
};
v3.onRollOut = function () {
_root.extraMenu.Descript = '';
_root.extraMenu.DescriptName = '';
};
++v7;
++v4;
++v5;
if (v5 >= 10) {
v5 = 0;
++v6;
v4 = 0;
}
}
++j;
}
}
function showOptions() {
_root.extraMenu.play();
if (optionsHidden == true) {
optionsHidden = false;
} else {
optionsHidden = true;
}
}
function toggleStockings() {
_root.char.foot1.stocking.type.nextFrame();
_root.char.foot2.stocking.type.nextFrame();
_root.char.leg1.stocking.type.nextFrame();
_root.char.leg2.stocking.type.nextFrame();
}
function pressOption(option) {
if (option == NaN) {
} else {
if (option == 'Horseshoes') {
if (_root.horseshoeAlpha == 100) {
_root.horseshoeAlpha = 0;
} else {
_root.horseshoeAlpha = 100;
}
_root.char.foot1.horseshoe._alpha = _root.horseshoeAlpha;
_root.char.foot2.horseshoe._alpha = _root.horseshoeAlpha;
_root.cache.data.Cosmetics[0] = _root.horseshoeAlpha;
} else {
if (option == 'Crotch Boobs') {
if (_root.CrotchBoobs == 0) {
_root.CrotchBoobs = 1;
_root.char.crotchboobs.gotoAndStop(_root.CharacterSkin + 'a');
} else {
_root.CrotchBoobs = 0;
_root.char.crotchboobs.gotoAndStop('disabled');
}
_root.cache.data.Cosmetics[1] = _root.CrotchBoobs;
} else {
if (option == 'Futa Mode') {
if (_root.FutaMode == 0) {
_root.FutaMode = 1;
_root.char.cock.gotoAndStop(_root.CharacterSkin + 'a');
_root.char.balls.gotoAndStop(_root.CharacterSkin + 'a');
} else {
if (_root.FutaMode == 1) {
_root.FutaMode = 2;
_root.char.cock.gotoAndStop(_root.CharacterSkin + 'a');
_root.char.balls.gotoAndStop('disabled');
} else {
_root.FutaMode = 0;
_root.char.cock.gotoAndStop('disabled');
_root.char.balls.gotoAndStop('disabled');
}
}
_root.cache.data.Cosmetics[2] = _root.FutaMode;
} else {
if (option == 'Mirror Scene') {
_root.char._xscale *= -1;
} else {
if (option == 'Anthro Mode') {
if (_root.maleType == 2) {
_root.maleType = 1;
} else {
_root.maleType = 2;
}
_root.setMaleType();
} else {
if (option == 'Eyewear') {
_root.char.head.eyewear.nextFrame();
} else {
if (option == 'Neck Items') {
_root.char.chest.scarf.nextFrame();
} else {
if (option == 'Bra') {
_root.char.chest.bra.nextFrame();
} else {
if (option == 'Hairbow') {
_root.char.head.hairbow.nextFrame();
} else {
if (option == 'Longsword') {
_root.char.chest.sword.nextFrame();
} else {
if (option == 'Blush') {
_root.char.head.blush.nextFrame();
} else {
if (option == 'Stockings') {
if (_root.Stockings == 1) {
_root.Stockings = 2;
} else {
if (_root.Stockings == 2) {
_root.Stockings = 3;
} else {
_root.Stockings = 1;
}
}
_root.char.foot1.stocking.gotoAndStop(_root.Stockings);
_root.char.foot2.stocking.gotoAndStop(_root.Stockings);
_root.char.leg1.stocking.gotoAndStop(_root.Stockings);
_root.char.leg2.stocking.gotoAndStop(_root.Stockings);
} else {
if (option == 'Pubes (Groin)') {
_root.char.groin.pubes.pubes.nextFrame();
_root.char.vulvaupper.pubes.pubes.nextFrame();
} else {
if (option == 'Ballgag') {
if (_root.Ballgag == 2) {
_root.Ballgag = 1;
} else {
if (_root.Ballgag == 1) {
_root.Ballgag = 2;
}
}
_root.char.head.ballgag.gotoAndStop(Ballgag);
} else {
if (option == 'Hot Swap') {
_root.hotswap.nextFrame();
} else {
if (option == 'Lighting') {
_root.lighting.nextFrame();
} else {
if (option == 'Background') {
_root.char.bg.nextFrame();
} else {
if (option == 'Corset') {
_root.char.tummy.corset.nextFrame();
} else {
if (option == 'Blindfold') {
if (_root.Blindfold == 2) {
_root.char.head.eyelid.gotoAndPlay(2);
_root.Blindfold = 1;
} else {
if (_root.Blindfold == 1) {
_root.char.head.eyelid.gotoAndStop('closed');
_root.char.head.eyelashupper._alpha = 0;
_root.Blindfold = 2;
}
}
_root.char.head.blindfold.gotoAndStop(_root.Blindfold);
} else {
if (option == 'Wings') {
if (Wings == 2) {
Wings = 1;
} else {
Wings = 2;
}
_root.char.chest.wings.gotoAndStop(Wings);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
createOptions();
var optionsHidden = true;
var horseshoeAlpha = _root.cache.data.Cosmetics[0];
var CrotchBoobs = _root.cache.data.Cosmetics[1];
var Stockings = 1;
var StockingsType = 1;
var Blindfold = 1;
var Ballgag = 1;
}
frame 16 {
function changePhase(scene, speed) {
PhaseSpeed = speed;
if (scene == 'idle' && _root.Phase != 'idle') {
_root.Phase = scene;
_root.char.gotoAndPlay(scene);
_root.whiteflash.gotoAndPlay(2);
_root.setMaleType();
}
if (_root.Phase == 'idle' && scene != 'idle') {
_root.whiteflash.gotoAndPlay(2);
_root.setMaleType();
if (scene == 'tease' || scene == 'fuck') {
_root.Phase = scene;
_root.char.gotoAndPlay(scene + '_' + PhaseType + PhaseSpeed);
}
} else {
if (scene == 'tease' || scene == 'fuck') {
_root.Phase = scene;
}
}
_root.navigation.navigation.phasetype2.gotoAndStop(Phase + PhaseSpeed);
}
function setColor() {
var v2 = _root.maleColorRed;
var v4 = _root.maleColorGreen;
var v3 = _root.maleColorBlue;
_root.maleColor[0] = rgb2col(v2 - 50, v4 - 50, v3 - 50);
_root.maleColor[1] = rgb2col(v2, v4, v3);
_root.recolorEveryPartMale();
}
function rgb2col(red, green, blue) {
return decColor2hex(red * 65536 + green * 256 + blue);
}
function decColor2hex(color) {
colArr = ((color.toString(16)).toUpperCase()).split('');
numChars = colArr.length;
a = 0;
while (a < 6 - numChars) {
colArr.unshift('0');
++a;
}
return '0x' + colArr.join('');
}
function changeColor(object, color) {
var v1 = new Color(object);
v1.setRGB(int(parseInt(String(color), 16)));
}
function selectCharacter(CHAR) {
if (CHAR == 1 || CHAR == 5 || CHAR == 6) {
Wings = 1;
} else {
Wings = 2;
}
_root.CharacterSkin = CHAR;
_root.recolorEveryPart(CHAR);
_root.directorEyeballsPosition = 0;
}
function setMaleType() {
if (_root.maleType == 1) {
_root.char.malearm1.gotoAndStop(_root.maleType);
_root.char.malearm2.gotoAndStop(_root.maleType);
_root.char.malearm1b.gotoAndStop(3);
_root.char.malearm2b.gotoAndStop(3);
} else {
_root.char.malearm1.gotoAndStop(3);
_root.char.malearm2.gotoAndStop(3);
_root.char.malearm1b.gotoAndStop(_root.maleType);
_root.char.malearm2b.gotoAndStop(_root.maleType);
}
_root.char.malearm1b.gotoAndStop(_root.maleType);
_root.char.malearm2b.gotoAndStop(_root.maleType);
_root.char.malearmup1.gotoAndStop(_root.maleType);
_root.char.malearmup2.gotoAndStop(_root.maleType);
_root.char.maletorso.gotoAndStop(_root.maleType);
_root.char.malechest.gotoAndStop(_root.maleType);
_root.char.malecock1.gotoAndStop(_root.maleType);
_root.char.malecock2.gotoAndStop(_root.maleType);
_root.char.maleleg1.gotoAndStop(_root.maleType);
_root.char.maleleg2.gotoAndStop(_root.maleType);
_root.char.malehand1.gotoAndStop(_root.maleType);
_root.char.malehand2.gotoAndStop(_root.maleType);
_root.char.malethumb1.gotoAndStop(_root.maleType);
_root.char.malethumb2.gotoAndStop(_root.maleType);
_root.char.malefoot1.gotoAndStop(_root.maleType);
_root.char.malefoot2.gotoAndStop(_root.maleType);
_root.recolorEveryPartMale();
}
function recolorEveryPartMale() {
changeColor('_root.char.malefoot1.outline', _root.maleColor[0]);
changeColor('_root.char.malefoot2.outline', _root.maleColor[0]);
changeColor('_root.char.malearm1.outline', _root.maleColor[0]);
changeColor('_root.char.malearm2.outline', _root.maleColor[0]);
changeColor('_root.char.malearm1b.outline', _root.maleColor[0]);
changeColor('_root.char.malearm2b.outline', _root.maleColor[0]);
changeColor('_root.char.malearmup1.outline', _root.maleColor[0]);
changeColor('_root.char.malearmup2.outline', _root.maleColor[0]);
changeColor('_root.char.maleleg1.outline', _root.maleColor[0]);
changeColor('_root.char.maleleg2.outline', _root.maleColor[0]);
changeColor('_root.char.maletorso.outline', _root.maleColor[0]);
changeColor('_root.char.malechest.outline', _root.maleColor[0]);
changeColor('_root.char.malehand1.outline', _root.maleColor[0]);
changeColor('_root.char.malehand2.outline', _root.maleColor[0]);
changeColor('_root.char.malethumb1.outline', _root.maleColor[0]);
changeColor('_root.char.malethumb2.outline', _root.maleColor[0]);
changeColor('_root.char.malecock1.outline1', _root.maleColor[0]);
changeColor('_root.char.malecock1.outline2', _root.maleColor[0]);
changeColor('_root.char.malecock1.balls.balloutline1', _root.maleColor[0]);
changeColor('_root.char.malecock1.balls.balloutline2', _root.maleColor[0]);
changeColor('_root.char.malecock2.outline', _root.maleColor[0]);
changeColor('_root.char.malethumb2.outline', _root.maleColor[0]);
changeColor('_root.char.malefoot1.fill', _root.maleColor[1]);
changeColor('_root.char.malefoot2.fill', _root.maleColor[1]);
changeColor('_root.char.malearm1.fill', _root.maleColor[1]);
changeColor('_root.char.malearm2.fill', _root.maleColor[1]);
changeColor('_root.char.malearm1b.fill', _root.maleColor[1]);
changeColor('_root.char.malearm2b.fill', _root.maleColor[1]);
changeColor('_root.char.malearmup1.fill', _root.maleColor[1]);
changeColor('_root.char.malearmup2.fill', _root.maleColor[1]);
changeColor('_root.char.maleleg1.fill', _root.maleColor[1]);
changeColor('_root.char.maleleg2.fill', _root.maleColor[1]);
changeColor('_root.char.maletorso.fill', _root.maleColor[1]);
changeColor('_root.char.malechest.fill', _root.maleColor[1]);
changeColor('_root.char.malehand1.fill', _root.maleColor[1]);
changeColor('_root.char.malehand2.fill', _root.maleColor[1]);
changeColor('_root.char.malethumb1.fill', _root.maleColor[1]);
changeColor('_root.char.malethumb2.fill', _root.maleColor[1]);
changeColor('_root.char.malecock1.fill1', _root.maleColor[1]);
changeColor('_root.char.malecock1.fill2', _root.maleColor[1]);
changeColor('_root.char.malecock1.balls.ballfill1', _root.maleColor[1]);
changeColor('_root.char.malecock1.balls.ballfill2', _root.maleColor[1]);
changeColor('_root.char.malecock2.fill', _root.maleColor[1]);
changeColor('_root.char.malethumb2.fill', _root.maleColor[1]);
}
function recolorEveryPart(scheme) {
_root.char.head.gotoAndStop(scheme + 1);
_root.char.hairback.gotoAndStop(scheme + 1);
_root.char.hairback2.gotoAndStop(scheme + 1);
_root.char.tail.gotoAndStop(scheme + 1);
_root.char.groin.gotoAndStop(String(scheme) + 'a');
_root.char.crotch.gotoAndStop(String(scheme) + 'a');
_root.char.vulvaupper.gotoAndStop(String(scheme) + 'a');
_root.char.vulvainner.gotoAndStop(String(scheme) + 'a');
_root.char.vulvalower.gotoAndStop(String(scheme) + 'a');
_root.char.vulvalabia.gotoAndStop(String(scheme) + 'a');
_root.char.vulvapussy.gotoAndStop(String(scheme) + 'a');
_root.char.analtop.gotoAndStop(String(scheme) + 'a');
_root.char.analbottom.gotoAndStop(String(scheme) + 'a');
recolorHooves(scheme);
changeColor('_root.char.foot1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.foot1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.foot1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.foot2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.foot2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.foot2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.arm1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.arm1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.arm1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.arm2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.arm2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.arm2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.tummy.outline', _root.charColor[scheme][0]);
changeColor('_root.char.tummy.fill', _root.charColor[scheme][1]);
changeColor('_root.char.tummy.shade', _root.charColor[scheme][2]);
changeColor('_root.char.chest.outline', _root.charColor[scheme][0]);
changeColor('_root.char.chest.fill', _root.charColor[scheme][1]);
changeColor('_root.char.chest.shade', _root.charColor[scheme][2]);
changeColor('_root.char.neck.outline', _root.charColor[scheme][0]);
changeColor('_root.char.neck.fill', _root.charColor[scheme][1]);
changeColor('_root.char.neck.shade', _root.charColor[scheme][2]);
changeColor('_root.char.butt1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.butt1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.butt1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.butt2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.butt2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.butt2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.leg1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.leg1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.leg1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.leg2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.leg2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.leg2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.head.outline', _root.charColor[scheme][0]);
changeColor('_root.char.head.fill', _root.charColor[scheme][1]);
changeColor('_root.char.head.shade', _root.charColor[scheme][2]);
changeColor('_root.char.head.ear1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.head.ear1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.head.ear1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.head.ear2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.head.ear2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.head.ear2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.head.horn.outline', _root.charColor[scheme][0]);
changeColor('_root.char.head.horn.fill', _root.charColor[scheme][1]);
changeColor('_root.char.head.horn.shade', _root.charColor[scheme][2]);
_root.char.foot1.horseshoe.gotoAndStop(scheme + 1);
_root.char.foot2.horseshoe.gotoAndStop(scheme + 1);
_root.char.chest.wings.gotoAndStop(Wings);
_root.char.chest.wings.wings.gotoAndStop(scheme + 1);
if (_root.Blindfold == 1) {
_root.char.head.eyelid.gotoAndPlay(2);
} else {
if (_root.Blindfold == 2) {
_root.char.head.eyelid.gotoAndStop('closed');
_root.char.head.eyelashupper._alpha = 0;
}
}
_root.char.head.ballgag.gotoAndStop(Ballgag);
if (_root.CrotchBoobs == 1) {
_root.char.crotchboobs.gotoAndStop(String(scheme) + 'a');
} else {
_root.char.crotchboobs.gotoAndStop('disabled');
}
if (_root.FutaMode == 1) {
_root.char.cock.gotoAndStop(String(scheme) + 'a');
_root.char.balls.gotoAndStop(String(scheme) + 'a');
} else {
if (_root.FutaMode == 2) {
_root.char.cock.gotoAndStop(String(scheme) + 'a');
_root.char.balls.gotoAndStop('disabled');
} else {
_root.char.cock.gotoAndStop('disabled');
_root.char.balls.gotoAndStop('disabled');
}
}
}
function recolorGotoPart(scheme) {
changeColor('_root.char.foot1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.foot1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.foot1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.foot2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.foot2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.foot2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.tummy.outline', _root.charColor[scheme][0]);
changeColor('_root.char.tummy.fill', _root.charColor[scheme][1]);
changeColor('_root.char.tummy.shade', _root.charColor[scheme][2]);
changeColor('_root.char.butt1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.butt1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.butt1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.butt2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.butt2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.butt2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.leg1.outline', _root.charColor[scheme][0]);
changeColor('_root.char.leg1.fill', _root.charColor[scheme][1]);
changeColor('_root.char.leg1.shade', _root.charColor[scheme][2]);
changeColor('_root.char.leg2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.leg2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.leg2.shade', _root.charColor[scheme][2]);
_root.char.foot1.horseshoe.gotoAndStop(scheme + 1);
_root.char.foot2.horseshoe.gotoAndStop(scheme + 1);
_root.char.groin.gotoAndStop(String(scheme) + 'a');
_root.char.crotch.gotoAndStop(String(scheme) + 'a');
_root.char.vulvaupper.gotoAndStop(String(scheme) + 'a');
_root.char.vulvainner.gotoAndStop(String(scheme) + 'a');
_root.char.vulvalower.gotoAndStop(String(scheme) + 'a');
_root.char.vulvalabia.gotoAndStop(String(scheme) + 'a');
_root.char.vulvapussy.gotoAndStop(String(scheme) + 'a');
}
function gotoEveryPart(frame) {
_root.char.leg1.gotoAndStop(frame);
_root.char.leg2.gotoAndStop(frame);
_root.char.foot1.gotoAndStop(frame);
_root.char.foot2.gotoAndStop(frame);
_root.char.tummy.gotoAndStop(frame);
_root.char.groin.gotoAndStop(frame);
_root.char.butt1.gotoAndStop(frame);
_root.char.butt2.gotoAndStop(frame);
_root.recolorGotoPart(_root.CharacterSkin);
}
function recolorHooves(scheme) {
changeColor('_root.char.hoof1.hoof2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.hoof1.hoof2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.hoof1.hoof2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.hoof2.outline', _root.charColor[scheme][0]);
changeColor('_root.char.hoof2.fill', _root.charColor[scheme][1]);
changeColor('_root.char.hoof2.shade', _root.charColor[scheme][2]);
changeColor('_root.char.hoof1.hoof2.outline2', _root.charColor[scheme][0]);
changeColor('_root.char.hoof1.hoof2.fill2', _root.charColor[scheme][1]);
changeColor('_root.char.hoof1.hoof2.shade2', _root.charColor[scheme][2]);
changeColor('_root.char.hoof2.outline2', _root.charColor[scheme][0]);
changeColor('_root.char.hoof2.fill2', _root.charColor[scheme][1]);
changeColor('_root.char.hoof2.shade2', _root.charColor[scheme][2]);
}
stop();
endGameSession();
myMenu.builtInItems.zoom = true;
var Phase = 'idle';
var PhaseType = 'pussy';
var PhaseSpeed = 1;
var directorEyeballs = 0;
var directorEyeballsThreshold = 200;
var directorEyeballsPosition = 0;
var directorEyeballsPositionMAX = 10;
var directorEyeballsPositionMIN = -10;
var directorEyeballsFade = 0;
var directorMouth = 0;
var directorMouthThreshold = 300;
var directorBrows = 0;
var directorBrowsThreshold = 300;
this.char.bg.gotoAndStop(sexScene);
var CharacterSkin = charSelected;
var maleType = 1;
var Wings = 1;
if (_root.maleType == 1) {
_root.char.malearm1.gotoAndStop(_root.maleType);
_root.char.malearm2.gotoAndStop(_root.maleType);
_root.char.malearm1b.gotoAndStop(3);
_root.char.malearm2b.gotoAndStop(3);
} else {
_root.char.malearm1.gotoAndStop(3);
_root.char.malearm2.gotoAndStop(3);
_root.char.malearm1b.gotoAndStop(_root.maleType);
_root.char.malearm2b.gotoAndStop(_root.maleType);
}
setColor();
_root.char.foot1.stop();
_root.char.foot2.stop();
_root.char.leg1.stop();
_root.char.leg2.stop();
_root.char.butt1.stop();
_root.char.butt2.stop();
_root.char.tummy.stop();
_root.char.groin.stop();
_root.char.hoof1.stop();
_root.char.hoof2.stop();
if (_root.CrotchBoobs == 1) {
_root.char.crotchboobs.gotoAndStop(String(CharacterSkin) + 'a');
} else {
_root.char.crotchboobs.gotoAndStop('disabled');
}
if (_root.FutaMode == 1) {
_root.char.cock.gotoAndStop(String(CharacterSkin) + 'a');
_root.char.balls.gotoAndStop(String(CharacterSkin) + 'a');
} else {
if (_root.FutaMode == 2) {
_root.char.cock.gotoAndStop(String(CharacterSkin) + 'a');
_root.char.balls.gotoAndStop('disabled');
} else {
_root.char.cock.gotoAndStop('disabled');
_root.char.balls.gotoAndStop('disabled');
}
}
var moveDemHooves = true;
selectCharacter(_root.CharacterSkin);
}
movieClip 4429 {
}
movieClip 4432 {
frame 3 {
gotoAndStop(1);
}
}
movieClip 4434 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 4436 {
}
movieClip 4438 {
}
movieClip 4440 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4442 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 4444 {
}
movieClip 4446 {
}
movieClip 4448 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4450 {
}
movieClip 4452 {
}
movieClip 4454 {
}
movieClip 4456 {
}
movieClip 4457 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4459 {
}
movieClip 4461 {
}
movieClip 4463 {
}
movieClip 4465 {
}
movieClip 4466 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4474 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 1);
}
}
movieClip 4475 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 4477 {
}
movieClip 4478 {
frame 1 {
stop();
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 4480 {
}
movieClip 4482 {
}
movieClip 4484 {
}
button 4485 {
on (release) {
_root.moveDemHooves = true;
}
}
movieClip 4490 {
frame 1 {
stop();
}
frame 5 {
gotoAndStop(1);
}
}
movieClip 4500 {
frame 1 {
stop();
}
frame 9 {
gotoAndStop(1);
}
}
movieClip 4501 {
}
movieClip 4503 {
}
movieClip 4505 {
}
movieClip 4507 {
}
movieClip 4510 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 4512 {
}
movieClip 4514 {
}
movieClip 4516 {
}
movieClip 4517 {
}
movieClip 4519 {
}
movieClip 4521 {
}
movieClip 4523 {
}
movieClip 4525 {
}
movieClip 4527 {
}
movieClip 4529 {
}
movieClip 4530 {
}
movieClip 4532 {
}
movieClip 4534 {
}
movieClip 4536 {
}
movieClip 4538 {
}
movieClip 4540 {
}
movieClip 4542 {
}
movieClip 4543 {
}
movieClip 4551 {
}
movieClip 4559 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 'a');
}
}
movieClip 4561 {
}
movieClip 4563 {
}
movieClip 4565 {
}
movieClip 4567 {
}
movieClip 4568 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4570 {
}
movieClip 4572 {
}
movieClip 4574 {
}
movieClip 4576 {
}
movieClip 4577 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4579 {
}
movieClip 4581 {
}
movieClip 4583 {
}
movieClip 4585 {
}
movieClip 4586 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4588 {
}
movieClip 4590 {
}
movieClip 4592 {
}
movieClip 4594 {
}
movieClip 4595 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4597 {
}
movieClip 4599 {
}
movieClip 4601 {
}
movieClip 4603 {
}
movieClip 4604 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4606 {
}
movieClip 4608 {
}
movieClip 4610 {
}
movieClip 4612 {
}
movieClip 4613 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4615 {
}
movieClip 4617 {
}
movieClip 4619 {
}
movieClip 4621 {
}
movieClip 4622 {
frame 33 {
gotoAndStop(1);
}
frame 64 {
gotoAndStop(1);
}
frame 85 {
gotoAndStop(1);
}
}
movieClip 4623 {
frame 2 {
stop();
}
frame 4 {
stop();
}
frame 5 {
stop();
}
frame 6 {
stop();
}
frame 7 {
stop();
}
frame 8 {
stop();
}
frame 9 {
stop();
}
}
movieClip 4629 {
}
movieClip 4634 {
frame 1 {
stop();
}
frame 6 {
gotoAndStop(1);
}
}
movieClip 4635 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 7 {
gotoAndStop(1);
}
}
movieClip 4651 {
instance pubes of movieClip 4635 {
onClipEvent (release) {
_root.char.groin.pubes.nextFrame();
_root.char.vulvaupper.pubes.nextFrame();
}
}
}
movieClip 4653 {
}
movieClip 4655 {
}
movieClip 4657 {
}
movieClip 4660 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 4663 {
}
movieClip 4665 {
}
movieClip 4667 {
}
movieClip 4670 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 4671 {
}
movieClip 4674 {
}
movieClip 4676 {
}
movieClip 4678 {
}
movieClip 4681 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 4683 {
}
movieClip 4685 {
}
movieClip 4687 {
}
movieClip 4690 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 4691 {
}
movieClip 4699 {
}
movieClip 4707 {
}
movieClip 4715 {
}
movieClip 4717 {
}
movieClip 4719 {
}
movieClip 4721 {
}
movieClip 4724 {
}
movieClip 4726 {
}
movieClip 4728 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4730 {
}
movieClip 4732 {
}
movieClip 4734 {
}
movieClip 4736 {
}
movieClip 4737 {
}
movieClip 4739 {
}
movieClip 4741 {
}
movieClip 4743 {
}
movieClip 4745 {
}
movieClip 4748 {
}
movieClip 4750 {
}
movieClip 4752 {
}
movieClip 4754 {
}
movieClip 4756 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 4759 {
}
movieClip 4766 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 'a');
}
}
movieClip 4774 {
}
movieClip 4778 {
}
movieClip 4785 {
}
movieClip 4793 {
}
movieClip 4811 {
}
movieClip 4814 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4822 {
}
movieClip 4840 {
}
movieClip 4843 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4851 {
}
movieClip 4869 {
}
movieClip 4872 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4880 {
}
movieClip 4898 {
}
movieClip 4901 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4909 {
}
movieClip 4927 {
}
movieClip 4930 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4938 {
}
movieClip 4956 {
}
movieClip 4959 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4967 {
}
movieClip 4985 {
}
movieClip 4988 {
frame 2 {
stop();
}
frame 27 {
gotoAndStop(2);
}
frame 47 {
gotoAndStop(2);
}
}
movieClip 4989 {
frame 2 {
stop();
}
}
movieClip 5020 {
}
movieClip 5023 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5053 {
}
movieClip 5055 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5085 {
}
movieClip 5087 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5117 {
}
movieClip 5119 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5149 {
}
movieClip 5151 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5181 {
}
movieClip 5183 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5213 {
}
movieClip 5215 {
frame 1 {
stop();
}
frame 31 {
gotoAndStop(1);
}
frame 49 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
}
movieClip 5216 {
frame 2 {
stop();
}
}
movieClip 5218 {
}
movieClip 5220 {
}
movieClip 5222 {
}
movieClip 5223 {
}
movieClip 5226 {
}
movieClip 5228 {
}
movieClip 5230 {
}
movieClip 5231 {
}
movieClip 5233 {
}
movieClip 5235 {
}
movieClip 5237 {
}
movieClip 5239 {
}
movieClip 5241 {
}
movieClip 5243 {
}
movieClip 5244 {
frame 1 {
stop();
}
}
movieClip 5246 {
}
movieClip 5248 {
}
movieClip 5250 {
}
movieClip 5251 {
}
movieClip 5253 {
}
movieClip 5255 {
}
movieClip 5257 {
}
movieClip 5259 {
}
movieClip 5260 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5262 {
}
movieClip 5264 {
}
movieClip 5266 {
}
movieClip 5268 {
}
movieClip 5269 {
}
movieClip 5271 {
}
movieClip 5273 {
}
movieClip 5275 {
}
movieClip 5277 {
}
movieClip 5278 {
}
movieClip 5280 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 5282 {
}
movieClip 5284 {
}
movieClip 5285 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5287 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 5289 {
}
movieClip 5291 {
}
movieClip 5292 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5294 {
}
movieClip 5296 {
}
movieClip 5298 {
}
movieClip 5303 {
}
movieClip 5308 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 1);
}
}
movieClip 5312 {
frame 1 {
gotoAndStop(_root.StockingsType);
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 5313 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 5315 {
}
movieClip 5317 {
}
movieClip 5319 {
}
movieClip 5327 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 1);
}
}
movieClip 5331 {
frame 1 {
gotoAndStop(_root.StockingsType);
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 5332 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 5333 {
frame 1 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
frame 3 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
frame 5 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
}
movieClip 5335 {
}
movieClip 5337 {
}
movieClip 5339 {
}
movieClip 5347 {
frame 1 {
gotoAndStop(_root.CharacterSkin + 1);
}
}
movieClip 5351 {
frame 1 {
gotoAndStop(_root.StockingsType);
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 5352 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 5354 {
}
movieClip 5356 {
}
movieClip 5358 {
}
movieClip 5362 {
frame 1 {
gotoAndStop(_root.StockingsType);
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 5363 {
frame 1 {
gotoAndStop(_root.Stockings);
}
frame 4 {
gotoAndStop(1);
}
}
movieClip 5364 {
frame 1 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
frame 3 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
frame 5 {
this.horseshoe._alpha = _root.horseshoeAlpha;
}
}
movieClip 5366 {
}
movieClip 5368 {
}
movieClip 5369 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5371 {
}
movieClip 5373 {
}
movieClip 5374 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5376 {
}
movieClip 5378 {
}
movieClip 5380 {
}
movieClip 5382 {
}
movieClip 5383 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5385 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 5387 {
}
movieClip 5389 {
}
movieClip 5390 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5392 {
frame 1 {
gotoAndStop(2);
}
}
movieClip 5394 {
}
movieClip 5396 {
}
movieClip 5397 {
frame 1 {
gotoAndStop(_root.maleType);
}
}
movieClip 5399 {
}
movieClip 5400 {
frame 1 {
_root.gotoEveryPart(5);
_root.recolorEveryPart(_root.CharacterSkin);
_root.setMaleType();
}
frame 2 {
if (!init) {
gotoAndPlay(_root.Phase);
init = true;
var goobs = _root.randRange(2, 2);
_root.queuemusikBedroom(goobs);
_root.MusikLoop = 1;
}
}
frame 49 {
if (_root.PhaseType == 'pussy') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teasePussyToButt');
}
}
frame 62 {
this.head.jaw.gotoAndPlay('gasp');
}
frame 62 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 80 {
_root.gotoEveryPart(5);
_root.setMaleType();
}
frame 92 {
this.balls.balls.gotoAndPlay('bounceGentle');
this.cock.cock.gotoAndPlay('bounceGentle');
this.crotchboobs.boobs.gotoAndPlay('bounceGentle');
}
frame 109 {
if (_root.PhaseType == 'pussy' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_pussy');
}
}
frame 116 {
_root.gotoEveryPart(5);
_root.setMaleType();
}
frame 123 {
this.balls.balls.gotoAndPlay('bounce');
this.cock.cock.gotoAndPlay('bounce');
this.crotchboobs.boobs.gotoAndPlay('bounce');
}
frame 138 {
if (_root.PhaseType == 'pussy' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_pussy');
}
}
frame 146 {
_root.gotoEveryPart(5);
_root.setMaleType();
}
frame 150 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 160 {
if (_root.PhaseType == 'pussy' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_pussy');
}
}
frame 165 {
_root.gotoEveryPart(5);
_root.setMaleType();
}
frame 169 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 198 {
if (_root.PhaseType == 'pussy' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_pussy');
}
}
frame 203 {
_root.setMaleType();
}
frame 221 {
_root.setMaleType();
}
frame 235 {
if (_root.PhaseType == 'pussy') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teasePussyToButt');
}
}
frame 243 {
_root.setMaleType();
}
frame 245 {
_root.gotoEveryPart(3);
}
frame 247 {
_root.gotoEveryPart(5);
}
frame 258 {
if (_root.PhaseType == 'pussy') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teasePussyToButt');
}
}
frame 266 {
_root.setMaleType();
}
frame 268 {
_root.gotoEveryPart(3);
}
frame 270 {
_root.gotoEveryPart(1);
}
frame 281 {
if (_root.PhaseType == 'anal') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teaseButtToPussy');
}
}
frame 282 {
_root.gotoEveryPart(1);
_root.setMaleType();
}
frame 321 {
if (_root.PhaseType == 'anal') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teaseButtToPussy');
}
}
frame 345 {
_root.setMaleType();
}
frame 350 {
this.head.jaw.gotoAndPlay('gasp');
}
frame 350 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 350 {
_root.setMaleType();
}
frame 359 {
_root.gotoEveryPart(1);
_root.setMaleType();
}
frame 369 {
this.balls.balls.gotoAndPlay('bounceGentle');
this.cock.cock.gotoAndPlay('bounceGentle');
this.crotchboobs.boobs.gotoAndPlay('bounceGentle');
}
frame 387 {
if (_root.PhaseType == 'anal' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_anal');
}
}
frame 395 {
_root.gotoEveryPart(1);
_root.setMaleType();
}
frame 401 {
this.balls.balls.gotoAndPlay('bounce');
this.cock.cock.gotoAndPlay('bounce');
this.crotchboobs.boobs.gotoAndPlay('bounce');
}
frame 415 {
if (_root.PhaseType == 'anal' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_anal');
}
}
frame 422 {
_root.gotoEveryPart(1);
_root.setMaleType();
}
frame 426 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 436 {
if (_root.PhaseType == 'anal' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_anal');
}
}
frame 442 {
_root.gotoEveryPart(1);
_root.setMaleType();
}
frame 446 {
this.balls.balls.gotoAndPlay('bounceQuick');
this.cock.cock.gotoAndPlay('bounceQuick');
this.crotchboobs.boobs.gotoAndPlay('bounceQuick');
}
frame 486 {
if (_root.PhaseType == 'anal' && _root.Phase == 'fuck') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType + _root.PhaseSpeed);
} else {
gotoAndPlay('remove_anal');
}
}
frame 495 {
_root.setMaleType();
}
frame 500 {
_root.setMaleType();
}
frame 501 {
if (_root.PhaseType == 'anal') {
if (_root.Phase == 'tease') {
gotoAndPlay(_root.Phase + '_' + _root.PhaseType);
}
if (_root.Phase == 'fuck') {
gotoAndPlay('penetrate_' + _root.PhaseType);
}
} else {
gotoAndPlay('teaseButtToPussy');
}
}
frame 585 {
gotoAndPlay(_root.Phase);
}
}
movieClip 5401 {
frame 1 {
stop();
}
frame 12 {
gotoAndStop(1);
}
frame 15 {
gotoAndStop(1);
}
}
movieClip 5406 {
frame 1 {
stop();
}
}
button 5407 {
on (release) {
_root.showOptions();
}
on (rollOver) {
_root.hoverText = 'Extras';
}
on (rollOut) {
_root.hoverText = '';
}
}
movieClip 5409 {
frame 1 {
var dialogueStyle = '';
if (_root.raunchyText == 1) {
dialogueStyle = 'Raunchy';
} else {
dialogueStyle = 'Normal';
}
}
}
movieClip 5413 {
frame 1 {
stop();
var Descript = '';
}
frame 5 {
stop();
}
}
movieClip 5416 {
frame 1 {
var current = 1;
}
frame 4 {
if (_root.moveDemHooves == true) {
current += 2;
if (current == 9) {
_root.moveDemHooves = false;
}
if (current == 17) {
current = 1;
_root.moveDemHooves = false;
}
_root.char.hoof2.gotoAndStop(current);
_root.char.hoof1.hoof2.gotoAndStop(current);
_root.recolorHooves(_root.CharacterSkin);
}
gotoAndPlay(2);
}
}
movieClip 5418 {
}
button 5419 {
on (release) {
_root.changePhase('idle', 1);
}
}
button 5421 {
on (release) {
_root.changePhase('tease', 1);
}
}
button 5423 {
on (release) {
if (_root.PhaseType == 'pussy') {
_root.PhaseType = 'anal';
} else {
_root.PhaseType = 'pussy';
}
_root.navigation.navigation.phasetype.gotoAndStop(_root.PhaseType);
}
}
button 5426 {
on (release) {
_root.changePhase('fuck', 1);
}
}
button 5428 {
on (release) {
if (!ayyyy) {
ayyyy = true;
if (_root.FAPMODE == 1) {
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'title';
} else {
_root.fader.gotoAndPlay('fadeOut');
_root.fadeOutTarget = 'game';
_root.loadGame = true;
}
}
}
}
button 5430 {
on (release) {
_root.changePhase('fuck', 2);
}
}
button 5432 {
on (release) {
_root.changePhase('fuck', 3);
}
}
movieClip 5436 {
frame 1 {
gotoAndStop(_root.PhaseType);
}
}
movieClip 5442 {
frame 1 {
gotoAndStop(_root.Phase + _root.PhaseSpeed);
}
}
movieClip 5443 {
}
movieClip 5446 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
button 5449 {
on (release) {
_root.selectCharacter(0);
}
}
button 5450 {
on (release) {
_root.selectCharacter(1);
}
}
button 5451 {
on (release) {
_root.selectCharacter(2);
}
}
button 5452 {
on (release) {
_root.selectCharacter(3);
}
}
button 5454 {
on (release) {
_root.selectCharacter(4);
}
}
button 5455 {
on (release) {
_root.selectCharacter(5);
}
}
button 5456 {
on (release) {
_root.selectCharacter(6);
}
}
movieClip 5458 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
button 5460 {
on (release) {
_root.CharacterSkin = 0;
_root.recolorEveryPart(_root.CharacterSkin);
}
}
button 5461 {
on (release) {
_root.CharacterSkin = 1;
_root.recolorEveryPart(_root.CharacterSkin);
}
}
button 5462 {
on (release) {
_root.CharacterSkin = 2;
_root.recolorEveryPart(_root.CharacterSkin);
}
}
button 5463 {
on (release) {
_root.CharacterSkin = 3;
_root.recolorEveryPart(_root.CharacterSkin);
}
}
movieClip 5465 {
frame 1 {
stop();
}
frame 3 {
gotoAndStop(1);
}
}
movieClip 5471 {
frame 34 {
stop();
}
frame 47 {
stop();
_root.gotoAndStop(_root.fadeOutTarget);
}
frame 58 {
stop();
}
}
movieClip 5473 {
frame 1 {
var countHorse;
var psudeoRandom = 0;
var psudeoRandom2 = 0;
}
frame 4 {
_root.directorEyeballs += _root.randRange(2, 4);
if (_root.directorEyeballs > _root.directorEyeballsThreshold) {
x = _root.randRange(-1, 1);
_root.directorEyeballsFade += _root.randRange(5, 10);
_root.directorEyeballs = 0;
}
if (_root.directorEyeballsFade > 0) {
if (x == 1 && _root.directorEyeballsPosition < _root.directorEyeballsPositionMAX) {
_root.directorEyeballsPosition += x * _root.directorEyeballsFade * 0.05;
_root.char.head.eyeballs._y += x * _root.directorEyeballsFade * 0.05;
}
if (x == -1 && _root.directorEyeballsPosition > _root.directorEyeballsPositionMIN) {
_root.directorEyeballsPosition += x * _root.directorEyeballsFade * 0.05;
_root.char.head.eyeballs._y += x * _root.directorEyeballsFade * 0.05;
}
--_root.directorEyeballsFade;
}
_root.directorMouth += _root.randRange(2, 4);
if (_root.directorMouth > _root.directorMouthThreshold) {
_root.char.head.jaw.play();
_root.directorMouth = 0;
}
_root.directorBrows += _root.randRange(2, 4);
if (_root.directorBrows > _root.directorBrowsThreshold) {
_root.char.head.brows.play();
_root.directorBrows = 0;
}
gotoAndPlay(2);
}
}