Spell Heat Cyclone

Romek

Super Moderator
Reaction score
963
> It is an handle. Therefore, it must be nulled.
Actually, only handles you can 'destroy' need to be nulled.
Units, effects, groups, timers, etc.
Players cannot be created or destroyed. The Player() function returns an existing handle.

So players, unitstate, version, weapontype, etc don't need to be nulled. :)
 

Sim

Forum Administrator
Staff member
Reaction score
534
I removed the player handle altogether in the last version. :)
 

Sim

Forum Administrator
Staff member
Reaction score
534
I uploaded an optional version featuring GTrigger Event System (Along to test it).

Results are positive, see for yourself!
 

RaiJin

New Member
Reaction score
40
for x2 and y2 member structs.. u can replace them with locals.. i heard something about structs being slow because of holding a lot of data or something i forget xD

but replace x2 and y2 with locals instead of structs
 

Jesus4Lyf

Good Idea™
Reaction score
397
Hey, that's a pretty sweet implementation of GTrigger. Except I suggest you make it a condition attachment, now that you don't have to check for the ability! :p

JASS:
call TriggerAddCondition(GT_RegisterStartsEffectEvent(CreateTrigger(),RawCode), Condition(function Actions) )

And that line is perfectly then replacable with:
JASS:
call GT_AddActionToStartsEffectEvent(RawCode, function Actions)

But you need to also make your Actions function return false at the very end. I believe it's actually more efficient using a condition instead of actions (and that's exactly what that last line does), not that it would ever, ever make a difference. :)

Good work! :D

PS. RaiJin is right. The reason is structs store all members in arrays, so locals are faster (makes sense to use them anyway) because they don't then have an array call. If you care about speed that much, you could make them private globals instead like I do. But that's bad coding practises (don't do it XD). :D
 

RaiJin

New Member
Reaction score
40
cool the spell looks sweet and its much better than the first version :thup::D
 

Sim

Forum Administrator
Staff member
Reaction score
534
Just to inform that this spell has been transfered into the spells section.
 

kirinelf

New Member
Reaction score
10
*Sigh* My luck with spells is terrible. xD I've only ever implemented two spells without any problems... out of about six.

When I activate the spell, I do the whole spinny thingy and the flame cyclone appears. However, the fireballs don't come spitting out, and no damage is done to the enemies. Any idea why?
 

Sim

Forum Administrator
Staff member
Reaction score
534
You probably didn't change the rawcodes properly.

Really, read the implementation instructions, make sure you did them all, and it should be fine. :)

If it isn't though, you might want to upload a map in which in doesn't work.
 

kirinelf

New Member
Reaction score
10
The Dummy unit is the one from Daxtreme's Ultima spell. Should I import his own Dummy unit from Heat Cyclone?

These are the settings in the trigger editor:
Heat-Cyclone-Error.png
 

RaiJin

New Member
Reaction score
40
JASS:
    set x2 = d.x + 50. * Cos((angle * I2R(d.i)) * bj_DEGTORAD) // The 50. is to ensure the dummy correctly turns.
    set y2 = d.y + 50. * Sin((angle * I2R(d.i)) * bj_DEGTORAD) // Else, the spell does not make a perfect cyclone.


you can store the +50*Cos... and the +50*Sin... into 2 global real variables and then just add em instead of always doing those function calls..
 

Sim

Forum Administrator
Staff member
Reaction score
534
Try importing the heat cyclone dummy, it might have different stats.

I think, if I recall correctly, that I set Casting animation backswing point to 0 on Heat Cyclone but not on Ultima, since it casts the spell about once.
 

The Undaddy

Creating with the power of rage
Reaction score
55
Am I the only one to notice that when you keep clicking on the spell button,multiple instances of the spell start running [on the same unit]?*I mean the previous one should be interrupted,after all it's a channeling spell.Correct me if it's supposed to be like that though.

*Happens probably because the order is the same at all times.
 

Sim

Forum Administrator
Staff member
Reaction score
534
Well, normally, a cooldown should be attached to the spell.

What happens currently is that it checks if the current unit's order is heat cyclone, and if so, the spell continues.

Problem is, by spamming the ability, the unit's current order never changes!
 
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