• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • ✅ The POLL for Hive's Texturing Contest #33 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!

Illusion Strike

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
Creates illusions around the target enemy unit.Each illusion fires an illusional wave to the center of the circle.
Level 1 : Max damage 450
Level 2 : Max damage 675
Level 3 : Max damage 900
Little fixed...still fixing....

Keywords:
illusion, strike, blademaster, fast, evasion
Contents

Illusion Strike (Map)

Reviews
02:13, 1st Dec 2009 TriggerHappy: The coding is horrible. You could have used a loop and it leaks a lot. The spell is too simple to be approved anyways.

Moderator

M

Moderator

02:13, 1st Dec 2009
TriggerHappy:

The coding is horrible. You could have used a loop and it leaks a lot.

The spell is too simple to be approved anyways.
 
Level 22
Joined
Nov 14, 2008
Messages
3,256
but why isn't good the targeted unit of ability being cast as traget point?

it creates a point that takes RAM memory, then when you use it again it is with 99.999% chance that it wont be on the same spot and then it overwrites itself, creating a new point and take more memory. Then you will have loads of points that just got wasted and takes space on the memory, that's why you set it to a point, use it and then remove it afterwards.
 
Level 18
Joined
Feb 28, 2009
Messages
1,970
Look, create variable - location (POINT (this is a name)). First set it to something like
  • Set POINT = Poisition of (There_Can_Be_Your_Unit_In_Variable)
Point is your variable

Then you use it into action, like
  • Unit - Create 1 your_unit at POINT facting 0 degrees
And then to remove leak of location you simply do
  • Custom script: call RemoveLocation (udg_POINT)
 
Level 18
Joined
Feb 28, 2009
Messages
1,970
Aw, I opened the map and I think you should use math and loops instead of spamming triggers...

EDIT: Ok, I fixed it a little bit, but I didn`t have time to make it MUI.
Here`s script

  • Illusion Strike
    • Events
      • Unit - A unit Begins ...
    • Conditions
      • (Ability being cast) Equal to Illusion Strike
    • Actions
      • Set Illusion_Target[1] = (Target unit of ability being cast)
      • Set Illusion_Caster[(Player number of (Owner of (Casting unit)))] = (Casting unit)
      • Set dgr = 0.00
      • Set point_1 = (Position of Illusion_Target[1])
      • For each (Integer A) from 1 to 8, do (Actions)
        • Loop - Actions
          • Set point_2 = (point_1 offset by 300.00 towards dgr degrees)
          • Unit - Create 1 IllusionDummy for (Owner of Illusion_Caster[(Player number of (Owner of (Casting unit)))]) at point_2 facing Default orientacja budynku degrees
          • Unit - Make (Last created unit) face Illusion_Target[1] over 0.00 seconds
          • Unit - Add a 2.00 second General expiration timer to (Last created unit)
          • Unit - Add Strike to (Last created unit)
          • Unit - Set level of Strike for (Last created unit) to (Level of Illusion Strike for Illusion_Caster[1])
          • Unit - Order (Last created unit) to Undead - ... (Position of Illusion_Target[1])
          • Set dgr = (dgr + 45.00)
          • Custom script: call RemoveLocation (udg_point_2)
      • Custom script: call RemoveLocation (udg_point_1)
Variables I used are
location - point_1
location - pont_2
real - dgr
 
Last edited:
Aw, I opened the map and I think you should use math and loops instead of spamming triggers...

EDIT: Ok, I fixed it a little bit, but I didn`t have time to make it MUI.
Here`s script

  • Illusion Strike
    • Events
      • Unit - A unit Begins ...
    • Conditions
      • (Ability being cast) Equal to Illusion Strike
    • Actions
      • Set Illusion_Target[1] = (Target unit of ability being cast)
      • Set Illusion_Caster[(Player number of (Owner of (Casting unit)))] = (Casting unit)
      • Set dgr = 0.00
      • Set point_1 = (Position of Illusion_Target[1])
      • For each (Integer A) from 1 to 8, do (Actions)
        • Loop - Actions
          • Set point_2 = (point_1 offset by 300.00 towards dgr degrees)
          • Unit - Create 1 IllusionDummy for (Owner of Illusion_Caster[(Player number of (Owner of (Casting unit)))]) at point_2 facing Default orientacja budynku degrees
          • Unit - Make (Last created unit) face Illusion_Target[1] over 0.00 seconds
          • Unit - Add a 2.00 second General expiration timer to (Last created unit)
          • Unit - Add Strike to (Last created unit)
          • Unit - Set level of Strike for (Last created unit) to (Level of Illusion Strike for Illusion_Caster[1])
          • Unit - Order (Last created unit) to Undead - ... (Position of Illusion_Target[1])
          • Set dgr = (dgr + 45.00)
          • Custom script: call RemoveLocation (udg_point_2)
      • Custom script: call RemoveLocation (udg_point_1)
Variables I used are
location - point_1
location - pont_2
real - dgr

LOL
  • Unit - Order (Last created unit) to Undead - ... (Position of Illusion_Target[1])
this also leak :)
 
Top