- Kasa of the Raj-in is now blessable with a Clothing Bless Deed
(http://www.uodemise.com/discussion/showthread.php?t=134491) - People who use Hiding skill will be put in peace mode (http://www.uodemise.com/discussion/showthread.php?t=133532) - Various fixes about plantgrowing: --> Seeds no longer have range or LOS checks. --> When clicking on the water button on the plant gump it attempts to find water in your backpack first and if it doesn't it will give you a target instead. --> Changed some old SVN messages that were using strings to use cliloc data instead. (http://www.uodemise.com/discussion/showthread.php?t=119004) - Player vendors will say the name of the buyer (http://www.uodemise.com/discussion/showthread.php?t=118363) - Books in bookshelves are now accessible to be read. They can't be taken away unless by using Stealing Skill (http://www.uodemise.com/discussion/showthread.php?t=120213) - Paragon metal chests now are turnable by using the Interior Decorator (http://www.uodemise.com/discussion/showthread.php?t=133863) - Runebooks can't be picked up if opened (http://www.uodemise.com/discussion/showthread.php?t=133723) - Runebook default location now is displayed as a red dot (http://www.uodemise.com/discussion/showthread.php?t=133914)
This commit is contained in:
parent
5cf819b644
commit
c98aa748b6
16 changed files with 168 additions and 24 deletions
|
|
@ -52,8 +52,14 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
Mobile from = sender.Mobile;
|
||||
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant || !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant )
|
||||
return;
|
||||
|
||||
if ( info.ButtonID == 3 && !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3E9, 500446 ); // That is too far away.
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !m_Plant.IsUsableBy( from ) )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -226,8 +226,14 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
Mobile from = sender.Mobile;
|
||||
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant || !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant )
|
||||
return;
|
||||
|
||||
if ( ( ( info.ButtonID >= 6 && info.ButtonID <= 10 ) || info.ButtonID == 12 ) && !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3E9, 500446 ); // That is too far away.
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !m_Plant.IsUsableBy( from ) )
|
||||
{
|
||||
|
|
@ -286,8 +292,30 @@ namespace Server.Engines.Plants
|
|||
}
|
||||
case 6: // Water
|
||||
{
|
||||
from.Target = new PlantPourTarget( m_Plant );
|
||||
from.SendLocalizedMessage( 1060808, "#" + m_Plant.GetLocalizedPlantStatus().ToString() ); // Target the container you wish to use to water the ~1_val~.
|
||||
Item[] item = from.Backpack.FindItemsByType( typeof( BaseBeverage ) );
|
||||
|
||||
bool foundUsableWater = false;
|
||||
|
||||
if ( item != null && item.Length > 0 )
|
||||
{
|
||||
for ( int i = 0; i < item.Length; ++i )
|
||||
{
|
||||
BaseBeverage beverage = (BaseBeverage)item[i];
|
||||
|
||||
if ( !beverage.IsEmpty && beverage.Pourable && beverage.Content == BeverageType.Water )
|
||||
{
|
||||
foundUsableWater = true;
|
||||
m_Plant.Pour( from, beverage );
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( !foundUsableWater )
|
||||
{
|
||||
from.Target = new PlantPourTarget( m_Plant );
|
||||
from.SendLocalizedMessage( 1060808, "#" + m_Plant.GetLocalizedPlantStatus().ToString() ); // Target the container you wish to use to water the ~1_val~.
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ using Server.Gumps;
|
|||
using Server.Items;
|
||||
using Server.Multis;
|
||||
using Server.ContextMenus;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Engines.Plants
|
||||
{
|
||||
|
|
@ -212,8 +213,10 @@ namespace Server.Engines.Plants
|
|||
return 1060812; // plant
|
||||
else if ( m_PlantStatus >= PlantStatus.Sapling )
|
||||
return 1023305; // sapling
|
||||
else
|
||||
else if ( m_PlantStatus >= PlantStatus.Seed )
|
||||
return 1060810; // seed
|
||||
else
|
||||
return 1026951; // dirt
|
||||
}
|
||||
|
||||
private void Update()
|
||||
|
|
@ -341,6 +344,14 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
if ( m_PlantStatus >= PlantStatus.DecorativePlant )
|
||||
return;
|
||||
|
||||
Point3D loc = this.GetWorldLocation();
|
||||
|
||||
if ( !from.InLOS( loc ) || !from.InRange( loc, 2 ) )
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3E9, 1019045 ); // I can't reach that.
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !IsUsableBy( from ) )
|
||||
{
|
||||
|
|
@ -363,12 +374,7 @@ namespace Server.Engines.Plants
|
|||
}
|
||||
else if ( m_PlantStatus != PlantStatus.BowlOfDirt )
|
||||
{
|
||||
if ( m_PlantStatus >= PlantStatus.Plant )
|
||||
LabelTo( from, "This bowl of dirt already has a plant in it!" );
|
||||
else if ( m_PlantStatus >= PlantStatus.Sapling )
|
||||
LabelTo( from, "This bowl of dirt already has a sapling in it!" );
|
||||
else
|
||||
LabelTo( from, "This bowl of dirt already has a seed in it!" );
|
||||
from.SendLocalizedMessage( 1080389, "#" + GetLocalizedPlantStatus().ToString() ); // This bowl of dirt already has a ~1_val~ in it!
|
||||
}
|
||||
else if ( m_PlantSystem.Water < 2 )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -116,9 +116,15 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
Mobile from = sender.Mobile;
|
||||
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant || m_Plant.PlantStatus == PlantStatus.BowlOfDirt || !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus >= PlantStatus.DecorativePlant || m_Plant.PlantStatus == PlantStatus.BowlOfDirt )
|
||||
return;
|
||||
|
||||
if ( ( info.ButtonID >= 6 && info.ButtonID <= 8 ) && !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3E9, 500446 ); // That is too far away.
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !m_Plant.IsUsableBy( from ) )
|
||||
{
|
||||
m_Plant.LabelTo( from, 1061856 ); // You must have the item in your backpack or locked down in order to use it.
|
||||
|
|
|
|||
|
|
@ -140,9 +140,10 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
private Seed m_Seed;
|
||||
|
||||
public InternalTarget( Seed seed ) : base( 3, false, TargetFlags.None )
|
||||
public InternalTarget( Seed seed ) : base( -1, false, TargetFlags.None )
|
||||
{
|
||||
m_Seed = seed;
|
||||
CheckLOS = false;
|
||||
}
|
||||
|
||||
protected override void OnTarget( Mobile from, object targeted )
|
||||
|
|
|
|||
|
|
@ -41,8 +41,14 @@ namespace Server.Engines.Plants
|
|||
{
|
||||
Mobile from = sender.Mobile;
|
||||
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus != PlantStatus.Stage9 || !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
if ( info.ButtonID == 0 || m_Plant.Deleted || m_Plant.PlantStatus != PlantStatus.Stage9 )
|
||||
return;
|
||||
|
||||
if ( info.ButtonID == 3 && !from.InRange( m_Plant.GetWorldLocation(), 3 ) )
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3E9, 500446 ); // That is too far away.
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !m_Plant.IsUsableBy( from ) )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -56,8 +56,6 @@ namespace Server.Items
|
|||
public override int BasePoisonResistance { get { return 17; } }
|
||||
public override int BaseEnergyResistance { get { return 17; } }
|
||||
|
||||
public override bool CanBeBlessed { get { return false; } }
|
||||
|
||||
public override int InitMinHits { get { return 255; } }
|
||||
public override int InitMaxHits { get { return 255; } }
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue