Skip to content

Commit

Permalink
added debris reports
Browse files Browse the repository at this point in the history
  • Loading branch information
ametel01 committed Feb 3, 2024
1 parent 6cfadc4 commit cd89e86
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 26 deletions.
24 changes: 17 additions & 7 deletions packages/frontend/src/reports/BattleReport.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ContentCopyIcon from '@mui/icons-material/ContentCopy';
import RotatingLogo from '../components/ui/RotatingLogo';
import * as Styled from './styledComponents';
import * as Types from './types';
import { numberWithCommas } from '../shared/utils/index';

interface Props {
planetId: number;
Expand Down Expand Up @@ -316,10 +317,7 @@ const BattleReports = ({ planetId }: Props) => {
</Tooltip>
{/* Display the military-style narrative of the battle */}
<Styled.DetailItem>
Battle Report ID: [{report.battle_id}]
</Styled.DetailItem>
<Styled.DetailItem>
Timestamp: [{new Date(report.time).toLocaleString()}]
Time: [{new Date(report.time).toLocaleString()}]
</Styled.DetailItem>

<Styled.DetailItem>Operational Summary:</Styled.DetailItem>
Expand Down Expand Up @@ -466,11 +464,23 @@ const BattleReports = ({ planetId }: Props) => {
: ''
}
>
<Styled.DetailItem>Debris Field Location:</Styled.DetailItem>
<Styled.DetailItem>- System: {report.system}</Styled.DetailItem>
<Styled.DetailItem>- Orbit: {report.orbit}</Styled.DetailItem>
<Styled.DetailItem>Resources Present at Location</Styled.DetailItem>
<Styled.DetailItem>
- Steel: {numberWithCommas(report.collectible_steel)}
</Styled.DetailItem>
<Styled.DetailItem>
- Quartz: {numberWithCommas(report.collectible_quartz)}
</Styled.DetailItem>
<Styled.DetailItem>Resources Collected:</Styled.DetailItem>
<Styled.DetailItem>
- Steel: {numberWithCommas(report.collected_steel)}
</Styled.DetailItem>
<Styled.DetailItem>
Debris Field ID: {report.debris_field_id}
- Quartz: {numberWithCommas(report.collected_quartz)}
</Styled.DetailItem>
<Styled.DetailItem>Steel: {report.steel}</Styled.DetailItem>
<Styled.DetailItem>Quartz: {report.quartz}</Styled.DetailItem>
</Styled.BattleReportDetails>
</Styled.BattleReportContainer>
);
Expand Down
9 changes: 6 additions & 3 deletions packages/frontend/src/reports/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,10 @@ export interface DebrisCollection {
collection_id: number;
timestamp: string;
planet_id: number;
steel: number;
quartz: number;
debris_field_id: number;
system: number;
orbit: number;
collectible_steel: number;
collectible_quartz: number;
collected_steel: number;
collected_quartz: number;
}
34 changes: 18 additions & 16 deletions packages/frontend/src/shared/utils/FleetUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,30 +22,32 @@ export function getDistance(start: Position, end: Position): number {
}
}

function getUnitConsumption(ship: Unit, distance: number): number {
console.log('ship.consumption', ship.consumption);
return (ship.consumption * distance) / 35000;
function getUnitConsumption(
ship: Unit,
distance: number,
speed: number
): number {
const consumption =
1 +
Math.round(
((ship.consumption * distance) / 35000) * Math.pow(speed / 100 + 1, 2)
);
return consumption;
}

export function getFuelConsumption(
fleet: Fleet,
distance: number,
speedFactor: number
): number {
console.log('carrier', fleet.carrier);
console.log('distance', distance);
console.log('getUnitConsumption', getUnitConsumption(CARRIER, distance));
console.log(
'total consupmtion carrier',
fleet.carrier * getUnitConsumption(CARRIER, distance)
);
return Math.ceil(
(fleet.carrier * getUnitConsumption(CARRIER, distance) +
fleet.scraper * getUnitConsumption(SCRAPER, distance) +
fleet.sparrow * getUnitConsumption(SPARROW, distance) +
fleet.frigate * getUnitConsumption(FRIGATE, distance) +
fleet.armade * getUnitConsumption(ARMADE, distance)) *
(speedFactor / 100)
fleet.carrier * getUnitConsumption(CARRIER, distance, speedFactor) +
fleet.scraper * getUnitConsumption(SCRAPER, distance, speedFactor) +
fleet.sparrow * getUnitConsumption(SPARROW, distance, speedFactor) +
fleet.frigate * getUnitConsumption(FRIGATE, distance, speedFactor) +
fleet.armade *
getUnitConsumption(ARMADE, distance, speedFactor) *
(speedFactor / 100)
);
}

Expand Down

0 comments on commit cd89e86

Please sign in to comment.