fix: Add properties for crafting ranged weapons with colored logs (#2222)
This commit is contained in:
parent
55d653d752
commit
4209f7ea16
1 changed files with 103 additions and 0 deletions
|
|
@ -4,6 +4,7 @@ using ModernUO.Serialization;
|
||||||
using Server.Mobiles;
|
using Server.Mobiles;
|
||||||
using Server.Network;
|
using Server.Network;
|
||||||
using Server.Spells;
|
using Server.Spells;
|
||||||
|
using Server.Engines.Craft;
|
||||||
|
|
||||||
namespace Server.Items
|
namespace Server.Items
|
||||||
{
|
{
|
||||||
|
|
@ -214,5 +215,107 @@ namespace Server.Items
|
||||||
attacker.MovingEffect(defender, EffectID, 18, 1, false, false);
|
attacker.MovingEffect(defender, EffectID, 18, 1, false, false);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override int OnCraft(
|
||||||
|
int quality,
|
||||||
|
bool makersMark,
|
||||||
|
Mobile from,
|
||||||
|
CraftSystem craftSystem,
|
||||||
|
Type typeRes,
|
||||||
|
BaseTool tool,
|
||||||
|
CraftItem craftItem,
|
||||||
|
int resHue
|
||||||
|
)
|
||||||
|
{
|
||||||
|
var result = base.OnCraft(quality, makersMark, from, craftSystem, typeRes, tool, craftItem, resHue);
|
||||||
|
if (Core.ML)
|
||||||
|
{
|
||||||
|
ApplyWoodBonuses(typeRes);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ApplyWoodBonuses(Type resource)
|
||||||
|
{
|
||||||
|
var craftResource = CraftResources.GetFromType(resource);
|
||||||
|
|
||||||
|
switch (craftResource)
|
||||||
|
{
|
||||||
|
case CraftResource.OakWood:
|
||||||
|
{
|
||||||
|
Attributes.Luck += 40;
|
||||||
|
Attributes.WeaponDamage += 5;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case CraftResource.AshWood:
|
||||||
|
{
|
||||||
|
Attributes.WeaponSpeed += 10;
|
||||||
|
WeaponAttributes.LowerStatReq += 20;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case CraftResource.YewWood:
|
||||||
|
{
|
||||||
|
Attributes.AttackChance += 5;
|
||||||
|
Attributes.WeaponDamage += 10;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case CraftResource.Bloodwood:
|
||||||
|
{
|
||||||
|
Attributes.RegenHits += 2;
|
||||||
|
WeaponAttributes.HitLeechHits += 16;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case CraftResource.Heartwood:
|
||||||
|
{
|
||||||
|
ApplyHeartwoodBonus();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case CraftResource.Frostwood:
|
||||||
|
{
|
||||||
|
AosElementDamages.Physical = 60;
|
||||||
|
AosElementDamages.Cold = 40;
|
||||||
|
Attributes.WeaponDamage += 12;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ApplyHeartwoodBonus()
|
||||||
|
{
|
||||||
|
switch (Utility.Random(6))
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
{
|
||||||
|
Attributes.Luck += 40;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 1:
|
||||||
|
{
|
||||||
|
WeaponAttributes.DurabilityBonus += 50;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 2:
|
||||||
|
{
|
||||||
|
WeaponAttributes.LowerStatReq += 20;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 3:
|
||||||
|
{
|
||||||
|
Attributes.WeaponSpeed += 10;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 4:
|
||||||
|
{
|
||||||
|
Attributes.AttackChance += 5;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 5:
|
||||||
|
{
|
||||||
|
WeaponAttributes.HitLeechHits += 10;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue