public void SetData(ChestEntity entity) { entity.rules.Clear(); for (int k = 0; k < ruleElements.Count; k++) { entity.rules.Add((ruleElements._items[k] as ChestRuleElement).rule); } }
void OnOpenChestInput(GameMessage msg) { ChestEntity firstChestInRange = FindObjectsOfType <ChestEntity>().Where(x => (x.transform.position - transform.position).magnitude < chestOpenRange).FirstOrDefault(); if (firstChestInRange != null) { firstChestInRange.Open(); } }
public override bool UseItem(Player player) { ChestEntity test = new ChestEntity(); var rule = new ChestRuleGuaranteed(); Item item = new Item(); item.SetDefaults(ItemID.TwilightDye); rule.pool.Add(new Loot(item, 1)); test.rules.Add(rule); test.SaveChestRulesFile(); return(true); }
public static void GenerateChest(Point16 pos, TagCompound rules) { int i = Chest.CreateChest(pos.X, pos.Y); if (i == -1) { return; } Item item = new Item(); item.SetDefaults(1); Chest chest = Main.chest[i]; ChestEntity.SetChest(chest, ChestEntity.LoadChestRules(rules)); }
public bool SetData(ChestEntity entity) { entity.rules.Clear(); if (ruleElements.Count == 0) { entity.Kill(entity.Position.X, entity.Position.Y); return(false); } for (int k = 0; k < ruleElements.Count; k++) { entity.rules.Add((ruleElements._items[k] as ChestRuleElement).rule.Clone()); } return(true); }
public GameMessage WithChest(ChestEntity value) { targetChest = value; return(this); }