Point Target Spell further then point

xAnaMorphine

Active Member
Reaction score
43
Hey :<

I picked up some Missile System and I want to change the functionallity to my needs. So this is set in the System:
Trigger:
  • http://www.youtube.com/watch?v=4fXPQZQLWNA&amp;translated=1
    • Set QJ_TargetPoint = (Target point of ability being cast)

If I cast the Ability, the missile will only move to the point I selected.
Am I able to change it somehow so that the missile moves further?
 

Accname

2D-Graphics enthusiast
Reaction score
1,463
how about uploading the code here? would make it alot more easier for us to tell you what to do.
 

Ashlebede

New Member
Reaction score
43
Point with polar offset?

Trigger:
  • Set loc = ((Target point of ability being cast) offset by 100.00 towards (Angle from (Position of (Triggering unit)) to (Target point of ability being cast)) degrees)


Ta-Daa! :D (Now remove the leaks)
 

xAnaMorphine

Active Member
Reaction score
43
Point with polar offset?

Trigger:
  • Set loc = ((Target point of ability being cast) offset by 100.00 towards (Angle from (Position of (Triggering unit)) to (Target point of ability being cast)) degrees)


Ta-Daa! :D (Now remove the leaks)

Heh, I came with this up so far.
Does Offset leak btw?

Trigger:
  • Trigger
    • Set TEMP_Point = (Target point of ability being cast)
    • Set loc = (TEMP_Point offset by 100.00 towards (Angle from (Position of (Triggering unit)) to TEMP_Point) degrees)
    • Custom script: call RemoveLocation(udg_TEMP_Point)
    • Custom script: call RemoveLocation(udg_loc)
 

Crazy_Dead

New Member
Reaction score
24
(TEMP_Point offset by 100.00 towards (Angle from (Position of (Triggering unit)) to TEMP_Point) degrees)

All of you who says triggering dont leak, you are maybe right. NO idea.

But I always make a variable to Triggering Unit also. :)
 

xAnaMorphine

Active Member
Reaction score
43
problem is, it wont work because the missile will always run into the middle of the map somehow
 

Komaqtion

You can change this now in User CP.
Reaction score
469
Please show the entire code for the spell...

And also, there is still a leak there:
Trigger:
  • Set TempPoint = (Position of (Triggering unit))
    • Set TEMP_Point = (Target point of ability being cast)
    • Set loc = (TEMP_Point offset by 100.00 towards (Angle from TempPoint to TEMP_Point) degrees)
    • Custom script: call RemoveLocation(udg_TempPoint)
    • Custom script: call RemoveLocation(udg_TEMP_Point)
    • Custom script: call RemoveLocation(udg_loc)
 

xAnaMorphine

Active Member
Reaction score
43
okay here is the whole system
http://www.hiveworkshop.com/forums/...6279/?prev=search=jeffq%20missile&d=list&r=20

Trigger:
  • QJS Hash Table
    • Ereignisse
      • Map initialization
    • Bedingungen
    • Aktionen
      • Hashtabelle - Create a hashtable
      • Set QJS_arrowTable = (Last created hashtable)



