SaveReal function seems to fail in trigger, unsure why. Please help

afisakov

You can change this now in User CP.
Reaction score
37
The code is below, and runs every time a building is constructed, I included multiple displaytext prompts to try to debug it but cannot tell why it is failing.
Supposed to store the units atk speed as a real, modify it by abp(1 for now), ad set the new atk speed.
Code:
function atk2 takes unit u returns nothing
local integer uid=GetUnitTypeId(u)
local integer pn=1+GetPlayerId(GetOwningPlayer(u))
if LoadReal(udg_mhash,1,uid)==0 then
    call SaveReal(udg_mhash,1,uid,BlzGetUnitAttackCooldown(u,0))
   call DisplayTimedTextToPlayer(GetOwningPlayer(u),0,0,5,R2S(BlzGetUnitAttackCooldown(u,0))+" , "+R2S(BlzGetUnitAttackCooldown(u,1)) )
   call DisplayTimedTextToPlayer(GetOwningPlayer(u),0,0,5,R2S(LoadReal(udg_mhash,1,uid)) )
endif
    call BlzSetUnitAttackCooldown(u,LoadReal(udg_mhash,1,uid)/udg_abp[pn],0)
    call DisplayTimedTextToPlayer(GetOwningPlayer(u),0,0,5,R2S(LoadReal(udg_mhash,1,uid))+"  "+R2S(udg_abp[pn]) )
endfunction
The displayed numbers when tower built are
1.88
0
0
0
1.00
so BlzGetUnitAttackCooldown correctly returns 1.88 initially and abp returns 1, but all the loadreal attempts give 0 :(
I realized it went wrong because towers fail to atk after this trigger added
The reason I need to store the base atk speed in a real like this is because I later want it to run on Cede tower as well, so the hashtable should store Base cooldown too prevent making it faster by ceding back and forth.
 

jonas

You can change this now in User CP.
Reaction score
64
A few things you could try to debug the issue further:
1. check if you can save anything at all in the table
2. check that the table is properly initialized
 

afisakov

You can change this now in User CP.
Reaction score
37
A few things you could try to debug the issue further:
1. check if you can save anything at all in the table
2. check that the table is properly initialized
I created it in this map for this purpose, so have not saved anything else in it yet.
Will look into initializing once get back home.

It worked, thank you!
 
Last edited:
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top