From c86d986c62de5ffb777a84165bd84b0e706c7a51 Mon Sep 17 00:00:00 2001 From: Citrinate Date: Wed, 25 Feb 2026 17:33:26 -0500 Subject: [PATCH 1/4] Fix float values not appearing on item squares in large inventories --- src/cs2/items/assets/inventory_asset.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/cs2/items/assets/inventory_asset.js b/src/cs2/items/assets/inventory_asset.js index f152b53..ab629a1 100644 --- a/src/cs2/items/assets/inventory_asset.js +++ b/src/cs2/items/assets/inventory_asset.js @@ -143,10 +143,21 @@ export default class InventoryAsset extends Asset { return; } - // Update float element with percentile info - if (floatElement && this._inspectData.wear && this._wearData) { - floatElement.innerText = this._inspectData.wear.toFixed(this.#isTradeProtected ? 2 : 6); - floatElement.append(" ", this._GetPercentileElement()); + if (this._inspectData.wear && this._wearData) { + if (floatElement) { + // Update float element with percentile info + floatElement.innerText = this._inspectData.wear.toFixed(this.#isTradeProtected ? 2 : 6); + floatElement.append(" ", this._GetPercentileElement()); + } else { + // Display float data for the first time (Steam only provides float values for the first 75 inventory items) + floatElement = CreateElement("div", { + class: `cs2s_asset_wear cs2s_asset_wear_${Asset.GetWear(this._inspectData.wear).name.toLowerCase()}`, + text: this._inspectData.wear.toFixed(this.#isTradeProtected ? 2 : 6) + }); + floatElement.append(" ", this._GetPercentileElement()); + + this._asset.element.append(floatElement); + } } } From 6a84fcf91159523d82294986d48cd919068d706e Mon Sep 17 00:00:00 2001 From: Citrinate Date: Wed, 25 Feb 2026 17:33:39 -0500 Subject: [PATCH 2/4] Tweaks --- src/css/style.css | 2 +- src/userscript.meta.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/css/style.css b/src/css/style.css index 3d8bce6..6618499 100644 --- a/src/css/style.css +++ b/src/css/style.css @@ -706,7 +706,7 @@ } .cs2s_table_name_column { - width: 350px; + width: 375px; } .cs2s_table_collection_column { diff --git a/src/userscript.meta.js b/src/userscript.meta.js index d09e920..5392e49 100644 --- a/src/userscript.meta.js +++ b/src/userscript.meta.js @@ -6,7 +6,7 @@ export const userscriptHeader = // @name Counter-Strike 2 Script // @namespace https://github.com/Citrinate // @author Citrinate -// @description Manage your CS2 storage units and inspect items +// @description Interact with Counter-Strike 2 // @license Apache-2.0 // @version ${pkg.version} // @match https://steamcommunity.com/id/*/inventory* From e312b72323db70cc742d64e5ab4c4e9320e6c4fb Mon Sep 17 00:00:00 2001 From: Citrinate Date: Wed, 25 Feb 2026 17:56:37 -0500 Subject: [PATCH 3/4] Add "Keys" and "Other" tabs to store --- src/components/store_table.js | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/src/components/store_table.js b/src/components/store_table.js index 158bcf4..3a76d86 100644 --- a/src/components/store_table.js +++ b/src/components/store_table.js @@ -25,8 +25,10 @@ export default class StoreTable extends Table { static TAB = { GENERAL: 0, TOOLS: 1, - TOURNAMENT_CAPSULES: 2, - TOURNAMENT_SOUVENIRS: 3 + KEYS: 2, + TOURNAMENT_CAPSULES: 3, + TOURNAMENT_SOUVENIRS: 4, + OTHER: 5 }; constructor(store) { @@ -266,6 +268,13 @@ export default class StoreTable extends Table { this.#ChangeTab(event.currentTarget, StoreTable.TAB.TOOLS); } }), + CreateElement("a", { + class: "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon", + text: "Keys", + onclick: (event) => { + this.#ChangeTab(event.currentTarget, StoreTable.TAB.KEYS); + } + }), this.#store.items.find(item => item.tournament_id) && CreateElement("a", { class: "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon", text: "Tournament", @@ -279,6 +288,13 @@ export default class StoreTable extends Table { onclick: (event) => { this.#ChangeTab(event.currentTarget, StoreTable.TAB.TOURNAMENT_SOUVENIRS); } + }), + CreateElement("a", { + class: "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon", + text: "Other", + onclick: (event) => { + this.#ChangeTab(event.currentTarget, StoreTable.TAB.OTHER); + } }) ] }), @@ -428,6 +444,10 @@ export default class StoreTable extends Table { return false; } + if (this.#tab === StoreTable.TAB.KEYS && item.type != "Key") { + return false; + } + if (this.#tab === StoreTable.TAB.TOURNAMENT_CAPSULES && (!item.tournament_id || item.requires_supplemental_data)) { return false; } @@ -436,6 +456,15 @@ export default class StoreTable extends Table { return false; } + if (this.#tab === StoreTable.TAB.OTHER && ( + typeof item.layout_weight !== "undefined" + || item.layout_format == "single" + || item.type == "Key" + || item.tournament_id + )) { + return false; + } + if (this.#searchQuery && this.#searchQuery.length > 0) { for (const word of this.#searchQuery) { if (!item.name_normalized.includes(word)) { From 55240bd85b6ba3c0667a8456ed542fc13593eaae Mon Sep 17 00:00:00 2001 From: Citrinate Date: Wed, 25 Feb 2026 17:56:59 -0500 Subject: [PATCH 4/4] Version bump --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e8ae30d..144415a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cs2script", - "version": "1.1.0.3", + "version": "1.2.0.0", "type": "module", "scripts": { "build": "node build.js",