Trigger:
  • QJS AttackDamageType
    • Ereignisse
      • Zeit - Elapsed game time is 0.00 seconds
    • Bedingungen
    • Aktionen
      • -------- Attack Type Presets --------
      • Set QJS_atkTypePreset[0] = Zaubersprüche
      • Set QJS_atkTypePreset[1] = Normal
      • Set QJS_atkTypePreset[2] = Durchbohren
      • Set QJS_atkTypePreset[3] = Belagerung
      • Set QJS_atkTypePreset[4] = Magie
      • Set QJS_atkTypePreset[5] = Chaos
      • Set QJS_atkTypePreset[6] = Held
      • -------- Damage Type Presets --------
      • Set QJS_dmgTypePreset[0] = Unbekannt
      • Set QJS_dmgTypePreset[1] = Normal
      • Set QJS_dmgTypePreset[2] = Erweitert
      • Set QJS_dmgTypePreset[3] = Feuer
      • Set QJS_dmgTypePreset[4] = Kälte
      • Set QJS_dmgTypePreset[5] = Blitz
      • Set QJS_dmgTypePreset[6] = Gift
      • Set QJS_dmgTypePreset[7] = Seuche
      • Set QJS_dmgTypePreset[8] = Göttlich
      • Set QJS_dmgTypePreset[9] = Magie
      • Set QJS_dmgTypePreset[10] = Schall
      • Set QJS_dmgTypePreset[11] = Säure
      • Set QJS_dmgTypePreset[12] = Gewalt
      • Set QJS_dmgTypePreset[13] = Tod
      • Set QJS_dmgTypePreset[14] = Geist
      • Set QJS_dmgTypePreset[15] = Pflanze
      • Set QJS_dmgTypePreset[16] = Defensiv
      • Set QJS_dmgTypePreset[17] = Demolierung
      • Set QJS_dmgTypePreset[18] = Schleichendes Gift
      • Set QJS_dmgTypePreset[19] = Geistverbindung
      • Set QJS_dmgTypePreset[20] = Schattenschlag
      • Set QJS_dmgTypePreset[21] = Allgemein


Trigger:
  • Arrow Create
    • Ereignisse
    • Bedingungen
    • Aktionen
      • Set QJS_tempPos = (Position of QJ_Caster)
      • -------- Create Arrow Unit for Caster --------
      • Einheit - Create 1 QJ_Model for (Owner of QJ_Caster) at QJS_tempPos facing (Facing of QJ_Caster) degrees
      • Animation - Change (Last created unit)&#039;s size to ((100.00 x QJ_Size)%, (100.00 x QJ_Size)%, ((100.00 x QJ_Size) + 1.00)%) of its original size
      • -------- Homing Limit for Target Unit only --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • QJ_TargetUnit Gleich Keine Einheit
        • &#039;THEN&#039;-Aktionen
          • Set QJ_Homing = False
        • &#039;ELSE&#039;-Aktionen
      • -------- Attack Type ID Limit --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • Or - Any (Conditions) are true
            • Bedingungen
              • QJ_attackTypeID Größer als 6
              • QJ_attackTypeID Kleiner als 0
        • &#039;THEN&#039;-Aktionen
          • Set QJ_attackTypeID = 0
        • &#039;ELSE&#039;-Aktionen
      • -------- Damage Type Limit --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • Or - Any (Conditions) are true
            • Bedingungen
              • QJ_damageTypeID Größer als 21
              • QJ_attackTypeID Kleiner als 0
        • &#039;THEN&#039;-Aktionen
          • Set QJ_damageTypeID = 0
        • &#039;ELSE&#039;-Aktionen
      • -------- Save stuff to hashtable of Arrow System --------
      • -------- Target Unit or Target Position --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • QJ_TargetUnit Gleich Keine Einheit
        • &#039;THEN&#039;-Aktionen
          • -------- Target Point --------
          • -------- Calculate Distance and Angle --------
          • Set QJS_Angle = (Angle from QJS_tempPos to QJ_TargetPoint)
          • Set QJS_Distance = (Distance between QJS_tempPos and QJ_TargetPoint)
        • &#039;ELSE&#039;-Aktionen
          • Set QJS_tempPos_Target = (Position of QJ_TargetUnit)
          • -------- Target Unit --------
          • Set QJS_Angle = (Angle from QJS_tempPos to QJS_tempPos_Target)
          • Set QJS_Distance = (Distance between QJS_tempPos and QJS_tempPos_Target)
          • -------- Save Victim --------
          • Hashtabelle - Save Handle OfQJ_TargetUnit as (Key victim) of (Key (Last created unit)) in QJS_arrowTable
          • -------- Clear --------
          • Custom script: call RemoveLocation(udg_QJS_tempPos_Target)
      • -------- Save Caster --------
      • Hashtabelle - Save Handle OfQJ_Caster as (Key caster) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save if Homing is False --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • QJ_Homing Gleich False
        • &#039;THEN&#039;-Aktionen
          • -------- Save Angle --------
          • Hashtabelle - Save QJS_Angle as (Key angle) of (Key (Last created unit)) in QJS_arrowTable
          • -------- Save Distance --------
          • Hashtabelle - Save QJS_Distance as (Key dist) of (Key (Last created unit)) in QJS_arrowTable
        • &#039;ELSE&#039;-Aktionen
      • -------- Save Damage --------
      • Hashtabelle - Save QJ_Damage as (Key dmg) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save Speed --------
      • Hashtabelle - Save QJ_Speed as (Key spd) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save Attack Type ID --------
      • Hashtabelle - Save QJ_attackTypeID as (Key atkid) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save Damage Type ID --------
      • Hashtabelle - Save QJ_damageTypeID as (Key dmgid) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Collision --------
      • Hashtabelle - Save QJ_Collision as (Key collision) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Homing --------
      • Hashtabelle - Save QJ_Homing as (Key homing) of (Key (Last created unit)) in QJS_arrowTable
      • -------- AoE --------
      • Hashtabelle - Save QJ_AoE as (Key aoe) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save AoE Radius / AoE Effect --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • QJ_AoE Gleich True
        • &#039;THEN&#039;-Aktionen
          • -------- Save AoE Radius --------
          • Hashtabelle - Save QJ_AoERadius as (Key aoeradius) of (Key (Last created unit)) in QJS_arrowTable
          • -------- Save AoE Effect --------
          • Hashtabelle - Save QJ_AoESFX as (Key aoesfx) of (Key (Last created unit)) in QJS_arrowTable
        • &#039;ELSE&#039;-Aktionen
      • -------- Pierce --------
      • Hashtabelle - Save QJ_Pierce as (Key pierce) of (Key (Last created unit)) in QJS_arrowTable
      • -------- Save Pierce Damaged Group (Empty) --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • &#039;IF&#039;-Bedingungen
          • QJ_Pierce Gleich True
        • &#039;THEN&#039;-Aktionen
          • Custom script: set udg_QJS_DamagedGroup = CreateGroup()
          • Hashtabelle - Save Handle OfQJS_DamagedGroup as (Key dgroup) of (Key (Last created unit)) in QJS_arrowTable
        • &#039;ELSE&#039;-Aktionen
      • -------- Turn Collision for Arrow Off --------
      • Einheit - Turn collision for (Last created unit) Aus
      • -------- Add arrow unit to group --------
      • Einheitengruppe - Add (Last created unit) to QJS_arrowGroup
      • -------- Turn On Move --------
      • Auslöser - Turn on Arrow Move &lt;gen&gt;
      • -------- Clear --------
      • Custom script: call RemoveLocation(udg_QJS_tempPos)


