RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

New Wall And Floor Tiles

mitty

Sorceror
It says on the server screen...

Run UO 1.0.0. build 36918 (Imessed up on my typing was looking at wrong thing LOL)
 

bryant

Sorceror
i cant get the 5 ml doors working

the latest 2 doors work fine with all the code above done but for the life of me i cant seem to get the 5 original ml doors working im running 1.0 fully patched and the doors simply wont work if anyone has a working script for the 1.0 ml doors please reply id really like the doors active.
 

mitty

Sorceror
You are correct Thistle...

I typed the wrong thing in was reading something at the time and trying to answer quickly lol. It is 1.0.0, Build 36918 :eek:
 

FingersMcSteal

Sorceror
SVN 104 sounds like a RunUO2.0 version to me, this was for RunUO1.0.

I think this stuffs getting added to RunUO2.0 but i only run a v1.0 server.
 

mitty

Sorceror
Fingers, any idea why the Elven doors still dont work??

I posted way back in this thread what I had and I'm fully patched up and got all the edits in. Everything works great!! TY All! But.... the Elven doors wont'stay after commiting to the design?? You hit the *Customize this house* tab again and Poof! they appear again? Any Insight to this prob?
 

F3nDeR

Sorceror
What this is about!?

I follow step by step every modif to do... but now getting this
CS0534: Line 28: 'Server.Multis.HouseFoundation' does not implement inherite
abstract member 'Server.Multis.BaseHouse.BaseBanLocation.get' Error Message and i have no clue why!?

Here the script...

using System;
using System.IO;
using System.Threading;
using System.Collections;
using Server;
using Server.Gumps;
using Server.Items;
using Server.Mobiles;
using Server.Network;
using Server.Targeting;
using Server.Commands;

namespace Server.Multis
{
public enum FoundationType
{
Stone,
DarkWood,
LightWood,
Dungeon,
Brick,
ElvenGrey,
ElvenNatural,
Crystal,
Shadow
}

public class HouseFoundation : BaseHouse
{

With the buggy line 28 but i dont know how to fix it... i really appreciate some hint on this!?
 

mitty

Sorceror
what version are you running ?

This looks like the HouseFoundation.cs for 2.0 Need to know so we can help. :D
 

F3nDeR

Sorceror
Got the point! ;)

Problem fixed! Now juste having a kind of bug with the door.... the doors won't open!?

By the way im using Runuo 2.0 and really enjoy it :D
 

bryant

Sorceror
well i dont think the se doors work because

all the people here havent placed a response on getting them working so im pretty sure they dont ive check around other threads nothing that even explains how to get them to work. i giving up on it hehe
 

FingersMcSteal

Sorceror
Fully patch the client, open InsideUO and check the door tiles have the details in there, check the HouseFoundation.cs has the correct ItemID's for the doors and that should be it, thats all i've had to do to make them work.

Its a v1.0 shard update, if your doing it for V2.0 good luck :)
 

mitty

Sorceror
fingers might I ask...

Did you just add the ml doors like you did the crystal and shadow? posted here in this thread with the proper id numbers? (same method) and then lower in the script with the return true statements? If so I think I can get this/them to work.
 

Malaperth

Wanderer
Actually, it would be nice if someone could post a complete FAQ for 1.0 and 2.0 on this when someone gets it completely figured out because I am feeling quite stupid trying to keep up here :)
 

bryant

Sorceror
the doors arnt even listed in my foundation

can u pleace show a portion of script that it shows the doors thxs
 

FingersMcSteal

Sorceror
This is from my HouseFoundation.cs...

