kn4tseb
Master
Posts: 392
Likes Given: 45
Likes Received: 10 in 10 posts
Joined: May 2014
Reputation: 0
|
FEATURES AND A FEW QUESTIONS
hey mates, as you see, its me again and i have a few questions
Is it possible to get the position/location where a rune is marked or when recalling where i am going?
Second.... would be possible to set the recently RW DAM itemdef as the damage of the weapon and not resphysical?
and for last, is it possible to make a trigger that fires when a player (as gargoyle) is about to fly?
i think new SKF Variables lets as make very efficent triggers but im not so sure how could i do one for this flying event.
Thank you very much!!!
|
|
08-18-2014 12:20 PM |
|
|
Extreme
Grandmaster Poster
Posts: 1,141
Likes Given: 217
Likes Received: 90 in 77 posts
Joined: May 2012
Reputation: 20
SphereCommunity
|
|
08-18-2014 01:14 PM |
|
|
XuN
Sphere Developer
Posts: 852
Likes Given: 102
Likes Received: 156 in 119 posts
Joined: Jul 2013
Reputation: 30
|
RE: FEATURES AND A FEW QUESTIONS
|
|
08-18-2014 04:48 PM |
|
|
kn4tseb
Master
Posts: 392
Likes Given: 45
Likes Received: 10 in 10 posts
Joined: May 2014
Reputation: 0
|
RE: FEATURES AND A FEW QUESTIONS
im Under linux XuN xdd havent tried.. will try todays rev...
about the rune... already done and worked great but i still need assistance..
i need a way to check distances between source and target when player recalls or travel with spells, might be spellbooks, wands, scrolls or runes. dunno if use @spellcast or @spellsucess
seems to be that spellsuccess doesnt get the <ARGO> as @spellcast do it for <ACT>
this is what i have to check runes
Code:
on=@SpellCast //
IF (<ISPLAYER>)
IF (<ARGN1> == 32)
REF1=<ACT>
IF (<REF1.ISITEM>)
IF (<REF1.TYPE> == T_RUNE)
REF2 = <findid.i_dis_checker_mem>
REF2.TIMER = <R7,10>
REF2.TAG0.POS = <REF1.MOREP>
ENDIF
ENDIF
ENDIF
ENDIF
first time working with spell triggers
any way to short it out?
(This post was last modified: 08-19-2014 01:39 AM by kn4tseb.)
|
|
08-19-2014 01:21 AM |
|
|
Coruja
Sphere Developer
Posts: 987
Likes Given: 5
Likes Received: 226 in 187 posts
Joined: Jul 2012
Reputation: 7
Dimension Shard
|
RE: FEATURES AND A FEW QUESTIONS
I never checked how this gargoyle "fly" hability works, but as I know it's a mount (pet) replacement
maybe a great suggestion to customize the fly/land behavior is a new trigger @GargoyleFly, working like @Mount
I found this code on RunUO and it seems to have some interesting things to use on this trigger (hitpoints check, bola ball recovery, etc)
Code:
public override void ToggleFlying()
{
if (Race != Race.Gargoyle)
{
return;
}
else if (Flying)
{
Freeze(TimeSpan.FromSeconds(1));
Animate(61, 10, 1, true, false, 0);
Flying = false;
BuffInfo.RemoveBuff(this, BuffIcon.Fly);
SendMessage("You have landed.");
BaseMount.Dismount(this);
return;
}
BlockMountType type = MountBlockReason;
if (!Alive)
{
SendLocalizedMessage(1113082); // You may not fly while dead.
}
else if (IsBodyMod && !(BodyMod == 666 || BodyMod == 667))
{
SendLocalizedMessage(1112453); // You can't fly in your current form!
}
else if (type != BlockMountType.None)
{
switch (type)
{
case BlockMountType.Dazed:
SendLocalizedMessage(1112457);
break; // You are still too dazed to fly.
case BlockMountType.BolaRecovery:
SendLocalizedMessage(1112455);
break; // You cannot fly while recovering from a bola throw.
case BlockMountType.DismountRecovery:
SendLocalizedMessage(1112456);
break; // You cannot fly while recovering from a dismount maneuver.
}
return;
}
else if (Hits < 25) // TODO confirm
{
SendLocalizedMessage(1112454); // You must heal before flying.
}
else
{
if (!Flying)
{
// No message?
if (Spell is FlySpell)
{
FlySpell spell = (FlySpell)Spell;
spell.Stop();
}
new FlySpell(this).Cast();
}
else
{
Flying = false;
BuffInfo.RemoveBuff(this, BuffIcon.Fly);
}
}
}
|
|
08-19-2014 01:42 AM |
|
The following 1 user Likes Coruja's post:1 user Likes Coruja's post
kn4tseb (08-19-2014)
|
kn4tseb
Master
Posts: 392
Likes Given: 45
Likes Received: 10 in 10 posts
Joined: May 2014
Reputation: 0
|
RE: FEATURES AND A FEW QUESTIONS
about RECALLING i think doing thisi get all possible ways to check old distances with new ones... any suggestion?
Code:
on=@SpellSuccess
IF (<ARGN1> == 32) // recall spell
REF1=<ARGO>
REF2=<UID>
FORCONTTYPE T_RUNE
IF <REF2.P> == <MOREP>
REF3 = <UID> // if more than one rune is contained, REF3 would be any of them and not the specified in the condition that it has to be the one with the char position.
ENDIF
ENDFOR
IF <FINDID.I_DIS_CHECKER_MEM>
REF4 = <FINDID.I_DIS_CHECKER_MEM.UID>
REF4.TIMER = <R7,10>
REF4.TAG0.POS = <REF3.MOREP>
ENDIF
ENDIF
Darn.... not possible to store a single RUNE uid when more than one is contained and the condition matches ...
>.<
IS IT POSSIBLE AN ACT THAT MAKES A REFERENCE TO THE ITEM TARGETED?? LIKE in spellcast?????
i cant use spellcast because i only wanted to work when spell succeeds.. and in spellsuccess i dont have an act :<
help please
(This post was last modified: 08-19-2014 04:36 AM by kn4tseb.)
|
|
08-19-2014 03:02 AM |
|
|