Trigger:
  • Arrow Move
    • Ereignisse
      • Zeit - Every 0.03 seconds of game time
    • Bedingungen
    • Aktionen
      • -------- Pick every unit in arrow group --------
      • Einheitengruppe - Pick every unit in QJS_arrowGroup and do (Actions)
        • Schleifen - Aktionen
          • -------- Load values --------
          • -------- Load Caster --------
          • Set QJ_Caster = (Load (Key caster) of (Key (Picked unit)) in QJS_arrowTable)
          • -------- Load Victim --------
          • Set QJ_TargetUnit = (Load (Key victim) of (Key (Picked unit)) in QJS_arrowTable)
          • -------- Load Damage --------
          • Set QJ_Damage = (Load (Key dmg) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Speed --------
          • Set QJ_Speed = (Load (Key spd) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Attack Type ID --------
          • Set QJ_attackTypeID = (Load (Key atkid) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Damage Type ID --------
          • Set QJ_damageTypeID = (Load (Key dmgid) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Collision --------
          • Set QJ_Collision = (Load (Key collision) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load AoE --------
          • Set QJ_AoE = (Load (Key aoe) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Homing --------
          • Set QJ_Homing = (Load (Key homing) of (Key (Picked unit)) from QJS_arrowTable)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • &#039;IF&#039;-Bedingungen
              • QJ_Homing Gleich True
            • &#039;THEN&#039;-Aktionen
              • -------- Set Position --------
              • Set QJS_arrowPos = (Position of (Picked unit))
              • Set QJS_victimPos = (Position of QJ_TargetUnit)
              • -------- Update Angle &amp; Distance --------
              • Set QJS_Angle = (Angle from QJS_arrowPos to QJS_victimPos)
              • Set QJS_Distance = (Distance between QJS_arrowPos and QJS_victimPos)
              • -------- Distance - 50 if not Bug --------
              • Set QJS_Distance = (QJS_Distance - 50.00)
              • -------- Clear --------
              • Custom script: call RemoveLocation(udg_QJS_arrowPos)
              • Custom script: call RemoveLocation(udg_QJS_victimPos)
            • &#039;ELSE&#039;-Aktionen
              • -------- Load Angle --------
              • Set QJS_Angle = (Load (Key angle) of (Key (Picked unit)) from QJS_arrowTable)
              • -------- Load Distance --------
              • Set QJS_Distance = (Load (Key dist) of (Key (Picked unit)) from QJS_arrowTable)
          • -------- Load Pierce --------
          • Set QJ_Pierce = (Load (Key pierce) of (Key (Picked unit)) from QJS_arrowTable)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • &#039;IF&#039;-Bedingungen
              • QJ_Pierce Gleich True
            • &#039;THEN&#039;-Aktionen
              • Set QJS_DamagedGroup = (Load (Key dgroup) of (Key (Picked unit)) in QJS_arrowTable)
            • &#039;ELSE&#039;-Aktionen
          • -------- Movement --------
          • Set QJS_tempPos = (Position of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • &#039;IF&#039;-Bedingungen
              • QJS_Distance Größer als 0.00
            • &#039;THEN&#039;-Aktionen
              • -------- Move Position --------
              • Set QJS_movePos = (QJS_tempPos offset by QJ_Speed towards QJS_Angle degrees)
              • -------- Collision --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • &#039;IF&#039;-Bedingungen
                  • QJ_Collision Gleich True
                • &#039;THEN&#039;-Aktionen
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • &#039;IF&#039;-Bedingungen
                      • (Terrain pathing at QJS_movePos of type Begehbarkeit is off) Gleich True
                    • &#039;THEN&#039;-Aktionen
                      • -------- Hit Cliff/Rock --------
                      • Schwebender Text - Create floating text that reads Hit Obstacle! at QJS_movePos with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                      • Schwebender Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                      • Schwebender Text - Change (Last created floating text): Deaktivieren permanence
                      • Schwebender Text - Change the fading age of (Last created floating text) to 1.00 seconds
                      • Schwebender Text - Change the lifespan of (Last created floating text) to 1.50 seconds
                      • -------- If Pierce = False --------
                      • -------- Don&#039;t Do damage as pierce arrow will do damage while moving. --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_Pierce Gleich False
                        • &#039;THEN&#039;-Aktionen
                          • -------- Deal Damage If AoE is On --------
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • &#039;IF&#039;-Bedingungen
                              • QJ_AoE Gleich True
                            • &#039;THEN&#039;-Aktionen
                              • -------- Attack Type ID Coversion --------
                              • Set QJS_AttackType = QJS_atkTypePreset[QJ_attackTypeID]
                              • -------- Damage Type ID Coversion --------
                              • Set QJS_DamageType = QJS_dmgTypePreset[QJ_damageTypeID]
                              • -------- Load AoE Radius --------
                              • Set QJ_AoERadius = (Load (Key aoeradius) of (Key (Picked unit)) from QJS_arrowTable)
                              • -------- Load Effect --------
                              • Set QJ_AoESFX = (Load (Key aoesfx) of (Key (Picked unit)) from QJS_arrowTable)
                              • -------- Create AoE Effect --------
                              • Spezialeffekt - Create a special effect at QJS_movePos using QJ_AoESFX
                              • Spezialeffekt - Destroy (Last created special effect)
                              • -------- Set Victim Group in AoE Range --------
                              • Set QJS_victimGroup = (Units within QJ_AoERadius of QJS_movePos matching ((((Matching unit) is alive) Gleich True) and (((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True)))
                              • -------- Damage --------
                              • Einheitengruppe - Pick every unit in QJS_victimGroup and do (Actions)
                                • Schleifen - Aktionen
                                  • Einheit - Cause QJ_Caster to damage (Picked unit), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                            • &#039;ELSE&#039;-Aktionen
                              • -------- No Damage if AoE off --------
                        • &#039;ELSE&#039;-Aktionen
                          • -------- If Pierce True, clear off Damaged Group --------
                          • Einheitengruppe - Remove all units from QJS_DamagedGroup
                          • Custom script: call DestroyGroup(udg_QJS_DamagedGroup)
                      • -------- Turn Collision for Arrow On --------
                      • Einheit - Turn collision for (Picked unit) Ein
                      • -------- Kill Arrow --------
                      • Einheit - Kill (Picked unit)
                      • -------- Remove from Arrow Group --------
                      • Einheitengruppe - Remove (Picked unit) from QJS_arrowGroup
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • (Number of units in QJS_arrowGroup) Gleich 0
                        • &#039;THEN&#039;-Aktionen
                          • Auslöser - Turn off (This trigger)
                        • &#039;ELSE&#039;-Aktionen
                      • -------- Clear Hash Table --------
                      • Hashtabelle - Clear all child hashtables of child (Key (Picked unit)) in QJS_arrowTable
                      • -------- Clear --------
                      • Custom script: call RemoveLocation(udg_QJS_movePos)
                    • &#039;ELSE&#039;-Aktionen
                      • -------- Move Arrow --------
                      • Einheit - Move (Picked unit) instantly to QJS_movePos, facing QJS_Angle degrees
                      • -------- Update Distance --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_Homing Gleich False
                        • &#039;THEN&#039;-Aktionen
                          • Hashtabelle - Save (QJS_Distance - QJ_Speed) as (Key dist) of (Key (Picked unit)) in QJS_arrowTable
                        • &#039;ELSE&#039;-Aktionen
                      • -------- If Pierce = True --------
                      • -------- Do Damage --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_Pierce Gleich True
                        • &#039;THEN&#039;-Aktionen
                          • -------- Attack Type ID Coversion --------
                          • Set QJS_AttackType = QJS_atkTypePreset[QJ_attackTypeID]
                          • -------- Damage Type ID Coversion --------
                          • Set QJS_DamageType = QJS_dmgTypePreset[QJ_damageTypeID]
                          • -------- Check for AoE --------
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • &#039;IF&#039;-Bedingungen
                              • QJ_AoE Gleich True
                            • &#039;THEN&#039;-Aktionen
                              • -------- Load AoE Radius --------
                              • Set QJ_AoERadius = (Load (Key aoeradius) of (Key (Picked unit)) from QJS_arrowTable)
                              • -------- Load Effect --------
                              • Set QJ_AoESFX = (Load (Key aoesfx) of (Key (Picked unit)) from QJS_arrowTable)
                            • &#039;ELSE&#039;-Aktionen
                              • -------- AoE Radius = Default, 150 --------
                              • Set QJ_AoERadius = 150.00
                          • -------- Set Victim Group --------
                          • Set QJS_victimGroup = (Units within QJ_AoERadius of QJS_movePos matching ((((Matching unit) is alive) Gleich True) and ((((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True) and (((Matching unit) is in QJS_DamagedGroup) Gleich False))))
                          • Einheitengruppe - Pick every unit in QJS_victimGroup and do (Actions)
                            • Schleifen - Aktionen
                              • Set QJS_victimPos = (Position of (Picked unit))
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • &#039;IF&#039;-Bedingungen
                                  • QJ_AoE Gleich True
                                • &#039;THEN&#039;-Aktionen
                                  • -------- Create AoE Effect --------
                                  • Spezialeffekt - Create a special effect at QJS_victimPos using QJ_AoESFX
                                  • Spezialeffekt - Destroy (Last created special effect)
                                • &#039;ELSE&#039;-Aktionen
                              • -------- Damage --------
                              • Einheit - Cause QJ_Caster to damage (Picked unit), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                              • -------- Damage Text --------
                              • Schwebender Text - Create floating text that reads Hit! at QJS_victimPos with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                              • Schwebender Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                              • Schwebender Text - Change (Last created floating text): Deaktivieren permanence
                              • Schwebender Text - Change the fading age of (Last created floating text) to 1.00 seconds
                              • Schwebender Text - Change the lifespan of (Last created floating text) to 1.50 seconds
                              • -------- Add to Damage Group --------
                              • Einheitengruppe - Add (Picked unit) to QJS_DamagedGroup
                              • -------- Clear --------
                              • Custom script: call RemoveLocation(udg_QJS_victimPos)
                          • -------- Update Damaged Group in Hash Table --------
                          • Hashtabelle - Save Handle OfQJS_DamagedGroup as (Key dgroup) of (Key (Picked unit)) in QJS_arrowTable
                          • -------- Clear --------
                          • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                        • &#039;ELSE&#039;-Aktionen
                • &#039;ELSE&#039;-Aktionen
                  • -------- Move Arrow --------
                  • Einheit - Move (Picked unit) instantly to QJS_movePos, facing QJS_Angle degrees
                  • -------- Update Distance --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • &#039;IF&#039;-Bedingungen
                      • QJ_Homing Gleich False
                    • &#039;THEN&#039;-Aktionen
                      • Hashtabelle - Save (QJS_Distance - QJ_Speed) as (Key dist) of (Key (Picked unit)) in QJS_arrowTable
                    • &#039;ELSE&#039;-Aktionen
                  • -------- If Pierce = True --------
                  • -------- Do Damage --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • &#039;IF&#039;-Bedingungen
                      • QJ_Pierce Gleich True
                    • &#039;THEN&#039;-Aktionen
                      • -------- Attack Type ID Coversion --------
                      • Set QJS_AttackType = QJS_atkTypePreset[QJ_attackTypeID]
                      • -------- Damage Type ID Coversion --------
                      • Set QJS_DamageType = QJS_dmgTypePreset[QJ_damageTypeID]
                      • -------- Check for AoE --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_AoE Gleich True
                        • &#039;THEN&#039;-Aktionen
                          • -------- Load AoE Radius --------
                          • Set QJ_AoERadius = (Load (Key aoeradius) of (Key (Picked unit)) from QJS_arrowTable)
                          • -------- Load Effect --------
                          • Set QJ_AoESFX = (Load (Key aoesfx) of (Key (Picked unit)) from QJS_arrowTable)
                        • &#039;ELSE&#039;-Aktionen
                          • -------- AoE Radius = Default, 150 --------
                          • Set QJ_AoERadius = 150.00
                      • -------- Set Victim Group --------
                      • Set QJS_victimGroup = (Units within QJ_AoERadius of QJS_movePos matching ((((Matching unit) is alive) Gleich True) and ((((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True) and (((Matching unit) is in QJS_DamagedGroup) Gleich False))))
                      • Einheitengruppe - Pick every unit in QJS_victimGroup and do (Actions)
                        • Schleifen - Aktionen
                          • Set QJS_victimPos = (Position of (Picked unit))
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • &#039;IF&#039;-Bedingungen
                              • QJ_AoE Gleich True
                            • &#039;THEN&#039;-Aktionen
                              • -------- Create AoE Effect --------
                              • Spezialeffekt - Create a special effect at QJS_victimPos using QJ_AoESFX
                              • Spezialeffekt - Destroy (Last created special effect)
                            • &#039;ELSE&#039;-Aktionen
                          • -------- Damage --------
                          • Einheit - Cause QJ_Caster to damage (Picked unit), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                          • -------- Damage Text --------
                          • Schwebender Text - Create floating text that reads Hit! at QJS_victimPos with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                          • Schwebender Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                          • Schwebender Text - Change (Last created floating text): Deaktivieren permanence
                          • Schwebender Text - Change the fading age of (Last created floating text) to 1.00 seconds
                          • Schwebender Text - Change the lifespan of (Last created floating text) to 1.50 seconds
                          • -------- Add to Damage Group --------
                          • Einheitengruppe - Add (Picked unit) to QJS_DamagedGroup
                          • -------- Clear --------
                          • Custom script: call RemoveLocation(udg_QJS_victimPos)
                      • -------- Update Damaged Group in Hash Table --------
                      • Hashtabelle - Save Handle OfQJS_DamagedGroup as (Key dgroup) of (Key (Picked unit)) in QJS_arrowTable
                      • -------- Clear --------
                      • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                    • &#039;ELSE&#039;-Aktionen
              • -------- Clear --------
              • Custom script: call RemoveLocation(udg_QJS_movePos)
            • &#039;ELSE&#039;-Aktionen
              • -------- End --------
              • -------- Pierce = False --------
              • -------- Remove End Damage as Moving will do Damage --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • &#039;IF&#039;-Bedingungen
                  • QJ_Pierce Gleich False
                • &#039;THEN&#039;-Aktionen
                  • -------- Attack Type ID Coversion --------
                  • Set QJS_AttackType = QJS_atkTypePreset[QJ_attackTypeID]
                  • -------- Damage Type ID Coversion --------
                  • Set QJS_DamageType = QJS_dmgTypePreset[QJ_damageTypeID]
                  • -------- Position of Arrow --------
                  • Set QJS_arrowPos = (Position of (Picked unit))
                  • -------- Deal Damage --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • &#039;IF&#039;-Bedingungen
                      • QJ_TargetUnit Gleich Keine Einheit
                    • &#039;THEN&#039;-Aktionen
                      • -------- Target Point --------
                      • -------- Check for AoE or Single Target --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_AoE Gleich True
                        • &#039;THEN&#039;-Aktionen
                          • -------- AOE --------
                          • -------- Load AoE Radius --------
                          • Set QJ_AoERadius = (Load (Key aoeradius) of (Key (Picked unit)) from QJS_arrowTable)
                          • -------- Load Effect --------
                          • Set QJ_AoESFX = (Load (Key aoesfx) of (Key (Picked unit)) from QJS_arrowTable)
                          • -------- Create AoE Effect --------
                          • Spezialeffekt - Create a special effect at QJS_arrowPos using QJ_AoESFX
                          • Spezialeffekt - Destroy (Last created special effect)
                          • -------- Set Victim Group in AoE Range --------
                          • Set QJS_victimGroup = (Units within QJ_AoERadius of QJS_arrowPos matching ((((Matching unit) is alive) Gleich True) and (((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True)))
                          • -------- Damage --------
                          • Einheitengruppe - Pick every unit in QJS_victimGroup and do (Actions)
                            • Schleifen - Aktionen
                              • Einheit - Cause QJ_Caster to damage (Picked unit), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                          • -------- Clear --------
                          • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                        • &#039;ELSE&#039;-Aktionen
                          • -------- Single Target --------
                          • -------- Set Victim Group --------
                          • Set QJS_victimGroup = (Units within 150.00 of QJS_arrowPos matching ((((Matching unit) is alive) Gleich True) and (((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True)))
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • &#039;IF&#039;-Bedingungen
                              • (Number of units in QJS_victimGroup) Größer als 0
                            • &#039;THEN&#039;-Aktionen
                              • Einheit - Cause QJ_Caster to damage (Random unit from QJS_victimGroup), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                            • &#039;ELSE&#039;-Aktionen
                          • -------- Clear --------
                          • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                    • &#039;ELSE&#039;-Aktionen
                      • -------- Target Unit --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • &#039;IF&#039;-Bedingungen
                          • QJ_AoE Gleich True
                        • &#039;THEN&#039;-Aktionen
                          • -------- AOE --------
                          • -------- Load AoE Radius --------
                          • Set QJ_AoERadius = (Load (Key aoeradius) of (Key (Picked unit)) from QJS_arrowTable)
                          • -------- Load Effect --------
                          • Set QJ_AoESFX = (Load (Key aoesfx) of (Key (Picked unit)) from QJS_arrowTable)
                          • -------- Create AoE Effect --------
                          • Spezialeffekt - Create a special effect at QJS_arrowPos using QJ_AoESFX
                          • Spezialeffekt - Destroy (Last created special effect)
                          • -------- Set Victim Group in AoE Range --------
                          • Set QJS_victimGroup = (Units within QJ_AoERadius of QJS_arrowPos matching ((((Matching unit) is alive) Gleich True) and (((Matching unit) belongs to an enemy of (Owner of QJ_Caster)) Gleich True)))
                          • -------- Damage --------
                          • Einheitengruppe - Pick every unit in QJS_victimGroup and do (Actions)
                            • Schleifen - Aktionen
                              • Einheit - Cause QJ_Caster to damage (Picked unit), dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                          • -------- Clear --------
                          • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                        • &#039;ELSE&#039;-Aktionen
                          • -------- Single Target --------
                          • -------- Set Victim Group --------
                          • Set QJS_victimGroup = (Units within 150.00 of QJS_arrowPos matching ((Matching unit) Gleich QJ_TargetUnit))
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • &#039;IF&#039;-Bedingungen
                              • (QJ_TargetUnit is alive) Gleich True
                              • (Number of units in QJS_victimGroup) Größer als 0
                            • &#039;THEN&#039;-Aktionen
                              • Einheit - Cause QJ_Caster to damage QJ_TargetUnit, dealing QJ_Damage damage of attack type QJS_AttackType and damage type QJS_DamageType
                            • &#039;ELSE&#039;-Aktionen
                              • -------- Miss. --------
                              • Schwebender Text - Create floating text that reads Miss! at QJS_arrowPos with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                              • Schwebender Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                              • Schwebender Text - Change (Last created floating text): Deaktivieren permanence
                              • Schwebender Text - Change the fading age of (Last created floating text) to 1.00 seconds
                              • Schwebender Text - Change the lifespan of (Last created floating text) to 1.50 seconds
                          • -------- Clear --------
                          • Custom script: call DestroyGroup(udg_QJS_victimGroup)
                • &#039;ELSE&#039;-Aktionen
                  • -------- If Pierce True, clear off Damaged Group --------
                  • Einheitengruppe - Remove all units from QJS_DamagedGroup
                  • Custom script: call DestroyGroup(udg_QJS_DamagedGroup)
              • -------- Clear --------
              • Custom script: call RemoveLocation(udg_QJS_arrowPos)
              • -------- Turn Collision for Arrow On --------
              • Einheit - Turn collision for (Picked unit) Ein
              • -------- Kill Arrow --------
              • Einheit - Kill (Picked unit)
              • -------- Remove from Arrow Group --------
              • Einheitengruppe - Remove (Picked unit) from QJS_arrowGroup
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • &#039;IF&#039;-Bedingungen
                  • (Number of units in QJS_arrowGroup) Gleich 0
                • &#039;THEN&#039;-Aktionen
                  • Auslöser - Turn off (This trigger)
                • &#039;ELSE&#039;-Aktionen
              • -------- Clear Hash Table --------
              • Hashtabelle - Clear all child hashtables of child (Key (Picked unit)) in QJS_arrowTable
          • -------- Clear --------
          • Custom script: call RemoveLocation(udg_QJS_tempPos)


Trigger:
  • Example 4
    • Ereignisse
      • Einheit - A unit Startet den Effekt einer Fähigkeit
    • Bedingungen
      • (Ability being cast) Gleich Example 4
    • Aktionen
      • -------- Set all variables that is needed --------
      • Set QJ_Caster = (Triggering unit)
      • Set QJ_attackTypeID = 5
      • Set QJ_damageTypeID = 21
      • Set QJ_Damage = 250.00
      • Set QJ_Speed = 20.00
      • Set QJ_Model = Dummy 4
      • Set QJ_Size = 3.00
      • Set QJ_TargetUnit = Keine Einheit
      • Set QJ_TargetPoint = (Target point of ability being cast)
      • Set QJ_Homing = False
      • Set QJ_Collision = True
      • Set QJ_Pierce = True
      • Set QJ_AoE = False
      • -------- Run Arrow Create --------
      • Auslöser - Run Arrow Create &lt;gen&gt; (ignoring conditions)
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top