Trigger Malfunctioning

FroznYoghurt

New Member
Reaction score
37
What i want to do: A missile spell that leaves a buff, buff registers mana re and degeneration, when dur is over (target no longer has the buff) it receives damage. (this is not the problem)

The buff is supposed to only be able to be active at one target at a time, when a new unit receives it the last is supposed to have it removed.


Missile: A locust unit with a SFX attachment
Buff: Slow with 0% slow (Does nothing)

What dosen't work: The buff is for some reason instantly removed and therefore the target takes the damage instantly, this really buggs me.

Here is the code:

Ini
Code:
Spirit Leech
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Spirit Leech 
    Actions
        Unit - Remove SL_Missile from the game
        -------- - --------
        Special Effect - Create a special effect attached to the hand, left of (Triggering unit) using Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceBirthMissile.mdl
        Special Effect - Destroy (Last created special effect)
        -------- - --------
        Set SL_Target = (Target unit of ability being cast)
        Set TempPoint = (Position of (Triggering unit))
        -------- - --------
        Unit - Create 1 Mana Leech for (Owner of (Triggering unit)) at TempPoint facing Default building facing degrees
        Animation - Play (Last created unit)'s walk animation
        Unit - Add Crow Form to (Last created unit)
        Animation - Change (Last created unit) flying height to 125.00 at 0.00
        Unit - Remove Crow Form from (Last created unit)
        Animation - Change (Last created unit)'s vertex coloring to (5.00%, 5.00%, 100.00%) with 45.00% transparency
        Special Effect - Create a special effect attached to the head of (Last created unit) using Abilities\Weapons\SpiritOfVengeanceMissile\SpiritOfVengeanceMissile.mdl
        Unit - Turn collision for (Last created unit) Off
        Set SL_Missile = (Last created unit)
        -------- - --------
        Trigger - Turn on SL Hit <gen>
        Custom script:   call RemoveLocation(udg_TempPoint)

Loop
Code:
SL loop
    Events
        Time - Every 0.01 seconds of game time
    Conditions
    Actions
        -------- Missile, Hit target --------
        Set TempPoint = (Position of SL_Target)
        Set TempPoint2 = (Position of SL_Missile)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Distance between TempPoint and TempPoint2) Less than or equal to 50.00
            Then - Actions
                -------- - --------
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Leeched_Target Not equal to No unit
                    Then - Actions
                        Unit - Remove Mana Leech  buff from Leeched_Target
                        Unit - Cause Caster to damage Leeched_Target, dealing (SL_Damage[1] + SL_Damage[2]) damage of attack type Spells and damage type Normal
                        Special Effect - Create a special effect attached to the chest of Leeched_Target using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        Special Effect - Create a special effect attached to the chest of Leeched_Target using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        -------- Text --------
                        Floating Text - Create floating text that reads ((((String((Integer(SL_Damage[1])))) +  + ) + (String((Integer(SL_Damage[2]))))) + !) above Leeched_Target with Z offset 0.00, using font size 10.00, color (10.00%, 15.00%, 100.00%), and 0.00% transparency
                        Floating Text - Change (Last created floating text): Disable permanence
                        Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
                        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
                        -------- - --------
                        Set Leeched_Target = No unit
                    Else - Actions
                -------- - --------
                Set SL_Damage[1] = 0.00
                Set SL_Damage[2] = 0.00
                Special Effect - Create a special effect at TempPoint2 using Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceBirthMissile.mdl
                Special Effect - Destroy (Last created special effect)
                Unit - Create 1 Spell Dummy for (Owner of SL_Missile) at TempPoint2 facing Default building facing degrees
                Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
                Unit - Add Mana Leech  to (Last created unit)
                Unit - Order (Last created unit) to Human Sorceress - Slow SL_Target
                Unit - Remove SL_Missile from the game
                -------- - --------
                Set SL_Target = No unit
                -------- - --------
            Else - Actions
                Set TempPointA[3] = (TempPoint2 offset by 4.60 towards (Angle from TempPoint2 to TempPoint) degrees)
                Unit - Move SL_Missile instantly to TempPointA[3], facing (Angle from TempPoint2 to TempPoint) degrees
                Custom script:   call RemoveLocation(udg_TempPointA[3])
        Custom script:   call RemoveLocation(udg_TempPoint)
        Custom script:   call RemoveLocation(udg_TempPoint2)
        -------- Who is Hit? --------
        Set TempGroup = (Units in (Entire map) matching (((Matching unit) Not equal to Leeched_Target) and (((Matching unit) has buff Mana Leech ) Equal to True)))
        Unit Group - Pick every unit in TempGroup and do (Actions)
            Loop - Actions
                Set Leeched_Target = (Picked unit)
        -------- Buff still on? --------
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Leeched_Target has buff Mana Leech ) Equal to False
            Then - Actions
                Unit - Remove Mana Leech  buff from Leeched_Target
                Unit - Cause Caster to damage Leeched_Target, dealing (SL_Damage[1] + SL_Damage[2]) damage of attack type Spells and damage type Normal
                Special Effect - Create a special effect attached to the chest of Leeched_Target using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
                Special Effect - Destroy (Last created special effect)
                Floating Text - Create floating text that reads ((((String((Integer(SL_Damage[1])))) +  + ) + (String((Integer(SL_Damage[2]))))) + !) above Leeched_Target with Z offset 0.00, using font size 10.00, color (10.00%, 15.00%, 100.00%), and 0.00% transparency
                Floating Text - Change (Last created floating text): Disable permanence
                Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
                Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
                Set SL_Damage[1] = 0.00
                Set SL_Damage[2] = 0.00
                Set Leeched_Target = No unit
            Else - Actions
        -------- Mana Difference --------
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                SL_ManaCheck Equal to 1
            Then - Actions
                Set SL_ManaCheck = 2
                Set SL_MP[1] = (Mana of Leeched_Target)
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        SL_MP[2] Less than SL_MP[1]
                    Then - Actions
                        Set SL_Damage[1] = (SL_Damage[1] + (SL_MP[1] - SL_MP[2]))
                    Else - Actions
                        Set SL_Damage[2] = (SL_Damage[2] + (SL_MP[2] - SL_MP[1]))
            Else - Actions
                Set SL_ManaCheck = 1
                Set SL_MP[2] = (Mana of Leeched_Target)
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        SL_MP[2] Less than SL_MP[1]
                    Then - Actions
                        Set SL_Damage[1] = (SL_Damage[1] + (SL_MP[1] - SL_MP[2]))
                    Else - Actions
                        Set SL_Damage[2] = (SL_Damage[2] + (SL_MP[2] - SL_MP[1]))

