Couple Mapping Questions

ImmortaL_GoD

New Member
Reaction score
4
Does it HAVE to be loop? And why does it have to be alive..? And you use "or" instead of "and" I used "and" for a different one and it worked?

EDIT: Sweet, got most of em to work, heh. Also, mine WAS picked unit the whole time, I just had and I think, instead of or, and kept mixing em up, dunno.

Also, for the Beacon of Deception, would a loop make it more effective or w/e (although I got it to work with using "or")?
 

ImmortaL_GoD

New Member
Reaction score
4
One of one's I copy pasted... Also something weird happened with Beacon of Deception, it only moved SOME of the unit types, lol, not all.
 

Komaqtion

You can change this now in User CP.
Reaction score
469
No, don't think a loop would make a difference ;)
And i have no idea why that happened XD lol
 

Angel_Island

Much long, many time, wow
Reaction score
56
Trigger:
  • Unit Group - Pick every unit in temp_group and do (Actions)
    • Loop - Actions
      • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) + 4000)
      • Unit - Kill (Matching unit)

Maybe you should change that to picked unit? It's still not removed in triggers.
 

Komaqtion

You can change this now in User CP.
Reaction score
469
Why did you loop the killing/changing ownership one then?

What loop ?

And btw, why use set property here ???:
Trigger:
  • Unit Group - Pick every unit in temp_group and do (Actions)
    • Loop - Actions
      • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) + 4000)
      • Unit - Kill (Matching unit)


just use Add property instead ;)
 

ImmortaL_GoD

New Member
Reaction score
4
Don't think it really makes a difference does it?

Beacon doesn't seem to be working properly:

