Darnit.

I do have one more idea though. Once when I switched out pack ids when already opened, it seemed almost like it were resolution related. So I'm going to try that when I get home. Will let you know if I come up with anything.

Otherwise, is it possible to assign 2 layers (with 2 different item ids) for one item? If so, we could use an invisible backpack for the default Id.
 
This is the best I've been able to do so far

Using Voxpire's CustomContainer, you can take a gump and have it act like a container...should let you use any custom gump you add

as for the drag and drop issue, I played around with it for a while and finally figured out how to get an item to go to location 0, 0
played around with it some more, and I can't figure how to get it to recognize the actual item location (might have to do with the fact that it's not a real container) so I instead used a random.minmax for the location of an item

so, the pro is you can make a custom container, the con is that items placed in it (for now) will go to a random location in the container.

i edited and uploaded Voxpire's custom container and hugewoodenchest scripts to work without vitanex installed. you will need to install both scripts for the woodenchest to work. the chest is itemid from high seas though, so if you're client version isn't up to date you'll want to change that.

Code:
public override bool OnDragDropInto(Mobile from, Item item, Point3D p)
		{
			if (!CheckHold(from, item, true, true))
			{
				return false;
			}
			
			 int xa = Utility.RandomMinMax(90, 460);
			 int ya = Utility.RandomMinMax(90, 280);
			
				PlaceItemIn(this, xa, ya, item);
				
				from.SendSound(GetDroppedSound(item), GetWorldLocation());
				return true;
		}
		
		public virtual void PlaceItemIn(Container parent, int xa, int ya, Item item)
		{
			
			parent.AddItem(item);
			
			item.Location = new Point3D(xa, ya, 0);
			
			return;
		}
 

Attachments

  • HugeWoodenChest.cs
    2.1 KB · Views: 12
  • CustomerContainer.cs
    2.2 KB · Views: 12
Great. I'll have fun playing with these tomorrow! But I just got home and am too tired so just decided to pop in here and check before bed.

Thanks again!
 
@zerodowned I'll be in and out most of the day (Vet), but wanted to give you what I have tried thus far so that you could have a chance at playing with this while I'm away.

I'm attaching a copy of intrface.def with one real edit on lines:
Code:
line 377 rect 0 0 200 200
line 378 background 50422 -110 -180 0

Also, I went through the original intrface.def and picked out the things that I thought most effected the backpack and noted them: Backpack_interface.def

I'm also including ServUO's Data>containers.cfg just in case we have to change it in there in addition to the intrface.def and in addition to the script itself.

Hope this helps; let me know if you find anything while I'm gone.

PS Don't forget that you have to rename them from .txt
 

Attachments

  • Backpack_interface.def.txt
    2.8 KB · Views: 6
  • containers.cs.txt.cs
    1.6 KB · Views: 5
  • Intrface.def.txt
    405 KB · Views: 5
i haven't been able to trydue to being at work. i did try making changes to equipconv.def yesterday and it didn't do anything.
maybe it needs to be "recompiled" to read the changes? I don't know, I don't know anything about coding programs.
maybe run the patcher and check it run a full scan ? doubt that would do anything
 
I recompile my Servuo files everytime and I'm not using a patchable client, but you can try it. Can't hurt. This sucks tho. I was really hoping to have stumbled upon a secret weapon. lol.
 
Then, you just use a simple script (see below) to add the item to the game:

Code:
using System;
using Server;

namespace Server.Items
{
	public class Pack : Backpack
	{	
		
		[Constructable]
		public Pack ()
		{
			Weight = 2.0;
			Name = "Pack";
			ItemID = 50403;  	
		}

		public  Pack ( Serial serial ) : base( serial )
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 );
		}
		
		public override void Deserialize(GenericReader reader)
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
}

What I need help with is making that item into a container???

Here's my input regarding the container code:



Can you help bringing this home?

Try Setting the Layer in your constructable:

Code:
		[Constructable]
		public Pack ()
		{
			Weight = 2.0;
			Name = "Pack";
			Layer = Layer.Backpack;
            	ItemID = 50403;			
		}

roadmaster
 
Last edited:
@Safera Also if I understand correctly what you asked earlier about deleting your Pack, the simplist way to delete your Pack and Get a New one is the following.

Code:
// code to remove default backpack and create a new one.
Container pack = this.Backpack;
if ( pack != null )
    pack.Delete();
pack = new StrongBackpack();// create the new pack
pack.Movable = false;
AddItem( pack );// add new pack to the mobile.

Although I was able to find my Old ItemDeletionTrap from 2004 which contains code to move items to your bankbox or to simply delete them, if you would still like to look at it I can put them up for you to download and/or look at if you still wanted to look at it.


roadmaster
 
Last edited:
So this is the recent patch number -I mean has this gone into effect? Only options I can think of is on the paperdoll to open for macro-text hue all that stuff to change :)
 
Oh No!! It was only once the first patch up, now it's every time we use the client? This will be a huge pain for sure :/
 
There is a way if you look in your uo folder look for interface.cfg in there you will find elements of the paperdoll and gump ids just change those around haven't tried adding new ones in yet
 
Back