eu fiz o meu sistema de Relуgio UP |
o sistema do meu Relogio UP eu peguei do GM New Virtual City RPG |
public RelogioUP(playerid)
{
foreach(Player, i)
{
new string[256];
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(file, sizeof(file), PASTA_CONTAS, aname);
if(IsPlayerConnected(i))
{
if(segUP[playerid] == 0 && minUP[playerid] == 0)
{
if(PlayerInfo[playerid][Logado] == 1)
{
if(AFK[playerid] == 0) {
dini_IntSet(file, "Tempo", dini_Int(file, "Tempo")+1);
//====== [EXP] ======
if(dini_Int(file, "Tempo") >= 1)
{
dini_IntSet(file, "EXP", dini_Int(file, "EXP")+1);
format(string, sizeof(string), "| UP | Vocк ganhou +1 de experiкncia! [ %d / 5 ]",dini_Int(file, "EXP"));
PlayerPlaySound(playerid, 1057, 0, 0, 0);
GameTextForPlayer(playerid, "~w~UP!", 3000, 6);
SendClientMessage(playerid, 0x75EA00AA, string);
dini_IntSet(file, "Tempo",0);
}
if(dini_Int(file, "EXP") >=5) {
dini_IntSet(file, "Level", dini_Int(file, "Level")+1);
SetPlayerScore(playerid,dini_Int(file, "Level"));
format(string, sizeof(string), "| UP | Vocк juntou 5 experiкncias, e ganhou +1 level. (Level: %d) ",dini_Int(file, "Level"));
SendClientMessage(playerid, 0x75EA00AA, string);
PlayerPlaySound(playerid, 1057, 0, 0, 0);
dini_IntSet(file, "EXP",0);
Up(playerid);
}
//else {
//SendClientMessage(playerid, Vermelho, "| ANTI - AFK | Vocк estб no modo ausente, e nгo recebeu uma experiкncia!");
}
}
}
if(segUP[playerid] == -1) {
if(minUP[playerid] == 0)
minUP[playerid] = 10;
segUP[playerid] = 59;
minUP[playerid]--;
}
format(string, sizeof(string), "~w~+~b~~h~UP: ~w~~h~%02d:%02d", minUP[playerid],segUP[playerid]);
TextDrawSetString(UPRelogio[playerid],string);
segUP[playerid] --;
if(dini_Int(filene(aname),"RelogioUP") == 1 && dini_Int(filene(aname),"RelogioUPOn") == 1){
TextDrawShowForPlayer(i,UPRelogio[i]);
} else TextDrawHideForPlayer(i, UPRelogio[i]);
}else{
TextDrawHideForPlayer(i, UPRelogio[i]);
}
}
return 1;
}
#define TEMPOACONTAR 10 // coloque o tempo aqui em minutos para cada UP
new
Text:ReloginhoUP,
RelogioUPs;
new contagemsegundos = 0;
new segundosrelogio = 59;
new contagemminutos = 1;
public OnGameModeInit()
{
ReloginhoUP = TextDrawCreate(518.000000, 4.000000, "~y~UP: 10:00");
TextDrawBackgroundColor(ReloginhoUP, 255);
TextDrawFont(ReloginhoUP, 1);
TextDrawLetterSize(ReloginhoUP, 0.460000, 1.799999);
TextDrawColor(ReloginhoUP, -1);
TextDrawSetOutline(ReloginhoUP, 1);
TextDrawSetProportional(ReloginhoUP, 1);
return RelogioUPs = SetTimer("RelogioUPs", 1000, 1);
}
public OnGameModeExit()
{
return KillTimer(RelogioUPs);
}
forward RelogioUP();
public RelogioUP()
{
contagemsegundos++;
segundosrelogio--;
new string[50];
if(contagemsegundos >= 59)
{
contagemsegundos = 0;
contagemminutos ++;
segundosrelogio = 59;
}
format(string, 50,"~y~UP: %d:%d",TEMPOACONTAR-contagemminutos , segundosrelogio);
TextDrawSetString(ReloginhoUP,string);
TextDrawShowForAll(ReloginhoUP);
if(TEMPOACONTAR+1 - contagemminutos == 0)
{
contagemminutos = 1;
for(new i=0; i<MAX_PLAYERS; i++)
{
//Coloka a variavel da exp aki
}
}
return 1;
}
if(strcmp(cmd,"/criaremp", true) == 0)
{
if(pAdmin[playerid] >= 1) {
//for(new p = 0; p < MAX_PROP; p++) {
new tmp[256];
new msg[128];
//new plid;
new preco,int;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Verde,"| ERRO | Use /criaremp [preзo] [nome] [interior]");
return 1;
}
preco = strval(tmp);
//plid = strval(tmp);
msg = strrest(cmdtext, idx);
if(!strlen(msg)) {
SendClientMessage(playerid, Verde,"| ERRO | Use /criaremp [preзo] [nome] [interior]");
return 1;
}
//preco = plid;
int = strval(tmp);
format(string, sizeof(string),"/Props/prop%d.ini", proximaprop);
if(!dini_Exists(string)) {
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerMapIcon(playerid, 12, dini_Float( string, "PosX" ) , dini_Float( string, "PosY" ) , dini_Float( string, "PosZ" ), 44, -1, -1, -1, -1, 60.0, MAPICON_LOCAL);
dini_Create(string);
dini_FloatSet(string,"PosX", X);
dini_FloatSet(string,"PosY", Y);
dini_FloatSet(string,"PosZ", Z);
dini_IntSet(string,"TInt", 1);
dini_IntSet(string,"Int", int);
dini_IntSet(string,"TEmp", 0);
dini_IntSet(string, "Renda",50);
dini_Set(string,"Emp","Ninguem");
dini_Set(string,"Emp1","Ninguem");
dini_Set(string,"Emp2","Ninguem");
dini_FloatSet(string,"Mundo", proximaprop);
dini_IntSet(string,"TDono", 0);
dini_IntSet(string,"Grana", 0);
dini_IntSet(string,"producao", 0);
dini_IntSet(string,"entrega", 0);
dini_IntSet(string,"Contas", 0);
dini_IntSet(string,"Contasve", 0);
dini_Set(string,"Dono","Ninguem");
dini_IntSet(string,"Preco", preco);
dini_Set(string,"Nome", msg);
new pickupid;
pickupid = CreatePickup(1578, 1, dini_Float(string,"PosX"), dini_Float(string,"PosY"), dini_Float(string,"PosZ"), -1);
dini_IntSet(string,"Id", pickupid);
format(gstring, sizeof(gstring),"Empresa ID %d\n/InfoEmpresa", proximaprop);
Create3DTextLabel(gstring,0xFFFFFFAA, dini_Float(string,"PosX"), dini_Float(string,"PosY"), dini_Float(string,"PosZ")+0.75,20.0,0,1);
proximaprop++;
return 1;
}
}
}