mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-11-30 03:23:48 +01:00
work on the dev menu
This commit is contained in:
parent
2e3254877f
commit
bc14a6a147
@ -486,6 +486,21 @@
|
|||||||
width: 50%;
|
width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Dev menu */
|
||||||
|
#dev-menu-container {
|
||||||
|
position: fixed;
|
||||||
|
padding-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-menu-text {
|
||||||
|
width: 70%;
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-menu-container a {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
/* Location */
|
/* Location */
|
||||||
#location-container {
|
#location-container {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
|
25
index.html
25
index.html
@ -480,18 +480,29 @@
|
|||||||
|
|
||||||
<!-- dev menu -->
|
<!-- dev menu -->
|
||||||
<div id="dev-menu-container" class="generic-menupage-container">
|
<div id="dev-menu-container" class="generic-menupage-container">
|
||||||
<p>If you see this menu you can pretty much break the game. It's recommended that you use this menu only to setup a save file appropriate to test a new feature or bug fix.</p>
|
<p id='dev-menu-text'>If you see this menu you can pretty much break the game. It's recommended that you use this menu only to setup a save file appropriate to test a new feature or bug fix.</p>
|
||||||
<a id="dev-need-money" class="a-link-button"> Add $1000t </a>
|
<a id="dev-need-money" class="a-link-button"> Add $1000t </a>
|
||||||
|
|
||||||
<!-- gets populated with the list of all augments -->
|
<!-- gets populated with the list of all augments -->
|
||||||
<select id="dev-menu-aug-dropdown" display="none"></select><br>
|
<select id="dev-menu-aug-dropdown"></select>
|
||||||
<a id="dev-add-aug" class="a-link-button"> Add Augmentation </a><br>
|
<a id="dev-add-aug" class="a-link-button"> Add Augmentation </a>
|
||||||
|
|
||||||
|
<a id="dev-bit-flume" class="a-link-button"> Trigger BitFlume</a>
|
||||||
|
|
||||||
|
<select id="dev-menu-faction-dropdown"></select>
|
||||||
|
<a id="dev-add-faction" class="a-link-button"> Receive invite </a>
|
||||||
|
|
||||||
|
<a id="dev-open-all" class="a-link-button"> NUKE + ports all servers </a>
|
||||||
|
<a id="dev-min-security" class="a-link-button"> minimize all servers security </a>
|
||||||
|
<a id="dev-max-money" class="a-link-button"> maximize all servers money </a>
|
||||||
|
|
||||||
|
<select id="dev-menu-connect-dropdown"></select>
|
||||||
|
<a id="dev-connect" class="a-link-button"> Connect </a>
|
||||||
|
|
||||||
|
<select id="dev-menu-add-program-dropdown"></select>
|
||||||
|
<a id="dev-add-program" class="a-link-button"> Add Program </a>
|
||||||
|
|
||||||
<!-- modify stats (hacking, int, etc) -->
|
<!-- modify stats (hacking, int, etc) -->
|
||||||
<!-- join faction -->
|
|
||||||
<!-- nuke everything -->
|
|
||||||
<!-- connect to specific server everything -->
|
|
||||||
<!-- teleport to bitnode -->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Location (visiting a location in World) -->
|
<!-- Location (visiting a location in World) -->
|
||||||
|
@ -413,6 +413,14 @@ PlayerObject.prototype.getUpgradeHomeRamCost = function() {
|
|||||||
return cost;
|
return cost;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PlayerObject.prototype.receiveInvite = function(factionName) {
|
||||||
|
if(this.factionInvitations.includes(factionName) || this.factions.includes(factionName)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.firstFacInvRecvd = true;
|
||||||
|
this.factionInvitations.push(factionName);
|
||||||
|
}
|
||||||
|
|
||||||
//Calculates skill level based on experience. The same formula will be used for every skill
|
//Calculates skill level based on experience. The same formula will be used for every skill
|
||||||
PlayerObject.prototype.calculateSkill = function(exp) {
|
PlayerObject.prototype.calculateSkill = function(exp) {
|
||||||
return Math.max(Math.floor(32 * Math.log(exp + 534.5) - 200), 1);
|
return Math.max(Math.floor(32 * Math.log(exp + 534.5) - 200), 1);
|
||||||
|
@ -45,7 +45,7 @@ import {updateOnlineScriptTimes,
|
|||||||
import {Player} from "./Player.js";
|
import {Player} from "./Player.js";
|
||||||
import {prestigeAugmentation,
|
import {prestigeAugmentation,
|
||||||
prestigeSourceFile} from "./Prestige.js";
|
prestigeSourceFile} from "./Prestige.js";
|
||||||
import {redPillFlag} from "./RedPill.js";
|
import {redPillFlag, hackWorldDaemon} from "./RedPill.js";
|
||||||
import {saveObject, loadGame} from "./SaveObject.js";
|
import {saveObject, loadGame} from "./SaveObject.js";
|
||||||
import {loadAllRunningScripts, scriptEditorInit,
|
import {loadAllRunningScripts, scriptEditorInit,
|
||||||
updateScriptEditorContent} from "./Script.js";
|
updateScriptEditorContent} from "./Script.js";
|
||||||
@ -165,6 +165,16 @@ let Engine = {
|
|||||||
devMenuGiveMoney: null,
|
devMenuGiveMoney: null,
|
||||||
devMenuAugDropdown: null,
|
devMenuAugDropdown: null,
|
||||||
devMenuAddAug: null,
|
devMenuAddAug: null,
|
||||||
|
devMenuTriggerBitFlume: null,
|
||||||
|
devMenuFactionDropdown: null,
|
||||||
|
devMenuAddFaction: null,
|
||||||
|
devMenuOpen: null,
|
||||||
|
devMenuMinSecurity: null,
|
||||||
|
devMenuMaxMoney: null,
|
||||||
|
devMenuConnectDropdown: null,
|
||||||
|
devMenuConnect: null,
|
||||||
|
devMenuProgramsDropdown: null,
|
||||||
|
devMenuAddProgram: null,
|
||||||
},
|
},
|
||||||
|
|
||||||
//Display objects
|
//Display objects
|
||||||
@ -807,6 +817,16 @@ let Engine = {
|
|||||||
Engine.Clickables.devMenuGiveMoney.style.display = "block";
|
Engine.Clickables.devMenuGiveMoney.style.display = "block";
|
||||||
Engine.Clickables.devMenuAugDropdown.style.display = "block";
|
Engine.Clickables.devMenuAugDropdown.style.display = "block";
|
||||||
Engine.Clickables.devMenuAddAug.style.display = "block";
|
Engine.Clickables.devMenuAddAug.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuTriggerBitFlume.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuFactionDropdown.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuAddFaction.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuOpen.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuMinSecurity.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuMaxMoney.style.display = "block";
|
||||||
|
Engine.Clickables.devMenuConnectDropdown = "block";
|
||||||
|
Engine.Clickables.devMenuConnect = "block";
|
||||||
|
Engine.Clickables.devMenuProgramsDropdown = "block";
|
||||||
|
Engine.Clickables.devMenuAddProgram = "block";
|
||||||
},
|
},
|
||||||
|
|
||||||
//Displays the text when a section of the Tutorial is opened
|
//Displays the text when a section of the Tutorial is opened
|
||||||
@ -1481,6 +1501,7 @@ let Engine = {
|
|||||||
Engine.displayTutorialContent();
|
Engine.displayTutorialContent();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// dev menu buttons
|
||||||
Engine.Clickables.devMenuGiveMoney = document.getElementById("dev-need-money");
|
Engine.Clickables.devMenuGiveMoney = document.getElementById("dev-need-money");
|
||||||
Engine.Clickables.devMenuGiveMoney.addEventListener("click", function() {
|
Engine.Clickables.devMenuGiveMoney.addEventListener("click", function() {
|
||||||
Player.gainMoney(1e15);
|
Player.gainMoney(1e15);
|
||||||
@ -1497,6 +1518,76 @@ let Engine = {
|
|||||||
Player.queueAugmentation(augDD.options[augDD.selectedIndex].value);
|
Player.queueAugmentation(augDD.options[augDD.selectedIndex].value);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuTriggerBitFlume = document.getElementById("dev-bit-flume");
|
||||||
|
Engine.Clickables.devMenuTriggerBitFlume.addEventListener("click", function() {
|
||||||
|
hackWorldDaemon(Player.bitNodeN, true);
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuFactionDropdown = document.getElementById("dev-menu-faction-dropdown");
|
||||||
|
const facDD = Engine.Clickables.devMenuFactionDropdown;
|
||||||
|
for(const i in Factions) {
|
||||||
|
facDD.options[facDD.options.length] = new Option(Factions[i].name, Factions[i].name);
|
||||||
|
}
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuAddFaction = document.getElementById("dev-add-faction");
|
||||||
|
Engine.Clickables.devMenuAddFaction.addEventListener("click", function() {
|
||||||
|
const factionName = facDD.options[facDD.selectedIndex].value;
|
||||||
|
Player.receiveInvite(factionName);
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuOpen = document.getElementById("dev-open-all");
|
||||||
|
Engine.Clickables.devMenuOpen.addEventListener("click", function() {
|
||||||
|
for(const i in AllServers) {
|
||||||
|
AllServers[i].hasAdminRights = true;
|
||||||
|
AllServers[i].sshPortOpen = true;
|
||||||
|
AllServers[i].ftpPortOpen = true;
|
||||||
|
AllServers[i].smtpPortOpen = true;
|
||||||
|
AllServers[i].httpPortOpen = true;
|
||||||
|
AllServers[i].sqlPortOpen = true;
|
||||||
|
AllServers[i].openPortCount = 5;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuMinSecurity = document.getElementById("dev-min-security");
|
||||||
|
Engine.Clickables.devMenuMinSecurity.addEventListener("click", function() {
|
||||||
|
for(const i in AllServers) {
|
||||||
|
AllServers[i].hackDifficulty = AllServers[i].minDifficulty;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuMaxMoney = document.getElementById("dev-max-money");
|
||||||
|
Engine.Clickables.devMenuMaxMoney.addEventListener("click", function() {
|
||||||
|
for(const i in AllServers) {
|
||||||
|
AllServers[i].moneyAvailable = AllServers[i].moneyMax;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuConnectDropdown = document.getElementById("dev-menu-connect-dropdown");
|
||||||
|
const connectDD = Engine.Clickables.devMenuConnectDropdown;
|
||||||
|
for(const i in AllServers) {
|
||||||
|
connectDD.options[connectDD.options.length] = new Option(AllServers[i].hostname, AllServers[i].hostname);
|
||||||
|
}
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuConnect = document.getElementById("dev-connect");
|
||||||
|
Engine.Clickables.devMenuConnect.addEventListener("click", function() {
|
||||||
|
const host = connectDD.options[connectDD.selectedIndex].value;
|
||||||
|
Terminal.connectToServer(host);
|
||||||
|
});
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuProgramsDropdown = document.getElementById("dev-menu-add-program-dropdown");
|
||||||
|
const programsDD = Engine.Clickables.devMenuProgramsDropdown;
|
||||||
|
for(const i in Programs) {
|
||||||
|
programsDD.options[programsDD.options.length] = new Option(Programs[i], Programs[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
Engine.Clickables.devMenuAddProgram = document.getElementById("dev-add-program");
|
||||||
|
Engine.Clickables.devMenuAddProgram.addEventListener("click", function() {
|
||||||
|
const program = programsDD.options[programsDD.selectedIndex].value;;
|
||||||
|
if(!Player.hasProgram(program)) {
|
||||||
|
Player.getHomeComputer().programs.push(program);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
//If DarkWeb already purchased, disable the button
|
//If DarkWeb already purchased, disable the button
|
||||||
if (SpecialServerIps.hasOwnProperty("Darkweb Server")) {
|
if (SpecialServerIps.hasOwnProperty("Darkweb Server")) {
|
||||||
document.getElementById("location-purchase-tor").setAttribute("class", "a-link-button-inactive");
|
document.getElementById("location-purchase-tor").setAttribute("class", "a-link-button-inactive");
|
||||||
|
Loading…
Reference in New Issue
Block a user