12.10.2010, 08:30
Quote:
I don't see anything wrong in your script, I don't get you lol. You want it so if a player has level 1 and he does /buylevel he gets 10 EXP still but now he needs 20 EXP to buy another level?
|
My level system works like this
Level 1 : You need 10 EXP to next level 0/10
Level 2 : You need 20 EXP to next level 0/20
Level 3 : You need 30 EXP to next level 0/30
And so on..
Lets say i have 9/10 EXP now.. and its payday
so i get another EXP now i have 10/10 EXP now
i can /buylevel and get level 1 but lets say i wanna save up and
dont use my EXP .. now its payday again and i get 1 more EXP
now i have 11/10 and now i wanna buy a level so i do /buylevel
but i cant because it says i dont have 10/10 i want so you can
so if i can it would go like this :
i have 11/10 EXP i buy a level and is now level 1
and have 1/20 EXP because i only needed 10 for level 1.

Quote:
like this?
Код:
command(buylevel, playerid, params[]) { #pragma unused params new string[128]; if(Player[playerid][Level] == 25) return SendClientMessage(playerid, WHITE, "You cannot buy a level higher than 25!"); if(Player[playerid][EXP] >= (Player[playerid][Level]+1)*10) { Player[playerid][EXP] -= (Player[playerid][Level]+1)*10; Player[playerid][Level]++; format(string, sizeof(string), "You have just bought level %d!", Player[playerid][Level]); SendClientMessage(playerid, WHITE, string); } else { format(string, sizeof(string), "You don't have enough Experience Points to buy the next level. (%d/%d), Get %d more EXP.", Player[playerid][EXP], (Player[playerid][Level]+1)*10, (Player[playerid][Level]+1)*10-Player[playerid][EXP]); SendClientMessage(playerid, WHITE, string); } return 1; } |