/// <summary>Raised after items are added or removed to a player's inventory.</summary> /// <param name="sender">The event sender.</param> /// <param name="e">The event arguments.</param> private static void OnInventoryChanged(object sender, InventoryChangedEventArgs e) { // replace mod items if (e.IsLocalPlayer) { IList <Item> inventory = Game1.player.Items; for (int i = 0; i < inventory.Count; ++i) { var item = inventory[i]; if (item == null) { continue; } if (item.ParentSheetIndex == CobaltSprinklerObject.INDEX && !(item is CobaltSprinklerObject)) { inventory[i] = new CobaltSprinklerObject(); } else { continue; } Log.trace("Replacing a vanilla instance of custom item with my own. (Inventory)"); inventory[i].Stack = item.Stack; } } }
/// <summary>Get the cobalt sprinkler coverage.</summary> /// <param name="origin">The tile position containing the sprinkler.</param> public IEnumerable <Vector2> GetSprinklerCoverage(Vector2 origin) { return(CobaltSprinklerObject.GetCoverage(Vector2.Zero)); }