Full Version : XmlSiege updated to version 0.5 beta
xmlspawner >>XMLSiege Releases and Updates >>XmlSiege updated to version 0.5 beta
<< Prev | Next >>
ArteGordon- 04-06-2006
updated to version 0.5 beta
from the changelog
New to version 0.5
updated 4/6/06
- added the AutoRepairTime property to XmlSiege attachments that allow them to automatically restore destroyed objects back to their fully repaired state after some period of time. This can be used under conditions where you would like to have players use the siege capability to destroy structures, but not leave them permanently destroyed. For example having permanently locked dungeon doors or wall barriers that can only be passed by breaking them down.
Giving it a value of zero disables auto repair. The default is no auto repair.
Auto repair only occurs when an object is destroyed (hits == 0), not when it is just damaged.
- added a few static functions that can be used by external scripts to access siege damage information. GetHits and GetHitsMax will return a value of -1 if the target does not support siege damage. Refer to them like

CODE
int hits = XmlSiege.GetHits(targetobject);

CODE
public static int GetHits(object target) public static int GetHitsMax(object target) public static void Attack(Mobile from, object target, int firedamage, int physicaldamage)

- added support for handheld siege weapons. Any equippable weapon can be given the ability to apply siege damage to a target. This is accomplished with the new HandSiegeAttack attachment that lets the object that it is attached to do damage to a target that has the XmlSiege attachment on it.
For example, by adding this to a weapon script such as Mace.cs

CODE
public override void OnDoubleClick(Mobile from) { HandSiegeAttack.SelectTarget(from, this); }

you can siege attack a target object by double clicking on the mace and targeting the object. In this case, you dont actually have to worry about adding the HandSiegeAttack attachment to the weapon - it will be done automatically in the SelectTarget routine if it hasnt already been added.
The speed of attack and damage done can be modified by changing the value of these constants in HandSiegeAttack.cs

CODE
private const double DamageScaleFactor = 0.5; // multiplier of weapon min/max damage used to calculate siege damage. private const double BaseWeaponDelay = 9.0; // base delay in seconds between attacks. Actual delay will be reduced by weapon speed.

Anything that can be attacked with the other siege weapons can also be hand attacked.
Always knock before entering... or was that knock down..
I asked them not to park here
I got your key right here.