I have used a spell but now my Hero doesn't fly a line , he just flyes into the air and come down again >.<
Trigger:
Jump init
Ereignisse
Zeit - Every 0.10 seconds of game time
Bedingungen
Aktionen
For each (Integer A) from 2 to 10, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Bedingungen
Unit_Is_Flying[(Integer A)] Gleich False
'THEN'-Aktionen
Set Jump_Point[(Integer A)] = ((Position of Challange_Unit[(Integer A)]) offset by 12.00 towards (Facing of Challange_Unit[(Integer A)]) degrees)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Bedingungen
(Number of units in (Units within 125.00 of Jump_Point[(Integer A)] matching ((Unit-type of (Matching unit)) Gleich Jump Trap))) Größer als 0
'THEN'-Aktionen
Set Unit_Is_Flying[(Integer A)] = True
Set Facing[(Integer A)] = (Facing of Challange_Unit[(Integer A)])
Set Fly_Unit[(Integer A)] = Challange_Unit[(Integer A)]
Set x_value[(Integer A)] = -18.71
Set Check[(Integer A)] = 0.00
Set Point_of_Unit[(Integer A)] = (Position of Challange_Unit[(Integer A)])
Set Aim_Point[(Integer A)] = ((Position of Fly_Unit[(Integer A)]) offset by 50.00 towards (Facing of Fly_Unit[(Integer A)]) degrees)
Set Move_distance[(Integer A)] = (Distance between Point_of_Unit[(Integer A)] and Aim_Point[(Integer A)])
Einheit - Pause ein Challange_Unit[(Integer A)]
Animation - Change Challange_Unit[(Integer A)]'s animation speed to 115.00% of its original speed
Einheit - Add High Trick to Fly_Unit[(Integer A)]
Einheit - Remove High Trick from Fly_Unit[(Integer A)]
'ELSE'-Aktionen
Custom script: call RemoveLocation (udg_Jump_Point[GetConvertedPlayerId(ConvertedPlayer(GetForLoopIndexA()))])
'ELSE'-Aktionen
Trigger 2:
Jump
Ereignisse
Zeit - Every 0.03 seconds of game time
Bedingungen
Or - Any (Conditions) are true
Bedingungen
Unit_Is_Flying[2] Gleich True
Unit_Is_Flying[3] Gleich True
Unit_Is_Flying[4] Gleich True
Unit_Is_Flying[5] Gleich True
Unit_Is_Flying[6] Gleich True
Unit_Is_Flying[7] Gleich True
Unit_Is_Flying[8] Gleich True
Unit_Is_Flying[9] Gleich True
Unit_Is_Flying[10] Gleich True
Aktionen
For each (Integer A) from 2 to 10, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Bedingungen
Unit_Is_Flying[(Integer A)] Gleich True
'THEN'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Bedingungen
Check[(Integer A)] Größer gleich Move_distance[(Integer A)]
'THEN'-Aktionen
Animation - Change Challange_Unit[(Integer A)]'s animation speed to 100.00% of its original speed
Einheit - Pause aus Challange_Unit[(Integer A)]
Custom script: set udg_Fly_Unit[GetConvertedPlayerId(ConvertedPlayer(GetForLoopIndexA()))]=null
Custom script: call RemoveLocation (udg_Point_of_Unit[GetConvertedPlayerId(ConvertedPlayer(GetForLoopIndexA()))])
Custom script: call RemoveLocation (udg_Aim_Point[GetConvertedPlayerId(ConvertedPlayer(GetForLoopIndexA()))])
Set Unit_Is_Flying[(Integer A)] = False
'ELSE'-Aktionen
Set Check[(Integer A)] = (Move_distance[(Integer A)] / (75.00 / 3.00))
Einheit - Move Fly_Unit[(Integer A)] instantly to (Point_of_Unit[(Integer A)] offset by Check[(Integer A)] towards Facing[(Integer A)] degrees)
Set x_value[(Integer A)] = (x_value[(Integer A)] + (44.72 / (75.00 / 3.00)))
Set y_value_flyheight[(Integer A)] = ((0.00 - (x_value[(Integer A)] x x_value[(Integer A)])) + 500.00)
Animation - Change Fly_Unit[(Integer A)] flying height to ((Default flying height of Fly_Unit[(Integer A)]) + y_value_flyheight[(Integer A)]) at 1000.00
'ELSE'-Aktionen
Please help