Hallo
bin grad dabei ein Levelsystem, nach einer Tutorialreihe zu scripten. (mit Payday etc.).
Leider habe ich ein kleines Problem, und zwar steigen die Respektpunkte oder Payday's nicht mit der Zeit
und es ist für jeden Spieler möglich ein /levelup zu machen, auch ohne genügend Respeckpunkte zu besitzen.
P.s Ich nutze zum Accountladen und auch speicher "PVar"
Wäre nett, wenn mir einer helfen könnte. (Anbei noch der Scriptschnipsel)
public MinTimer(playerid)
{
if(GetPVarInt(playerid,"PayDayZeit")>59)
{
SendClientMessage(playerid,GELB,"Du hast Payday");
SetPVarInt(playerid,"PayDayZeit",0);
SetPVarInt(playerid,"RespektPunkte",GetPVarInt(playerid,"RespektPunkte")+1);
// Jetzt könnt ihr das beliebigt anpassen Geld Steuern Gehalt etc
}
else
{
SetPVarInt(playerid,"PayDayZeit",GetPVarInt(playerid,"PayDayZeit")+1);
}
return 1;
}
enum RespektListe{NeedRespekt,RespektLevel}
new RespektInfo[][RespektListe]=
{
{0,0},
{3,1},
{6,2},
{9,3},
{12,4},
{15,5},
{18,6},
{21,7},
{24,8},
{27,9},
{30,10},
{33,11},
{36,12},
{39,13},
{42,14},
{45,15},
{48,16},
{51,17},
{54,18},
{57,19},
{60,20},
{63,21},
{66,22},
{69,23},
{72,24},
{75,25},
{78,26},
{81,27},
{84,28},
{87,29},
{90,30},
{93,31},
{96,32},
{99,33},
{102,34},
{105,35},
{108,36},
{111,37},
{114,38},
{117,39},
{120,40},
{123,41},
{126,42},
{129,43},
{132,44},
{135,45},
{138,46},
{141,47},
{144,48},
{147,49},
{150,50}
};
ocmd:levelup(playerid,params[])
{
if(RespektInfo[GetPlayerScore(playerid)][NeedRespekt]< GetPVarInt(playerid,"RespektPunkte")) return SendClientMessage(playerid,ROT,"Du hast noch nicht genug Respektpunkte um dir das nächste Level zu holen.");
SetPlayerScore(playerid,GetPlayerScore(playerid)+1); // Da er die Respekt Punkte erreicht hat
SetPVarInt(playerid,"RespektPunkte",0);// Auf 0 Jetzt wieder von vorne
new txt[108];
format(txt,sizeof txt,"Glückwunsch zu deinen Levelup du hast nun das Level %i erreicht.Um das nächste Level zuerreicht brauchst du %i RespektPunkte.",GetPlayerScore(playerid),RespektInfo[GetPlayerScore(playerid)][NeedRespekt]);
SendClientMessage(playerid,GELB,txt);
return 1;
}
Bis dann,
Rod_Boy
//Edit noch was hinzugefügt