Hmm, as it is a division it may have decimals and convert it to a float, let's make the inverse:
Код:
new expiretime = floatround((PlayerInfo[playerid][pVipTime] - gettime()) / 86400);
If you need explanation on what we just did:
https://sampwiki.blast.hk/wiki/Floatround
Additional:
Код:
new viptime = gettime() + (mounth * 2592000);
PlayerInfo[giveplayerid][pVipTime] = viptime;
That code will work for the first time the guy gets a VIP. However, if it's the second time and he has VIP time left, it'll get buggy as you're adding the unix time once again to this variable.
I suggest you to do a previous check before adding it:
Код:
if(PlayerInfo[giveplayerid][pVipTime] > 0) viptime = mounth * 2592000;
else viptime = gettime() + (mounth * 2592000);
That way you don't add the unix time twice.