I manage to do it with by tricky way , i addet a "echno" command in my resurrect-prologue.g that it deletes my ressurect.g , and it worked.
; called to resume job after power out.
M98 P"homeall.g"
G53G0A0B0
M42P0S0
M42P1S1
M42P2S1
M42P6S0
if state.currentTool != -1
G53G0Z80
M42P5S0
G53G1X{global.ToolzeroXcoord}Y-27.4F5000
G53G1Z40F1000
G30S-1
if move.axes[2].machinePosition > 35
G10P1L20 Z{global.ToolZero}; Set tool axis offsets
G53G1Z40F1000
G30S-1
G10P1L20 Z{global.ToolZero}; Set tool axis offsets
G53G1Z80
M42P5S1
G53G1 X0 Y0 Z80 F5000 ; go save Z
M3S30000
else
G53G0Z80
echo >"restoreToolNumber.g" "set global.currentToolNumber=-1"
T0P0
M291 S2 R"Tool Problem" P"Tool broken or missing!Please check!"
abort
M42P6S0
echo >"resurrect.g" "G53G0Z80" ; replace resurrect.g
G1 R1 X0 Y0 A0 B0 ; go directly above the saved position without Z
undefined
it starts the resurrect.g , which contains the stored position , and store it by G60 S1 , then it starts the resurrect-prologue.g which makes calibration and in the end i use "echo >"resurrect.g" "G53G0Z80" ; replace resurrect.g " to replace resurrect.g , and it worked perfectly.