public void ClearCache(bool includeCurrent = true) { if (includeCurrent) { grenadeEntityExtractor().weaponBasicData.Reset(); } grenadeEntityExtractor().weaponRuntimeData.Reset(); HeldGrenades.Clear(); Sync(); }
public bool AddCache(int id) { if (!grenadeConfigIds.Contains(id)) { return(false); } int value = 0; HeldGrenades.TryGetValue(id, out value); value += 1; HeldGrenades[id] = value; Sync(); return(true); }
public int RemoveCache(int id) { int value; if (HeldGrenades.TryGetValue(id, out value)) { value -= 1; if (value < 1) { HeldGrenades.Remove(id); } else { HeldGrenades[id] = value; } Sync(); return(value); } return(-1); }
public int GetCount(int id) { return(HeldGrenades.ContainsKey(id) ? HeldGrenades[id] : 0); }