mirror of
https://github.com/lexogrine/dota2-react-hud.git
synced 2025-12-10 01:52:49 +01:00
Updated for facets
This commit is contained in:
parent
16b83d0b54
commit
820350d36b
14
package-lock.json
generated
14
package-lock.json
generated
@ -15,7 +15,7 @@
|
|||||||
"@types/react": "18.0.35",
|
"@types/react": "18.0.35",
|
||||||
"@types/react-dom": "18.0.11",
|
"@types/react-dom": "18.0.11",
|
||||||
"buffer": "^6.0.3",
|
"buffer": "^6.0.3",
|
||||||
"dotagsi": "^1.4.3",
|
"dotagsi": "^1.5.0",
|
||||||
"query-string": "^6.12.1",
|
"query-string": "^6.12.1",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
@ -6795,9 +6795,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/dotagsi": {
|
"node_modules/dotagsi": {
|
||||||
"version": "1.4.3",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/dotagsi/-/dotagsi-1.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/dotagsi/-/dotagsi-1.5.0.tgz",
|
||||||
"integrity": "sha512-6yksHABW4InBVJ+IOgKXwN3UtTiRdPLsIHVJeswDco6rWUZxMWYXS4YZlpcdMbBX539rdmLiNzGq08ZW64lKqg=="
|
"integrity": "sha512-wbkmoCXhpyddgGA3swuTtRNVnLggktiiNQ9/yapWg2eNOyKLOQCvjesCu3bkwtL77AHjxyz9rKACxCoINEVivA=="
|
||||||
},
|
},
|
||||||
"node_modules/dotenv": {
|
"node_modules/dotenv": {
|
||||||
"version": "10.0.0",
|
"version": "10.0.0",
|
||||||
@ -23037,9 +23037,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dotagsi": {
|
"dotagsi": {
|
||||||
"version": "1.4.3",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/dotagsi/-/dotagsi-1.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/dotagsi/-/dotagsi-1.5.0.tgz",
|
||||||
"integrity": "sha512-6yksHABW4InBVJ+IOgKXwN3UtTiRdPLsIHVJeswDco6rWUZxMWYXS4YZlpcdMbBX539rdmLiNzGq08ZW64lKqg=="
|
"integrity": "sha512-wbkmoCXhpyddgGA3swuTtRNVnLggktiiNQ9/yapWg2eNOyKLOQCvjesCu3bkwtL77AHjxyz9rKACxCoINEVivA=="
|
||||||
},
|
},
|
||||||
"dotenv": {
|
"dotenv": {
|
||||||
"version": "10.0.0",
|
"version": "10.0.0",
|
||||||
|
|||||||
@ -9,8 +9,8 @@
|
|||||||
"@types/node": "18.15.11",
|
"@types/node": "18.15.11",
|
||||||
"@types/react": "18.0.35",
|
"@types/react": "18.0.35",
|
||||||
"@types/react-dom": "18.0.11",
|
"@types/react-dom": "18.0.11",
|
||||||
"dotagsi": "^1.4.3",
|
|
||||||
"buffer": "^6.0.3",
|
"buffer": "^6.0.3",
|
||||||
|
"dotagsi": "^1.5.0",
|
||||||
"query-string": "^6.12.1",
|
"query-string": "^6.12.1",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import DireBorder from './direBorder.png';
|
|||||||
import "./scoreboard.scss";
|
import "./scoreboard.scss";
|
||||||
import { Match } from '../../api/interfaces';
|
import { Match } from '../../api/interfaces';
|
||||||
import { apiUrl, getAssetURL } from '../../api/api';
|
import { apiUrl, getAssetURL } from '../../api/api';
|
||||||
|
import { heroFacets } from '../../api/heroFacets';
|
||||||
export function stringToClock(time: string | number, pad = true) {
|
export function stringToClock(time: string | number, pad = true) {
|
||||||
if (typeof time === "string") {
|
if (typeof time === "string") {
|
||||||
time = parseFloat(time);
|
time = parseFloat(time);
|
||||||
@ -19,6 +20,15 @@ export function stringToClock(time: string | number, pad = true) {
|
|||||||
}
|
}
|
||||||
const ScoreboardPlayer = ({ player }: { player: Player }) => {
|
const ScoreboardPlayer = ({ player }: { player: Player }) => {
|
||||||
const neutralItem = player.items.find(item => item.type === 'neutral');
|
const neutralItem = player.items.find(item => item.type === 'neutral');
|
||||||
|
|
||||||
|
const facetIndex = player.hero?.facetIndex;
|
||||||
|
const facets = heroFacets[(player.hero?.name || "")] ?? [];
|
||||||
|
const facet = facetIndex ? facets[facetIndex] : null;
|
||||||
|
|
||||||
|
if(facet){
|
||||||
|
const _facetUrl = getAssetURL(facet.icon, "facets")
|
||||||
|
}
|
||||||
|
|
||||||
return <div className={`player_scoreboard`}>
|
return <div className={`player_scoreboard`}>
|
||||||
<div className="main_panel">
|
<div className="main_panel">
|
||||||
<div className="player_name shadowed-text">
|
<div className="player_name shadowed-text">
|
||||||
|
|||||||
@ -19,6 +19,7 @@ export const getAssetURL = (
|
|||||||
| "items"
|
| "items"
|
||||||
| "abilities"
|
| "abilities"
|
||||||
| "runes"
|
| "runes"
|
||||||
|
| "facets"
|
||||||
) => {
|
) => {
|
||||||
if (!asset) return "";
|
if (!asset) return "";
|
||||||
if (assetType === "heroes_animated") {
|
if (assetType === "heroes_animated") {
|
||||||
@ -39,6 +40,9 @@ export const getAssetURL = (
|
|||||||
""
|
""
|
||||||
)}.webp`;
|
)}.webp`;
|
||||||
}
|
}
|
||||||
|
if(assetType === "facets"){
|
||||||
|
return `${apiUrl}static/dota2/${assetType}/${asset}.png`;
|
||||||
|
}
|
||||||
return `${apiUrl}static/dota2/${assetType}/${asset}.webp`;
|
return `${apiUrl}static/dota2/${assetType}/${asset}.webp`;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
2974
src/api/heroFacets.ts
Normal file
2974
src/api/heroFacets.ts
Normal file
File diff suppressed because it is too large
Load Diff
@ -3926,10 +3926,10 @@ dot-case@^3.0.4:
|
|||||||
no-case "^3.0.4"
|
no-case "^3.0.4"
|
||||||
tslib "^2.0.3"
|
tslib "^2.0.3"
|
||||||
|
|
||||||
dotagsi@^1.4.3:
|
dotagsi@^1.5.0:
|
||||||
version "1.4.3"
|
version "1.5.0"
|
||||||
resolved "https://registry.npmjs.org/dotagsi/-/dotagsi-1.4.3.tgz"
|
resolved "https://registry.npmjs.org/dotagsi/-/dotagsi-1.5.0.tgz"
|
||||||
integrity sha512-6yksHABW4InBVJ+IOgKXwN3UtTiRdPLsIHVJeswDco6rWUZxMWYXS4YZlpcdMbBX539rdmLiNzGq08ZW64lKqg==
|
integrity sha512-wbkmoCXhpyddgGA3swuTtRNVnLggktiiNQ9/yapWg2eNOyKLOQCvjesCu3bkwtL77AHjxyz9rKACxCoINEVivA==
|
||||||
|
|
||||||
dotenv-expand@^5.1.0:
|
dotenv-expand@^5.1.0:
|
||||||
version "5.1.0"
|
version "5.1.0"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user