Kling[o]
New Member
- Reaction score
- 7
How to make a lightning effect that start at ground to finish in the air?
native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning
This is Jass an needs to be used in custom code. If you have no idea how to use this, create the lightning effect in GUI and then COPY and PASTE the trigger. On the COPY trigger go to Edit>Convert to Custom Text. (The following helps if you deleted the rest of the trigger before converting the COPY trigger.) Then look for the line that has AddLightingLoc(then a bunch of crap in here) If you notice you should see the two points you have. On the first part of the next line, type "set bj_lastCreatedLightning = " without the quotes. Then type "AddLightingEx(" without the quotes. After the ( add the first thing after the ( in the AddLightingLoc. Then put a comma and add the word true then another comma. Then for the next time first type "GetLocationX(" without the quotes. After that put the second thing in the AddLightingLoc then a ")" and a "," without quotes. Repeat the above but instead of GetLocationX( type "GetLocationY(" without the quotes. Repeat again with "GetLocationZ(". Do the same with the third thing in the AddLightingLoc as above, but do not do it for GetLocationZ(. Instead, this is where you will put how high (with a decimal point) you want it to end up.
EX:
call AddLightningLoc( "CLPB", udg_Point1, udg_Point2 )
translates to
set bj_lastCreatedLightning = AddLightningEx("CLPB", true, GetLocationX(udg_Point1), GetLocationY(udg_Point1), GetLocationZ(udg_Point1), GetLocationX(udg_Point2), GetLocationY(udg_Point2), 200.)
function Trig_Lightning_Actions takes nothing returns nothing
call AddLightningLoc( "SPLK", GetUnitLoc(GetTriggerUnit()), GetRectCenter(GetPlayableMapRect()) )
endfunction
//===========================================================================
function InitTrig_Lightning takes nothing returns nothing
set gg_trg_Lightning = CreateTrigger( )
call TriggerAddAction( gg_trg_Lightning, function Trig_Lightning_Actions )
endfunction
function AddLightningLocEx takes string thing location loc1 real height1 location loc2 real height 2
set bj_lastCreatedLightning = AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2)
endfunction
call AddLightningLocEx( "SPLK", udg_Point1, 0., udg_Point2, 1500.)
function AddLightningLocEx takes string thing location loc1 real height1 location loc2 real height2 returns lightning
set bj_lastCreatedLightning = AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2)
return bj_lastCreatedLightning
endfunction
function AddLightningLocEx takes string thing, location loc1, real height1, location loc2, real height2 returns lightning
return AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2)
endfunction
function AddLightningLocEx takes string thing, location loc1, real height1, location loc2, real height2 returns lightning
set bj_lastCreatedLightning = AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2)
return bj_lastCreatedLightning
endfunction
OK, fixed:
JASS:function AddLightningLocEx takes string thing, location loc1, real height1, location loc2, real height2 returns lightning set bj_lastCreatedLightning = AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2) return bj_lastCreatedLightning endfunction
Trigger:
- Custom Script: call AddLightningLocEx( "SPLK", udg_Point1, 0., udg_Point2, 1500.)
function AddLightningLocEx takes string thing, location loc1, real height1, location loc2, real height2 returns lightning
set bj_lastCreatedLightning = AddLightningEx(thing, true, GetLocationX(loc1), GetLocationY(loc2), GetLocationZ(loc1)+height1, GetLocationX(loc2), GetLocationY(loc2), GetLocationZ(loc2)+height2)
return bj_lastCreatedLightning
endfunction
.Uh, this isn't going to work (atleast for me the first time I tried it it crashed my world editor, and the second time I don't think it fit)
So instead, in the trigger edit click your map name and add this to the custom script code:...