Change Color

junicobakura

Member
Reaction score
3
how do you change a color of a unit that has a certain buff that will change back when the buff expires
 

DioD

New Member
Reaction score
57
ever 1 second of the game check every unit on map for specific buff, if buff present - change color, if not - change color back.

if you able to predict buff placement, keep group of units and remove units from group when buff expire.
 

xPass

All aboard the xPass Express!
Reaction score
26
ever 1 second of the game check every unit on map for specific buff, if buff present - change color, if not - change color back.

if you able to predict buff placement, keep group of units and remove units from group when buff expire.

Err, it's not my question but, how do I do that? I cannot find check every unit on map for buff action, don't know what action it is... So how?

--EDIT--
OMG THIS IS HIJACKING?? OMG, SORRY FOR THAT!!!!
 

skyblader

You're living only because it's illegal killing.
Reaction score
159
Please read the rules, don't hijack other's threads. You can either wait for the answer, start a new thread or search for it in the forums..

Anyway if I'm not wrong is if the buff is given by something like a spell, you can add the target unit of ability into a unit group and when the buff is gone remove it from the unit group.
 

junicobakura

Member
Reaction score
3
Trigger:
  • Color Change
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Set ChangeColorGroup = (Units in (Playable map area))
      • Unit Group - Pick every unit in ChangeColorGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) has buff Gear 2nd ) Not equal to True
            • Then - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
              • Unit Group - Remove (Picked unit) from ChangeColorGroup
            • Else - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (75.00%, 20.00%, 75.00%) with 0.00% transparency
              • Unit Group - Remove (Picked unit) from ChangeColorGroup
      • Custom script: call DestroyGroup(udg_ChangeColorGroup)


is this right?

and can you check for leaks if this right
 

Ryushi

"I will stand, or I will fall. I will not sit."
Reaction score
59
That should be correct and leakless. But there's no need to remove the units from the Unit Group as you pick them.
 

skyblader

You're living only because it's illegal killing.
Reaction score
159
No no, you can do it something like that:

Trigger:
  • Colour change 1
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in ColourChangeGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) has buff Gear 2nd) Equal to False
            • Then - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
              • Unit Group - Remove (Picked unit) from ColourChangeGroup
            • Else - Actions


Trigger:
  • Colour change 2
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Your ability
    • Actions
      • Unit Group - Add (Target unit of ability being cast) to ColourChangeGroup
      • Animation - Change (Target unit of ability being cast)'s vertex coloring to (0.00%, 0.00%, 0.00%) with 0.00% transparency


This is if the spell that gives the buff is kinda like target, and not aura. If it's an aura, then do this

Trigger:
  • Color Change
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Set ChangeColorGroup = (Units in (Playable map area))
      • Unit Group - Pick every unit in ChangeColorGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) has buff Gear 2nd ) Equal to False
            • Then - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
            • Else - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (75.00%, 20.00%, 75.00%) with 0.00% transparency
      • Custom script: call DestroyGroup(udg_ChangeColorGroup)
 

Ryushi

"I will stand, or I will fall. I will not sit."
Reaction score
59
Junicobakura's trigger will work even if the ability targets a unit. The unit will get the buff, then the periodic trigger will detect the buff and change the unit's coloring.
 

skyblader

You're living only because it's illegal killing.
Reaction score
159
I'm not saying it'll work, I just think the one I posted is a better way to do it, rather than setting and clearing a unit group every half a second, just adding and removing units is better right?
 

DioD

New Member
Reaction score
57
code from post 5 is 100% ok, but you dont need to remove units from group, since you will destroy this group anyway.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      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