diff options
Diffstat (limited to 'world/map/conf/magic-procedures.sex')
-rw-r--r-- | world/map/conf/magic-procedures.sex | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/world/map/conf/magic-procedures.sex b/world/map/conf/magic-procedures.sex index e9ec7aae..e510ec3f 100644 --- a/world/map/conf/magic-procedures.sex +++ b/world/map/conf/magic-procedures.sex @@ -280,26 +280,35 @@ (PROCEDURE install_melee_spell (charges base_delay attack_animation) (CALL install_attack_spell charges base_delay 1 attack_animation)) -(PROCEDURE fightclub_check (healing) +(PROCEDURE fightclub_check (onSelf onTarget) (IF (&& (is_in (location caster) (@+ (@ "009-7.gat" (script_int caster "$@fightclub_x1") (script_int caster "$@fightclub_y1")) - (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) - (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")))) + (+ (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) 1) + (+ (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")) 1))) (|| (== (script_int caster "$@Duel_NoMagic") 1) (!= (script_int caster "@Duel_Fighter") 1))) (ABORT)) - (IF (== healing 1) + (IF (== onSelf 1) (IF (&& (== (substr (location caster) 2 5) "009-7") (not (is_in (location caster) (@+ (@ "009-7.gat" (script_int caster "$@fightclub_x1") (script_int caster "$@fightclub_y1")) - (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) - (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")))))) + (+ (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) 1) + (+ (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")) 1))))) + (ABORT))) + (IF (== onTarget 1) + (IF (&& + (!= (pc target) caster) + (is_in (location (pc target)) + (@+ + (@ "009-7.gat" (script_int caster "$@fightclub_x1") (script_int caster "$@fightclub_y1")) + (+ (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) 1) + (+ (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")) 1)))) (ABORT)))) (PROCEDURE summon_spell (mob_id count delay lifetime control_level school) @@ -312,8 +321,8 @@ (is_in (location caster) (@+ (@ "009-7.gat" (- (script_int caster "$@fightclub_x1") 2) (- (script_int caster "$@fightclub_y1") 2)) - (+ (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) 2) - (+ (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")) 2))) 1 2)) + (+ (- (script_int caster "$@fightclub_x2") (script_int caster "$@fightclub_x1")) 5) + (+ (- (script_int caster "$@fightclub_y2") (script_int caster "$@fightclub_y1")) 5))) 1 2)) caster mob_id (if_then_else |