Trigger ain't working for some reason...

PYROMANIC

New Member
Reaction score
0
I want to make a building that gives income, and that i can upgrade the building to get more income.
Like that: level 1 "Grates" give 1 gold per second. level 2 "Tent" give 2 gold per second.

so i made it like this:
-Events
Unit - A unit owned by Player 1 (red) Finishes construction
-Conditions
(Unit-type of (Constructed structure)) Equal to Grates
-Actions
Trigger - Turn on Red Income 1 <gen>

*(Red Income 1) is a trigger that gives 1 gold per second.

So it worked but if I try to upgrade the building the same way, it doesn't.

so i made it same way:
-Events
Unit - A unit owned by Player 1 (red) Finishes construction
-Conditions
(Unit-type of (Constructed structure)) Equal to Tent
-Actions
Trigger - Turn off Red Income 1 <gen>
Trigger - Turn on Red Income 2 <gen>


And now it doesn't work.

So my question is how to do this and i would also like to know why doesn't it work.
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
use one trigger for the income not 2-20 or however many upgrades create 1 if/then/else function for each level

Trigger:
  • for loop integer a from 1 to 12 do actions
    • loop actions
      • if - conditions
        • (Boolean Variable [index:integer a]) = true
      • then - actions
        • give 1 gold per second
      • else - actions
        • do nothing


and another if then else function in the same integer function for 2 gold per second
then create a boolean variable for every level of income and when that building is created it turns the variable to true and the latter to false etc
 

evilwolf

Member
Reaction score
11
This is the best way:
Every 1 second of the game
Add number of units matching matching unit is equal to gold generator * 1 gold to player 1 red.
It works
 

hopy

Active Member
Reaction score
64
So my question is how to do this and i would also like to know why doesn't it work.

This just turns on a trigger that gives 1(2) gold, it doesn't check how many 'Grates'('Tents') you actually have.

This is the best way:
Every 1 second of the game
Add number of units matching matching unit is equal to gold generator * 1 gold to player 1 red.
It works
This is what you should do, though I think having a trigger that adds units to the unit group rather than creating a new unit group every second would be more efficient.

The triggers:
Would look like (hand typed again!):
Trigger:
  • Grates
    • Events
      • Unit - A unit Finishes construction
    • Conditions
      • (Unit-type of (Constructed structure)) Equal to Grates
    • Actions
      • Unit Group - Add (Triggering unit) to Grates[(Player number of (Owner of (Triggering unit)))]
      • Trigger - Turn on Greedisgood &lt;gen&gt;

Trigger:
  • Grates
    • Events
      • Unit - A unit Finishes construction
    • Conditions
      • (Unit-type of (Constructed structure)) Equal to Tent
    • Actions
      • Unit Group - Add (Triggering unit) to Tents[(Player number of (Owner of (Triggering unit)))]

Trigger:
  • Greedisgood
    • Events
      • Game - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • for loop integer a from 1 to 12 do actions
        • loop actions
          • Player - Add ((Number of units in Grates[(integer A)]) + ((Number of units in Tent[(integer A)]) x 2)) to player[integer A] &#039;s current gold


Variables:
- Grates[] is an unit group array, storing all the grates owned by a player.
- Tents[] is an unit group array, storing all the tents owned by a player.

Also:
- Please use [wc3 ], [/wc3 ] tags around triggers, it makes them easier for us to read.
- The first two triggers could be combined into one, ultimate trigger to rule the world.
- Also I noticed you were using 1 trigger for every player in the map, with the above trigger you only need 3 (2 actually) and it works for all players at the same time, awesome no?
- Change the '12' (for the loop) in the third trigger to the amount of players you have in your map.
- Again this is hand typed, so some spelling or codes might be a bit off.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      • Ghan
        Administrator - Servers are fun

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top