Spellpack Phantom Warrior

Exide

I am amazingly focused right now!
Reaction score
448
This is my second spellpack.
It's nothing fancy, but I felt I had to share my ideas somehow. So here it is. :p

JASS: Yes.
MUI: Yes, hopefully! :p
Leaks: Hope not. :rolleyes:


Phantom Strike

Code:
The Phantom Warrior moves in a sub-dimension, in order to appear next to the target, stunning them for a while, and dealing large damage in a small radius!

Code:
Code:
Phantom Strike
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Phantom Strike 
    Actions
        Set PhanStrikeLoc1 = (Position of (Triggering unit))
        Special Effect - Create a special effect at PhanStrikeLoc1 using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
        Special Effect - Destroy (Last created special effect)
        Custom script:   call RemoveLocation(udg_PhanStrikeLoc1)
        Set PhanStrikeLoc2 = (Position of (Target unit of ability being cast))
        Animation - Change (Triggering unit)'s vertex coloring to (70.00%, 70.00%, 70.00%) with 50.00% transparency
        Unit - Make (Triggering unit) Invulnerable
        Unit - Move (Triggering unit) instantly to PhanStrikeLoc2
        Set PhanStrikeLoc1 = (Position of (Triggering unit))
        Special Effect - Create a special effect at PhanStrikeLoc1 using Abilities\Spells\NightElf\Blink\BlinkTarget.mdl
        Environment - Create a 1.00 second Normal ripple deformation at PhanStrikeLoc2 with starting radius 300.00, ending radius 500.00, and depth 35.00, using 0.25 second ripples spaced 25.00 apart
        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 1) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 300.00 at PhanStrikeLoc1, dealing 180.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 2) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 400.00 at PhanStrikeLoc1, dealing 270.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 3) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 500.00 at PhanStrikeLoc1, dealing 360.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
        Wait 0.02 seconds
        Unit - Make (Triggering unit) Vulnerable
        Special Effect - Destroy (Last created special effect)
        Custom script:   call RemoveLocation(udg_PhanStrikeLoc1)
        Custom script:   call RemoveLocation(udg_PhanStrikeLoc2)
        Wait 2.00 seconds
        Animation - Change (Triggering unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency

Screenshot:
PWScreenie1.jpg



Calculated Strike

Code:
The Phantom Warrior starts searching for weak spots in it's enemies armor, every 4th strike will become devestating!

Code:
Code:
Calculated Strike
    Events
        Unit - A unit Is attacked
    Conditions
        ((Attacking unit) has buff Calculated Strike (Buff) ) Equal to True
    Actions
        Set CalcStrikeCountMUI[(Custom value of (Attacking unit))] = (CalcStrikeCountMUI[(Custom value of (Attacking unit))] + 1)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                CalcStrikeCountMUI[(Custom value of (Attacking unit))] Equal to 4
            Then - Actions
                Unit - Add Calc Spellbook  to (Attacking unit)
                Player - Disable Calc Spellbook  for (Owner of (Attacking unit))
                Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to (Level of Calculated Strike  for (Attacking unit))
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                CalcStrikeCountMUI[(Custom value of (Attacking unit))] Equal to 6
            Then - Actions
                Player - Enable Calc Spellbook  for (Owner of (Attacking unit))
                Unit - Remove Calculated Strike (Crit hit) from (Attacking unit)
                Unit - Remove Calc Spellbook  from (Attacking unit)
                Set CalcStrikeCountMUI[(Custom value of (Attacking unit))] = 1
            Else - Actions

Screenshot:
PWScreenie3.jpg



Banish

Code:
The Phantom Warrior banishes target enemy unit into another dimension for a few seconds, dealing terrible damage to it!

Code:
Code:
Banish
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Banish 
    Actions
        Wait 0.20 seconds
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Life of (Target unit of ability being cast)) Greater than or equal to 1.00
            Then - Actions
                Set BanishTarget = (Target unit of ability being cast)
                Set BanishLoc = (Position of (Target unit of ability being cast))
                Unit - Pause BanishTarget
                Unit - Hide BanishTarget
                For each (Integer A) from 1 to 5, do (Actions)
                    Loop - Actions
                        Special Effect - Create a special effect at BanishLoc using Abilities\Spells\NightElf\FaerieDragonInvis\FaerieDragon_Invis.mdl
                        Wait 0.20 seconds
                        Special Effect - Destroy (Last created special effect)
                Wait (Real((Level of Banish  for (Triggering unit)))) seconds
                Unit - Unhide BanishTarget
                Unit - Unpause BanishTarget
                Custom script:   call RemoveLocation(udg_BanishLoc)
            Else - Actions

