fix travel to s12 on list world map

This commit is contained in:
Olivier Gagnon 2021-09-13 14:43:23 -04:00
parent acc215cc61
commit 4ad5b06e19
9 changed files with 122 additions and 125 deletions

File diff suppressed because one or more lines are too long

@ -1,2 +1,2 @@
!function(n){function t(t){for(var e,i,f=t[0],c=t[1],l=t[2],a=0,s=[];a<f.length;a++)i=f[a],Object.prototype.hasOwnProperty.call(r,i)&&r[i]&&s.push(r[i][0]),r[i]=0;for(e in c)Object.prototype.hasOwnProperty.call(c,e)&&(n[e]=c[e]);for(p&&p(t);s.length;)s.shift()();return u.push.apply(u,l||[]),o()}function o(){for(var n,t=0;t<u.length;t++){for(var o=u[t],e=!0,f=1;f<o.length;f++){var c=o[f];0!==r[c]&&(e=!1)}e&&(u.splice(t--,1),n=i(i.s=o[0]))}return n}var e={},r={2:0},u=[];function i(t){if(e[t])return e[t].exports;var o=e[t]={i:t,l:!1,exports:{}};return n[t].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=n,i.c=e,i.d=function(n,t,o){i.o(n,t)||Object.defineProperty(n,t,{enumerable:!0,get:o})},i.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},i.t=function(n,t){if(1&t&&(n=i(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var e in n)i.d(o,e,function(t){return n[t]}.bind(null,e));return o},i.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return i.d(t,"a",t),t},i.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},i.p="";var f=window.webpackJsonp=window.webpackJsonp||[],c=f.push.bind(f);f.push=t,f=f.slice();for(var l=0;l<f.length;l++)t(f[l]);var p=c;u.push([916,0]),o()}({916:function(n,t,o){"use strict";o.r(t);o(917),o(919),o(921),o(923),o(925),o(927),o(929),o(931),o(933),o(935),o(937),o(939),o(941),o(943),o(945),o(947),o(949),o(951),o(953),o(955),o(957),o(959),o(961),o(963),o(965),o(967),o(969),o(971),o(973),o(975),o(977)},919:function(n,t,o){},921:function(n,t,o){},923:function(n,t,o){},925:function(n,t,o){},927:function(n,t,o){},929:function(n,t,o){},931:function(n,t,o){},933:function(n,t,o){},935:function(n,t,o){},937:function(n,t,o){},939:function(n,t,o){},941:function(n,t,o){},943:function(n,t,o){},945:function(n,t,o){},947:function(n,t,o){},949:function(n,t,o){},951:function(n,t,o){},953:function(n,t,o){},955:function(n,t,o){},957:function(n,t,o){},959:function(n,t,o){},961:function(n,t,o){},963:function(n,t,o){},965:function(n,t,o){},967:function(n,t,o){},969:function(n,t,o){},971:function(n,t,o){},973:function(n,t,o){},975:function(n,t,o){},977:function(n,t,o){}});
!function(n){function t(t){for(var e,i,f=t[0],c=t[1],l=t[2],a=0,s=[];a<f.length;a++)i=f[a],Object.prototype.hasOwnProperty.call(r,i)&&r[i]&&s.push(r[i][0]),r[i]=0;for(e in c)Object.prototype.hasOwnProperty.call(c,e)&&(n[e]=c[e]);for(p&&p(t);s.length;)s.shift()();return u.push.apply(u,l||[]),o()}function o(){for(var n,t=0;t<u.length;t++){for(var o=u[t],e=!0,f=1;f<o.length;f++){var c=o[f];0!==r[c]&&(e=!1)}e&&(u.splice(t--,1),n=i(i.s=o[0]))}return n}var e={},r={2:0},u=[];function i(t){if(e[t])return e[t].exports;var o=e[t]={i:t,l:!1,exports:{}};return n[t].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=n,i.c=e,i.d=function(n,t,o){i.o(n,t)||Object.defineProperty(n,t,{enumerable:!0,get:o})},i.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},i.t=function(n,t){if(1&t&&(n=i(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var e in n)i.d(o,e,function(t){return n[t]}.bind(null,e));return o},i.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return i.d(t,"a",t),t},i.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},i.p="";var f=window.webpackJsonp=window.webpackJsonp||[],c=f.push.bind(f);f.push=t,f=f.slice();for(var l=0;l<f.length;l++)t(f[l]);var p=c;u.push([940,0]),o()}({1001:function(n,t,o){},940:function(n,t,o){"use strict";o.r(t);o(941),o(943),o(945),o(947),o(949),o(951),o(953),o(955),o(957),o(959),o(961),o(963),o(965),o(967),o(969),o(971),o(973),o(975),o(977),o(979),o(981),o(983),o(985),o(987),o(989),o(991),o(993),o(995),o(997),o(999),o(1001)},943:function(n,t,o){},945:function(n,t,o){},947:function(n,t,o){},949:function(n,t,o){},951:function(n,t,o){},953:function(n,t,o){},955:function(n,t,o){},957:function(n,t,o){},959:function(n,t,o){},961:function(n,t,o){},963:function(n,t,o){},965:function(n,t,o){},967:function(n,t,o){},969:function(n,t,o){},971:function(n,t,o){},973:function(n,t,o){},975:function(n,t,o){},977:function(n,t,o){},979:function(n,t,o){},981:function(n,t,o){},983:function(n,t,o){},985:function(n,t,o){},987:function(n,t,o){},989:function(n,t,o){},991:function(n,t,o){},993:function(n,t,o){},995:function(n,t,o){},997:function(n,t,o){},999:function(n,t,o){}});
//# sourceMappingURL=engineStyle.bundle.js.map