Trigger:
  • Beacon of Deception Red
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
      • (BeaconofDeception[1] is alive) Equal to True
    • Actions
      • Set temp_group = (Units in (Playable map area)(((Unit-type of (Matching unit)) Equal to |c00800080Dark Elf Archer) or (((Unit-type of (Matching unit)) Equal to |c00800080Dark Elf Swordsman) or (((Unit-type of (Matching unit)) Equal to |cFF333333Ghoul) or (((Unit-type of (Matc
      • Unit Group - Order temp_group to Move To (Center of Center <gen>)
      • Custom script: call DestroyGroup (udg_temp_group)


and Mana Draw still doesn't work:
Trigger:
  • Mana Draw
    • Events
      • Unit - A unit enters Mana Draw <gen>
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to |cffffcc00Slave
    • Actions
      • Game - Display to (Owner of (Triggering unit)), at offset (0.00, 0.00) the text: |c00d9d9ffYou cast ...
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 1 (Red)) Equal to True
          • ((Owner of (Triggering unit)) Current gold) Greater than or equal to 5000
          • (Number of units in (Units in Red Spawn <gen>((Unit-type of (Matching unit)) Equal to |c00ff0000Orc Raider))) Equal to 10
        • Then - Actions
          • Set temp_group = (Units in Red Spawn <gen>((Number of units in (Units in Red Spawn <gen>((Unit-type of (Matching unit)) Equal to |c00ff0000Orc Raider))) Equal to 10))
          • Unit Group - Pick every unit in temp_group and do (Actions)
            • Loop - Actions
              • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) + 4000)
              • Unit - Kill (Picked unit)
        • Else - Actions
          • Do nothing
          • Set temp_point = (Center of Mana Draw Finish <gen>)
      • Unit - Move (Triggering unit) instantly to temp_point
      • Custom script: call RemoveLocation (udg_temp_point)


I'd rather the "temp_group" just be removed, since I don't want it to say "cast mana draw" if there isn't enough units there. But I tried just keeping the condition and using matched unit, but it didn't work.

EDIT:
Trigger:
  • Forgot to add: Replicate
    • Events
      • Unit - A unit enters Replicate <gen>
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to |cffffcc00Slave
      • ((Owner of (Triggering unit)) Current gold) Greater than or equal to 9000
    • Actions
      • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) - 9000)
      • Game - Display to (Owner of (Triggering unit)), at offset (0.00, 0.00) the text: |c00d9d9ffYou cast ...
      • Dialog - Create a dialog button for DialogGameMode labelled |c00ff0000Red Mage
      • Set ButtonsGameMode[1] = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogGameMode labelled |c00800080Purple Ma...
      • Set ButtonsGameMode[2] = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogGameMode labelled |c00000000Black Mag...
      • Set ButtonsGameMode[3] = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogGameMode labelled |c000000ffBlue Mage
      • Set ButtonsGameMode[4] = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogGameMode labelled |c00ffffffWhite Mag...
      • Set ButtonsGameMode[5] = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogGameMode labelled |c0000ff00Green Mag...
      • Set ButtonsGameMode[6] = (Last created dialog Button)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 1 (Red)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 1 (Red)
          • Trigger - Turn on Replicate Units Red <gen>
        • Else - Actions
          • Do nothing
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 4 (Purple)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 4 (Purple)
          • Trigger - Turn on Replicate Units Purple <gen>
        • Else - Actions
          • Do nothing
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 12 (Brown)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 12 (Brown)
          • Trigger - Turn on Replicate Units Black <gen>
        • Else - Actions
          • Do nothing
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 2 (Blue)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 2 (Blue)
          • Trigger - Turn on Replicate Units Blue <gen>
        • Else - Actions
          • Do nothing
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 9 (Gray)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 9 (Gray)
          • Trigger - Turn on Replicate Units White <gen>
        • Else - Actions
          • Do nothing
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 7 (Green)) Equal to True
        • Then - Actions
          • Dialog - Show DialogGameMode for Player 7 (Green)
          • Trigger - Turn on Replicate Units Green <gen>
        • Else - Actions
          • Do nothing
      • Set temp_point = (Center of Replicate Finish <gen>)
      • Unit - Move (Triggering unit) instantly to temp_point
      • Custom script: call RemoveLocation (udg_temp_point)
      • Trigger - Turn on Clone Units <gen>
For this one, the dialogs keep stacking every time the unit reenters the rect. How to get rid of em after the first use?

Trigger:
  • Divine Protection
    • Events
      • Unit - A unit enters Divine Protection <gen>
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to |cffffcc00Slave
      • ((Owner of (Triggering unit)) Current gold) Greater than or equal to 18000
    • Actions
      • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) - 18000)
      • Game - Display to (Owner of (Triggering unit)), at offset (0.00, 0.00) the text: |c00d9d9ffYou cast ...
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 1 (Red)) Equal to True
        • Then - Actions
          • Unit Group - Pick every unit in temp_group and do (Actions)
            • Loop - Actions
            • Unit - Make (Picked unit) Invulnerable
            • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Human\DivineShield\DivineShieldTarget.mdl
            • Wait 15.00 seconds
            • Special Effect - Destroy (Last created special effect)
            • Unit - Make (Picked unit) Vulnerable
          • Custom script: call DestroyGroup (udg_temp_group)
        • Else - Actions
          • Do nothing
      • Set temp_point = (Center of Divine Protection Finish <gen>)
      • Unit - Move (Triggering unit) instantly to temp_point
      • Custom script: call RemoveLocation (udg_temp_point)
This seems to keep messing up as well, it doesn't take the invuln off for some reason =/. I tried changing the "Unit - Make (Picked unit) Vulnerable" to that, from Unit Group - Pick every unit in temp_group and do (Unit - Make (Picked unit) Vulnerable) before.