Screenshot:
PWScreenie2.jpg



Time Stopper

Code:
The Phantom Warrior uses her greatest power, and stops time for all units in a huge area, except herself. She will be able to move freely during this time, without anyone noticing until it is too late!

Code:
Time Stopper
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Time Stopper 
    Actions
        Set TimeStopper = (Triggering unit)
        Set TimeStopperLoc = (Position of (Triggering unit))
        Set TimeStopperGroup = (Units within 1200.00 of TimeStopperLoc)
        Unit Group - Pick every unit in TimeStopperGroup and do (Unit - Pause (Picked unit))
        Unit - Unpause TimeStopper
        Game - Set time of day speed to 0.00% of the default speed
        Environment - Create a 4.00 second Normal ripple deformation at TimeStopperLoc with starting radius 200.00, ending radius 1300.00, and depth 50.00, using 1.00 second ripples spaced 40.00 apart
        Special Effect - Create a special effect at TimeStopperLoc using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
        Wait 1.00 seconds
        Special Effect - Destroy (Last created special effect)
        Wait 9.00 seconds
        Unit Group - Pick every unit in TimeStopperGroup and do (Unit - Unpause (Picked unit))
        Game - Set time of day speed to 100.00% of the default speed
        Custom script:   call RemoveLocation(udg_TimeStopperLoc)
        Custom script:   call DestroyGroup(udg_TimeStopperGroup)

Screenshot:
N/A. This ability was too difficult to get a proper Screenie of.

None of the Screenies were really good, I suggest you download the attached map, and check them out yourself.

I hope anyone likes these spells. :p
Enjoy.

LAST EDIT: Updated almost everything. Made the JASS-coded spells MUI, I believe, and slightly optimized some further. Updated the map to v1.2. I Also added a custom icon (BTNothing.blp, to better hide the spellbook - Calculated Strike.)
 

Attachments

  • [Spellpack] Phantom Warrior v1.2.w3x
    22.1 KB · Views: 560

0zaru

Learning vJASS ;)
Reaction score
60
Well I am going to test, but a fast watch to the code i notice this:

> Set CalcStrikeCount = 1
If it starts from 1, 4 will be 3 no ?
Musn't it be Set CalcStrikeCount = 0 ?

EDIT: Spells looks funny and nice :D

Some things anyway:
Code:
Actions
[COLOR="Red"]    If ((Level of (Ability being cast) for (Triggering unit)) Equal to 1) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 300.00 at PhanStrikeLoc1, dealing 180.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
    If ((Level of (Ability being cast) for (Triggering unit)) Equal to 2) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 400.00 at PhanStrikeLoc1, dealing 270.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
    If ((Level of (Ability being cast) for (Triggering unit)) Equal to 3) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 500.00 at PhanStrikeLoc1, dealing 360.00 damage of attack type Normal and damage type Normal) else do (Do nothing)[/COLOR]

All that can be simplified to this:
Code:
Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 500.00 at PhanStrikeLoc1, dealing (180.00 + (90.00 x (Real((Level of Phantom Strike  for (Triggering unit)))))) damage of attack type Normal and damage type Normal
Also that will not damage with full attack to the enemys.

// CalculatedStrike
Code:
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    If - Conditions
        CalcStrikeCount Equal to 4
    Then - Actions
 [COLOR="Red"]       If ((Level of Calculated Strike  for (Attacking unit)) Equal to 1) then do (Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to 1) else do (Do nothing)
        If ((Level of Calculated Strike  for (Attacking unit)) Equal to 2) then do (Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to 2) else do (Do nothing)
        If ((Level of Calculated Strike  for (Attacking unit)) Equal to 3) then do (Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to 3) else do (Do nothing)[/COLOR]

Same here... all that if then else can be done like this:
Code:
Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to (Level of Calculated Strike  for (Attacking unit))