Code:
public void AddFixtures( Mobile from, MultiTileEntry[] list )
		{
			if ( m_Fixtures == null )
				m_Fixtures = new ArrayList();

			uint keyValue = 0;

			for ( int i = 0; i < list.Length; ++i )
			{
				MultiTileEntry mte = list[i];
				int itemID = mte.m_ItemID & 0x3FFF;

				if ( itemID >= 0x181D && itemID < 0x1829 )
				{
					HouseTeleporter tp = new HouseTeleporter( itemID );

					AddFixture( tp, mte );
				}
				else
				{
					BaseDoor door = null;

                    // MINE
                    //crystal and shadow
                    if (itemID >= 0x367B && itemID < 0x369B)
                    {
                        int type = (itemID - 0x367B) / 16;
                        DoorFacing facing = (DoorFacing)(((itemID - 0x367B) / 2) % 8);

                        switch (type)
                        {
                            case 0: door = new GenericHouseDoor(facing, 0x367B, 0xEC, 0xF3); break;
                            case 1: door = new GenericHouseDoor(facing, 0x368B, 0xEC, 0xF3); break;
                        }
                    }
                    // add else to if on next line

There just normal doors with the ID's using the crystal stuff, thats it, no edits at all in my doors.cs file.
 

bryant

Sorceror
yes thats for the 2 new doors

the doors that everyone are talking about are the 5 doors prior to that i got it working ill post later today i gota run late for work!!
 

mitty

Sorceror
Here's the final piece to make it work!

Thanks to everyone here especially Fingers, and now Bryant (for the final piece, this will make the Elven doors functional and work properly.(You will need to download or copy from the svn at least the 2.0 HouseFoundation.cs, for the first part....) Oh yeh major Kudo's to Asyre, without him none of would have it!

First step is to add the ML (elven door info from 2.0 HouseFoundation.cs into your 1.0 HouseFoundation.cs, after the SE Door info, posted here:

Code:
[COLOR=red]}[/COLOR]
[COLOR=red]else if (itemID == 0x2D46)///ML Doors Begin[/COLOR]
[COLOR=red]{[/COLOR]
[COLOR=red]door = new GenericHouseDoor(DoorFacing.NorthCW, 0x2D46, 0xEA, 0xF1, false);[/COLOR]
[COLOR=red]}[/COLOR]
[COLOR=red]else if (itemID == 0x2D48 || itemID == 0x2FE2)[/COLOR]
[COLOR=red]{[/COLOR]
[COLOR=red]door = new GenericHouseDoor(DoorFacing.SouthCCW, itemID, 0xEA, 0xF1, false);[/COLOR]
[COLOR=red]}[/COLOR]
[COLOR=red]else if (itemID >= 0x2D63 && itemID < 0x2D70)[/COLOR]
[COLOR=red]{[/COLOR]
[COLOR=red]int mod = (itemID - 0x2D63) / 2 % 2;[/COLOR]
[COLOR=red]DoorFacing facing = ((mod == 0) ? DoorFacing.SouthCCW : DoorFacing.WestCCW);[/COLOR]
[COLOR=red]int type = (itemID - 0x2D63) / 4;[/COLOR]
[COLOR=red]door = new GenericHouseDoor(facing, 0x2D63 + 4 * type + mod * 2, 0xEA, 0xF1, false);[/COLOR]
[COLOR=red]}[/COLOR]
[COLOR=red]else if (itemID == 0x2FE4 || itemID == 0x31AE)[/COLOR]
[COLOR=red]{[/COLOR]
[COLOR=red]door = new GenericHouseDoor(DoorFacing.WestCCW, itemID, 0xEA, 0xF1, false);[/COLOR]
[COLOR=red]}[/COLOR]
[COLOR=red]else if (itemID >= 0x319C && itemID < 0x31AE)[/COLOR]
[COLOR=red]{[/COLOR]
[COLOR=red]//special case for 0x31aa <-> 0x31a8 (a9)[/COLOR]
[COLOR=red]int mod = (itemID - 0x319C) / 2 % 2;[/COLOR]
[COLOR=red]bool specialCase = (itemID == 0x31AA || itemID == 0x31A8);[/COLOR]
[COLOR=red]DoorFacing facing;[/COLOR]
[COLOR=red]if (itemID == 0x31AA || itemID == 0x31A8)[/COLOR]
[COLOR=red]facing = ((mod == 0) ? DoorFacing.NorthCW : DoorFacing.EastCW);[/COLOR]
[COLOR=red]else[/COLOR]
[COLOR=red]facing = ((mod == 0) ? DoorFacing.EastCW : DoorFacing.NorthCW);[/COLOR]
[COLOR=red]int type = (itemID - 0x319C) / 4;[/COLOR]
[COLOR=red]door = new GenericHouseDoor(facing, 0x319C + 4 * type + mod * 2, 0xEA, 0xF1, false);[/COLOR]
[COLOR=red]}[/COLOR]

Step 2 is the key step and you need to add this code in the HouseDoors.cs, in the GenericDoor section, which I put in red text...

Code:
public class GenericHouseDoor : BaseHouseDoor
{
[Constructable]
public GenericHouseDoor( DoorFacing facing, int baseItemID, int openedSound, int closedSound ) : base( facing, baseItemID + (2 * (int)facing), baseItemID + 1 + (2 * (int)facing), openedSound, closedSound, BaseDoor.GetOffset( facing ) )
{
}
[COLOR=red][Constructable][/COLOR]
[COLOR=red]public GenericHouseDoor(DoorFacing facing, int baseItemID, int openedSound, int closedSound, bool autoAdjust)[/COLOR]
[COLOR=red]: base(facing, baseItemID + (autoAdjust ? (2 * (int)facing) : 0), baseItemID + 1 + (autoAdjust ? (2 * (int)facing) : 0), openedSound, closedSound, BaseDoor.GetOffset(facing))[/COLOR]
[COLOR=red]{[/COLOR]
}
public GenericHouseDoor( Serial serial ) : base( serial )
{
}

Thank you everyone who contributed to this fix, and I'm posting so everyone can have the answer to this problem. (Remember this is for 1.0 shards).
 

Roseanne

Wanderer
Elven doors still not working

Thanks for all the additional script info to make the new shadow/ice stuff work. The only thing that didn't work was the last post on how to make the elven doors work. I added the procedures but when I rebooted, they still didn't work...

Any suggestions?
 

mitty

Sorceror
Sorry was tired forgot this...

Step 3.....You need to go down further in the HouseFoundation.cs and find this and make sure the part in red is added....(ML Door Id's).


Code:
public static bool IsFixture( int itemID )
{
itemID &= 0x3FFF;
if (itemID >= 0x367B && itemID < 0x369B)
return true;
else if ( itemID >= 0x675 && itemID < 0x6F5 )
return true;
else if ( itemID >= 0x314 && itemID < 0x364 )
return true;
else if ( itemID >= 0x824 && itemID < 0x834 )
return true;
else if ( itemID >= 0x839 && itemID < 0x849 )
return true;
else if ( itemID >= 0x84C && itemID < 0x85C )
return true;
else if ( itemID >= 0x866 && itemID < 0x876 )
return true;
else if ( itemID >= 0xE8 && itemID < 0xF8 )
return true;
else if ( itemID >= 0x1FED && itemID < 0x1FFD )
return true;
else if ( itemID >= 0x181D && itemID < 0x1829 )
return true;
// UnrealUO - Samurai Empire doors
else if ( itemID >= 0x2a05 && itemID < 0x2a0d )
return true;
else if ( itemID >= 0x2a0d && itemID < 0x2a15 )
return true;
else if ( itemID >= 0x2a15 && itemID < 0x2a1d )
return true;
else if ( itemID >= 0x241f && itemID < 0x2425 ) 
return true;
else if( itemID >= 0x319C && itemID < 0x31B0 )
return true;
// Start of ML Doors
else if( itemID == 0x2D46 ||itemID == 0x2D48 || itemID == 0x2FE2 || itemID == 0x2FE4 ) //ML doors begin here. Note funkyness.
return true;
else if( itemID >= 0x2D63 && itemID < 0x2D70 )
return true;
else if( itemID >= 0x319C && itemID < 0x31AF )
return true;
 
Top