Trigger:
  • Enhancement
    • Events
      • Unit - A unit enters Enhancement <gen>
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to |cffffcc00Slave
      • ((Owner of (Triggering unit)) Current gold) Greater than or equal to 6000
    • Actions
      • Player - Set (Owner of (Triggering unit)) Current gold to (((Owner of (Triggering unit)) Current gold) - 6000)
      • Game - Display to (Owner of (Triggering unit)), at offset (0.00, 0.00) the text: |c00d9d9ffYou cast ...
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) is owned by Player 1 (Red)) Equal to True
        • Then - Actions
          • Set temp_group = (Units in (Playable map area)(((Matching unit) is owned by Player 1 (Red)) Equal to True))
          • Unit Group - Pick every unit in temp_group and do (Actions)
            • Loop - Actions
          • Special Effect - Create a special effect attached to the overhead of (Picked unit) using Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl
          • Unit - Add Enchantment (Damage) to (Picked unit)
          • Unit - Add Enchantment (Armor) to (Picked unit)
          • Wait 15.00 seconds
          • Special Effect - Destroy (Last created special effect)
          • Unit - Remove Enchantment (Damage) to (Picked unit)
          • Unit - Remove Enchantment (Armor) to (Picked unit)
          • Custom script: call DestroyGroup (udg_temp_group)
        • Else - Actions
          • Do nothing
      • Set temp_point = (Center of Enhancement Finish <gen>)
      • Unit - Move (Triggering unit) instantly to temp_point
      • Custom script: call RemoveLocation (udg_temp_point)
Same problem with this one, still not removing after 15 seconds.

FYI: The awkwardness of the loops is just a shitty pastejob.
 

Komaqtion

You can change this now in User CP.
Reaction score
469
You don't think you could send me the map ???
It's much easier to edit there ;)
 

Komaqtion

You can change this now in User CP.
Reaction score
469
1.Well, ok, are you sure that BeaconofDeception [1] IS alive !?
2.Are you sure you have over 5000 gold, and there are atleast 10 orc raider in that region ?? And btw, what variable type is temp_group ? It seems you have used Number of units in region there, that shouldn't be possible in a Unit Group variable XD
3.Might be abit tricky, since you almost HAVE to use locals, but you could use an boolean variable with like 2-3k arrays, and each time a unit enters the region, use:
Set Boolean[Custom value of (Triggering Unit)] = True
and add another condition to the trigger, like Boolean[Custom value of (Triggering Unit)] Not equal to True :S

Will check back on the other ones later ;)
 

ImmortaL_GoD

New Member
Reaction score
4
1. Yes.
2. Yes. Dunno how else to do it. =/
3. Hm.. not sure exactly how to do this/what it would do? Doesn't the 'unit enters rect' already propose this?
 

Komaqtion

You can change this now in User CP.
Reaction score
469
3. well, just came up with something, just set entering units custom value to 1, and then as a condition check if Custom value of (Triggering Unit) Not equal to 1

2. i also asked what type of variable temp_group was,but now i just want to know why you have used this comparison,
Units in Red Spawn <gen>((Number of units in (Units in Red Spawn <gen>((Unit-type of (Matching unit)) Equal to |c00ff0000Orc Raider))) Equal to 10))

since you've already checked if there are 10 unit in there, use this instead:
Trigger:
  • Set Temp_Group = (Units in Region 1 &lt;gen&gt; matching ((Unit-type of (Matching unit)) Equal to |c00ff0000Orc Raider))
 

ImmortaL_GoD

New Member
Reaction score
4
Hmm, can you explain how that works exactly, or what it does? Entering unit would be the dialog? Or something.

Yeah, I know, I think I forgot to put in the thread that I tried removing either or and trying it, but neither worked alone =/. I have it just as the temp_group right now, and it's the same variable as the rest (unit group).
 

Komaqtion

You can change this now in User CP.
Reaction score
469
Use this:
Trigger:
  • Replicate
    • Events
      • Unit - A unit enters Replicate &lt;gen&gt;
    • Conditions
      • (Custom value of (Triggering unit)) Not equal to 1
    • Actions
      • Unit - Set the custom value of (Triggering unit) to 1
      • Put your other actions here <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite2" alt=";)" title="Wink ;)" loading="lazy" data-shortname=";)" />
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top