- Joined
- Sep 1, 2007
- Messages
- 255
--------------------------------------------------------------------------------------
BEFORE YOU READ THIS TUTORIAL, YOU MUST READ THIS TUTORIAL FIRST: http://www.hiveworkshop.com/forums/f279/rdzs-incredible-item-stacking-system-doom-20961/
--------------------------------------------------------------------------------------
Introduction:
Hello, all. In this tutorial, I will show you how to make item recipes using item stacking. You must first read RDZ's Incredible Item Stacking System of Doom before you read on.
--------------------------------------------------------------------------------------
What You Need:
Warcraft 3: TFT World Editor
A moderate knowledge of GUI triggering
Knowledge from RDZ's Incredible Item Stacking System of Doom
--------------------------------------------------------------------------------------
Variables:
ItemMerge1 = Item-Type
ItemMerge2 = Item-Type
ItemMerge3 = Item-Type
ItemMergeCharge1 = Integer
ItemMergeCharge2 = Integer
ItemMergeCharge3 = Integer
--------------------------------------------------------------------------------------
Step One:
-
Makrura Shell Armor
-
Events
- Unit - A unit Acquires an item
-
Events
Step Two:
On to the conditions:
-
Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Item-type of (Item being manipulated)) Equal to Makrura Shell Armor Recipe
- (Charges remaining in (Item carried by (Hero manipulating item) of type Makrura Shell Armor Recipe)) Greater than or equal to 1
- (Item-type of (Item being manipulated)) Equal to |c007d7d7dMakrura Shell|r
- (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dMakrura Shell|r)) Greater than or equal to 1
- (Item-type of (Item being manipulated)) Equal to |c007d7d7dBronze Ingot|r
- (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dBronze Ingot|r)) Greater than or equal to 1
-
Conditions
-
Or - Any (Conditions) are true
Step Three:
The actions:
-
Actions
- Set ItemMerge1 = |c007d7d7dMakrura Shell|r
- Set ItemMerge2 = |c007d7d7dBronze Ingot|r
- Set ItemMerge3 = Makrura Shell Armor Recipe
- Set ItemMergeCharge1 = (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dMakrura Shell|r))
- Set ItemMergeCharge2 = (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dBronze Ingot|r))
- Set ItemMergeCharge3 = (Charges remaining in (Item carried by (Hero manipulating item) of type Makrura Shell Armor Recipe))
Step Four:
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Hero has an item of type ItemMerge1) Equal to True
- (Hero has an item of type ItemMerge2) Equal to True
- (Hero has an item of type ItemMerge3) Equal to True
- ItemMergeCharge1 Greater than or equal to 3
- ItemMergeCharge2 Greater than or equal to 2
- ItemMergeCharge3 Greater than or equal to 1
-
Conditions
-
And - All (Conditions) are true
- Then - Actions
- Else - Actions
-
If - Conditions
Step Five:
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge1 Equal to 3
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge1)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge1 - 3)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Step Six:
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge1 Equal to 3
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge1)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge1 - 3)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge2 Equal to 2
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge2)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge2 - 2)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Step Seven:
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge1 Equal to 3
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge1)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge1 - 3)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge2 Equal to 2
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge2)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge2) to (ItemMergeCharge2 - 2)
-
If - Conditions
- Item - Remove (Item carried by Hero of type ItemMerge3)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge3 Equal to 1
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge3)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge3) to (ItemMergeCharge3 - 1)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Step Eight:
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge1 Equal to 3
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge1)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge1 - 3)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge2 Equal to 2
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge2)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge2) to (ItemMergeCharge2 - 2)
-
If - Conditions
- Item - Remove (Item carried by Hero of type ItemMerge3)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge3 Equal to 1
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge3)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge3) to (ItemMergeCharge3 - 1)
-
If - Conditions
- Hero - Create Makrura Shell Armor and give it to (Hero manipulating item)
- Special Effect - Create a special effect attached to the overhead of (Hero manipulating item) using Abilities\Spells\Other\TalkToMe\TalkToMe.mdl
- Set SpecialEffect = (Last created special effect)
- Floating Text - Create floating text that reads You made |c006969FF... above (Hero manipulating item) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
- Floating Text - Set the velocity of (Last created floating text) to 80.00 towards 90.00 degrees
- Floating Text - Change (Last created floating text): Disable permanence
- Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
- Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
- Wait 2.00 seconds
- Special Effect - Destroy SpecialEffect
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
--------------------------------------------------------------------------------------
Conclusion:
After all that work on the trigger, it should come out like this:
-
Makrura Shell Armor
-
Events
- Unit - A unit Acquires an item
-
Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Item-type of (Item being manipulated)) Equal to Makrura Shell Armor Recipe
- (Charges remaining in (Item carried by (Hero manipulating item) of type Makrura Shell Armor Recipe)) Greater than or equal to 1
- (Item-type of (Item being manipulated)) Equal to |c007d7d7dMakrura Shell|r
- (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dMakrura Shell|r)) Greater than or equal to 1
- (Item-type of (Item being manipulated)) Equal to |c007d7d7dBronze Ingot|r
- (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dBronze Ingot|r)) Greater than or equal to 1
-
Conditions
-
Or - Any (Conditions) are true
-
Actions
- Set ItemMerge1 = |c007d7d7dMakrura Shell|r
- Set ItemMerge2 = |c007d7d7dBronze Ingot|r
- Set ItemMerge3 = Makrura Shell Armor Recipe
- Set ItemMergeCharge1 = (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dMakrura Shell|r))
- Set ItemMergeCharge2 = (Charges remaining in (Item carried by (Hero manipulating item) of type |c007d7d7dBronze Ingot|r))
- Set ItemMergeCharge3 = (Charges remaining in (Item carried by (Hero manipulating item) of type Makrura Shell Armor Recipe))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Hero has an item of type ItemMerge1) Equal to True
- (Hero has an item of type ItemMerge2) Equal to True
- (Hero has an item of type ItemMerge3) Equal to True
- ItemMergeCharge1 Greater than or equal to 3
- ItemMergeCharge2 Greater than or equal to 2
- ItemMergeCharge3 Greater than or equal to 1
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge1 Equal to 3
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge1)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge1) to (ItemMergeCharge1 - 3)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ItemMergeCharge2 Equal to 2
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge2)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge2) to (ItemMergeCharge2 - 2)
-
If - Conditions
- ItemMergeCharge3 Equal to 1
-
Then - Actions
- Item - Remove (Item carried by Hero of type ItemMerge3)
-
Else - Actions
- Item - Set charges remaining in (Item carried by Hero of type ItemMerge2) to (ItemMergeCharge3 - 1)
-
If - Conditions
- Hero - Create Makrura Shell Armor and give it to (Hero manipulating item)
- Special Effect - Create a special effect attached to the overhead of Hero using Abilities\Spells\Other\TalkToMe\TalkToMe.mdl
- Set SpecialEffect = (Last created special effect)
- Floating Text - Create floating text that reads You made |c006969FF... above Hero with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
- Floating Text - Set the velocity of (Last created floating text) to 80.00 towards 90.00 degrees
- Floating Text - Change (Last created floating text): Disable permanence
- Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
- Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
- Wait 2.00 seconds
- Special Effect - Destroy SpecialEffect
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Else - Actions
- Do nothing
-
If - Conditions
-
Events
1. You pick up the item and the conditions check to see if you either own it or to see if you just acquired it.
2. The actions either removes the item or sets the item charge depending if the item has the exact amount required or has more than is needed.
3. The actions then creates the target item and makes some awesome special effects and floating text.
--------------------------------------------------------------------------------------
Credits:
Me, onisaiyan808, of course. :3
And Rao Dao Zao, the person who inspired this tutorial to come into fruition.
--------------------------------------------------------------------------------------