Unit group of units with range not working

M4573R

New Member
Reaction score
1
Maybe I don't know how these triggers work, but I can't get this to work right.

In one trigger I create a unit of type Proximity Dummy and add an event to another trigger for when a unit comes with 256 range of that dummy. Within that trigger I have output saying "Within range." and that displays correctly when units come within 256 of the dummy. HOWEVER, I'm trying to now select the dummy by doing:
Code:
Unit Group - Pick every unit in (Units within 300.00 of (Position of (Triggering unit)) matching ((Unit-type of (Matching unit)) Equal to ProximityDummy))
Triggering unit is the unit coming withing range.
This does not work. The trigger is running, I know that from the output. But it doesn't find the dummy. Am I doing the condition wrong?
 

vypur85

Hibernate
Reaction score
803
The dummy has Locust? Your Unit Group picking is done correctly. No mistakes. But if the unit has Locust, you have to use this to pick them, or else they can't be picked:

Code:
Unit group - Pick units of Type
 

M4573R

New Member
Reaction score
1
It does have locust. And I didn't know that. That's really useful to know but makes me sad because it needs locust.

Is there any other way I can do an easy check for when a unit comes within range of one of my dummies? They are in an array and I don't want to check each dummy in the array each .02 seconds.

Edit: Actually I could go through the list of dummies and check if the distance between the triggering unit and itself is within range. That wouldn't be too bad; the array is only 10 units large.
 

vypur85

Hibernate
Reaction score
803
You can try picking the closest unit:

Code:
Untitled Trigger 001
    Events
    Conditions
    Actions
        Set Z_Real_General_1 = 999999.00
        Set Z_Pt_General_1 = (Position of (Triggering unit))
        Set Z_Unitgp_General_1 = (Units of type Footman)
        Unit Group - Pick every unit in Z_Unitgp_General_1 and do (Actions)
            Loop - Actions
                Set Z_Pt_General_2 = (Position of (Picked unit))
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Distance between Z_Pt_General_1 and Z_Pt_General_2) Less than Z_Real_General_1
                    Then - Actions
                        Set Z_Real_General_1 = (Distance between Z_Pt_General_1 and Z_Pt_General_2)
                        Set Z_Unit_General_1 = (Picked unit)
                    Else - Actions
        Unit - Kill Z_Unit_General_1

The closest Footman (your dummy) will be the one killed. Just replace the kill action with other stuff you wish to do.
 
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