Funny and siturbing angle

jackall

You can change this now in User CP.
Reaction score
37
Typo in title don't mind it that much. ;)

JASS:

function BlinkTo takes unit who, real x, real y returns nothing
  local real maxX=GetRectMaxX(GetPlayableMapRect())
  local real maxY=GetRectMaxY(GetPlayableMapRect())
  local real minX=GetRectMinX(GetPlayableMapRect())
  local real minY=GetRectMinY(GetPlayableMapRect())
  local real newX=x
  local real newY=y
  local real oldX=GetUnitX(who)
  local real oldY=GetUnitY(who)
  local real angle=bj_RADTODEG*(Atan2(newY-oldY,newX-oldX))
  local real dist=SquareRoot((newX-oldX)*(newX-oldX)+(newY-oldY)*(newY-oldY))
//    if dist<=300 then
//      return
//    endif
    if x>maxX then
      set newX=maxX
    endif
    if x<minX then
      set newX=minX
    endif
    if y>maxY then
      set newY=maxY
    endif
    if y<minY then
      set newY=minY
    endif
    call DestroyEffect(AddSpecialEffect("Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl",oldX,oldY))
    call SetUnitX(who,newX)
    call SetUnitY(who,newY)
    call DestroyEffect(AddSpecialEffect("Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl",newX,newY))
    call SetUnitFacing(who,angle)
endfunction


I have absolutely no clue as to why that function makes the unit face 0 degrees when ordered to move, smart or attack. Also, if i order the unit to patrol to a point it faces the right angle after its "ported".
 

jackall

You can change this now in User CP.
Reaction score
37
Tried but it didn't work, thanks anyway.
I'll try to describe it a little better:
If I order the builder to move somewhere it faces 0 degrees BUT a BJDebugMsg shows me that the angle is just like when the unit is ordered to patrol to that point.

On a side note, it doesn't really matter if I/we figure this out. I just wanted the builder to start building a tower immediately when ordered.
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
@Jackall, sorry to ninja your thread but this is kinda something i have to do to put someone in their place

JASS:
local region reg=CreateRegion() //<----------------------- no function
call RegionAddRect(reg,GetWorldBounds())
if not(IsPointInRegion(reg,x,y)) then
    return //<----------------------- no return?
endif
call RemoveRegion()
set reg=null //<----------------------- no endfunction?

This forum isn't WEHZ you have to completely help the user (not just partially help it) because JASS is rather harder.

Your code is incomplete, just like mine was... ready to troll yourself?
See that dirac? i can do it too
 

Dirac

22710180
Reaction score
147
1. Functions that return nothing can return nothing. (You might want to read the JH tutorial for once and stop making ignorant comments like that)
2. It's an addition to his original code, plus i already explained how to use it, and even better he knows how and it doesn't have any syntax errors.
3. You didn't provided a better answer therefore your post is nothing but a taunt, so no, you're not hijacking the thread, you're merely ridiculing yourself to "prove" something (and i'm sorry but you're wrong)

@jackall
I think that for that you might want to call that function once any unit receives a build order, report if it doesn't work out
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
1. hrmm i dont seem to see [ljass]function NAME takes nothing returns nothing[/ljass] anywhere on in your post
2. that makes it complete? you yourself said i cant post incomplete functions, this is just as complete as mine was... and when i copy EXACTLY what you wrote although it was obviously incomplete, i somehow get a syntax error... hrmmmm
3. touche good sir
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      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