diff --git a/css/styles.scss b/css/styles.scss index ecc67e439..39c70085e 100644 --- a/css/styles.scss +++ b/css/styles.scss @@ -36,6 +36,10 @@ li { list-style-type: none; } +br { + @extend .noselect; +} + #entire-game-container { background-color: transparent; } diff --git a/src/Augmentation/AugmentationHelpers.jsx b/src/Augmentation/AugmentationHelpers.jsx index dd7a09e17..02e451a43 100644 --- a/src/Augmentation/AugmentationHelpers.jsx +++ b/src/Augmentation/AugmentationHelpers.jsx @@ -1865,11 +1865,6 @@ function initAugmentations() { resetAugmentation(BladesSimulacrum); } - try { - console.log([1, 0.96, 0.94, 0.93][SourceFileFlags[11]]); - } catch(err) { - console.log(err); - } // Update costs based on how many have been purchased mult = Math.pow(CONSTANTS.MultipleAugMultiplier * [1, 0.96, 0.94, 0.93][SourceFileFlags[11]], Player.queuedAugmentations.length); for (var name in Augmentations) { diff --git a/src/Gang/Gang.ts b/src/Gang/Gang.ts index 409dd195b..dc08685d0 100644 --- a/src/Gang/Gang.ts +++ b/src/Gang/Gang.ts @@ -293,7 +293,7 @@ export class Gang { if (this.members.length < numFreeMembers) return 0; const i = this.members.length - (numFreeMembers - 1); - return Math.round(0.9 * Math.pow(i, 3) + Math.pow(i, 2)); + return Math.pow(5, i); } recruitMember(name: string): boolean { diff --git a/src/Gang/GangMember.ts b/src/Gang/GangMember.ts index 87354bd53..e6dd034e7 100644 --- a/src/Gang/GangMember.ts +++ b/src/Gang/GangMember.ts @@ -64,7 +64,7 @@ export class GangMember { } calculateAscensionMult(points: number): number { - return Math.max(Math.pow(points/2000, 0.9), 1); + return Math.max(Math.pow(points/4000, 0.7), 1); } updateSkillLevels(): void { @@ -170,12 +170,12 @@ export class GangMember { expMult(): IMults { return { - hack: (this.hack_mult-1)/10+1, - str: (this.str_mult-1)/10+1, - def: (this.def_mult-1)/10+1, - dex: (this.dex_mult-1)/10+1, - agi: (this.agi_mult-1)/10+1, - cha: (this.cha_mult-1)/10+1, + hack: (this.hack_mult-1)/4+1, + str: (this.str_mult-1)/4+1, + def: (this.def_mult-1)/4+1, + dex: (this.dex_mult-1)/4+1, + agi: (this.agi_mult-1)/4+1, + cha: (this.cha_mult-1)/4+1, }; } diff --git a/src/Gang/GangMemberUpgrade.ts b/src/Gang/GangMemberUpgrade.ts index aa602bc13..3475a71ee 100644 --- a/src/Gang/GangMemberUpgrade.ts +++ b/src/Gang/GangMemberUpgrade.ts @@ -1,4 +1,5 @@ import { IMults, UpgradeType } from "./data/upgrades"; +import { numeralWrapper } from "../ui/numeralFormat"; export class GangMemberUpgrade { name: string; @@ -17,24 +18,30 @@ export class GangMemberUpgrade { } createDescription(): string { - const lines = ["Increases:"]; + const lines = ["Effects:"]; if (this.mults.str != null) { - lines.push(`* Strength by ${Math.round((this.mults.str - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.str-1, 0)} strength skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.str-1)/4, 2)} strength exp`); } if (this.mults.def != null) { - lines.push(`* Defense by ${Math.round((this.mults.def - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.def-1, 0)} defense skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.def-1)/4, 2)} defense exp`); } if (this.mults.dex != null) { - lines.push(`* Dexterity by ${Math.round((this.mults.dex - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.dex-1, 0)} dexterity skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.dex-1)/4, 2)} dexterity exp`); } if (this.mults.agi != null) { - lines.push(`* Agility by ${Math.round((this.mults.agi - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.agi-1, 0)} agility skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.agi-1)/4, 2)} agility exp`); } if (this.mults.cha != null) { - lines.push(`* Charisma by ${Math.round((this.mults.cha - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.cha-1, 0)} charisma skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.cha-1)/4, 2)} charisma exp`); } if (this.mults.hack != null) { - lines.push(`* Hacking by ${Math.round((this.mults.hack - 1) * 100)}%`); + lines.push(`+${numeralWrapper.formatPercentage(this.mults.hack-1, 0)} hacking skill`); + lines.push(`+${numeralWrapper.formatPercentage((this.mults.hack-1)/4, 2)} hacking exp`); } return lines.join("
"); } diff --git a/src/Gang/data/Constants.ts b/src/Gang/data/Constants.ts index 7af0e3d6a..6b2887526 100644 --- a/src/Gang/data/Constants.ts +++ b/src/Gang/data/Constants.ts @@ -7,7 +7,7 @@ export const GangConstants: { } = { // Respect is divided by this to get rep gain GangRespectToReputationRatio: 25, - MaximumGangMembers: 30, + MaximumGangMembers: 12, CyclesPerTerritoryAndPowerUpdate: 100, // Portion of upgrade multiplier that is kept after ascending AscensionMultiplierRatio: .15, diff --git a/src/Gang/ui/BonusTime.tsx b/src/Gang/ui/BonusTime.tsx index 2d73c2921..1c71b87c7 100644 --- a/src/Gang/ui/BonusTime.tsx +++ b/src/Gang/ui/BonusTime.tsx @@ -17,7 +17,7 @@ export function BonusTime(props: IProps): React.ReactElement { return (<>

