a bug on combining item

caelez

New Member
Reaction score
0
can any1 give me a sample trigger which is : 2 same item (Named it A)and 1 different item (Named it B) combine into another item (Named it C)?
i created a trigger which set up as above, but when in game, there is only 2 item (A and B) required and combined into item C.
which is 1 item A is able to work out on the trigger already.
 

Chewbalka

New Member
Reaction score
14
click on the trigger, to the right it shows

Trigger comment:
(white empty box)

Trigger function:
Triggername
events
....

Right click on the trigger name click on copy as text. you can test that it works by using Ctrl + V

Put wc3 tags around it and post it.
Trigger:
  • [/wc3 ]
    • Also images and the internet does not work that way, assuming the picture was of the trigger its uneccessary to use one anyway.
 

esb

Because none of us are as cruel as all of us.
Reaction score
328
He asked for you to copy and paste your trigger onto here so we can see exactly the problem.
IT sounds like it may be the conditions, you're checking for any of the two item and then reproducing item C.
Example:
Your trigger, it seems:
If Item A OR Item B then Item C

Should be:
If Item A AND Item B then Item C.

Much more complicated than that but that's the gist of it.
 

caelez

New Member
Reaction score
0
MKB
Events
Unit - A unit Acquires an item
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Hero manipulating item) has an item of type Javelin) Equal to True
((Hero manipulating item) has an item of type Javelin) Equal to True
((Hero manipulating item) has an item of type Demon Edge) Equal to True
Then - Actions
Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
Item - Remove (Item carried by (Hero manipulating item) of type Demon Edge)
Hero - Create Monkey King Bar and give it to (Triggering unit)
Unit - Add Combine to (Triggering unit)
Wait 1.00 seconds
Unit - Remove Combine from (Triggering unit)
Else - Actions
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
612
You have to check whether the unit has 2 Javelins. This way the first condition is correct so long as there's one Javelin in the inventory.
 

kaftis10

Member
Reaction score
0
Events:
Unit - A unit Acquires an item
Conditions:
Actions:
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Hero manipulating item) has an item of type [A]) Equal to True
((Hero manipulating item) has an item of type ) Equal to True
Then - Actions
Item - Remove (Item carried by (Hero manipulating item) of type [A])
Item - Remove (Item carried by (Hero manipulating item) of type )
Hero - Create [C] and give it to (Hero manipulating item)
Else - Actions
Do nothing

It looks like yours but i m bored to read it anyway my triggers are like this and all works perfect hope it helps
 

Chewbalka

New Member
Reaction score
14
can any1 give me a sample trigger which is : 2 same item (Named it A)and 1 different item (Named it B) combine into another item (Named it C)?
i created a trigger which set up as above, but when in game, there is only 2 item (A and B) required and combined into item C.
which is 1 item A is able to work out on the trigger already.

that doesent fix his issue, he needs to check for the same item type twice but not find the same item object. I have to go so i do not have the time to trigger that for now.
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
612
Try using an integer variable to store the number of Item A's held by a unit.
 

kaftis10

Member
Reaction score
0
that doesent fix his issue, he needs to check for the same item type twice but not find the same item object. I have to go so i do not have the time to trigger that for now.

oh now i see my mistake i m afraid i dont know this one
 

Kayoss666

Member
Reaction score
7
MKB
Events
Unit - A unit Acquires an item
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Hero manipulating item) has an item of type Javelin) Equal to True
((Hero manipulating item) has an item of type Javelin) Equal to True
((Hero manipulating item) has an item of type Demon Edge) Equal to True
Then - Actions
Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
Item - Remove (Item carried by (Hero manipulating item) of type Demon Edge)
Hero - Create Monkey King Bar and give it to (Triggering unit)
Unit - Add Combine to (Triggering unit)
Wait 1.00 seconds
Unit - Remove Combine from (Triggering unit)
Else - Actions

if you don't want to use a integer check you could do this:
Trigger:
  • Events
    • Unit - A unit Acquires an item
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Hero manipulating item) has an item of type Javelin) Equal to True
        • Then - Actions
          • Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Hero manipulating item) has an item of type Javelin) Equal to True
              • ((Hero manipulating item) has an item of type Demon Edge) Equal to True
          • Then - Actions
            • Item - Remove (Item carried by (Hero manipulating item) of type Javelin)
            • Item - Remove (Item carried by (Hero manipulating item) of type Demon Edge)
            • Hero - Create Monkey King Bar and give it to (Hero manipulating item)
            • Unit - Add Combine to (Hero manipulating item)
            • Wait 1.00 seconds
            • Unit - Remove Combine from (Hero manipulating item)
          • Else - Actions
            • Hero - Create Javelin and give it to (Hero manipulating item)
        • Else - Actions

this would check for two javelins.
 

Chewbalka

New Member
Reaction score
14
You will have to make sure they actually have 2 of the item before removing any.

Trigger:
  • For each (Integer A) from 1 to 6, do (Actions)
    • Loop - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Item-type of (Item carried by Players_Hero in slot (Integer A))) Equal to Crate of Batteries
        • Then - Actions
          • Set ItemCount = (ItemCount + 1)
        • Else - Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • ItemCount Greater than 1
      • Then - Actions
        • -----Kayosses Code here-----
 

Kayoss666

Member
Reaction score
7
You will have to make sure they actually have 2 of the item before removing any.

Trigger:
  • For each (Integer A) from 1 to 6, do (Actions)
    • Loop - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Item-type of (Item carried by Players_Hero in slot (Integer A))) Equal to Crate of Batteries
        • Then - Actions
          • Set ItemCount = (ItemCount + 1)
        • Else - Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • ItemCount Greater than 1
      • Then - Actions
        • -----Kayosses Code here-----

no if you do like i show you dont have to check first. if it finds the first one it then removes it and looks for another but if it doesn't find the second one it gives you back the first one. no other check is needed.
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
612
Wouldn't that lead to an infinite loop, since the trigger itself gives the unit an item, causing it to fire again?
 

Kayoss666

Member
Reaction score
7
Wouldn't that lead to an infinite loop, since the trigger itself gives the unit an item, causing it to fire again?

Oops yeah it would but two ways around that:
change my:
Trigger:
  • Hero - Create Javelin and give it to (Hero manipulating item)

to
Trigger:
  • Actions
    • Trigger - Turn off (This trigger)
    • Hero - Create Javelin and give it to (Hero manipulating item)
    • Trigger - Turn on (This trigger)


or you could add the codition
Trigger:
  • (Item-type of (Item being manipulated)) Equal to Monkey King Bar
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
612
You should have a generic trigger that fires for A unit acquires an item. If you have another similar trigger B, it won't be turned off and the loop still exists.
 

caelez

New Member
Reaction score
0
cant understand how to make the "Loop-Action" things when i done "For each interger A, do action"
 
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