|
||
|
|||||||
| Custom Script Release Archive This is a pre-script database archive of what our users had released. |
|
|
Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Forum Novice
|
I am posting this in the custom section (even though its really a stock script mod mainly) simply because it doesnt really seem the stock script mod forum gets much view overall.
This the Radiation system for creatures such as the Snow Elemental, Pheonix, etc. This system is an addition to BaseCreature for the most part, and uses simple overrides within any mobile class. This means no reused code over and over, within multiple creature scripts. The overrides for any Creature script that can be used are as follows: Code:
public override bool HasAura{ get{ return true; } }
public override double AuraDamageScalar{ get{ return (0.04); } }
public override int AuraMinDamage{ get{ return 10; } }
public override int AuraMaxDamage{ get{ return 15; } }
public override double AuraMinDelay{ get{ return 4.0; } }
public override double AuraMaxDelay{ get{ return 9.0; } }
public override int AuraDamageMsg{ get{ return 0; } }
public override string CustomAuraMessage{ get{ return "no strings attached"; } }
public override int AuraRange{ get{ return 2; } }
public override int AuraPhysicalDamage{ get{ return 0; } }
public override int AuraFireDamage{ get{ return 0; } }
public override int AuraColdDamage{ get{ return 0; } }
public override int AuraPoisonDamage{ get{ return 0; } }
public override int AuraEnergyDamage{ get{ return 0; } }
public override int AuraEffectSound{ get{ return GetAngerSound(); } }
Secondly, important is the AuraDamageMsg override, wich requires the int cliloc # that will be shown, when damage is done. This s also customizable for you to set your own text message on damage. To do that, use Code:
public override string CustomAuraMessage{ get{ return "no strings attached"; } }
for instance..Code:
public override string CustomAuraMessage{ get{ return "The intence Stink is killing you!"; } }
The Creatures will damage a player or tames animal every 4-9 seconds (stratics said 5-10, but we verified its a bit quicker now) and will also retarget to the Mobile it damaged. The Time frame that is used to determin when it damaged, and when it can damage next is handled in the BaseCreature or PlayerMobile that it damages, rather than the Snow Elemental (or whatever) itself, this way it can actually damage multiple Mobiles that might be surrounding it, rather than damage one, and wait to damage somthing again. Included are Default distro RunUO 1.0.0 scripts with the modifications made, the mobile scripts that use this system (snow & ice elly, Ife fiend, phoenix, fire gargoyle, and lava serpent) as well as a text doc. for the mods made and where, for you to make the changes manually. I dont think I left anything out, so here you go.. and enjoy ![]() *Edit, forgot the install.txt Last edited by Dian; 02-21-2006 at 04:05 AM. |
|
|
|
|
#3 (permalink) |
|
Join Date: Oct 2002
Age: 23
Posts: 4,689
|
I would make a few changes to this system. I would not use a NextAura ON the victim, because if you notice on OSI, when you take two snow elementals, they will BOTH hurt you with their aura. This means that you would need to use an ArrayList to keep the names of the people who are under the aura effect and then use a timer to remove them from the arraylist. And then you would put a NextAura onto the actual monster that has the aura so that you don't have to keep looping through mobiles every OnThink (VERY laggy, especially in congested areas with alot of players).
Also I would fancy that there is no damage scalar like there is with the breath, and this is because the aura's damage would be able to kill people after two or three hits if the mobile was strong/large enough. The reason the breath is scaled is because its a mass attack, this aura is a mass defense and has a primary purpose of unhiding the mobile. Last edited by XxSP1DERxX; 02-21-2006 at 01:54 PM. |
|
|
|
|
#4 (permalink) |
|
Forum Novice
|
The Damage scalar is commented out, unless someone wants to use it, and default in the package uses the damage Min/Max settings straight out, with no scaler. I did that so it could be customizable easily.
I agree somewhat with the aray list, I will see what can be done there glad you liked it... |
|
|
|
|
#5 (permalink) | |
|
Join Date: Oct 2002
Age: 23
Posts: 4,689
|
Quote:
The way that would work is similar to this Code:
public abstract class BaseAura
{
...
}
public abstract class ElementalAura : BaseAura
{
...
}
public class IceAura : ElementalAura
{
...
public static Aura Arura = new IceAura();
public override double MinDelay{ get{ return 4.0; } }
public override double MaxDelay{ get{ return 9.0; } }
...
}
Code:
public class BaseCreature
{
...
public virtual bool HasAura{ get{ return Aura != null; } }
public virtual Aura Aura{ get{ return null; } }
...
}
public class SnowElemental : BaseCreature
{
...
public override Aura Aura{ get{ return IceAura.Aura; } }
...
}
Last edited by XxSP1DERxX; 02-22-2006 at 03:58 AM. |
|
|
|
|
|
#6 (permalink) |
|
Forum Expert
Join Date: Jul 2005
Age: 31
Posts: 410
|
if i was to use this one for basecreature........since i used the other modifications for each those like phoenix and all.........., well my question is:
since i used that will i have to go back into those scripts and take out all my modifications to those, in order for this to work with the basecreature script? |
|
|
|
|
#8 (permalink) |
|
Forum Expert
Join Date: Jul 2005
Age: 31
Posts: 410
|
thats what i kinda thought and hoped i was wrong though but oh well i may take the time to do this later on thanks for sharing this mod though......its kewl so far to go along with all the other things, alot of it is stuff you have shared with the community, keep up the good work, hopes ill be able to share some scripts soon, im getting there slowly learning more and more from seeing stuff others have did already.
![]() |
|
|
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|