- Joined
- Apr 24, 2012
- Messages
- 9,842
the Line Damage. 
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
problem is that idk how u can get the angle of the surface where the ball hits in Warcraft
Custom script: call BJDebugMsg(udg_FC_Name[udg_A])
Custom script: if udg_FC_Name[udg_A] == "Trueshot" then
Custom script: set udg_TempUnit = ClosestOfGroupLoc(udg_TempGroup, udg_TempPoints[1])
Set TempPoints[2] = (Position of TempUnit)
Set TempPoints[3] = (TempPoints[1] offset by (Distance between TempPoints[1] and TempPoints[2]) towards FC_Angle[A] degrees)
Set TempReals[2] = (1.00 + (((Distance between TempPoints[2] and TempPoints[3]) x 0.25) x 0.01))
Set TempReals[3] = ((FC_Damage[A] x (((FC_Distance[A] x 0.03) x 0.01) + 1.00)) x TempReals[2])
Custom script: call BJDebugMsg(R2S(udg_TempReals[3]))
Set DamageEventType = 2
Set DamageType = 8
Unit - Cause FC_Caster[A] to damage TempUnit, dealing TempReals[3] damage of attack type Chaos and damage type Universal
Custom script: call RemoveLocation(udg_TempPoints[2])
Custom script: call RemoveLocation(udg_TempPoints[3])
Custom script: endif
Custom script: set udg_TempUnit = ClosestOfGroupLoc(udg_TempGroup, udg_TempPoints[1])
Set TempPoints[2] = (Position of TempUnit)
Set TempPoints[3] = (TempPoints[1] offset by (Distance between TempPoints[1] and TempPoints[2]) towards FC_Angle[A] degrees)
Set TempReals[2] = (1.00 + (((Distance between TempPoints[2] and TempPoints[3]) x 0.25) x 0.01))
Set TempReals[3] = ((FC_Damage[A] x (((FC_Distance[A] x 0.03) x 0.01) + 1.00)) x TempReals[2])
Custom script: call BJDebugMsg(R2S(udg_TempReals[3]))
Set DamageEventType = 2
Set DamageType = 8
Unit - Cause FC_Caster[A] to damage TempUnit, dealing TempReals[3] damage of attack type Chaos and damage type Universal
Custom script: call RemoveLocation(udg_TempPoints[2])
Custom script: call RemoveLocation(udg_TempPoints[3])
Item Recipe System

Events


Unit - A unit Acquires an item

Conditions

Actions


For each (Integer TempIndex) from 1 to RecipeMax, do (Actions)



Loop - Actions




Set X = 0




Set RecipeTempItems[1] = RecipeItem1[TempIndex]




Set RecipeTempItems[2] = RecipeItem2[TempIndex]




Set RecipeTempItems[3] = RecipeItem3[TempIndex]




Set RecipeTempItems[4] = RecipeItem4[TempIndex]




Set RecipeTempItems[5] = RecipeItem5[TempIndex]




For each (Integer TempInteger) from 1 to RecipeNumberOfItems[TempIndex], do (Actions)





Loop - Actions






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








((Triggering unit) has an item of type RecipeTempItems[TempInteger]) Equal to True







Then - Actions








Set X = (X + 1)







Else - Actions




If (All Conditions are True) then do (Then Actions) else do (Else Actions)





If - Conditions






X Equal to RecipeNumberOfItems[TempIndex]





Then - Actions






Item - Remove (Item carried by (Triggering unit) of type RecipeItem1[TempIndex])






Item - Remove (Item carried by (Triggering unit) of type RecipeItem2[TempIndex])






Item - Remove (Item carried by (Triggering unit) of type RecipeItem3[TempIndex])






Item - Remove (Item carried by (Triggering unit) of type RecipeItem4[TempIndex])






Item - Remove (Item carried by (Triggering unit) of type RecipeItem5[TempIndex])






Hero - Create RecipeResult[TempIndex] and give it to (Triggering unit)






Special Effect - Create a special effect attached to the origin of (Triggering unit) using Abilities\Spells\Items\AIem\AIemTarget.mdl






Special Effect - Destroy (Last created special effect)





Else - Actions
Recipe Setup

Events


Map initialization

Conditions

Actions


-------- Arkenstone --------


Set RecipeMax = (RecipeMax + 1)


Set RecipeItem1[RecipeMax] = Value


Set RecipeItem2[RecipeMax] = Value


Set RecipeItem3[RecipeMax] = Value


Set RecipeItem4[RecipeMax] = Value


Set RecipeNumberOfItems[RecipeMax] = 4


Set RecipeResult[RecipeMax] = Value