a few generics and misc code cleanup
slight tweaks/opt
This commit is contained in:
parent
83190372f8
commit
566de1c2cf
20 changed files with 125 additions and 164 deletions
|
|
@ -4706,11 +4706,11 @@ namespace Server.Mobiles
|
|||
private DateTime m_NextHourlyCheck;
|
||||
|
||||
protected override void OnTick()
|
||||
{
|
||||
bool hasHourElapsed = ( DateTime.Now >= m_NextHourlyCheck );
|
||||
|
||||
if ( hasHourElapsed )
|
||||
{
|
||||
if ( DateTime.Now >= m_NextHourlyCheck )
|
||||
m_NextHourlyCheck = DateTime.Now + TimeSpan.FromHours( 1.0 );
|
||||
else
|
||||
return;
|
||||
|
||||
List<BaseCreature> toRelease = new List<BaseCreature>();
|
||||
|
||||
|
|
@ -4751,9 +4751,7 @@ namespace Server.Mobiles
|
|||
|
||||
if ( c.Map != Map.Internal )
|
||||
{
|
||||
// Every hour all pets lose 10% of max loyalty.
|
||||
if ( hasHourElapsed )
|
||||
c.Loyalty -= (BaseCreature.MaxLoyalty / 10);
|
||||
c.Loyalty -= (BaseCreature.MaxLoyalty / 10);
|
||||
|
||||
if( c.Loyalty < (BaseCreature.MaxLoyalty / 10) )
|
||||
{
|
||||
|
|
@ -4767,7 +4765,7 @@ namespace Server.Mobiles
|
|||
}
|
||||
|
||||
// added lines to check if a wild creature in a house region has to be removed or not
|
||||
if ( (!c.Controlled && ( c.Region.IsPartOf( typeof( HouseRegion ) ) && c.CanBeDamaged()) || (hasHourElapsed && c.RemoveIfUntamed && c.Spawner == null )) )
|
||||
if ( (!c.Controlled && ( c.Region.IsPartOf( typeof( HouseRegion ) ) && c.CanBeDamaged()) || ( c.RemoveIfUntamed && c.Spawner == null )) )
|
||||
{
|
||||
c.RemoveStep++;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,27 +1,25 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Targeting;
|
||||
using Server.Mobiles;
|
||||
using System.Collections;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Targets
|
||||
{
|
||||
public class AIControlMobileTarget : Target
|
||||
{
|
||||
private ArrayList m_List;
|
||||
private List<BaseAI> m_List;
|
||||
private OrderType m_Order;
|
||||
|
||||
public OrderType Order
|
||||
{
|
||||
get
|
||||
{
|
||||
public OrderType Order {
|
||||
get {
|
||||
return m_Order;
|
||||
}
|
||||
}
|
||||
|
||||
public AIControlMobileTarget( BaseAI ai, OrderType order ) : base( -1, false, ( order == OrderType.Attack ? TargetFlags.Harmful : TargetFlags.None ) )
|
||||
{
|
||||
m_List = new ArrayList();
|
||||
m_List = new List<BaseAI>();
|
||||
m_Order = order;
|
||||
|
||||
AddAI( ai );
|
||||
|
|
@ -35,10 +33,10 @@ namespace Server.Targets
|
|||
|
||||
protected override void OnTarget( Mobile from, object o )
|
||||
{
|
||||
if ( o is Mobile )
|
||||
{
|
||||
if ( o is Mobile ) {
|
||||
Mobile m = (Mobile)o;
|
||||
for ( int i = 0; i < m_List.Count; ++i )
|
||||
((BaseAI)m_List[i]).EndPickTarget( from, (Mobile)o, m_Order );
|
||||
m_List[i].EndPickTarget( from, m, m_Order );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,9 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Engines.Craft;
|
||||
using Mat = Server.Engines.BulkOrders.BulkMaterialType;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Engines.Craft;
|
||||
using Server.Items;
|
||||
using Mat = Server.Engines.BulkOrders.BulkMaterialType;
|
||||
|
||||
namespace Server.Engines.BulkOrders
|
||||
{
|
||||
|
|
@ -132,7 +131,7 @@ namespace Server.Engines.BulkOrders
|
|||
|
||||
CraftSystem system = DefBlacksmithy.CraftSystem;
|
||||
|
||||
ArrayList validEntries = new ArrayList();
|
||||
List<SmallBulkEntry> validEntries = new List<SmallBulkEntry>();
|
||||
|
||||
for ( int i = 0; i < entries.Length; ++i )
|
||||
{
|
||||
|
|
@ -156,7 +155,7 @@ namespace Server.Engines.BulkOrders
|
|||
|
||||
if ( validEntries.Count > 0 )
|
||||
{
|
||||
SmallBulkEntry entry = (SmallBulkEntry)validEntries[Utility.Random( validEntries.Count )];
|
||||
SmallBulkEntry entry = validEntries[Utility.Random( validEntries.Count )];
|
||||
return new SmallSmithBOD( entry, material, amountMax, reqExceptional );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Engines.Craft;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Engines.Craft;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Engines.BulkOrders
|
||||
{
|
||||
|
|
@ -124,7 +123,7 @@ namespace Server.Engines.BulkOrders
|
|||
|
||||
CraftSystem system = DefTailoring.CraftSystem;
|
||||
|
||||
ArrayList validEntries = new ArrayList();
|
||||
List<SmallBulkEntry> validEntries = new List<SmallBulkEntry>();
|
||||
|
||||
for ( int i = 0; i < entries.Length; ++i )
|
||||
{
|
||||
|
|
@ -148,7 +147,7 @@ namespace Server.Engines.BulkOrders
|
|||
|
||||
if ( validEntries.Count > 0 )
|
||||
{
|
||||
SmallBulkEntry entry = (SmallBulkEntry)validEntries[Utility.Random( validEntries.Count )];
|
||||
SmallBulkEntry entry = validEntries[Utility.Random( validEntries.Count )];
|
||||
return new SmallTailorBOD( entry, material, amountMax, reqExceptional );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Server.Engines.Harvest
|
||||
{
|
||||
|
|
@ -53,9 +53,9 @@ namespace Server.Engines.Harvest
|
|||
public HarvestVein[] Veins{ get{ return m_Veins; } set{ m_Veins = value; } }
|
||||
public bool RaceBonus { get { return m_RaceBonus; } set { m_RaceBonus = value; } }
|
||||
|
||||
private Hashtable m_BanksByMap;
|
||||
private Dictionary<Map, Dictionary<Point2D, HarvestBank>> m_BanksByMap;
|
||||
|
||||
public Hashtable Banks{ get{ return m_BanksByMap; } set{ m_BanksByMap = value; } }
|
||||
public Dictionary<Map, Dictionary<Point2D, HarvestBank>> Banks{ get{ return m_BanksByMap; } set{ m_BanksByMap = value; } }
|
||||
|
||||
public void SendMessageTo( Mobile from, object message )
|
||||
{
|
||||
|
|
@ -73,13 +73,15 @@ namespace Server.Engines.Harvest
|
|||
x /= m_BankWidth;
|
||||
y /= m_BankHeight;
|
||||
|
||||
Hashtable banks = (Hashtable)m_BanksByMap[map];
|
||||
Dictionary<Point2D, HarvestBank> banks = null;
|
||||
m_BanksByMap.TryGetValue( map, out banks );
|
||||
|
||||
if ( banks == null )
|
||||
m_BanksByMap[map] = banks = new Hashtable();
|
||||
m_BanksByMap[map] = banks = new Dictionary<Point2D, HarvestBank>();
|
||||
|
||||
Point2D key = new Point2D( x, y );
|
||||
HarvestBank bank = (HarvestBank)banks[key];
|
||||
HarvestBank bank = null;
|
||||
banks.TryGetValue( key, out bank );
|
||||
|
||||
if ( bank == null )
|
||||
banks[key] = bank = new HarvestBank( this, GetVeinAt( map, x, y ) );
|
||||
|
|
@ -108,7 +110,7 @@ namespace Server.Engines.Harvest
|
|||
|
||||
public HarvestDefinition()
|
||||
{
|
||||
m_BanksByMap = new Hashtable();
|
||||
m_BanksByMap = new Dictionary<Map, Dictionary<Point2D, HarvestBank>>();
|
||||
}
|
||||
|
||||
public bool Validate( int tileID )
|
||||
|
|
|
|||
|
|
@ -166,13 +166,13 @@ namespace Server.PathAlgorithms.FastAStar
|
|||
int newCost = m_Nodes[bestNode].cost + 1;
|
||||
int newTotal = newCost + Heuristic( newNode % AreaSize, (newNode / AreaSize) % AreaSize, m_Nodes[newNode].z );
|
||||
|
||||
if ( !wasTouched || m_Nodes[newNode].total > newTotal )
|
||||
if ( m_Nodes[newNode].total > newTotal )
|
||||
{
|
||||
m_Nodes[newNode].parent = bestNode;
|
||||
m_Nodes[newNode].cost = newCost;
|
||||
m_Nodes[newNode].total = newTotal;
|
||||
|
||||
if ( !wasTouched || !m_OnOpen[newNode] )
|
||||
if ( !m_OnOpen[newNode] )
|
||||
{
|
||||
AddToChain( newNode );
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue