is there any way to make this trigger a little simpler? :)

soulmaka

New Member
Reaction score
2
okay, i have been making a quest trigger for an hour now, but it seems that making a quest trigger for me is quite hard,.. xD I've been making Spell triggers and Hero taverns, dialogues, etc..

haha, i hate making quest triggers, because ...

1. I always click, (player number(owner of(triggering/buying/attacking unit))), is there anyway to make this simple? man I'm TIRED of clicking.. xD

2. Can I use loops for the no.1? xD

3. Here's my code.. :D yeah, there might be leaks right now, but the hell I care for that now, i can fix that later, i just want how to make things on making quest trigger simpler.. :D

code for quest finish/claiming rewards .. :D
Trigger:
  • Quests Market
    • Events
      • Unit - A unit comes within 200.00 of |cff00ffffQuest Market|r 0026 <gen>
      • Unit - A unit comes within 200.00 of |cff00ffffQuest Market|r 0027 <gen>
    • Conditions
      • (Triggering unit) Equal to QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Triggering unit) Equal to QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]
          • QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] Equal to 30
          • (QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))] has QuestKillCreeps_Item[(Player number of (Owner of (Buying unit)))]) Equal to True
        • Then - Actions
          • Set QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] = 0
          • Item - Remove QuestKillCreeps_Item[(Player number of (Owner of (Buying unit)))]
          • Player - Add 2500 to (Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Current gold
          • Hero - Add 1000 experience to QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))], Show level-up graphics
          • Game - Display to (Player group((Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]))) for 10.00 seconds the text: Thanks you for help...
        • Else - Actions
          • Game - Display to (Player group((Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]))) for 10.00 seconds the text: Go !! Fullfil your ...



Code for Quest inquiry :D
Trigger:
  • Quest Kill Creeps
    • Events
      • Unit - A unit Sells an item (from shop)
    • Conditions
      • (Item-type of (Sold Item)) Equal to Quest: Kill Creeps
    • Actions
      • Set QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))] = (Buying unit)
      • Set QuestKillCreeps_Item[(Player number of (Owner of (Buying unit)))] = (Sold Item)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Less than or equal to 30
        • Then - Actions
          • Set QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] = 0
        • Else - Actions
          • Item - Remove QuestKillCreeps_Item[(Player number of (Owner of (Buying unit)))]
          • Player - Add 500 to (Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Current gold
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Greater than 30
        • Then - Actions
        • Else - Actions


Code for Quest in action.. :)
Trigger:
  • Quest Kill Creeps p2
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Triggering unit)) Equal to Neutral Hostile
          • ((Triggering unit) is A Hero) Equal to False
          • (Killing unit) Equal to QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]
          • QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] Less than 30
          • (QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))] has QuestKillCreeps_Item[(Player number of (Owner of (Buying unit)))]) Equal to True
        • Then - Actions
          • Set QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] = (QuestsCreepsKill[(Player number of (Owner of (Buying unit)))] + 1)
          • Game - Display to (Player group((Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]))) the text: ((Name of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) + ( has killed + ((String(QuestsCreepsKill[(Player number of (Owner of (Buying unit)))])) + Creeps!)))
        • Else - Actions
          • Game - Display to (Player group((Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]))) the text: You already have co...
 

esb

Because none of us are as cruel as all of us.
Reaction score
329
Right off the bat, for the first trigger, Quests Market, the event is Unit enters region. Yet your Condition and Actions say "Buying unit". Fix it. (Triggering unit should work fine).

You don't have to use variables for every action. For example:
Player - Add 2500 to (Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Current gold
Can be
Player - Add 2500 to (Owner of (Buying unit)) Current gold
 

Romek

Super Moderator
Reaction score
963
> I always click, (player number(owner of(triggering/buying/attacking unit))), is there anyway to make this simple? man I'm TIRED of clicking.. xD
That's just what GUI is, really. If you want to code faster, learn JASS. :p

> Can I use loops for the no.1? xD
You'll realise you can use loops when you find you're repeating the same code with only a minor difference such as a player number.
 

soulmaka

New Member
Reaction score
2
Right off the bat, for the first trigger, Quests Market, the event is Unit enters region. Yet your Condition and Actions say "Buying unit". Fix it. (Triggering unit should work fine).

You don't have to use variables for every action. For example:
Player - Add 2500 to (Owner of QuestCreepsKill_TU[(Player number of (Owner of (Buying unit)))]) Current gold
Can be
Player - Add 2500 to (Owner of (Buying unit)) Current gold

thanks!! xD that makes it easier for me right? :D

> I always click, (player number(owner of(triggering/buying/attacking unit))), is there anyway to make this simple? man I'm TIRED of clicking.. xD
That's just what GUI is, really. If you want to code faster, learn JASS. :p

> Can I use loops for the no.1? xD
You'll realise you can use loops when you find you're repeating the same code with only a minor difference such as a player number.

Is it really easy to learn JASS? i mean, Computer Science is my course in college now.. xD is there a big difference between the two? the C programming and JASS? xD
 

SouLEDGE

Damn you advanced calculus
Reaction score
75
Jass isn't that difficult to learn, I read up and practice when I have free time (which is hardly ever - damn projects)
and I can get some pretty basic things done that took long to click for in GUI
The concept of Jass will be easier to learn if you're doing programming, but it is a lil different.
 

tommerbob

Minecraft. :D
Reaction score
110
Is it really easy to learn JASS? i mean, Computer Science is my course in college now.. xD is there a big difference between the two? the C programming and JASS? xD

As a recent GUI > Jass switcher who has no programming experience, I attest that learning Jass is not overly difficult, it just takes some patience and practice. Once you get it, GUI starts looking like poop. (sorry for the tasteful analogy :D.) If you already have some programming experience, it will be that much easier for you to learn.
 

soulmaka

New Member
Reaction score
2
haha.. which means, i must start learning JASS? xD but i dunno how to have a JASS on my trigger, i know about the conversion, but i think it's kinda boring? because you Write JASS code in just white background? O_O and black color fonts.. >_<
 

Ayanami

칼리
Reaction score
288
haha.. which means, i must start learning JASS? xD but i dunno how to have a JASS on my trigger, i know about the conversion, but i think it's kinda boring? because you Write JASS code in just white background? O_O and black color fonts.. >_<

If you have NewGen, it won't be just black and white. You have blue for keywords, purple for natives, etc.

In my honest opinion, you should learn vJASS. I used to be a GUI user (for more than 2 years). GUI itself is inefficient and there are some things in which only JASS can achieve. Learning JASS wasn't easy in my opinion. Had no knowledge of programming what-so-ever. But I still picked up JASS after a few weeks.

Plus, thanks to JASS, learning Java in classes is simple as ABC :D
 

tommerbob

Minecraft. :D
Reaction score
110
haha.. which means, i must start learning JASS? xD but i dunno how to have a JASS on my trigger, i know about the conversion, but i think it's kinda boring? because you Write JASS code in just white background? O_O and black color fonts.. >_<

Like Ayanami said, NewGen WE is awesome for Jass coding, because it is (1) color-coded for the different functions, plus it includes all the functions, so you don't have to memorize everything.
 

soulmaka

New Member
Reaction score
2
Like Ayanami said, NewGen WE is awesome for Jass coding, because it is (1) color-coded for the different functions, plus it includes all the functions, so you don't have to memorize everything.

how will I know that my WE is NewGen? cause there's this guy said that i can only edit Maximum mana cost if i have NewGen.. but it seems that I can even exceed 99999 Mana Cost.. :D
 
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