//Banish
Code:
Unit - Set level of Calculated Strike (Crit hit) for (Attacking unit) to (Level of Calculated Strike  for (Attacking unit))
Code:
[COLOR="Red"]        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 1) then do (Wait 1.00 seconds) else do (Do nothing)
        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 2) then do (Wait 2.00 seconds) else do (Do nothing)
        If ((Level of (Ability being cast) for (Triggering unit)) Equal to 3) then do (Wait 3.00 seconds) else do (Do nothing)[/COLOR]

Same.. can be simplified to
Code:
Wait (1.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) seconds
Also will be nice if you can rename that ability or add some Editor suffix to indentificate it.

That's all i can see for now :p Maybe somethings more or less well :p
 

Exide

I am amazingly focused right now!
Reaction score
448
@Ozaru
Right you are, I doubt it matters though. :p

EDIT: Oh, and 'Set CalcStrikeCount = 1' has to do with the remove of calculated strike. If I set it to 0, it will take 5 strikes instead of 4. I'm a bit sleepy right now and don't know HOW it works. :p I'm just glad I made it work in the first place.. I guess I'll give you a real answer once I find out.

EDIT#2: Before anyone notices, I know setting time of day speed in the time stopper ability is really quite useless, I just felt like doing it. -Not that anyone will notice when actually runing the spell.
And if anyone tries the map, ESC gives back hp and mana, and typing '-test', sets hero level to 10. :p

*Bump*
Map updated, and attached to the first post.

I also find out why I am setting 'CalcStrikeCount = 1'. Because, erm.. If I don't, it doesn't work. :p
-Every 5th hit is a critical hit, every 6th removes the skill. I'm just happy it works. :D

Code:
Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 500.00 at PhanStrikeLoc1, dealing (180.00 + (90.00 x (Real((Level of Phantom Strike  for (Triggering unit)))))) damage of attack type Normal and damage type Normal

Wouldn't work very well, by the way. Because the radius is 300 at level 1, and grows to 400 and 500 at level 2 and 3. And I am much too tired to think about it right now. :p
 

Tinki3

Special Member
Reaction score
418
Phantom Strike

This..
Code:
Special Effect - Create a special effect at PhanStrikeLoc1 using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
Custom script:   call RemoveLocation(udg_PhanStrikeLoc1)
Wait 0.10 seconds
Special Effect - Destroy (Last created special effect)
Can simply be..
Code:
Special Effect - Create a special effect at PhanStrikeLoc1 using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
Special Effect - Destroy (Last created special effect)
Custom script:   call RemoveLocation(udg_PhanStrikeLoc1)
You don't need to wait to destroy the Special Effect; if it has a birth animation (which it does),
it vanishes itself after that animation is complete, which means it can be "destroyed" instantly after creation.
The same goes for the 2nd time you use that Special Effect - don't wait to destroy.

All of this...
Code:
If ((Level of (Ability being cast) for (Triggering unit)) Equal to 1) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 300.00 at PhanStrikeLoc1, dealing 180.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
If ((Level of (Ability being cast) for (Triggering unit)) Equal to 2) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 400.00 at PhanStrikeLoc1, dealing 270.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
If ((Level of (Ability being cast) for (Triggering unit)) Equal to 3) then do (Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius 500.00 at PhanStrikeLoc1, dealing 360.00 damage of attack type Normal and damage type Normal) else do (Do nothing)
Is very inefficient and messy. Could easily just be..
Code:
Set PhanStrikeDmgBase = 90.00
Set PhanStrikeAoEBase = 200.00
Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius (PhanStrikeAoEBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 100.00)) at PhanStrikeLoc1, dealing (PhanStrikeDmgBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 90.00)) damage of attack type Normal and damage type Normal
Simple formulas as to big lines of If-then-else statements.

Also one more thing - the spell looked "weak" when the caster blinked to the target,
you might want to add a 'slam' animation in or something like that.

