function not called

Status
Not open for further replies.

jackall

You can change this now in User CP.
Reaction score
37
JASS:
function Blink takes unit who returns nothing
  local real maxX=GetRectMaxX(bj_mapInitialPlayableArea)
  local real maxY=GetRectMaxY(bj_mapInitialPlayableArea)
  local real minX=GetRectMinX(bj_mapInitialPlayableArea)
  local real minY=GetRectMinY(bj_mapInitialPlayableArea)
  local real newX=GetOrderPointX()
  local real newY=GetOrderPointY()
  local real oldX
  local real oldY
  local real angle
    if newX>maxX then
      set newX=maxX
    endif
    if newX<minX then
      set newX=minX
    endif
    if newY>maxY then
      set newY=maxY
    endif
    if newY<minY then
      set newY=minY
    endif
  set angle=bj_RADTODEG*Atan2(newY-oldY,newX-oldX)
    call SetUnitX(who,newX)
    call SetUnitY(who,newY)
    call DestroyEffect(AddSpecialEffect("Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl",newX,newY))
    call IssueImmediateOrder(who,"stop")
    call SetUnitFacing(who,angle)
    call PanCameraTo(newX,newY)
    call BJDebugMsg(R2S(newX))
    call BJDebugMsg(R2S(newY))
endfunction

Code:
Builder Move
    Events
        Unit - A unit Is issued an order targeting a point
    Conditions
        (Unit-type of (Triggering unit)) Equal to Builder
        Or - Any (Conditions) are true
            Conditions
                (String((Issued order))) Equal to move
                (String((Issued order))) Equal to smart
    Actions
        Custom script:   //local real x = GetOrderPointX()
        Custom script:   //local real y = GetOrderPointY()
        Custom script:   call Blink(GetTriggerUnit())

The Blink function doesn't get called...why not?

EDIT: nvm fixed
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
well i assume your unit cant cast blink past the playable map area due to target limitations and movement limitations, so i dont know why you use the GetRectMin/MaxX/Y
i would remove those

i would do it like this:

JASS:
library BlinkLib
    function Blink takes unit who, real newX, real newY returns nothing
        local real angle = bj_RADTODEG*Atan2(newY-oldY,newX-oldX)
        call SetUnitX(who,newX)
        call SetUnitY(who,newY)
        call DestroyEffect(AddSpecialEffect("Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl",newX,newY))
        call IssueImmediateOrder(who,"stop")
        call SetUnitFacing(who,angle)
        call PanCameraTo(newX,newY)
        call BJDebugMsg(R2S(newX))
        call BJDebugMsg(R2S(newY))
    endfunction
endlibrary


Trigger:
  • Blink
    • Events
      • A unit begins the effect of an ability
    • Conditions
      • Ability cast is equal to (blink)
    • Actions
      • Custom Script: local location a = GetSpellTargetLoc
      • Custom Script: call Blink(GetTriggerUnit(), GetLocationX(a), GetLocationY(a))
      • Custom Script: set a = null


hand written, dont hate me if it has typos/bad case sensitivity
also... functions that are lower on the script than the functions that call them never get called, try putting it in: library endlibrary, updating that in the jass up there ^
 

jackall

You can change this now in User CP.
Reaction score
37
its supposed to be called when the builder moves be it move or smart
anyway fixed it, problem was oldX and oldY didnt have values set :confused:

thanks anyway
 

luorax

Invasion in Duskwood
Reaction score
67
Stick to GFreak's code and spam that blink ability if you want to leak as much as possible.

Local variables do not get a value upon declaring them and using a variable without a value immediately crashes the thread. You don't have to worry about globals tho', their value will always be 0/0./false after declaration.
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
90% of that was copy paste from his code and it was freehand like i said, spend your time flaming elsewhere
 

luorax

Invasion in Duskwood
Reaction score
67
I can't see leaking [ljass]GetSpellTargetLoc[/ljass] in his code (which is not even used as a function call, but as a variable), so don't blame him for your stupidity.

Also, I think I should ask a moderator for help, not only because ever since you started to "learn" JASS this section is full of your shit, but to stop neg-repping everyone for your own faults.
 

Dirac

22710180
Reaction score
147
GFreak i need you to define flaming, because from my point of view any technical correction to one of your post is flaming.
Because you write most of your codes out of freehand you have to expect someone to point out some major flaws you did there, and in this case it wasn't the fact that you were writing without a compiler what caused you to commit a mistake, it was your lack of JASS knowledge
All luorax did was to point out that your code leaks and in fact it does, 2 locations.
[ljass]GetSpellTargetX(),GetSpellTargetY()[/ljass]
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
flaming is when someone intentionally posts to start fights, essentially, flaming is being a troll... at least thats what i thought flaming meant, and saying, your function leaks, the way he said it, which was totally baseless at the time, is trolling, 100% undisputable trolling... and luorax you are the only one i have neg-repped, 1 for saying, that was an idiotic post why would you post that and in the same message saying the same thing reworded and for trolling here... and you are right i should i have cleared that leak correctly...
he didnt point out those leaks till the next post, and thats not jass knowledge thats plain gui, but i was concentrating more on the jass function that the gui custom script, i will edit it and remove those leaks, but i stand by my point that luorax was flaming
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
613
luorax, you shouldn't have posted after OP said the problem was fixed :/ A PM to GFreak should have been enough.

Would a moderator be kind enough to close/lock this thread?
 

UndeadDragon

Super Moderator
Reaction score
447
The problem has been fixed, and this thread is going the wrong way.

Closed.
 
Status
Not open for further replies.
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Monovertex Monovertex:
    How are you all? :D
    +1
  • Ghan Ghan:
    Howdy
  • 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

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top