@ -3097,6 +3097,7 @@ input[type="checkbox"] {
padding: 6px; }
.cmpy-mgmt-upgrade-div {
text-align: left;
display: inline-block;
border: 1px solid #fff;
margin: 2px;

30
dist/vendor.bundle.js vendored

File diff suppressed because one or more lines are too long

@ -60,27 +60,6 @@
<div id="generic-react-container"></div>
</div>
<div id="infiltration-container" class="generic-fullscreen-container"></div>
<!-- Generic Yes/No Pop Up box -->
<div id="yes-no-box-container" class="popup-box-container">
<div id="yes-no-box-content" class="popup-box-content">
<p id="yes-no-box-text"></p>
<button id="yes-no-box-yes" class="popup-box-button">Yes</button>
<button id="yes-no-box-no" class="popup-box-button">No</button>
</div>
</div>
<!-- Generic yes/no pop up box with text entry field -->
<div id="yes-no-text-input-box-container" class="popup-box-container">
<div id="yes-no-text-input-box-content" class="popup-box-content">
<p id="yes-no-text-input-box-text"></p>
<input type="text" id="yes-no-text-input-box-input" pattern="[a-zA-Z0-9-_]" maxlength="30"/>
<button id="yes-no-text-input-box-yes" class="popup-box-button">Yes</button>
<button id="yes-no-text-input-box-no" class="popup-box-button">No</button>
</div>
</div>
<!-- Mission container -->
<div id="mission-container" class="generic-fullscreen-container"></div>
<!-- Work in progress screen -->
@ -94,9 +73,7 @@
</div>
<!-- Red Pill Container -->
<div id="red-pill-container" class="generic-fullscreen-container">
<div id="red-pill-content" class="generic-fullscreen-container-scroll"></div>
</div>
<div id="red-pill-container" class="generic-fullscreen-container"></div>
<!-- Cinematic Text Container -->
<div id="cinematic-text-container" class="generic-fullscreen-container"></div>

@ -26,6 +26,8 @@ import React, { useState } from "react";
import AddIcon from "@material-ui/icons/Add";
import RemoveIcon from "@material-ui/icons/Remove";
import IconButton from "@material-ui/core/IconButton";
import ExposureZeroIcon from "@material-ui/icons/ExposureZero";
import ButtonGroup from "@material-ui/core/ButtonGroup";
import { Theme } from "./ui/React/Theme";
// Update as additional BitNodes get implemented
@ -36,7 +38,8 @@ const tonsPP = 1e27;
const tonsP = 1e12;
interface IValueAdjusterProps {
title: string;
label: string;
placeholder: string;
add: (x: number) => void;
subtract: (x: number) => void;
reset: () => void;
@ -50,13 +53,14 @@ function ValueAdjusterComponent(props: IValueAdjusterProps): React.ReactElement
else setValue(parseFloat(event.target.value));
}
const { title, add, subtract, reset } = props;
const { label, placeholder, add, subtract, reset } = props;
return (
<>
<TextField
label={label}
value={value}
onChange={onChange}
placeholder={title}
placeholder={placeholder}
type="number"
InputProps={{
startAdornment: (
@ -65,13 +69,17 @@ function ValueAdjusterComponent(props: IValueAdjusterProps): React.ReactElement
</IconButton>
),
endAdornment: (
<IconButton color="primary" onClick={() => subtract(typeof value !== "string" ? value : 0)}>
<RemoveIcon />
</IconButton>
<>
<IconButton color="primary" onClick={() => subtract(typeof value !== "string" ? value : 0)}>
<RemoveIcon />
</IconButton>
<IconButton color="primary" onClick={reset}>
<ExposureZeroIcon />
</IconButton>
</>
),
}}
/>
<Button onClick={reset}>Reset</Button>
</>
);
}
@ -91,28 +99,28 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
const [stockPrice, setStockPrice] = useState(0);
const [stockSymbol, setStockSymbol] = useState("");
function setFactionDropdown(event: React.ChangeEvent<HTMLButtonElement>): void {
setFaction(event.target.value);
function setFactionDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setFaction(event.target.value as string);
}
function setCompanyDropdown(event: React.ChangeEvent<HTMLSelectElement>): void {
setCompany(event.target.value);
function setCompanyDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setCompany(event.target.value as string);
}
function setProgramDropdown(event: React.ChangeEvent<HTMLSelectElement>): void {
setProgram(event.target.value);
function setProgramDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setProgram(event.target.value as string);
}
function setServerDropdown(event: React.ChangeEvent<HTMLSelectElement>): void {
setServer(event.target.value);
function setServerDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setServer(event.target.value as string);
}
function setAugmentationDropdown(event: React.FormEventHandler<HTMLSelectElement>): void {
setAugmentation(event.target.value);
function setAugmentationDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setAugmentation(event.target.value as string);
}
function setCodingcontractDropdown(event: React.ChangeEvent<HTMLSelectElement>): void {
setCodingcontract(event.target.value);
function setCodingcontractDropdown(event: React.ChangeEvent<{ value: unknown }>): void {
setCodingcontract(event.target.value as string);
}
function setStockPriceField(event: React.ChangeEvent<HTMLInputElement>): void {
@ -763,7 +771,7 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
return (
<Theme>
<div className="col" style={{ backgroundColor: "#222" }}>
<div className="col" style={{ backgroundColor: "#111" }}>
<div className="row">
<h1>Development Menu - Only meant to be used for testing/debugging</h1>
</div>
@ -826,7 +834,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="hacking exp"
label="hacking"
placeholder="exp"
add={modifyExp("hacking", 1)}
subtract={modifyExp("hacking", -1)}
reset={resetExperience("hacking")}
@ -839,7 +848,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="strength exp"
label="strength"
placeholder="exp"
add={modifyExp("strength", 1)}
subtract={modifyExp("strength", -1)}
reset={resetExperience("strength")}
@ -852,7 +862,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="defense exp"
label="defense"
placeholder="exp"
add={modifyExp("defense", 1)}
subtract={modifyExp("defense", -1)}
reset={resetExperience("defense")}
@ -865,7 +876,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="dexterity exp"
label="dexterity"
placeholder="exp"
add={modifyExp("dexterity", 1)}
subtract={modifyExp("dexterity", -1)}
reset={resetExperience("dexterity")}
@ -878,7 +890,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="agility exp"
label="agility"
placeholder="exp"
add={modifyExp("agility", 1)}
subtract={modifyExp("agility", -1)}
reset={resetExperience("agility")}
@ -891,7 +904,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="charisma exp"
label="charisma"
placeholder="exp"
add={modifyExp("charisma", 1)}
subtract={modifyExp("charisma", -1)}
reset={resetExperience("charisma")}
@ -904,7 +918,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="intelligence exp"
label="intelligence"
placeholder="exp"
add={modifyExp("intelligence", 1)}
subtract={modifyExp("intelligence", -1)}
reset={resetExperience("intelligence")}
@ -923,7 +938,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="karma"
label="karma"
placeholder="amt"
add={modifyKarma(1)}
subtract={modifyKarma(-1)}
reset={resetKarma()}
@ -951,6 +967,11 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
className="dropdown exp-input"
onChange={setFactionDropdown}
value={faction}
startAdornment={
<IconButton color="primary">
<AddIcon />
</IconButton>
}
>
{factions}
</Select>
@ -973,7 +994,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="reputation"
label="reputation"
placeholder="amt"
add={modifyFactionRep(1)}
subtract={modifyFactionRep(-1)}
reset={resetFactionRep}
@ -986,7 +1008,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="favor"
label="favor"
placeholder="amt"
add={modifyFactionFavor(1)}
subtract={modifyFactionFavor(-1)}
reset={resetFactionFavor}
@ -1072,18 +1095,12 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
<span className="text">All:</span>
</td>
<td>
<button className="std-button touch-right" onClick={setAllSF(0)}>
0
</button>
<button className="std-button touch-sides" onClick={setAllSF(1)}>
1
</button>
<button className="std-button touch-sides" onClick={setAllSF(2)}>
2
</button>
<button className="std-button touch-left" onClick={setAllSF(3)}>
3
</button>
<ButtonGroup>
<Button onClick={setAllSF(0)}>0</Button>
<Button onClick={setAllSF(1)}>1</Button>
<Button onClick={setAllSF(2)}>2</Button>
<Button onClick={setAllSF(3)}>3</Button>
</ButtonGroup>
</td>
</tr>
{validSFN.map((i) => (
@ -1092,18 +1109,12 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
<span className="text">SF-{i}:</span>
</td>
<td>
<button className="std-button touch-right" onClick={setSF(i, 0)}>
0
</button>
<button className="std-button touch-sides" onClick={setSF(i, 1)}>
1
</button>
<button className="std-button touch-sides" onClick={setSF(i, 2)}>
2
</button>
<button className="std-button touch-left" onClick={setSF(i, 3)}>
3
</button>
<ButtonGroup>
<Button onClick={setSF(i, 0)}>0</Button>
<Button onClick={setSF(i, 1)}>1</Button>
<Button onClick={setSF(i, 2)}>2</Button>
<Button onClick={setSF(i, 3)}>3</Button>
</ButtonGroup>
</td>
</tr>
))}
@ -1123,14 +1134,14 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
<span className="text">Program:</span>
</td>
<td>
<select
<Select
id="dev-programs-dropdown"
className="dropdown"
onChange={setProgramDropdown}
value={program}
>
{programs}
</select>
</Select>
</td>
</tr>
<tr>
@ -1158,9 +1169,9 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
<span className="text">Server:</span>
</td>
<td colSpan={2}>
<select id="dev-servers-dropdown" className="dropdown" onChange={setServerDropdown} value={server}>
<Select id="dev-servers-dropdown" className="dropdown" onChange={setServerDropdown} value={server}>
{servers}
</select>
</Select>
</td>
</tr>
<tr>
@ -1216,14 +1227,14 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
<span className="text">Company:</span>
</td>
<td colSpan={3}>
<select
<Select
id="dev-companies-dropdown"
className="dropdown"
onChange={setCompanyDropdown}
value={company}
>
{companies}
</select>
</Select>
</td>
</tr>
<tr>
@ -1232,7 +1243,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="reputation"
label="reputation"
placeholder="amt"
add={modifyCompanyRep(1)}
subtract={modifyCompanyRep(-1)}
reset={resetCompanyRep}
@ -1245,7 +1257,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="favor"
label="favor"
placeholder="amt"
add={modifyCompanyFavor(1)}
subtract={modifyCompanyFavor(-1)}
reset={resetCompanyFavor}
@ -1302,7 +1315,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="rank"
label="rank"
placeholder="amt"
add={modifyBladeburnerRank(1)}
subtract={modifyBladeburnerRank(-1)}
reset={resetBladeburnerRank}
@ -1320,7 +1334,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="cycles"
label="cycles"
placeholder="amt"
add={modifyBladeburnerCycles(1)}
subtract={modifyBladeburnerCycles(-1)}
reset={resetBladeburnerCycles}
@ -1352,7 +1367,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="cycles"
label="cycles"
placeholder="amt"
add={modifyGangCycles(1)}
subtract={modifyGangCycles(-1)}
reset={resetGangCycles}
@ -1394,7 +1410,8 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</td>
<td>
<ValueAdjusterComponent
title="cycles"
label="cycles"
placeholder="amt"
add={modifyCorporationCycles(1)}
subtract={modifyCorporationCycles(-1)}
reset={resetCorporationCycles}
@ -1440,14 +1457,14 @@ export function DevMenuRoot(props: IProps): React.ReactElement {
</tr>
<tr>
<td>
<select
<Select
id="contract-types-dropdown"
className="dropdown"
onChange={setCodingcontractDropdown}
value={codingcontract}
>
{contractTypes}
</select>
</Select>
<button className="std-button" onClick={specificContract}>
Generate Specified Contract Type on Home Comp
</button>

@ -60,16 +60,18 @@ function ListWorldMap(props: IProps): React.ReactElement {
</p>
{Object.values(CityName)
.filter((city: string) => city != props.p.city)
.map((city: string) => (
<StdButton
key={city}
onClick={() =>
createTravelPopup(props.p, city, () => props.travel(CityName[city as keyof typeof CityName]))
}
style={{ display: "block" }}
text={`Travel to ${city}`}
/>
))}
.map((city: string) => {
const match = Object.entries(CityName).find(([key, value]) => value === city);
if (match === undefined) throw new Error(`could not find key for city '${city}'`);
return (
<StdButton
key={city}
onClick={() => createTravelPopup(props.p, city, () => props.travel(match[1]))}
style={{ display: "block" }}
text={`Travel to ${city}`}
/>
);
})}
</div>
);
}

@ -4,25 +4,25 @@
*/
import React from "react";
import { Select as MuiSelect, ButtonProps, makeStyles } from "@material-ui/core";
import { Select as MuiSelect, SelectProps, makeStyles } from "@material-ui/core";
import { colors } from "./Theme";
const useStyles = makeStyles({
// Tries to emulate StdButton in buttons.scss
root: {
backgroundColor: "#000",
backgroundColor: "#222",
color: colors.primarydark,
margin: "5px",
padding: "3px 5px",
"&:hover": {
backgroundColor: "#000",
backgroundColor: "#222",
},
borderRadius: 0,
},
});
export const Select: React.FC<ButtonProps> = (props: ButtonProps) => {
export const Select: React.FC<SelectProps> = (props: SelectProps) => {
return (
<MuiSelect
native

@ -10,7 +10,7 @@ import { colors } from "./Theme";
const useStyles = makeStyles({
// Tries to emulate StdButton in buttons.scss
root: {
backgroundColor: "#000",
backgroundColor: "#222",
color: "white",
borderRadius: 0,
"& .MuiInputBase-input": {