Compare commits

..

No commits in common. "58f40d762d8ce24e878a5203249dd731a3640189" and "95288e741424ffc9939501204d40e3f070654970" have entirely different histories.

View File

@ -17,22 +17,11 @@ export interface StatisticsDataOneFloor {
atkValue: number;
defValue: number;
mdefValue: number;
atkGemCount: number;
defGemCount: number;
mdefGemCount: number;
}
export interface StatisticsDataPotionGem {
atkGemCount: number;
defGemCount: number;
mdefGemCount: number;
potionCount: number;
}
export interface StatisticsData {
total: StatisticsDataOneFloor;
floors: Map<FloorIds, StatisticsDataOneFloor>;
potionGem: StatisticsDataPotionGem;
}
export interface StatisticsProps extends UIComponentProps, DefaultProps {
@ -59,8 +48,7 @@ export const Statistics = defineComponent<StatisticsProps>(props => {
<ListPage
list={list}
selected="total"
loc={[180, 0, 480, 480]}
height={470}
loc={[180, 0, 630, 480]}
close
onClose={close}
lineHeight={24}
@ -85,23 +73,11 @@ const statisticsPanelProps = {
} satisfies SetupComponentOptions<StatisticsPanelProps>;
const TotalStatistics = defineComponent<StatisticsPanelProps>(props => {
return () => {
const total = props.data.total;
const text1 = `全塔地图中,共有怪物${total.enemyCount}个。`;
const text2 = `共有宝石${total.gemCount}个,共加攻击力${total.atkValue}点、防御力${total.defValue}点,魔防${total.mdefValue}点。`;
const text3 = `共有血瓶${total.potionCount}个,共加生命值${total.potionValue}点。`;
return (
<TextContent
text={`${text1}${text2}${text3}`}
width={330}
loc={[0, 5, 330, 470]}
height={470}
lineHeight={9}
></TextContent>
);
};
return () => (
<container>
<TextContent text="" width={310}></TextContent>
</container>
);
}, statisticsPanelProps);
const FloorStatistics = defineComponent<StatisticsPanelProps>(props => {
@ -113,21 +89,7 @@ const EnemyStatistics = defineComponent<StatisticsPanelProps>(props => {
}, statisticsPanelProps);
const PotionStatistics = defineComponent<StatisticsPanelProps>(props => {
return () => {
const gemPotion = props.data.potionGem;
const text1 = `全塔地图中,共有红宝石${gemPotion.atkGemCount}个,共有蓝宝石${gemPotion.defGemCount}个,共有缘宝石${gemPotion.mdefGemCount}个。`;
const text2 = `共有血瓶${gemPotion.potionCount}个。`;
return (
<TextContent
text={`${text1}${text2}`}
width={330}
loc={[0, 5, 330, 470]}
height={470}
lineHeight={9}
></TextContent>
);
};
return () => <container></container>;
}, statisticsPanelProps);
export function calculateStatisticsOne(
@ -162,10 +124,7 @@ export function calculateStatisticsOne(
potionValue: 0,
atkValue: 0,
defValue: 0,
mdefValue: 0,
atkGemCount: 0,
defGemCount: 0,
mdefGemCount: 0
mdefValue: 0
};
if (!diff) return statistics;
core.status.maps[floorId].blocks.forEach(v => {
@ -193,15 +152,12 @@ export function calculateStatisticsOne(
}
if (atk > 0) {
statistics.atkValue += atk;
statistics.atkGemCount++;
}
if (def > 0) {
statistics.defValue += def;
statistics.defGemCount++;
}
if (mdef > 0) {
statistics.mdefValue += mdef;
statistics.mdefGemCount++;
}
}
}
@ -258,18 +214,9 @@ export function calculateStatistics(): StatisticsData {
return prev;
});
const potionGem = floors.values().reduce((prev, curr) => {
prev.atkGemCount += curr.atkGemCount;
prev.defGemCount += curr.defGemCount;
prev.mdefGemCount += curr.mdefGemCount;
prev.potionCount += curr.potionCount;
return prev;
});
return {
total,
floors,
potionGem
floors
};
}