Every time changing address of variable
[pascal]type
TPlayer = ...
health : ^Integer;
...
end;
...
var
hp : ^Integer;
begin
New(hp);
hp^ := Player.health;
Dispose(Player.health);
Player.health := hp;
...
end;
[/pascal]
or use static array of variables and change current REAL index of variable