SphereCommunity
No walking caster npc when attack - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: No walking caster npc when attack (/Thread-No-walking-caster-npc-when-attack)

Pages: 1 2


No walking caster npc when attack - xfolder - 03-25-2012 03:26 AM

My npc caster follow the target. I want them to stay at same position when they cast. How to do it?


RE: No walking caster npc when attack - Khaos - 03-25-2012 05:03 AM

At the same position when they cast 'x' spell or the entire time they are spawned? I assume the former. If it is the former you can set their flags to be frozen during spellcast possibly... and remove when the spell is done. I am sure there are other options that I am not thinking of at the moment since I am a bit preoccupied.


RE: No walking caster npc when attack - CptObvious - 03-25-2012 05:18 AM

I would try to flag the npc as frozen, removing the flag as he finishes casting. It's a quick solution and even if the npc will appear as [paralyzed] I think it will not harm the "good looking" of the game.


E comunque ste cose puoi chiedermele direttamente su skype niubbone : D


RE: No walking caster npc when attack - xfolder - 03-25-2012 06:52 AM

My casters when they're paralyzed don't cast Big Grin


RE: No walking caster npc when attack - CptObvious - 03-25-2012 08:14 PM

Try setting stamina = 0


RE: No walking caster npc when attack - Khaos - 03-25-2012 11:56 PM

Code:
on=@spellcast
local.stam=<src.stam>
stam=0
cast <argn1>
stam=<local.stam>
return

This isn't tested, but might work? That is based on CapObvious.

If that doesn't work I would do...

Code:
on=@spelleffect
tag.spellcast.stam=<src.stam>
serv.newitem=i_memory_caster_freeze, ,<uid>   // Bounce the item to caster
new.timer=<argn3>
stam=0
return 0    // Might not need this.

[itemdef i_memory_caster_freeze]
id=i_memory
name=freeze caster memory

on=@create
timer=-1   // This should get updated by the spellcast trigger

on=@timer
cont.stam=<tag.spellcast.stam>
cont.tag.spellcast.stam=
remove
return 1

Again, nothing to test in front of me. Ideas though Big Grin


RE: No walking caster npc when attack - sco - 03-26-2012 08:10 PM

I'd do it something like this way:

Code:
on=@spellcast
tag.nomovetill = <eval <serv.spell.<argn1>.casttime>+<serv.time>>
cast <argn1>

tag.nomovetill stops movement on every mobile until the timestamp in this tag


RE: No walking caster npc when attack - darksun84 - 03-26-2012 11:05 PM

In the sphere.ini you should try to set this flag

// MAGICF_FREEZEONCAST = 0x0000020 // No movement whilst casting

MagicFlags=020


RE: No walking caster npc when attack - CptObvious - 03-27-2012 02:35 AM

I tried with the stamina solution: well, it works BUT there is the automatic stats regeneration ruining everything xD

I tried the nomovetill too and it seems to work! (<eval <<serv.time> + 100> for a 10 second time "froz")




EDIT:
Hey this nomovetill really is a surprise! Thank you mr. SCO for the discover!


RE: No walking caster npc when attack - Vendetta - 03-27-2012 04:13 AM

speedmode=4 STOP
speedmode=0 NORMAL
speedmode=1 WALK & RUN AS MOUNTED (even if is not mounted)
speedmode=2 ALWAYS WALK
speedmode=3 ALWAYS RUN (unmounted speed)