public static int AllTestsMode(Options opts) { Console.WriteLine("*** Pass name is '{0}'...", opts.ShortName); Database.Initialize(opts.DatabaseFile); Database.BeginTransaction(); PassDbEntry passEntry = new PassDbEntry(); passEntry.ShortName = opts.ShortName; passEntry.Author = opts.Author; passEntry.ChangeLog = opts.ChangeLog; passEntry.Date = DateTime.Now; Database.Put(passEntry); DrtStore store = new DrtStore("perf-suite-set/drtlist.xml"); foreach (DrtItem item in store.Items) { Console.WriteLine("*** Running [{0}]", item); ItemDbEntry itemEntry = Database.GetItemEntryByUniqueId(item.UniqueId); if (itemEntry == null) { Console.WriteLine("*** [{0}] not yet in the database, adding...", item); itemEntry = new ItemDbEntry(); itemEntry.UniqueId = item.UniqueId; itemEntry.Name = item.Name; itemEntry.InputFile = item.InputFile; Database.Put(itemEntry); } DrtResult r = item.Run(); ResultDbEntry resultEntry = new ResultDbEntry(); resultEntry.Pass = passEntry; resultEntry.Item = itemEntry; if (r == null) { resultEntry.Time = 0; Console.WriteLine("*** Averaged result: 0 (FAILURE)"); } else { resultEntry.Time = r.AveragedTime; Console.WriteLine("*** Averaged result: {0}usec", r.AveragedTime); } Database.Put(resultEntry); } Database.CommitTransaction(); return(0); }
private void SpawnLootEntry(ItemDbEntry entry, List <Item.Item> loot) { if (entry != null) { var item = new Item.Item(); item.Setup(Context.Dungeon, entry, spawnInWorld: true); loot.Add(item); DropItem(item); } }
public SpriteRenderer SpawnItemInWorld(Item.Item item, ItemDbEntry meta) { if (item.WorldView != null) { item.WorldView.gameObject.SetActive(true); return(item.WorldView); } var itemView = Instantiate(_itemViewPrefab); itemView.name = meta.Name; itemView.sprite = meta.Sprite; itemView.color = meta.Color; return(itemView); }
public void SetPrimaryWeapon(ItemDbEntry itemMeta) { if (_primaryWeapon == null) { _primaryWeapon = GameObject.Instantiate(_db.ItemUiPrefab, _equipmentGroup, false); } if (itemMeta != null) { _primaryWeapon.sprite = itemMeta.Sprite; _primaryWeapon.color = itemMeta.Color; } else { _primaryWeapon.sprite = null; _primaryWeapon.color = Color.white; } }
public void Setup(Dungeon.Dungeon dungeon, ItemDbEntry meta, bool spawnInWorld) { _dungeon = dungeon; _meta = meta; if (meta.Interactions.Count > 0) { _interactions = new List <IInteractible>(); foreach (var iMeta in meta.Interactions) { if (iMeta is IInteractibleMeta interaction) { _interactions.Add(interaction.Create(this)); } } } if (spawnInWorld) { _worldView = dungeon.SpawnItemInWorld(this, meta); } }