Advertisement
Guest User

Untitled

a guest
Apr 8th, 2020
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. diff --git a/game.js b/game.js
  2. index c40cb33..6e197ec 100644
  3. --- a/game.js
  4. +++ b/game.js
  5. @@ -3426,6 +3426,10 @@ dojo.declare("com.nuclearunicorn.game.ui.GamePage", null, {
  6.             "paragon": paragonPoints
  7.         };
  8.  
  9. +        if (this.challenges.currentChallenge == "blackSky") {
  10. +            addRes["ship"] = 1
  11. +        }
  12. +
  13.         var karmaZebras = parseInt(this.karmaZebras);   //hack
  14.         //that's all folks
  15.  
  16. diff --git a/js/calendar.js b/js/calendar.js
  17. index eeb003b..63503a3 100644
  18. --- a/js/calendar.js
  19. +++ b/js/calendar.js
  20. @@ -446,7 +446,8 @@ dojo.declare("com.nuclearunicorn.game.Calendar", null, {
  21.         //------------------------- astronomical events -------------------------
  22.         if (this.game.bld.get("library").on > 0) {
  23.             var eventChance = (0.0025 + this.game.getEffect("starEventChance")) * chanceRatio;
  24. -           if (this.game.prestige.getPerk("astromancy").researched) {
  25. +
  26. +            if (this.game.prestige.getPerk("astromancy").researched) {
  27.                 eventChance *= 2;
  28.             }
  29.  
  30. @@ -455,10 +456,14 @@ dojo.declare("com.nuclearunicorn.game.Calendar", null, {
  31.                     this.observeTimeout();
  32.                 }
  33.  
  34. +
  35. +                if (this.game.challenges.currentChallenge == "blackSky") {
  36. +                    this.game.msg("The night is dark, no stars to observe.", "astronomicalEvent");
  37. +
  38.                 //---------------- SETI hack-------------------
  39.                 if (this.game.workshop.get("seti").researched) {
  40.                     this.observeHandler();
  41. -               } else {
  42. +                }  else {
  43.                     this.observeClear();
  44.                     this.game.msg($I("calendar.msg.event"), "", "astronomicalEvent");
  45.                     var node = dojo.byId("observeButton");
  46. @@ -818,7 +823,13 @@ dojo.declare("com.nuclearunicorn.game.Calendar", null, {
  47.         }
  48.  
  49.         var pyramidVal = this.game.religion.getZU("blackPyramid").val;
  50. -       var markerVal = this.game.religion.getZU("marker").val;
  51. +        var markerVal = this.game.religion.getZU("marker").val;
  52. +
  53. +        if (this.game.challenges.getChallenge("blackSky").researched) {
  54. +            pyramidVal += 1
  55. +            markerVal *= 1.1
  56. +        }
  57. +
  58.         if ( pyramidVal > 0 ){
  59.             if (this.game.rand(1000) < 35 * pyramidVal * (1 + 0.1 * markerVal)){   //3.5% per year per BP, x10% per marker
  60.                 this.game.diplomacy.unlockElders();
  61. diff --git a/js/challenges.js b/js/challenges.js
  62. index 2c66b92..89bb9e7 100644
  63. --- a/js/challenges.js
  64. +++ b/js/challenges.js
  65. @@ -51,7 +51,14 @@ dojo.declare("classes.managers.ChallengesManager", com.nuclearunicorn.core.TabMa
  66.         effectDesc: $I("challendge.1000Years.effect.desc"),
  67.          researched: false,
  68.          unlocked: false
  69. -   }],
  70. +   },{
  71. +       name: "blackSky",
  72. +       label: "Black Sky",
  73. +       description: "Restart the game with no astronomical events to observe.<br/><br/>Goal: build one Space Beacon.",
  74. +       effectDesc: "elders comes early",
  75. +        researched: false,
  76. +        unlocked: false
  77. +    }],
  78.  
  79.     game: null,
  80.  
  81. @@ -106,8 +113,12 @@ dojo.declare("classes.managers.ChallengesManager", com.nuclearunicorn.core.TabMa
  82.             if (this.game.bld.get("aiCore").val > 0){
  83.                 this.researchChallenge("anarchy");
  84.             }
  85. +       } else if (this.currentChallenge == "blackSky") {
  86. +           if (this.game.space.getBuilding('spaceBeacon').val > 0){
  87. +               this.researchChallenge("blackSky");
  88. +           }
  89. +        }
  90.  
  91. -       }
  92.         // winterIsComing
  93.         if (this.currentChallenge == "winterIsComing") {
  94.             if (this.game.space.getPlanet("helios").reached){
  95. diff --git a/js/diplomacy.js b/js/diplomacy.js
  96. index bd74954..24278e7 100644
  97. --- a/js/diplomacy.js
  98. +++ b/js/diplomacy.js
  99. @@ -326,6 +326,10 @@ dojo.declare("classes.managers.DiplomacyManager", null, {
  100.  
  101.      onNewDay: function(){
  102.          var elders = this.get("leviathans");
  103. +        if (elders.unlocked) {
  104. +            this.game.challenges.getChallenge("blackSky").unlocked = true;
  105. +        }
  106. +
  107.          if (elders.duration <= 0  && elders.unlocked){
  108.             elders.unlocked = false;
  109.             this.game.msg($I("trade.msg.elders.departed"), "notice");
  110. diff --git a/js/space.js b/js/space.js
  111. index cee2816..508fe82 100644
  112. --- a/js/space.js
  113. +++ b/js/space.js
  114. @@ -1152,6 +1152,13 @@ dojo.declare("com.nuclearunicorn.game.ui.SpaceProgramBtnController", com.nuclear
  115.                  var reductionRatio = this.game.getHyperbolicEffect(this.game.getEffect("oilReductionRatio"), 0.75);
  116.                  prices[i].val *= (1 - reductionRatio);
  117.              }
  118. +
  119. +            if (this.game.challenges.currentChallenge == "blackSky"
  120. +                && model.metadata.name == "orbitalLaunch"
  121. +                && prices[i].name == "starchart") {
  122. +                prices[i].val = 0
  123. +            }
  124. +
  125.          }
  126.  
  127.          return prices;
  128. @@ -1232,6 +1239,13 @@ dojo.declare("classes.ui.space.PlanetBuildingBtnController", com.nuclearunicorn.
  129.                  var reductionRatio = this.game.getHyperbolicEffect(this.game.getEffect("oilReductionRatio"), 0.75);
  130.                  prices[i].val *= (1 - reductionRatio);
  131.               }
  132. +
  133. +            if (this.game.challenges.currentChallenge == "blackSky"
  134. +                && meta.name == "sattelite"
  135. +                && meta.val == 0
  136. +                && prices[i].name == "starchart") {
  137. +                prices[i].val = 0
  138. +            }
  139.          }
  140.  
  141.          return prices;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement