SphereCommunity
Guards on hit. - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: General Help (/Forum-General-Help)
+--- Thread: Guards on hit. (/Thread-Guards-on-hit)



Guards on hit. - Lazarus - 12-13-2012 01:54 PM

Hi! Im using the default guard system.

Now, I want the OSI system but with something like Sphere. If you hit someone, the other can attack you or call guards when you see the other gray. That's cool, but I want to do that if a PK it's in the bank of Britain [Guarded] if him not attack ANYONE he never will be killed by guards.

If a pk target someone with a spell or DCLICK in WAR someone him will got killed by guards. [HITTRY] [SPELLCAST]

If a normal player or gray player attacks, then the default system will works [Stay in the loop at the spellhit or gethit]


any ideas?

Thanks!


RE: Guards on hit. - darksun84 - 12-14-2012 01:48 AM

PHP Code:
[EVENTS e_testguard]
ON=@CallGuards
IF (!<src.memoryfindtype memory_war_targ>)   ||  (!<src.memoryfindtype memory_iaggressor>)
   return 
1  //guards doesn't spawn
endif 

Well it's just a test,
I tried it with a vendor and a monster npc, it prevent the calling of the guards when the monster/pk doesn't have any war targ.
Another flag(i_memoryaggressor) have to be added because if the pk use a pet to attack, the guard will kill the pet and not the pk

It doesn't cover all, like if a wandering guard find the monster/pk it's very possible the guard will killm him and if the blue character retaliate against the pk it's possible that the guard will kill even him (caused by memory_iaggressor).

So at the end the main problem is to find the correct flags to check .


RE: Guards on hit. - Rizz - 12-15-2012 12:43 AM

I use this method:

Code:
if (<memoryfindtype.memory_harmedby.link.uid>==<REF1.uid>)
    memoryfindtype.memory_harmedby.remove
else
    return 1
endif

REF1 is SRC.

I think we need to find the better solution.