zero-feeling wrote...
so, first of all, is there a way to post scripts in boxes yet?
No but using [ code][ /code] helps with the formatting.
first, the beams don't shut off, not sure why, i'm not a very talented scripter...
Try this:
effect eVFX = GetFirstEffect(OBJECT_SELF);
while(GetIsEffectValid(eVFX))
{
if(GetEffectType(eVFX) == EFFECT_TYPE_BEAM) RemoveEffect(OBJECT_SELF, eVFX);
eVFX = GetNextEffect(OBJECT_SELF);
}
second, i'd like the pillar in this script to re-appear after the dragon has been killed, about 2 minutes after...
For this one, place a Waypoint where you want the pillar to spawn, then in the dragon's OnDeath script make the one of the other objects in the area (like "rune_black") execute a script.
So, do something like this in the dragon's OnDeath:
object oRune = GetNearestObjectByTag("rune_black");
SetLocalInt(oRune, "DoOnce", 1);
ExecuteScript("spawnpillar", oRune);
Then the script "spawnpillar" should look something like this:
void main()
{
if(GetLocalInt(OBJECT_SELF, "DoOnce") == 1)
{
DeleteLocalInt(oRune, "DoOnce");
DelayCommand(120.0, ExecuteScript("spawnpillar", OBJECT_SELF));
}
else
{
CreateObject(OBJECT_TYPE_PLACEABLE, "rune_pillar", GetLocation(GetNearestObjectByTag("PillarWP")));
}
}
third, i'd like this script to only be able to work once (one instance of the dragon being summoned at a time)
Just check to see if the dragon is valid at teh top of the first script (the one that calls the other two scripts).
if(GetIsObjectValid(GetNearestObjectByTag("DragonTag"))) return;
and finally, i'd like the script to only run again 15 minutes after the dragon as been killed, meanning the summoning runes are useless until 15 minutes after the dragon has been killed.
It looks like you are doing that already by making the runes usable state to FALSE then delaying the command 900 seconds (15 minutes) then setting usable to TRUE. Is this not working the way it's intended?
-420
Modifié par 420, 09 août 2010 - 04:35 .