public Image GetAsset(EStyle style, EAsset asset, EAssetModifier modifier) { lock (assets) { return(assets.Where(x => x.style == style && asset == x.asset && x.modifier == modifier).First()?.image); } }
public Image GetAsset(EStyle style, EAsset asset) { lock (assets) { return(assets.Where(x => x.style == style && asset == x.asset && x.modifier == EAssetModifier.All).FirstOrDefault()?.image); } }
public void RegisterAsset(EStyle style, EAsset asset, Image Image) { lock (assets) { if (!HasAsset(style, asset)) { assets.Add(new MusixAssetItem() { asset = asset, style = style, image = Image }); } } }
public Image GetAsset(EStyle style, EAsset asset) { if (!AssetCache.HasAsset(style, asset)) { Image newAsset = MenuItem.GetIcon(style); AssetCache.RegisterAsset(style, EAsset.MenuIcon, newAsset); return(newAsset); } else { return(AssetCache.GetAsset(style, asset)); } }
private void CreateAssetHistory(int createdBy, EAsset eAsset) { EAssetHistory eAssetHistory = new EAssetHistory { CreatedDate = DateTime.Now, DateAssigned = DateTime.Now, CreatedBy = createdBy, EmployeeId = eAsset.EmployeeId, AssetId = eAsset.AssetId }; _iDAsset.Create(eAssetHistory); }
public Asset Create(int createdBy, Asset asset) { EAsset eAsset = EAsset(asset); eAsset.CreatedDate = DateTime.Now; eAsset.CreatedBy = createdBy; eAsset = _iDAsset.Create(eAsset); CreateAssetHistory(createdBy, eAsset); return(Asset(eAsset)); }
private async Task Stake(Player player, EAsset asset, ulong amount) { var balance = await GetBalanceByAssetAsync(player, asset); // check for value underflow if (balance.Amount >= amount) { balance.Amount -= amount; } else { throw new InsufficientPlayersBalanceException($"Cannot stake {amount} {asset} from player balance {balance.Amount} {balance.Asset}"); } }
private async Task Deposit(Player player, EAsset asset, ulong amount) { var balance = await GetBalanceByAssetAsync(player, asset); // check for value overflow if (ulong.MaxValue - balance.Amount >= amount) { balance.Amount += amount; } else { throw new PlayersBalanceOverflowException($"Cannot add {amount} {asset} to player balance {balance.Amount} {balance.Asset}"); } }
public void DeregisterAsset(EStyle style, EAsset asset, EAssetModifier modifier, bool Dispose) { lock (assets) { MusixAssetItem item = assets.Where(x => x.asset == asset && x.style == style && x.modifier == modifier).First(); if (item != null) { if (Dispose) { item.image.Dispose(); } assets.Remove(item); } } }
private async Task <Balance> GetBalanceByAssetAsync(Player player, EAsset asset) { var balance = player.Balances.FirstOrDefault(p => p.Asset == asset); if (balance == null) { balance = new Balance() { PlayerId = player.Id, Asset = asset }; await _balanceRepository.AddAsync(balance); } return(balance); }
public Asset Update(int updatedBy, Asset asset) { EAsset currentAsset = _iDAsset.Read <EAsset>(a => a.AssetId == asset.AssetId); var eAsset = EAsset(asset); eAsset.UpdatedDate = DateTime.Now; eAsset.UpdatedBy = updatedBy; eAsset = _iDAsset.Update(EAsset(asset)); if (asset.EmployeeId != currentAsset.EmployeeId) { CreateAssetHistory(updatedBy, eAsset); } return(Asset(eAsset)); }
private Asset Asset(EAsset eAsset) { return(new Asset { CreatedDate = eAsset.CreatedDate, UpdatedDate = eAsset.UpdatedDate, CreatedBy = eAsset.CreatedBy, EmployeeId = eAsset.EmployeeId, AssetId = eAsset.AssetId, AssetTypeId = eAsset.AssetTypeId, UpdatedBy = eAsset.UpdatedBy, AssetTag = eAsset.AssetTag, Description = eAsset.Description, Name = eAsset.Name, SerialNumber = eAsset.SerialNumber }); }
public Asset Read(int assetId) { EAsset eAsset = _iDAsset.Read <EAsset>(a => a.AssetId == assetId); return(Asset(eAsset)); }
public bool HasAsset(EStyle style, EAsset asset, EAssetModifier modifier) { return(GetAsset(style, asset, modifier) != null); }
public bool HasAsset(EStyle style, EAsset asset) { return(GetAsset(style, asset) != null); }
private async Task Win(Player player, EAsset asset, ulong amount) { await Deposit(player, asset, amount); }