I know it's a lot of code but it dosen't take too long to read it, please help me on this one im stuck deep.

+rep for sollutions
 
What's the duration on the Slow? Do you have any triggers/spells which would remove a buff?

EDIT: Wait, this doesn't look right...
Code:
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Leeched_Target Not equal to No unit
                    Then - Actions
                        Unit - Remove Mana Leech  buff from Leeched_Target

If Leeched_Target is assigned to some particular unit, it will remove the buff from Leeched_Target?
 
What's the duration on the Slow? Do you have any triggers/spells which would remove a buff?

EDIT: Wait, this doesn't look right...
Code:
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Leeched_Target Not equal to No unit
                    Then - Actions
                        Unit - Remove Mana Leech  buff from Leeched_Target

If Leeched_Target is assigned to some particular unit, it will remove the buff from Leeched_Target?

1. Slow duration is 60 seconds. I have no other triggers that removes buffs, and the buff is removed INSTANTLY, it never even shows up.
(And yes I do know it is attached and removed not only never attached, because nothing happens if i cast the spell on an ally on wich slow cannot be cast)

2. That is correct, the buff is supposed to only be active on one unit at a time.
 
Unbump :D

Solved it myself, had to rewrite the whole code differently :rolleyes:

+rep to Flare for being the only one caring :eek:
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    News portal has been retired. Main page of site goes to Headline News forum now
  • The Helper The Helper:
    I am working on getting access to the old news portal under a different URL for those that would rather use that for news before we get a different news view.
  • Ghan Ghan:
    Easily done
    +1
  • The Helper The Helper:
    https://www.thehelper.net/pages/news/ is a link to the old news portal - i will integrate it into the interface somewhere when i figure it out
  • Ghan Ghan:
    Need to try something
  • Ghan Ghan:
    Hopefully this won't cause problems.
  • Ghan Ghan:
    Hmm
  • Ghan Ghan:
    I have converted the Headline News forum to an Article type forum. It will now show the top 20 threads with more detail of each thread.
  • Ghan Ghan:
    See how we like that.
  • The Helper The Helper:
    I do not see a way to go past the 1st page of posts on the forum though
  • The Helper The Helper:
    It is OK though for the main page to open up on the forum in the view it was before. As long as the portal has its own URL so it can be viewed that way I do want to try it as a regular forum view for a while
  • Ghan Ghan:
    Yeah I'm not sure what the deal is with the pagination.
  • Ghan Ghan:
    It SHOULD be there so I think it might just be an artifact of having an older style.
  • Ghan Ghan:
    I switched it to a "Standard" article forum. This will show the thread list like normal, but the threads themselves will have the first post set up above the rest of the "comments"
  • The Helper The Helper:
    I don't really get that article forum but I think it is because I have never really seen it used on a multi post thread
  • Ghan Ghan:
    RpNation makes more use of it right now as an example: https://www.rpnation.com/news/
  • The Helper The Helper:
  • The Helper The Helper:
    What do you think Tom?
  • tom_mai78101 tom_mai78101:
    I will have to get used to this.
  • tom_mai78101 tom_mai78101:
    The latest news feed looks good

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top