Overwrite

Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
Unstable Kitsune
2023-11-28 23:20:26 -05:00
parent 3cd54811de
commit b918192e4e
11608 changed files with 2644205 additions and 47 deletions

View File

@@ -0,0 +1,90 @@
using System;
using Server;
using Server.Items;
using System.Collections.Generic;
namespace Server.Mobiles.MannequinProperty
{
public abstract class AosArmorAttr : ValuedProperty
{
public abstract AosArmorAttribute Attribute { get; }
public double GetPropertyValue(Item item)
{
if (item is BaseArmor)
{
return ((BaseArmor)item).ArmorAttributes[Attribute];
}
if (item is BaseClothing)
{
return ((BaseClothing)item).ClothingAttributes[Attribute];
}
return 0;
}
public override bool Matches(Item item)
{
double total = GetPropertyValue(item);
if (!IsBoolen)
Value = GetPropertyValue(item);
if (total != 0)
return true;
return false;
}
public override bool Matches(List<Item> items)
{
double total = 0;
items.ForEach(x => total += GetPropertyValue(x));
if (!IsBoolen)
Value = total;
if (total != 0)
{
return true;
}
return false;
}
}
public class ArmorSelfRepairProperty : AosArmorAttr
{
public override Catalog Catalog { get { return Catalog.None; } }
public override int LabelNumber { get { return 1079709; } } // Self Repair
public override bool IsSpriteGraph { get { return true; } }
public override int SpriteW { get { return 0; } }
public override int SpriteH { get { return 300; } }
public override AosArmorAttribute Attribute { get { return AosArmorAttribute.SelfRepair; } }
}
public class ArmorReactiveParalyzeProperty : AosArmorAttr
{
public override Catalog Catalog { get { return Catalog.Combat1; } }
public override bool IsBoolen { get { return true; } }
public override int LabelNumber { get { return 1154660; } } // Reactive Paralyze
public override int Description { get { return 1152400; } } // This property provides a chance to cast a paralyze spell on an opponent. The paralyze effect is similar to the magery fifth circle spell paralyze. When the wielder effectively parries an attackers blow there is a chance that the attacker will be affected by the paralyze effect. This property can be found on two handed weapons and shields.
public override AosArmorAttribute Attribute { get { return AosArmorAttribute.ReactiveParalyze; } }
public override int Hue { get { return 0x5E5D; } }
public override int SpriteW { get { return 270; } }
public override int SpriteH { get { return 120; } }
}
public class SoulChargeProperty : AosArmorAttr
{
public override Catalog Catalog { get { return Catalog.Casting; } }
public override int LabelNumber { get { return 1116536; } } // Soul Charge
public override int Description { get { return 1152382; } } // This property converts a percentage of the damage inflicted to a player into mana replenishment. This effect can only be triggered once every 40 seconds. This property is only found on shields.
public override AosArmorAttribute Attribute { get { return AosArmorAttribute.SoulCharge; } }
public override int Hue { get { return 0x1FF; } }
public override int SpriteW { get { return 240; } }
public override int SpriteH { get { return 60; } }
}
}