If the problem is the person is not getting gold then simply add an action
Player - Add 20 to Player 1 (Red) Current gold
Something like that should add the gold for you. I didn't look at the map provided above, but if you add that in it should work with the gold, if the item you are picking up is gold.
Well, I had planned on giving u a trigger, but my WE decided to spazz out on me and break o.o
Hope this helps!
EDIT: I'm actually looking for a similar system myself for a project of mine, so I'll be keeping an eye on this Thread, ^^
EDIT 2: I worked with it a bit, built upon the trigger shown above to try and make this work, though i don't have time to test it, here we go.
You need 2 variables, a region variable, and an item array variable.
two triggers, one called drop item and one called pickup item.
-
Drop Item
-
Events
-
Conditions
-
(Unit-type of (Triggering unit)) Equal to (==) Footman
-
Actions
-
Item - Create Gold Coins at (Position of (Dying unit))
-
Set ItemDropped[1] = (Last dropped item)
and then (WARNING: The following trigger does not work - if anyone would care to fix it, please do. I do not know what is wrong with it):
-
Pickup Item
-
Events
-
Time - Every 0.30 seconds of game time
-
Conditions
-
Actions
-
Set Point = (Playable map area)
-
Item - Pick every item in Point and do (Actions)
-
Loop - Actions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Multiple ConditionsAnd - All (Conditions) are true
-
Conditions
-
(Distance between (Position of (Picked unit)) and (Position of (Picked item))) Less than or equal to (<=) 100.00
-
(Item-class of (Picked item)) Equal to (==) Powerup
-
Then - Actions
-
Item - Remove ItemDropped[1]
-
Player - Add 100 to (Owner of (Matching unit)) Current gold
-
Custom script: call RemoveLocation(udg_Point)
-
Else - Actions
EDIT: I just tried to test it upon returning home, and it doesn't work. Maybe someone can fix it? I'm not certain what exactly is wrong with it, but I'm thinking I have made some silly little mistake somewhere that causes the whole thing to not work.