Simplified trigger:
Code:
Phantom Strike GUI
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Phantom Strike 
    Actions
        Set PhanStrikeLoc1 = (Position of (Triggering unit))
        Set PhanStrikeLoc2 = (Position of (Target unit of ability being cast))
        Set PhanStrikeDmgBase = 90.00
        Set PhanStrikeAoEBase = 200.00
        Unit - Make (Triggering unit) Invulnerable
        Unit - Move (Triggering unit) instantly to PhanStrikeLoc2
        Animation - Change (Triggering unit)'s vertex coloring to (70.00%, 70.00%, 70.00%) with 50.00% transparency
        Special Effect - Create a special effect at PhanStrikeLoc1 using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
        Special Effect - Destroy (Last created special effect)
        Environment - Create a 1.00 second Normal ripple deformation at PhanStrikeLoc2 with starting radius 300.00, ending radius 500.00, and depth 35.00, using 0.25 second ripples spaced 25.00 apart
        Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius (PhanStrikeAoEBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 100.00)) at PhanStrikeLoc1, dealing (PhanStrikeDmgBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 90.00)) damage of attack type Normal and damage type Normal
        Wait 2.00 seconds
        Unit - Make (Triggering unit) Vulnerable
        Animation - Change (Triggering unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
        Custom script:   call RemoveLocation(udg_PhanStrikeLoc1)
        Custom script:   call RemoveLocation(udg_PhanStrikeLoc2)

Calculated Strike

This trigger ain't needed:
Code:
Calc Strike Turn on
    Events
        Unit - A unit Learns a skill
    Conditions
        (Learned Hero Skill) Equal to Calculated Strike 
    Actions
        Trigger - Turn on Calculated Strike GUI <gen>
        Trigger - Turn off (This trigger)
Delete it and have the other one initially on.
Reason why I say this is because the other trigger doesn't fire unless the attacking
unit has that buff anyway. So if you wait just to turn that trigger on it's a simple waste of time.

The other trigger looks to be fine IMO.

Banish

I don't know why this line is present even with a short wait..
Code:
(Life of BanishTarget) Greater than or equal to 1.00
The spell can't target dead units so that fact renders this line and the If-then-else statement pointless.

The 'BanishTarget' variable should be set before any waits are executed in the trigger,
as 'Target Unit of Ability being cast' is quite unstable.

Simplified trigger:
Code:
Banish GUI
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Banish 
    Actions
        Set BanishLoc = (Position of (Target unit of ability being cast))
        Unit - Pause BanishTarget
        Unit - Hide BanishTarget
        For each (Integer A) from 1 to 5, do (Actions)
            Loop - Actions
                Special Effect - Create a special effect at BanishLoc using Abilities\Spells\NightElf\FaerieDragonInvis\FaerieDragon_Invis.mdl
                Special Effect - Destroy (Last created special effect)
                Wait 0.20 seconds
        Wait (Real((Level of Banish  for (Triggering unit)))) seconds
        Unit - Unhide BanishTarget
        Unit - Unpause BanishTarget
        Custom script:   call RemoveLocation(udg_BanishLoc)

Time Stopper

Trigger looked fine apart from the fact that the picked units didn't fully freeze when the spell was casted.
You can "freeze" them by setting their animation speed to 0.

Final trigger:
Code:
Time Stopper GUI
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Time Stopper 
    Actions
        Set TimeStopper = (Triggering unit)
        Set TimeStopperLoc = (Position of (Triggering unit))
        Set TimeStopperGroup = (Units within 1200.00 of TimeStopperLoc)
        Unit Group - Pick every unit in TimeStopperGroup and do (Actions)
            Loop - Actions
                Unit - Pause (Picked unit)
                Animation - Change (Picked unit)'s animation speed to 0.00% of its original speed
        Game - Set time of day speed to 0.00% of the default speed
        Environment - Create a 4.00 second Normal ripple deformation at TimeStopperLoc with starting radius 200.00, ending radius 1300.00, and depth 50.00, using 1.00 second ripples spaced 40.00 apart
        Special Effect - Create a special effect at TimeStopperLoc using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
        Special Effect - Destroy (Last created special effect)
        Wait 10.00 seconds
        Unit Group - Pick every unit in TimeStopperGroup and do (Actions)
            Loop - Actions
                Unit - Unpause (Picked unit)
                Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
        Game - Set time of day speed to 100.00% of the default speed
        Custom script:   call RemoveLocation(udg_TimeStopperLoc)
        Custom script:   call DestroyGroup(udg_TimeStopperGroup)

I don't know why you added 'JASS versions' if they aren't efficient and are just simply mostly converted GUI, and yet not even MUI.
I'd remove the JASS versions if I were you, as they need a big overhaul.

Fix those things for approval :)
 

Exide

