So close. trigger condition problem

Kosire

New Member
Reaction score
0
Im really close I think xD I have a trigger where if a player types a message and action happens but I want the condition to be the command only works if the player has their hero inside a specific region. I think it could be simple, just cant quite get it.

P.S. - Is there a way I can make a building that players are allied to (Can use town portal scroll on) but they do not OWN?
 

denmax

You can change this now in User CP.
Reaction score
155
Why not put an If/Then/Else under Loop-Actions?

After so, you just put under If (Condition) these conditions
(Picked unit) is a Hero Equal to True
(Owner of (Picked unit)) Equal to (Trigger for your Triggering Player)


Remember, you must set a variable for our player that happened to be the one typing on your previous trigger.
 

Kosire

New Member
Reaction score
0
Trigger:
  • Red Abyss Party Blue
    • Events
      • Player - Player 1 (Red) types a chat message containing -partyblue as An exact match
    • Conditions
    • Actions
      • Unit Group - Pick every unit in (Units in Abyss PvP Area <gen>) and do (If ((Owner of (Picked unit)) Equal to Player 2 (Blue)) then do (Player - Make Player 1 (Red) treat Player 2 (Blue) as an Ally with shared vision) else do (Do nothing))


There's an example of one of the triggers I'm trying to get the condition for. If I were to use your idea I can put that If/Then/Else in the same trigger and have it work? also I dont understand variables nearly at all so I may need help applying this into a trigger :(
 

Ghan

Administrator - Servers are fun
Staff member
Reaction score
890
Is there a specific unit you are looking for here? If you can provide exactly what the circumstances are here, I can probably create a trigger for you that should do what you want.
 

Kosire

New Member
Reaction score
0
Is there a specific unit you are looking for here? If you can provide exactly what the circumstances are here, I can probably create a trigger for you that should do what you want.

My trigger I posted in my last post is the skeleton of the multiple im using for each player to type -party(player) and have that player an ally or -xparty(player) to make them an enemy. But the flaw in the trigger (or the major flaw I saw o_O) was that you could type it even when not in this "PvP enabled" area and make someone an enemy, so I want it only to work while the triggering player's hero is inside the region.
EDIT: Also, I thought this would be easier to do if each player only OWNED one unit. However, for my Scrolls of Town Portal to work I created dummy buildings owned by each player so they could teleport to them, hence me wanting to know how I could make a building your able to teleport to, but don't own :)
 

Ghan

Administrator - Servers are fun
Staff member
Reaction score
890
Something like this is what you want:

Trigger:
  • Untitled Trigger 002
    • Events
      • Player - Player 1 (Red) types a chat message containing -blah as An exact match
    • Conditions
    • Actions
      • Set tempgroup = (Units in <Your Region>)
      • Unit Group - Pick every unit in tempgroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A Hero) Equal to True
              • (Owner of (Picked unit)) Equal to (Triggering player)
            • Then - Actions
              • <Add actions here>
            • Else - Actions
      • Custom script: call DestroyGroup(tempgroup)
      • Custom script: set tempgroup = null
 

Kosire

New Member
Reaction score
0
Trigger:
  • Red Abyss Party Blue
    • Events
      • Player - Player 1 (Red) types a chat message containing -partyblue as An exact match
    • Conditions
    • Actions
      • Set tempgroup = (Units in Abyss PvP Area <gen>)
      • Unit Group - Pick every unit in tempgroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A Hero) Equal to True
              • (Owner of (Picked unit)) Equal to (Triggering player)
            • Then - Actions
              • Unit Group - Pick every unit in (Units in Abyss PvP Area <gen>) and do (If ((Owner of (Picked unit)) Equal to Player 2 (Blue)) then do (Player - Make Player 1 (Red) treat Player 2 (Blue) as an Ally with shared vision) else do (Do nothing))
            • Else - Actions
      • Custom script: call DestroyGroup(tempgroup)
      • Custom script: set tempgroup = null

->So the order would be..
Red types the command
Sets variable to be the group within PVP region
Picks the units in that region
If the unit picked is a Hero owned by red
picks units in that area again
if it finds a unit owned by blue, make blue an ally
if not, doesnt do anthing
but then the Custom Script doesnt get done, does it? Oof >.<
 

Ghan

Administrator - Servers are fun
Staff member
Reaction score
890
> So the order would be..

Yes.

> then the Custom Script doesnt get done, does it? Oof >.<

Sure it does. It is completely outside the If statement.
 

Kosire

New Member
Reaction score
0
Oh alright. thanks so much for your help, this was a little more complicated than I had thought but it shouldnt be hard to replicate or use at all. Quite new at the advanced features of HE so sorry for not really grasping everything, still a tremendous help :)
+++rep :thup:
 
General chit-chat
Help Users

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top