feat: add additional firearm attributes and DPS calculation to FirearmsPage
This commit is contained in:
@@ -18,6 +18,10 @@ const firearmTypeText: Record<FirearmType, string> = {
|
|||||||
const allTypeValue = "ALL"
|
const allTypeValue = "ALL"
|
||||||
type FirearmTypeFilter = FirearmType | typeof allTypeValue
|
type FirearmTypeFilter = FirearmType | typeof allTypeValue
|
||||||
|
|
||||||
|
function asDps(fireRate: number, damage: number) {
|
||||||
|
return ((fireRate / 60) * damage).toFixed(2)
|
||||||
|
}
|
||||||
|
|
||||||
export default function FirearmsPage() {
|
export default function FirearmsPage() {
|
||||||
const [page, setPage] = useState<number>(1)
|
const [page, setPage] = useState<number>(1)
|
||||||
const [typeFilter, setTypeFilter] = useState<FirearmTypeFilter>(allTypeValue)
|
const [typeFilter, setTypeFilter] = useState<FirearmTypeFilter>(allTypeValue)
|
||||||
@@ -79,6 +83,14 @@ export default function FirearmsPage() {
|
|||||||
<strong>武器输出等级:</strong>
|
<strong>武器输出等级:</strong>
|
||||||
{firearm.level}
|
{firearm.level}
|
||||||
</Typography.Text>
|
</Typography.Text>
|
||||||
|
<Typography.Text>
|
||||||
|
<strong>每秒甲伤:</strong>
|
||||||
|
{asDps(firearm.fireRate, firearm.armourDamage)}
|
||||||
|
</Typography.Text>
|
||||||
|
<Typography.Text>
|
||||||
|
<strong>每秒肉伤:</strong>
|
||||||
|
{asDps(firearm.fireRate, firearm.bodyDamage)}
|
||||||
|
</Typography.Text>
|
||||||
<Typography.Paragraph
|
<Typography.Paragraph
|
||||||
style={{ marginBottom: 0 }}
|
style={{ marginBottom: 0 }}
|
||||||
type="secondary"
|
type="secondary"
|
||||||
|
|||||||
@@ -23,6 +23,10 @@ export interface Firearm {
|
|||||||
name: string
|
name: string
|
||||||
type: FirearmType
|
type: FirearmType
|
||||||
level: string
|
level: string
|
||||||
|
calibre: string
|
||||||
|
fireRate: number
|
||||||
|
armourDamage: number
|
||||||
|
bodyDamage: number
|
||||||
review: string
|
review: string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user