I am amazingly focused right now!
Reaction score
448
'Fixing' triggers usually ends up in them not working as they are supposed to.
This time was not an exception (as expected).

For example this awesome optimization:

Code:
Unit - Cause (Triggering unit) to damage circular area after 0.01 seconds of radius (200.00 + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 100.00)) at PhanStrikeLoc1, dealing (90.00 + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 90.00)) damage of attack type Normal and damage type Normal

You were right about the Special Effect, though. No need for the wait.
Some Special Effects, however, doesn't show at all, unless you have a wait before the destroy..


Code:
        Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius (PhanStrikeAoEBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 100.00)) at PhanStrikeLoc1, dealing (PhanStrikeDmgBase + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 90.00)) damage of attack type Normal and damage type Normal
        Wait 2.00 seconds
        Unit - Make (Triggering unit) Vulnerable

Waiting 2 seconds before making the Phantom Warrior vulnerable again isn't really fair. :p

EDIT: Updated the First post.

*BUMP*
Made lots of updates; JASS-Coded spells are now MUI (I believe), map is now version 1.2, more info in the First Post. :)
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
>>JASS-Coded spells are now MUI
If you are making it completely Jass then delete the GUI code and replace it to the Jass code.

Why don't you replace your Spoiler GUI code with the jass code before bumping?
 

Exide

I am amazingly focused right now!
Reaction score
448
Because I was hoping that Tinki3 would approve it, and there's no need to replace them.
 
A

Awestruck

Guest
aawww,

I have an ability in my map called "time freeze"... 3 guesses what it does -.-

Still haven't triggered it tho
 

Exide

I am amazingly focused right now!
Reaction score
448
Use mine. :p
 
A

Awestruck

Guest
I think I might <3

tho I'll feel a bit ninja

Didn't even know you could make a ripple effect with GUI when I read the code for your Time Stopper :D. I was never much of a spell-creator anyways (when it comes to the trigger part at least :)).
 

Tinki3

Special Member
Reaction score
418
Hmm.

The JASS code is messy and inefficient as is.
It's just simply converted GUI with added locals :p.
Not to mention some (if not all) of the original GUI triggers aren't even fixed yet :rolleyes:.
My advice would be to get rid of the JASS versions, and just fix the GUI ones.

...
 

Exide

I am amazingly focused right now!
Reaction score
448
I think AceHart once said (I might be wrong on who actually said it); 'Why fix what's not broken?'
The spells works as they are supposed to, and the JASS ones are MUI (I think? -Still didn't get a confirmation or this yet).

How are they inefficient? -Keep in mind that I am a student in Hero12341234's JASS classroom. :p

>It's just simply converted GUI with added locals
-and removed BJs.
 

Tinki3

Special Member
Reaction score
418
>I think AceHart once said; 'Why fix what's not broken?'

Sounds like it was said by Ace.
Here's my reply: why not?

>How are they inefficient?

Like I said, you've just converted the GUI triggers..
JASS:
    if ( GetUnitAbilityLevelSwapped(GetSpellAbilityId(), phanwarrior) == 1 ) then
        call UnitDamagePointLoc( GetTriggerUnit(), 0.01, 300.00, PhanStrikeLoc1, 180.00, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL )
    endif

    if ( GetUnitAbilityLevelSwapped(GetSpellAbilityId(), phanwarrior) == 2 ) then
        call UnitDamagePointLoc( GetTriggerUnit(), 0.01, 400.00, PhanStrikeLoc1, 270.00, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL )
    endif

    if ( GetUnitAbilityLevelSwapped(GetSpellAbilityId(), phanwarrior) == 3 ) then
        call UnitDamagePointLoc( GetTriggerUnit(), 0.01, 500.00, PhanStrikeLoc1, 360.00, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL )
    endif

No formula used there.
It can be reduced down to 1 line.

> -and removed BJs

...
 

Exide

I am amazingly focused right now!
Reaction score
448
>No formula used there.
>It can be reduced down to 1 line.


Aye. I tried that, and it didn't work..(Post #5)
 
R

rednax

Guest
there is nothing worng with he code, if it works, then leave it. Like ace said: Why fix what's not broken?
here's my version: Don't fix something that isn't broken.
Like he said, if the code works, why change it? sure, it could be shorter, but hey, the guy obviously put sum effort into it so atleast congrats him :)

oh by the way, nice abilities :D
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top