Bonus time: {convertTimeMsToTimeElapsedString(bonusMillis)} - + You gain bonus time while offline or when the game is inactive (e.g. when the tab is throttled by the browser). Bonus time makes the Gang mechanic progress faster, up to 5x the normal diff --git a/src/Gang/ui/GangMemberList.tsx b/src/Gang/ui/GangMemberList.tsx index 5153a90cb..032c375bb 100644 --- a/src/Gang/ui/GangMemberList.tsx +++ b/src/Gang/ui/GangMemberList.tsx @@ -40,7 +40,7 @@ export function GangMemberList(props: IProps): React.ReactElement { gang={props.gang} />

{ props.member.canAscend() && <> - -

?
+ +
?
} ); } diff --git a/src/Gang/ui/GangMemberUpgradePopup.tsx b/src/Gang/ui/GangMemberUpgradePopup.tsx index 982892adc..ce7b6e21a 100644 --- a/src/Gang/ui/GangMemberUpgradePopup.tsx +++ b/src/Gang/ui/GangMemberUpgradePopup.tsx @@ -74,27 +74,27 @@ Dex: {props.member.dex} (x{formatNumber(props.member.dex_mult * asc.dex, 2)}) Cha: {props.member.cha} (x{formatNumber(props.member.cha_mult * asc.cha, 2)}) -
+
Purchased Upgrades: {props.member.upgrades.map((upg: string) => purchasedUpgrade(upg))} {props.member.augmentations.map((upg: string) => purchasedUpgrade(upg))}
-
+

Weapons

{weaponUpgrades.map(upg => upgradeButton(upg))}
-
+

Armor

{armorUpgrades.map(upg => upgradeButton(upg))}
-
+

Vehicles

{vehicleUpgrades.map(upg => upgradeButton(upg))}
-
+

Rootkits

{rootkitUpgrades.map(upg => upgradeButton(upg, true))}
-
+

Augmentations

{augUpgrades.map(upg => upgradeButton(upg, true))}
@@ -127,13 +127,13 @@ export function GangMemberUpgradePopup(props: IProps): React.ReactElement { return (<> setFilter(event.target.value)} />

Discount: -{numeralWrapper.formatPercentage(1 - 1 / props.gang.getDiscount())} - + You get a discount on equipment and upgrades based on your gang's respect and power. More respect and power leads to more discounts. diff --git a/src/Gang/ui/ManagementSubpage.tsx b/src/Gang/ui/ManagementSubpage.tsx index a38974ddc..712ecb847 100644 --- a/src/Gang/ui/ManagementSubpage.tsx +++ b/src/Gang/ui/ManagementSubpage.tsx @@ -14,7 +14,7 @@ interface IProps { export function ManagementSubpage(props: IProps): React.ReactElement { return (

-

+

This page is used to manage your gang members and get an overview of your gang's stats.
diff --git a/src/Gang/ui/RecruitPopup.tsx b/src/Gang/ui/RecruitPopup.tsx index 64b279da5..28e0dbb18 100644 --- a/src/Gang/ui/RecruitPopup.tsx +++ b/src/Gang/ui/RecruitPopup.tsx @@ -50,11 +50,11 @@ export function RecruitPopup(props: IRecruitPopupProps): React.ReactElement { } return (<> -

Enter a name for your new Gang member:


+

Enter a name for your new Gang member:


Recruit Gang Member diff --git a/src/Gang/ui/TaskDescription.tsx b/src/Gang/ui/TaskDescription.tsx index 02b5a8d99..f5fd2038d 100644 --- a/src/Gang/ui/TaskDescription.tsx +++ b/src/Gang/ui/TaskDescription.tsx @@ -14,5 +14,5 @@ export function TaskDescription(props: IProps): React.ReactElement { const task = GangMemberTasks[props.member.task]; const desc = task ? task.desc: GangMemberTasks["Unassigned"].desc; - return (

); + return (

); } \ No newline at end of file diff --git a/src/Gang/ui/TaskSelector.tsx b/src/Gang/ui/TaskSelector.tsx index c18eb3199..2018abbb7 100644 --- a/src/Gang/ui/TaskSelector.tsx +++ b/src/Gang/ui/TaskSelector.tsx @@ -37,7 +37,7 @@ export function TaskSelector(props: IProps): React.ReactElement { return (<>