Random Hero Dialog

mr_fj

New Member
Reaction score
10
Trigger:
  • Random hero
    • Events
      • Dialog - A dialog button is clicked for HeroChoosing
    • Conditions
      • (Clicked dialog button) Equal to Hero[7]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering player) is in Team1) Equal to True
        • Then - Actions
          • Unit - Create 1 Paladin for (Triggering player) at (Center of Team 1 Player Spawn <gen>) facing (Center of Team 2 Player Spawn <gen>)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering player) is in Team2) Equal to True
            • Then - Actions
              • Unit - Create 1 Archsorceress for (Triggering player) at (Center of Team 2 Player Spawn <gen>) facing (Center of Team 1 Player Spawn <gen>)
            • Else - Actions


Right now, clicking on Random in my dialog just creates a Paladin for Team 1 and an Archsorceress for Team 2, as you can see ^^
What would i need to do to make it create a random hero? I have 6 different so what I am really asking is, how can i create one of 6 random units using a dialog?

My map: http://www.thehelper.net/forums/showthread.php?p=1029471
 

Defi4nc3

Developer of DORPG
Reaction score
20
Make another trigger with a unit array thats declared on map init, setting up each unit...

Example

Trigger:
  • -set Unit[1] = Hero1


Trigger:
  • -set Unit[2] = Hero2

etc...

Then on your dialog you will make a random button... When that button is clicked you will then use this action...

Trigger:
  • Create 1 Unit[Random Integer between 1/#] for Your Player


Replaces the # with the max heroes you have...
 

mr_fj

New Member
Reaction score
10
Make another trigger with a unit array thats declared on map init, setting up each unit...

Example

Trigger:
  • -set Unit[1] = Hero1


Trigger:
  • -set Unit[2] = Hero2

etc...

Then on your dialog you will make a random button... When that button is clicked you will then use this action...

Trigger:
  • Create 1 Unit[Random Integer between 1/#] for Your Player


Replaces the # with the max heroes you have...

Again, you come to my rescue ;) Thanks alot. Can you set variables in Map intialization?

Oh and would you mind testing my map and giving your comments on it sometime? ;)
 

mr_fj

New Member
Reaction score
10
Okay... I have just tested it by restarting the map over and over again approx. 20 times and everytime i got th first hero... Would you say that classifies as not working? ;) Seriously though, what could be wrong?

Trigger:
  • Random Setup
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set HeroesRandom[1] = Paladin
      • Set HeroesRandom[2] = Paladine
      • Set HeroesRandom[3] = Archmage
      • Set HeroesRandom[4] = Archsorceress
      • Set HeroesRandom[5] = Archer
      • Set HeroesRandom[6] = Ranger

Trigger:
  • Random hero
    • Events
      • Dialog - A dialog button is clicked for HeroChoosing
    • Conditions
      • (Clicked dialog button) Equal to HeroButtons[7]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering player) is in Team1) Equal to True
        • Then - Actions
          • Unit - Create 1 HeroesRandom[(Random integer number between 1 and 6)] for (Triggering player) at (Center of Team 1 Player Spawn <gen>) facing (Center of Team 2 Player Spawn <gen>)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering player) is in Team2) Equal to True
            • Then - Actions
              • Unit - Create 1 HeroesRandom[(Random integer number between 1 and 6)] for (Triggering player) at (Center of Team 2 Player Spawn <gen>) facing (Center of Team 1 Player Spawn <gen>)
            • Else - Actions
              • Do nothing
 

Komaqtion

You can change this now in User CP.
Reaction score
469
Go into File -> Preferences -> Test Map -> Uncheck "Use Fixed Random Seed"
and then try again, or just try it out on b.net ;)
 

95blojoe

New Member
Reaction score
7
Okay... I have just tested it by restarting the map over and over again approx. 20 times and everytime i got th first hero... Would you say that classifies as not working? ;) Seriously though, what could be wrong?

Trigger:
  • Random Setup
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set HeroesRandom[1] = Paladin
      • Set HeroesRandom[2] = Paladine
      • Set HeroesRandom[3] = Archmage
      • Set HeroesRandom[4] = Archsorceress
      • Set HeroesRandom[5] = Archer
      • Set HeroesRandom[6] = Ranger

Trigger:
  • Random hero
    • Events
      • Dialog - A dialog button is clicked for HeroChoosing
    • Conditions
      • (Clicked dialog button) Equal to HeroButtons[7]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering player) is in Team1) Equal to True
        • Then - Actions
          • Unit - Create 1 HeroesRandom[(Random integer number between 1 and 6)] for (Triggering player) at (Center of Team 1 Player Spawn <gen>) facing (Center of Team 2 Player Spawn <gen>)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering player) is in Team2) Equal to True
            • Then - Actions
              • Unit - Create 1 HeroesRandom[(Random integer number between 1 and 6)] for (Triggering player) at (Center of Team 2 Player Spawn <gen>) facing (Center of Team 1 Player Spawn <gen>)
            • Else - Actions
              • Do nothing

Set 2 other thing too :p

Set random_count = 6
Set random_hero = (random integer between 1 and random_count)
and all the hero variables and than..

next trigger
Event
(you choose when it shall random ) :p
Conditions
Actions
Unit - create 1 heroesrandom[random_hero] for triggering player at center of playable map facing defualt buldings degrees

Solved? :D
 

mr_fj

New Member
Reaction score
10
Set 2 other thing too :p

Set random_count = 6
Set random_hero = (random integer between 1 and random_count)
and all the hero variables and than..

next trigger
Event
(you choose when it shall random ) :p
Conditions
Actions
Unit - create 1 heroesrandom[random_hero] for triggering player at center of playable map facing defualt buldings degrees

Solved? :D

Hmm I don't see why that would make any difference at all, but I guess it's worth a try :)
 

mr_fj

New Member
Reaction score
10
Set 2 other thing too :p

Set random_count = 6
Set random_hero = (random integer between 1 and random_count)
and all the hero variables and than..

next trigger
Event
(you choose when it shall random ) :p
Conditions
Actions
Unit - create 1 heroesrandom[random_hero] for triggering player at center of playable map facing defualt buldings degrees

Solved? :D

Ups I forgot to + rep you and say my thanks :) I hope it works as intended :)
 

mr_fj

New Member
Reaction score
10
Go into File -> Preferences -> Test Map -> Uncheck "Use Fixed Random Seed"
and then try again, or just try it out on b.net ;)

Wow I totally overlooked that post, sorry. Hmm I guess your version saves me some triggers and variables ;)
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      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