diff --git a/Commands.cs b/Commands.cs index 647af546..f14d51fa 100644 --- a/Commands.cs +++ b/Commands.cs @@ -164,7 +164,6 @@ namespace WeaponPaints g_playersKnife[player.Slot] = knifeKey; - if (g_bCommandsAllowed && (LifeState_t)player.LifeState == LifeState_t.LIFE_ALIVE) RefreshWeapons(player); @@ -225,7 +224,6 @@ namespace WeaponPaints { if (!Utility.IsPlayerValid(p)) return; - string steamId = p.SteamID.ToString(); var firstSkin = skinsList?.FirstOrDefault(skin => { @@ -393,7 +391,6 @@ namespace WeaponPaints player!.Print(Localizer["wp_glove_menu_select", selectedPaintName]); } - if (weaponSync != null) { Task.Run(async () => @@ -408,7 +405,6 @@ namespace WeaponPaints gPlayerWeaponsInfo[playerInfo.Slot][weaponDefindex].Paint = paint; gPlayerWeaponsInfo[playerInfo.Slot][weaponDefindex].Wear = 0.00f; gPlayerWeaponsInfo[playerInfo.Slot][weaponDefindex].Seed = 0; - }); } RefreshGloves(player); diff --git a/Events.cs b/Events.cs index 107d159e..eab19e78 100644 --- a/Events.cs +++ b/Events.cs @@ -26,22 +26,30 @@ namespace WeaponPaints try { + List tasks = new List(); + if (Config.Additional.SkinEnabled) { - Task.Run(() => weaponSync.GetWeaponPaintsFromDatabase(playerInfo)); + tasks.Add(Task.Run(() => weaponSync.GetWeaponPaintsFromDatabase(playerInfo))); } if (Config.Additional.KnifeEnabled) { - Task.Run(() => weaponSync.GetKnifeFromDatabase(playerInfo)); + tasks.Add(Task.Run(() => weaponSync.GetKnifeFromDatabase(playerInfo))); } if (Config.Additional.GloveEnabled) { - Task.Run(() => weaponSync.GetGloveFromDatabase(playerInfo)); + tasks.Add(Task.Run(() => weaponSync.GetGloveFromDatabase(playerInfo))); } + + Task.WaitAll(tasks.ToArray()); } - catch (Exception ex) + catch (AggregateException ex) { - Console.WriteLine($"An error occurred: {ex.Message}"); + // Handle the exception + foreach (var innerException in ex.InnerExceptions) + { + Console.WriteLine($"An error occurred for player {player}: {innerException.Message}"); + } } return HookResult.Continue; @@ -67,25 +75,30 @@ namespace WeaponPaints if (weaponSync != null) { - // Run weapon sync tasks asynchronously Task.Run(async () => { - await weaponSync.SyncWeaponPaintsToDatabase(playerInfo); - }); + try + { + await weaponSync.SyncWeaponPaintsToDatabase(playerInfo); + } + catch (Exception ex) + { + Utility.Log($"Error syncing weapon paints: {ex.Message}"); + } - // Remove player data - if (Config.Additional.SkinEnabled) - { - gPlayerWeaponsInfo.TryRemove(player.Slot, out _); - } - if (Config.Additional.KnifeEnabled) - { - g_playersKnife.TryRemove(player.Slot, out _); - } - if (Config.Additional.GloveEnabled) - { - g_playersGlove.TryRemove(player.Slot, out _); - } + if (Config.Additional.SkinEnabled) + { + gPlayerWeaponsInfo.TryRemove(player.Slot, out _); + } + if (Config.Additional.KnifeEnabled) + { + g_playersKnife.TryRemove(player.Slot, out _); + } + if (Config.Additional.GloveEnabled) + { + g_playersGlove.TryRemove(player.Slot, out _); + } + }); } // Remove player's command cooldown @@ -136,7 +149,7 @@ namespace WeaponPaints CCSPlayerController? player = Utilities.GetEntityFromIndex((int)activator.Index).OriginalController.Value; - if (player == null || player.IsBot || player.IsHLTV || + if (player == null || player.IsBot || player.PlayerPawn == null || !player.PlayerPawn.IsValid || !player.PawnIsAlive || player.SteamID.ToString().Length != 17 || !g_knifePickupCount.TryGetValue(player.Slot, out var pickupCount) || !g_playersKnife.ContainsKey(player.Slot)) { @@ -190,6 +203,11 @@ namespace WeaponPaints if (player is null || !player.IsValid || !Config.Additional.KnifeEnabled && !Config.Additional.GloveEnabled) return HookResult.Continue; + CCSPlayerPawn? pawn = player.PlayerPawn.Value; + + if (pawn == null || !pawn.IsValid) + return HookResult.Continue; + g_knifePickupCount[player.Slot] = 0; if (!PlayerHasKnife(player)) @@ -220,12 +238,13 @@ namespace WeaponPaints return HookResult.Continue; } + private void OnTick() { foreach (var player in Utilities.GetPlayers().Where(p => - p is not null && p.IsValid && + p is not null && p.IsValid && p.PlayerPawn != null && p.PlayerPawn.IsValid && (LifeState_t)p.LifeState == LifeState_t.LIFE_ALIVE && p.SteamID.ToString().Length == 17 - && !p.IsBot && !p.IsHLTV && p.Connected == PlayerConnectedState.PlayerConnected && p.Team != CounterStrikeSharp.API.Modules.Utils.CsTeam.None + && !p.IsBot && !p.IsHLTV && p.Connected == PlayerConnectedState.PlayerConnected ) ) { @@ -297,7 +316,7 @@ namespace WeaponPaints //RegisterListener(OnClientPutInServer); //RegisterListener(OnClientDisconnect); RegisterListener(OnMapStart); - RegisterListener(OnTick); + //RegisterListener(OnTick); RegisterEventHandler(OnPlayerSpawn); RegisterEventHandler(OnRoundStart, HookMode.Pre); diff --git a/VERSION b/VERSION index e171316e..09ebd8d1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.9b \ No newline at end of file +1.9c \ No newline at end of file diff --git a/WeaponAction.cs b/WeaponAction.cs index 44ceb8de..27bda95d 100644 --- a/WeaponAction.cs +++ b/WeaponAction.cs @@ -142,8 +142,10 @@ namespace WeaponPaints { if (!_config.Additional.KnifeEnabled || player == null || !player.IsValid) return; - WeaponPaints.Instance.AddTimer(1.0f, () => + Instance.AddTimer(1.0f, () => { + if (PlayerHasKnife(player)) return; + string knifeToGive; if (g_playersKnife.TryGetValue(player.Slot, out var knife)) { @@ -181,7 +183,7 @@ namespace WeaponPaints return false; } - if (player.PlayerPawn?.Value == null || player.PlayerPawn?.Value.WeaponServices == null || player.PlayerPawn?.Value.ItemServices == null) + if (player.PlayerPawn.Value == null || player.PlayerPawn.Value.WeaponServices == null || player.PlayerPawn.Value.ItemServices == null) return false; var weapons = player.PlayerPawn.Value.WeaponServices?.MyWeapons; @@ -256,8 +258,6 @@ namespace WeaponPaints weaponsWithAmmo[weaponByDefindex].Add((clip1, reservedAmmo)); } - - //player.RemoveItemByDesignerName(weapon.Value.DesignerName, false); } catch (Exception ex) { @@ -271,18 +271,21 @@ namespace WeaponPaints player.ExecuteClientCommand($"slot {i}"); player.ExecuteClientCommand($"slot {i}"); - AddTimer(0.1f, () => + AddTimer(0.2f, () => { var weapon = player.PlayerPawn.Value.WeaponServices.ActiveWeapon.Value; - CCSWeaponBaseGun? gun = weapon?.As(); + + if (weapon is null || !weapon.IsValid) return; + + CCSWeaponBaseGun gun = weapon.As(); if (gun == null || gun.VData == null) return; - if (gun?.VData?.GearSlot == gear_slot_t.GEAR_SLOT_C4 || gun?.VData?.GearSlot == gear_slot_t.GEAR_SLOT_GRENADES) return; + if (gun.VData.GearSlot == gear_slot_t.GEAR_SLOT_C4 || gun.VData.GearSlot == gear_slot_t.GEAR_SLOT_GRENADES) return; player.DropActiveWeapon(); - AddTimer(0.22f, () => + AddTimer(0.25f, () => { if (gun != null && gun.IsValid && gun.State == CSWeaponState_t.WEAPON_NOT_CARRIED) { diff --git a/WeaponPaints.cs b/WeaponPaints.cs index be4dbab9..758bcad1 100644 --- a/WeaponPaints.cs +++ b/WeaponPaints.cs @@ -14,6 +14,7 @@ namespace WeaponPaints; public partial class WeaponPaints : BasePlugin, IPluginConfig { internal static WeaponPaints Instance { get; private set; } = new(); + internal static readonly Dictionary weaponList = new() { {"weapon_deagle", "Desert Eagle"}, @@ -155,7 +156,7 @@ public partial class WeaponPaints : BasePlugin, IPluginConfig "Nereziel & daffyy"; public override string ModuleDescription => "Skin, gloves and knife selector, standalone and web-based"; public override string ModuleName => "WeaponPaints"; - public override string ModuleVersion => "1.9b"; + public override string ModuleVersion => "1.9c"; public static WeaponPaintsConfig GetWeaponPaintsConfig() { diff --git a/WeaponSynchronization.cs b/WeaponSynchronization.cs index 2802c086..7fcf3871 100644 --- a/WeaponSynchronization.cs +++ b/WeaponSynchronization.cs @@ -14,11 +14,13 @@ namespace WeaponPaints _config = config; } - internal async Task GetKnifeFromDatabase(PlayerInfo player) + public async Task GetKnifeFromDatabase(PlayerInfo player) { - if (!_config.Additional.KnifeEnabled) return; try { + if (!_config.Additional.KnifeEnabled || string.IsNullOrEmpty(player?.SteamId)) + return; + await using var connection = await _database.GetConnectionAsync(); string query = "SELECT `knife` FROM `wp_player_knife` WHERE `steamid` = @steamid"; string? playerKnife = await connection.QueryFirstOrDefaultAsync(query, new { steamid = player.SteamId }); @@ -28,53 +30,47 @@ namespace WeaponPaints WeaponPaints.g_playersKnife[player.Slot] = playerKnife; } } - catch (Exception e) + catch (Exception ex) { - Utility.Log(e.Message); - return; + Utility.Log($"An error occurred in GetKnifeFromDatabase: {ex.Message}"); } } - internal async Task GetGloveFromDatabase(PlayerInfo player) + public async Task GetGloveFromDatabase(PlayerInfo player) { - if (!_config.Additional.GloveEnabled) return; - try { - // Ensure proper disposal of resources using "using" statement + if (!_config.Additional.GloveEnabled || string.IsNullOrEmpty(player?.SteamId)) + return; + await using var connection = await _database.GetConnectionAsync(); - - // Construct the SQL query with specific columns for better performance string query = "SELECT `weapon_defindex` FROM `wp_player_gloves` WHERE `steamid` = @steamid"; - - // Execute the query and retrieve glove data ushort? gloveData = await connection.QueryFirstOrDefaultAsync(query, new { steamid = player.SteamId }); - // Check if glove data is retrieved successfully if (gloveData != null) { - // Update g_playersGlove dictionary with glove data WeaponPaints.g_playersGlove[player.Slot] = gloveData.Value; } } - catch (Exception e) + catch (Exception ex) { - // Log any exceptions occurred during database operation - Utility.Log("An error occurred while fetching glove data: " + e.Message); + Utility.Log($"An error occurred in GetGloveFromDatabase: {ex.Message}"); } } - internal async Task GetWeaponPaintsFromDatabase(PlayerInfo player) + public async Task GetWeaponPaintsFromDatabase(PlayerInfo player) { - if (!_config.Additional.SkinEnabled || player == null || player.SteamId == null) return; - try { + if (!_config.Additional.SkinEnabled || player == null || string.IsNullOrEmpty(player.SteamId)) + return; + await using var connection = await _database.GetConnectionAsync(); string query = "SELECT * FROM `wp_player_skins` WHERE `steamid` = @steamid"; var playerSkins = await connection.QueryAsync(query, new { steamid = player.SteamId }); - if (playerSkins == null) return; + if (playerSkins == null) + return; var weaponInfos = new ConcurrentDictionary(); @@ -97,9 +93,9 @@ namespace WeaponPaints WeaponPaints.gPlayerWeaponsInfo[player.Slot] = weaponInfos; } - catch (Exception e) + catch (Exception ex) { - Utility.Log($"Database error occurred: {e.Message}"); + Utility.Log($"An error occurred in GetWeaponPaintsFromDatabase: {ex.Message}"); } } @@ -119,7 +115,6 @@ namespace WeaponPaints } } - internal async Task SyncGloveToDatabase(PlayerInfo player, int defindex) { if (!_config.Additional.GloveEnabled || player == null || string.IsNullOrEmpty(player.SteamId)) return; @@ -167,6 +162,5 @@ namespace WeaponPaints Utility.Log($"Error syncing weapon paints to database: {e.Message}"); } } - } } \ No newline at end of file diff --git a/lang/lv.json b/lang/lv.json index 8898c704..f5d4b26e 100644 --- a/lang/lv.json +++ b/lang/lv.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "Ieroču Izvēlne", "wp_skin_menu_skin_title": "Izvēlieties ādu {lime}{0}{default}", "wp_skin_menu_select": "Jūs esat izvēlējies {lime}{0}{default} kā savu ādu" -} +} \ No newline at end of file diff --git a/lang/pl.json b/lang/pl.json index 1c9e42d9..aefa1d42 100644 --- a/lang/pl.json +++ b/lang/pl.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "Menu Broni", "wp_skin_menu_skin_title": "Wybierz skórkę dla {lime}{0}{default}", "wp_skin_menu_select": "Wybrałeś {lime}{0}{default} jako swoją skórkę" -} +} \ No newline at end of file diff --git a/lang/pt-BR.json b/lang/pt-BR.json index 535f71da..9665b79d 100644 --- a/lang/pt-BR.json +++ b/lang/pt-BR.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "Menu de Armas", "wp_skin_menu_skin_title": "Selecione uma skin para {lime}{0}{default}", "wp_skin_menu_select": "Você escolheu {lime}{0}{default} como sua skin" -} +} \ No newline at end of file diff --git a/lang/pt-PT.json b/lang/pt-PT.json index 26083368..ce676d69 100644 --- a/lang/pt-PT.json +++ b/lang/pt-PT.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "Menu de Armas", "wp_skin_menu_skin_title": "Selecione uma skin para {lime}{0}{default}", "wp_skin_menu_select": "Você escolheu {lime}{0}{default} como sua skin" -} +} \ No newline at end of file diff --git a/lang/tr.json b/lang/tr.json index 96738446..f16de6b3 100644 --- a/lang/tr.json +++ b/lang/tr.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "Silah Menüsü", "wp_skin_menu_skin_title": "{lime}{0}{default} için bir skin seçin", "wp_skin_menu_select": "{lime}{0}{default} olarak bir skin seçtiniz" -} +} \ No newline at end of file diff --git a/lang/zh-cn.json b/lang/zh-cn.json index edaa4ea2..1cca33ab 100644 --- a/lang/zh-cn.json +++ b/lang/zh-cn.json @@ -14,4 +14,4 @@ "wp_skin_menu_weapon_title": "武器菜单", "wp_skin_menu_skin_title": "为 {lime}{0}{default} 选择皮肤", "wp_skin_menu_select": "您已选择 {lime}{0}{default} 作为您的皮肤" -} +} \ No newline at end of file diff --git a/website/data/gloves.json b/website/data/gloves.json index f8790f96..f60be1a4 100644 --- a/website/data/gloves.json +++ b/website/data/gloves.json @@ -1 +1,434 @@ -[{"weapon_defindex":4725,"paint":"10085","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10085.png","paint_name":"★ Broken Fang Gloves | Jade"},{"weapon_defindex":4725,"paint":"10086","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10086.png","paint_name":"★ Broken Fang Gloves | Yellow-banded"},{"weapon_defindex":4725,"paint":"10087","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10087.png","paint_name":"★ Broken Fang Gloves | Needle Point"},{"weapon_defindex":4725,"paint":"10088","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10088.png","paint_name":"★ Broken Fang Gloves | Unhinged"},{"weapon_defindex":5027,"paint":"10006","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10006.png","paint_name":"★ Bloodhound Gloves | Charred"},{"weapon_defindex":5027,"paint":"10007","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10007.png","paint_name":"★ Bloodhound Gloves | Snakebite"},{"weapon_defindex":5027,"paint":"10008","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10008.png","paint_name":"★ Bloodhound Gloves | Bronzed"},{"weapon_defindex":5027,"paint":"10039","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10039.png","paint_name":"★ Bloodhound Gloves | Guerrilla"},{"weapon_defindex":5030,"paint":"10018","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10018.png","paint_name":"★ Sport Gloves | Superconductor"},{"weapon_defindex":5030,"paint":"10019","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10019.png","paint_name":"★ Sport Gloves | Arid"},{"weapon_defindex":5030,"paint":"10037","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10037.png","paint_name":"★ Sport Gloves | Pandora's Box"},{"weapon_defindex":5030,"paint":"10038","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10038.png","paint_name":"★ Sport Gloves | Hedge Maze"},{"weapon_defindex":5030,"paint":"10045","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10045.png","paint_name":"★ Sport Gloves | Amphibious"},{"weapon_defindex":5030,"paint":"10046","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10046.png","paint_name":"★ Sport Gloves | Bronze Morph"},{"weapon_defindex":5030,"paint":"10047","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10047.png","paint_name":"★ Sport Gloves | Omega"},{"weapon_defindex":5030,"paint":"10048","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10048.png","paint_name":"★ Sport Gloves | Vice"},{"weapon_defindex":5030,"paint":"10073","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10073.png","paint_name":"★ Sport Gloves | Slingshot"},{"weapon_defindex":5030,"paint":"10074","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10074.png","paint_name":"★ Sport Gloves | Big Game"},{"weapon_defindex":5030,"paint":"10075","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10075.png","paint_name":"★ Sport Gloves | Scarlet Shamagh"},{"weapon_defindex":5030,"paint":"10076","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10076.png","paint_name":"★ Sport Gloves | Nocts"},{"weapon_defindex":5031,"paint":"10013","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10013.png","paint_name":"★ Driver Gloves | Lunar Weave"},{"weapon_defindex":5031,"paint":"10015","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10015.png","paint_name":"★ Driver Gloves | Convoy"},{"weapon_defindex":5031,"paint":"10016","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10016.png","paint_name":"★ Driver Gloves | Crimson Weave"},{"weapon_defindex":5031,"paint":"10040","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10040.png","paint_name":"★ Driver Gloves | Diamondback"},{"weapon_defindex":5031,"paint":"10041","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10041.png","paint_name":"★ Driver Gloves | King Snake"},{"weapon_defindex":5031,"paint":"10042","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10042.png","paint_name":"★ Driver Gloves | Imperial Plaid"},{"weapon_defindex":5031,"paint":"10043","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10043.png","paint_name":"★ Driver Gloves | Overtake"},{"weapon_defindex":5031,"paint":"10044","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10044.png","paint_name":"★ Driver Gloves | Racing Green"},{"weapon_defindex":5031,"paint":"10069","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10069.png","paint_name":"★ Driver Gloves | Rezan the Red"},{"weapon_defindex":5031,"paint":"10070","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10070.png","paint_name":"★ Driver Gloves | Snow Leopard"},{"weapon_defindex":5031,"paint":"10071","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10071.png","paint_name":"★ Driver Gloves | Queen Jaguar"},{"weapon_defindex":5031,"paint":"10072","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10072.png","paint_name":"★ Driver Gloves | Black Tie"},{"weapon_defindex":5032,"paint":"10009","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10009.png","paint_name":"★ Hand Wraps | Leather"},{"weapon_defindex":5032,"paint":"10010","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10010.png","paint_name":"★ Hand Wraps | Spruce DDPAT"},{"weapon_defindex":5032,"paint":"10021","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10021.png","paint_name":"★ Hand Wraps | Slaughter"},{"weapon_defindex":5032,"paint":"10036","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10036.png","paint_name":"★ Hand Wraps | Badlands"},{"weapon_defindex":5032,"paint":"10053","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10053.png","paint_name":"★ Hand Wraps | Cobalt Skulls"},{"weapon_defindex":5032,"paint":"10054","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10054.png","paint_name":"★ Hand Wraps | Overprint"},{"weapon_defindex":5032,"paint":"10055","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10055.png","paint_name":"★ Hand Wraps | Duct Tape"},{"weapon_defindex":5032,"paint":"10056","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10056.png","paint_name":"★ Hand Wraps | Arboreal"},{"weapon_defindex":5032,"paint":"10081","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10081.png","paint_name":"★ Hand Wraps | Desert Shamagh"},{"weapon_defindex":5032,"paint":"10082","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10082.png","paint_name":"★ Hand Wraps | Giraffe"},{"weapon_defindex":5032,"paint":"10083","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10083.png","paint_name":"★ Hand Wraps | Constrictor"},{"weapon_defindex":5032,"paint":"10084","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10084.png","paint_name":"★ Hand Wraps | CAUTION!"},{"weapon_defindex":5033,"paint":"10024","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10024.png","paint_name":"★ Moto Gloves | Eclipse"},{"weapon_defindex":5033,"paint":"10026","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10026.png","paint_name":"★ Moto Gloves | Spearmint"},{"weapon_defindex":5033,"paint":"10027","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10027.png","paint_name":"★ Moto Gloves | Boom!"},{"weapon_defindex":5033,"paint":"10028","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10028.png","paint_name":"★ Moto Gloves | Cool Mint"},{"weapon_defindex":5033,"paint":"10049","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10049.png","paint_name":"★ Moto Gloves | POW!"},{"weapon_defindex":5033,"paint":"10050","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10050.png","paint_name":"★ Moto Gloves | Turtle"},{"weapon_defindex":5033,"paint":"10051","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10051.png","paint_name":"★ Moto Gloves | Transport"},{"weapon_defindex":5033,"paint":"10052","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10052.png","paint_name":"★ Moto Gloves | Polygon"},{"weapon_defindex":5033,"paint":"10077","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10077.png","paint_name":"★ Moto Gloves | Finish Line"},{"weapon_defindex":5033,"paint":"10078","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10078.png","paint_name":"★ Moto Gloves | Smoke Out"},{"weapon_defindex":5033,"paint":"10079","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10079.png","paint_name":"★ Moto Gloves | Blood Pressure"},{"weapon_defindex":5033,"paint":"10080","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10080.png","paint_name":"★ Moto Gloves | 3rd Commando Company"},{"weapon_defindex":5034,"paint":"10030","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10030.png","paint_name":"★ Specialist Gloves | Forest DDPAT"},{"weapon_defindex":5034,"paint":"10033","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10033.png","paint_name":"★ Specialist Gloves | Crimson Kimono"},{"weapon_defindex":5034,"paint":"10034","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10034.png","paint_name":"★ Specialist Gloves | Emerald Web"},{"weapon_defindex":5034,"paint":"10035","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10035.png","paint_name":"★ Specialist Gloves | Foundation"},{"weapon_defindex":5034,"paint":"10061","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10061.png","paint_name":"★ Specialist Gloves | Crimson Web"},{"weapon_defindex":5034,"paint":"10062","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10062.png","paint_name":"★ Specialist Gloves | Buckshot"},{"weapon_defindex":5034,"paint":"10063","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10063.png","paint_name":"★ Specialist Gloves | Fade"},{"weapon_defindex":5034,"paint":"10064","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10064.png","paint_name":"★ Specialist Gloves | Mogul"},{"weapon_defindex":5034,"paint":"10065","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10065.png","paint_name":"★ Specialist Gloves | Marble Fade"},{"weapon_defindex":5034,"paint":"10066","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10066.png","paint_name":"★ Specialist Gloves | Lt. Commander"},{"weapon_defindex":5034,"paint":"10067","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10067.png","paint_name":"★ Specialist Gloves | Tiger Strike"},{"weapon_defindex":5034,"paint":"10068","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10068.png","paint_name":"★ Specialist Gloves | Field Agent"},{"weapon_defindex":5035,"paint":"10057","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10057.png","paint_name":"★ Hydra Gloves | Emerald"},{"weapon_defindex":5035,"paint":"10058","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10058.png","paint_name":"★ Hydra Gloves | Mangrove"},{"weapon_defindex":5035,"paint":"10059","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10059.png","paint_name":"★ Hydra Gloves | Rattler"},{"weapon_defindex":5035,"paint":"10060","image":"https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10060.png","paint_name":"★ Hydra Gloves | Case Hardened"}] \ No newline at end of file +[ + { + "weapon_defindex": 4725, + "paint": "10085", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10085.png", + "paint_name": "★ Broken Fang Gloves | Jade" + }, + { + "weapon_defindex": 4725, + "paint": "10086", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10086.png", + "paint_name": "★ Broken Fang Gloves | Yellow-banded" + }, + { + "weapon_defindex": 4725, + "paint": "10087", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10087.png", + "paint_name": "★ Broken Fang Gloves | Needle Point" + }, + { + "weapon_defindex": 4725, + "paint": "10088", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_brokenfang_gloves-10088.png", + "paint_name": "★ Broken Fang Gloves | Unhinged" + }, + { + "weapon_defindex": 5027, + "paint": "10006", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10006.png", + "paint_name": "★ Bloodhound Gloves | Charred" + }, + { + "weapon_defindex": 5027, + "paint": "10007", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10007.png", + "paint_name": "★ Bloodhound Gloves | Snakebite" + }, + { + "weapon_defindex": 5027, + "paint": "10008", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10008.png", + "paint_name": "★ Bloodhound Gloves | Bronzed" + }, + { + "weapon_defindex": 5027, + "paint": "10039", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_bloodhound_gloves-10039.png", + "paint_name": "★ Bloodhound Gloves | Guerrilla" + }, + { + "weapon_defindex": 5030, + "paint": "10018", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10018.png", + "paint_name": "★ Sport Gloves | Superconductor" + }, + { + "weapon_defindex": 5030, + "paint": "10019", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10019.png", + "paint_name": "★ Sport Gloves | Arid" + }, + { + "weapon_defindex": 5030, + "paint": "10037", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10037.png", + "paint_name": "★ Sport Gloves | Pandora's Box" + }, + { + "weapon_defindex": 5030, + "paint": "10038", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10038.png", + "paint_name": "★ Sport Gloves | Hedge Maze" + }, + { + "weapon_defindex": 5030, + "paint": "10045", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10045.png", + "paint_name": "★ Sport Gloves | Amphibious" + }, + { + "weapon_defindex": 5030, + "paint": "10046", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10046.png", + "paint_name": "★ Sport Gloves | Bronze Morph" + }, + { + "weapon_defindex": 5030, + "paint": "10047", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10047.png", + "paint_name": "★ Sport Gloves | Omega" + }, + { + "weapon_defindex": 5030, + "paint": "10048", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10048.png", + "paint_name": "★ Sport Gloves | Vice" + }, + { + "weapon_defindex": 5030, + "paint": "10073", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10073.png", + "paint_name": "★ Sport Gloves | Slingshot" + }, + { + "weapon_defindex": 5030, + "paint": "10074", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10074.png", + "paint_name": "★ Sport Gloves | Big Game" + }, + { + "weapon_defindex": 5030, + "paint": "10075", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10075.png", + "paint_name": "★ Sport Gloves | Scarlet Shamagh" + }, + { + "weapon_defindex": 5030, + "paint": "10076", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/sporty_gloves-10076.png", + "paint_name": "★ Sport Gloves | Nocts" + }, + { + "weapon_defindex": 5031, + "paint": "10013", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10013.png", + "paint_name": "★ Driver Gloves | Lunar Weave" + }, + { + "weapon_defindex": 5031, + "paint": "10015", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10015.png", + "paint_name": "★ Driver Gloves | Convoy" + }, + { + "weapon_defindex": 5031, + "paint": "10016", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10016.png", + "paint_name": "★ Driver Gloves | Crimson Weave" + }, + { + "weapon_defindex": 5031, + "paint": "10040", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10040.png", + "paint_name": "★ Driver Gloves | Diamondback" + }, + { + "weapon_defindex": 5031, + "paint": "10041", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10041.png", + "paint_name": "★ Driver Gloves | King Snake" + }, + { + "weapon_defindex": 5031, + "paint": "10042", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10042.png", + "paint_name": "★ Driver Gloves | Imperial Plaid" + }, + { + "weapon_defindex": 5031, + "paint": "10043", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10043.png", + "paint_name": "★ Driver Gloves | Overtake" + }, + { + "weapon_defindex": 5031, + "paint": "10044", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10044.png", + "paint_name": "★ Driver Gloves | Racing Green" + }, + { + "weapon_defindex": 5031, + "paint": "10069", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10069.png", + "paint_name": "★ Driver Gloves | Rezan the Red" + }, + { + "weapon_defindex": 5031, + "paint": "10070", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10070.png", + "paint_name": "★ Driver Gloves | Snow Leopard" + }, + { + "weapon_defindex": 5031, + "paint": "10071", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10071.png", + "paint_name": "★ Driver Gloves | Queen Jaguar" + }, + { + "weapon_defindex": 5031, + "paint": "10072", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/slick_gloves-10072.png", + "paint_name": "★ Driver Gloves | Black Tie" + }, + { + "weapon_defindex": 5032, + "paint": "10009", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10009.png", + "paint_name": "★ Hand Wraps | Leather" + }, + { + "weapon_defindex": 5032, + "paint": "10010", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10010.png", + "paint_name": "★ Hand Wraps | Spruce DDPAT" + }, + { + "weapon_defindex": 5032, + "paint": "10021", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10021.png", + "paint_name": "★ Hand Wraps | Slaughter" + }, + { + "weapon_defindex": 5032, + "paint": "10036", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10036.png", + "paint_name": "★ Hand Wraps | Badlands" + }, + { + "weapon_defindex": 5032, + "paint": "10053", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10053.png", + "paint_name": "★ Hand Wraps | Cobalt Skulls" + }, + { + "weapon_defindex": 5032, + "paint": "10054", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10054.png", + "paint_name": "★ Hand Wraps | Overprint" + }, + { + "weapon_defindex": 5032, + "paint": "10055", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10055.png", + "paint_name": "★ Hand Wraps | Duct Tape" + }, + { + "weapon_defindex": 5032, + "paint": "10056", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10056.png", + "paint_name": "★ Hand Wraps | Arboreal" + }, + { + "weapon_defindex": 5032, + "paint": "10081", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10081.png", + "paint_name": "★ Hand Wraps | Desert Shamagh" + }, + { + "weapon_defindex": 5032, + "paint": "10082", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10082.png", + "paint_name": "★ Hand Wraps | Giraffe" + }, + { + "weapon_defindex": 5032, + "paint": "10083", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10083.png", + "paint_name": "★ Hand Wraps | Constrictor" + }, + { + "weapon_defindex": 5032, + "paint": "10084", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/leather_handwraps-10084.png", + "paint_name": "★ Hand Wraps | CAUTION!" + }, + { + "weapon_defindex": 5033, + "paint": "10024", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10024.png", + "paint_name": "★ Moto Gloves | Eclipse" + }, + { + "weapon_defindex": 5033, + "paint": "10026", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10026.png", + "paint_name": "★ Moto Gloves | Spearmint" + }, + { + "weapon_defindex": 5033, + "paint": "10027", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10027.png", + "paint_name": "★ Moto Gloves | Boom!" + }, + { + "weapon_defindex": 5033, + "paint": "10028", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10028.png", + "paint_name": "★ Moto Gloves | Cool Mint" + }, + { + "weapon_defindex": 5033, + "paint": "10049", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10049.png", + "paint_name": "★ Moto Gloves | POW!" + }, + { + "weapon_defindex": 5033, + "paint": "10050", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10050.png", + "paint_name": "★ Moto Gloves | Turtle" + }, + { + "weapon_defindex": 5033, + "paint": "10051", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10051.png", + "paint_name": "★ Moto Gloves | Transport" + }, + { + "weapon_defindex": 5033, + "paint": "10052", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10052.png", + "paint_name": "★ Moto Gloves | Polygon" + }, + { + "weapon_defindex": 5033, + "paint": "10077", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10077.png", + "paint_name": "★ Moto Gloves | Finish Line" + }, + { + "weapon_defindex": 5033, + "paint": "10078", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10078.png", + "paint_name": "★ Moto Gloves | Smoke Out" + }, + { + "weapon_defindex": 5033, + "paint": "10079", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10079.png", + "paint_name": "★ Moto Gloves | Blood Pressure" + }, + { + "weapon_defindex": 5033, + "paint": "10080", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/motorcycle_gloves-10080.png", + "paint_name": "★ Moto Gloves | 3rd Commando Company" + }, + { + "weapon_defindex": 5034, + "paint": "10030", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10030.png", + "paint_name": "★ Specialist Gloves | Forest DDPAT" + }, + { + "weapon_defindex": 5034, + "paint": "10033", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10033.png", + "paint_name": "★ Specialist Gloves | Crimson Kimono" + }, + { + "weapon_defindex": 5034, + "paint": "10034", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10034.png", + "paint_name": "★ Specialist Gloves | Emerald Web" + }, + { + "weapon_defindex": 5034, + "paint": "10035", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10035.png", + "paint_name": "★ Specialist Gloves | Foundation" + }, + { + "weapon_defindex": 5034, + "paint": "10061", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10061.png", + "paint_name": "★ Specialist Gloves | Crimson Web" + }, + { + "weapon_defindex": 5034, + "paint": "10062", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10062.png", + "paint_name": "★ Specialist Gloves | Buckshot" + }, + { + "weapon_defindex": 5034, + "paint": "10063", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10063.png", + "paint_name": "★ Specialist Gloves | Fade" + }, + { + "weapon_defindex": 5034, + "paint": "10064", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10064.png", + "paint_name": "★ Specialist Gloves | Mogul" + }, + { + "weapon_defindex": 5034, + "paint": "10065", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10065.png", + "paint_name": "★ Specialist Gloves | Marble Fade" + }, + { + "weapon_defindex": 5034, + "paint": "10066", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10066.png", + "paint_name": "★ Specialist Gloves | Lt. Commander" + }, + { + "weapon_defindex": 5034, + "paint": "10067", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10067.png", + "paint_name": "★ Specialist Gloves | Tiger Strike" + }, + { + "weapon_defindex": 5034, + "paint": "10068", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/specialist_gloves-10068.png", + "paint_name": "★ Specialist Gloves | Field Agent" + }, + { + "weapon_defindex": 5035, + "paint": "10057", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10057.png", + "paint_name": "★ Hydra Gloves | Emerald" + }, + { + "weapon_defindex": 5035, + "paint": "10058", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10058.png", + "paint_name": "★ Hydra Gloves | Mangrove" + }, + { + "weapon_defindex": 5035, + "paint": "10059", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10059.png", + "paint_name": "★ Hydra Gloves | Rattler" + }, + { + "weapon_defindex": 5035, + "paint": "10060", + "image": "https://raw.githubusercontent.com/daffyyyy/cs2-WeaponPaints/main/website/img/skins/studded_hydra_gloves-10060.png", + "paint_name": "★ Hydra Gloves | Case Hardened" + } +] \ No newline at end of file