Return Bug Used - How do I fix it?

Carl-Fredrik

New Member
Reaction score
51
Hi everyone! That might not've been the most accurate title but I didn't really know what to write, a mod is of course free to change it if he/she likes to.

My map isn't playable since the latest patch.

I think it's in this trigger (the H2I system):

Code:
library LHV

globals
    private gamecache GameCache = InitGameCache("jasslocalvars.w3v")
endglobals

function H2I takes handle h returns integer
    return h
    return 0
endfunction

function SetHandleInt takes handle subject, string name, integer value returns nothing
    if value==0 then
        call FlushStoredInteger(GameCache, I2S(H2I(subject)), name)
    else
        call StoreInteger(GameCache, I2S(H2I(subject)), name, value)
    endif
endfunction

function GetHandleInt takes handle subject, string name returns integer
    return GetStoredInteger(GameCache, I2S(H2I(subject)), name)
endfunction

function FlushHandleLocals takes handle subject returns nothing
    call FlushStoredMission(GameCache, I2S(H2I(subject)) )
endfunction

endlibrary


Could some nice person take a look and fix it so that it'll be playable in 1.24?? And write down what you changed so that if I find more examples I'll be able to fix them myself?

Thanks in advance!

// Carl-Fredrik



Edit: Problem solved with saw792's help.
 

Carl-Fredrik

New Member
Reaction score
51
Now I've examined the map closer and found the trigger that's responsible. It's the well knows H2I. I don't know how to fix it though... :eek:

Editing in my first post.
 

Danis[h]

New Member
Reaction score
19
Didn't the latest patch note state that you can no longer use the return bug as this was fixed? That would explain why it no longer works
 

Carl-Fredrik

New Member
Reaction score
51
Proper way of fixing:
JASS:
function H2I takes handle h returns integer
  return GetHandleId(h)
endfunction

Improper way of fixing:
JASS:
function H2I takes handle h returns integer
  return h
  call DoNothing()
  return 0
endfunction

So I'll try replacing

[/jass]
Improper way of fixing:
JASS:
function H2I takes handle h returns integer
  return h
  return 0
endfunction


with

JASS:
function H2I takes handle h returns integer
  return GetHandleId(h)
endfunction



Edit: Problem solved with your help saw :) Thanks a lot! +Rep
 

Frozenhelfir

set Gwypaas = Guhveepaws
Reaction score
56
Improper way of doing it:

JASS:
function H2I takes handle h returns integer
    return GetHandleId(h)
endfunction

function FlushHandleLocals takes handle subject returns nothing
    call FlushStoredMission(GameCache, I2S(H2I(subject)) )
endfunction


Proper way of doing it:

JASS:
function FlushHandleLocals takes handle subject returns nothing
    call FlushStoredMission(GameCache, I2S(GetHandleId(subject)) )
endfunction


Blizzard has already stated that they intend to make a function named H2I for who knows what reason. I doubt you want to go through this process twice :p If you have newgen just put H2I on find/replace with GetHandleId
 

Rainther

I guess I should write something of value here...
Reaction score
61
What do I need to get in order to let my jasshelper accept GetHandleId when I save it? I have NewGen vD, JassHelper vI.2 and Warcraft 1.21b.
 

Rainther

I guess I should write something of value here...
Reaction score
61
Didn't that stack bad with Jass NewGen?

I can't manage to redirect my world editor : |

It still opens version 1.21b even though I redirected Warcraft 3 in regedit, and I tried removeing Griomoire in regedit in hope that'd show up again upon reinstall, but it's gone permanently it seems.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top