# [Solved]Tax system help

#### Demendius

Level 2
Hello. I want to create a tax system where x amount of units gives x amount of gold every x seconds.

I would also be very happy if the trigger was explained

• Taxes
• Events
• Unit - A unit enters (Playable map area)
• Conditions
• (Unit-type of (Triggering unit)) Equal to Citizen
• Actions
• For each (Integer A) from 1 to 10, do (Actions)
• Loop - Actions
• Wait 10.00 seconds
• Player - Add 20 to (Owner of (Triggering unit)) Current gold
I created this my self, but the problem with it, is that the tax continues when the unit dies.

#### Tasyen

Level 32
Well loops and waits don't work that great together in warcraft 3, your Trigger might work for 1 unit but if you gain 2 or more this Tax-units with such a construct (waits/loops) it will likely produce an not wanted result.

I assumed all units pay the same amount of taxes in the same time.
Here are my Triggers, I splitted them into small easy Triggers each one doing only one part:

• Tax Init
• Events
• Map initialization
• Conditions
• Actions
• -------- Create a Group-Object and add all preplaced Tax_units to it --------
• Set Tax_Payer = (Units in (Playable map area) matching ((Unit-type of (Matching unit)) = Citizens))
• -------- If there are preplaced Tax_Units turn on income --------
• If (All Conditions are True) then do (Then Actions) else do (Else Actions)
• If - Conditions
• (Tax_Payer is empty) equal False
• Then - Actions
• Trigger - Turn on Tax income <gen>
• Else - Actions
• Tax income
• Events
• Time - Every 1.00 seconds of game time
• Conditions
• Actions
• -------- Every Second Increases for each unit in Tax_Player its owners Gold by 1. -------
• Einheitengruppe - Pick every unit in Tax_Payer and do (Actions)
• Loop - Actions
• Player - Add 1 to (Owner of (Picked unit)) Current Gold
• Tax enter
• Events
• Einheit - A unit enters (Playable map area)
• Conditions
• (Unit-type of (Triggering unit)) equal Citizens
• Actions
• -------- Insere a Tax_Unit into the Group and activade the Loop-------
• Einheitengruppe - Add (Triggering unit) to Tax_Payer
• Trigger - Turn on Tax income <gen>
• Tax leave
• Events
• Einheit - A unit Dies
• Conditions
• ((Triggering unit) is in Tax_Payer) equal True
• Actions
• -------- Remove a killed Tax_Unit from the Group and deactivade the loop if no tax_unit is left--------
• Einheitengruppe - Remove (Triggering unit) from Tax_Payer
• If (All Conditions are True) then do (Then Actions) else do (Else Actions)
• If - Conditions
• (Tax_Payer is empty) equal True
• Then - Actions
• Trigger - Turn off Tax income <gen>
• Else -Actions

Last edited:

#### Demendius

Level 2
Thank you very much! But i gotta ask, will this work for trained units too?

#### Demendius

Level 2
This works for any Unit of the unit-Type you defined no matter how it entered the map.
Thank you soooo much! I lost all of my motivation because of this trigger and now i have it again! Thank you a thousand times!

Replies
4
Views
806
Replies
4
Views
438
Replies
3
Views
481
Replies
12
Views
750
Replies
7
Views
439