Avoid the broken link on the Github site for the updates.xml, use the example below
Easy to use and customize
Version checking/Auto updating of your game
Grab XML data from the server to display things like the built-in patch notes
Will work with games from any game engine (Unity, Unreal Engine...
In Barracoon.cs you have the base.OnDeath contained within a random occurrence..
public override void OnDeath(Container c)
{
if (Utility.RandomDouble() < 0.2) //was 0.3
{
switch (Utility.Random(1))
{
case 0...
I posted it, you must be looking past it on accident..
for (int k = 0; k < EquipItems.Count; ++k)
{
Item item2 = EquipItems[k];
if (!items.Contains(item2) && item2.IsChildOf(from.Backpack))...
The only thing that really stands out to me, is this loop check (below) is being run in ServUO ahead of the one you have here, and is missing in 'Open' of Corpse.cs
for (int k = 0; k < EquipItems.Count; ++k)
{
Item item2 =...
Gotcha.. I understand better now. Not a different looking container, an actual different container.
You may find some ideas looking at how corpses are handled, or even better I think there is a Bag of Sending in the resources or somewhere, maybe.
Add this override to any container, and adjust the conditional to your need.. I used Name prop as an example..
public override void DisplayTo(Mobile to)
{
ProcessOpeners(to);
NetState ns = to.NetState;
if (ns == null)
{...
Where you were targeting, and what you were calculating were different spots.
So it was where your char was standing, not what you were targeting that was being processed.
The fix I showed works perfect.
P.S.
Statics are handled above where LandTarget is in HarvestTarget.cs..