Sistema de Patentes. -
[BWL]Chamaleon - 21.03.2013
Ai gente meu primeiro projeto, sei que й meio 'Newbie' mais vou desenvolvendo aos poucos, uns amigos pediram para postar entгo ai vai, irei postar com os pequenos detalhes!
Primeiramente devemos adicionar isto em seu GM lб no topo, pode ser perto da pAdmin.
Code:
new pPatente[MAX_PLAYERS];
Logo depois colocamos isso, pode ser perto do admin[MAX_PLAYERS] tambйm..
Code:
new Patente[MAX_PLAYERS]= 0;
Agora coloque isso na OnPlayerConnect
Code:
pPatente[playerid] = 0;
depois coloque essa variavel, poderб ser colocada prуximo ao ' Admin ' tambйm, caso tenha, para ficar mais facil ver o local...
Code:
if(pPatente[playerid] == 0){
Patente[playerid] = 0;
dini_IntSet(file, "Patente", 0);
}
if(pPatente[playerid] == 1 ){
Patente[playerid] = 1;
}
Agora o comando, pode colocar em qualquer local, recomendo colocar aonde fica os comandos de Admins.
Code:
if(strcmp(cmd,"/setpat", true)==0){
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
if(IsPlayerAdmin(playerid)){
new tmp[256];
new plid, skin;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, Vermelho, "(ERRO) Digite: /setpat [id] [Level]");
return 1;
}
plid = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "(ERRO) Digite: /setpat [id] [Level]");
return 1;
}
skin = strval(tmp);
if(skin>=11){
SendClientMessage(playerid, Vermelho, "(ERRO) O level Permitido para Patente й 0 a 10!");
return 1;
}
new pname[MAX_PLAYER_NAME];
GetPlayerName(plid, pname, MAX_PLAYER_NAME);
if(IsPlayerConnected(plid)){
if(skin>=1){
pPatente[plid] = skin;
SpawnPlayer(plid);
format(string, sizeof(string), "{00FF00}(INFO) O Admin Rcon %s (%d) (») Promoveu o sortudo: %s (%d) para Patente (») Level: %d", aname,playerid,pname,plid,skin);
SendClientMessageToAll(tcadm, string);
}
if(skin == 0){
pPatente[plid] = 0;
SpawnPlayer(plid);
format(string, sizeof(string), "{00FF00}(INFO) O Admin Rcon %s (%d) (») Retirou a patente do jogador: %s (ID: %d)", aname,playerid,pname,plid);
SendClientMessageToAll(tcadm, string);
}
return 1;
}else{
SendClientMessage(playerid, Vermelho, "(ERRO) Jogador nгo conectado.");
return 1;
}
}
}
Lembrando que vocк pode alterar o nъmero de patente mбxima, basta arrumar o skin if(skin>=11){ para o desejado.
[I]Agora adicionaremos o comando de ver os membros patentes *se adicionar mais patentes vocк deverб colocar +1 if(pPatente
== 11){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 11]", pname,i);
} por exemplo .
Code:
if(!strcmp(cmdtext, "/patentes", true))
{
SendClientMessage(playerid,0x99FFFFAA, ".:: - Players com Patentes Online - ::.");
new count=0;
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)){
if(Patente[i]){
new str[256];
new pname[24];
GetPlayerName(i, pname, 24);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
if(pPatente[i] == 1){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 1]", pname,i);
}
if(pPatente[i] == 2){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 2]", pname,i);
}
if(pPatente[i] == 3){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 3]", pname,i);
}
if(pPatente[i] == 4){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 4]", pname,i);
}
if(pPatente[i] == 5){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 5]", pname,i);
}
if(pPatente[i] == 6){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 6]", pname,i);
}
if(pPatente[i] == 7){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 7]", pname,i);
}
if(pPatente[i] == 8){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 8]", pname,i);
}
if(pPatente[i] == 9){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 9 Sub_Lнder]", pname,i);
}
if(pPatente[i] == 10){
format(str,sizeof(str),"%s (%d) :: {3225EB}[Patente 10 Lнder]", pname,i);
}
SendClientMessage(playerid, 0x99FFFFAA, str);
count++;
}
}
}
if(count == 0)
{
SendClientMessage(playerid, Vermelho, "(ERRO) Nгo hб Ninguйm com patente online no momento");
}
return 1;
}
Adicione isto apуs o local de 'login' dos players, ou procure um 'admin' e coloque lб.
Code:
Patente[playerid]=0;
Agora crie uma mn (crie aonde tem as outras 'mn')
Code:
new mnPatente;
mnPatente = dini_Int(file, "Patente"); // coloque isso perto das outras 'mn' porйm abaixo aonde determina a dini_int(file,
dini_IntSet(file2, "Patente", mnPatente); // essa fica aonde salva dados na nova conta!
Bem й isso, espero que tenham gostado, qualquer poblema sу falar, quem nгo gostou ou achou isso newbie, pode postar aqui tб de boa, sу estou tentando ajudar quem precisa de um empurrгozinho eu ainda sou mais ou menos em Scripter mais da para compartilhar com os demais .
para adicionar salario basta criar uma define com o salario e o preзo, e lб em baixo criar,
Code:
if(dini_Int(file, "Patente") == 9){
dini_IntSet(file, "SaldoBancario", dini_Int(file, "SaldoBancario")+Salario_patente9);
format(string, sizeof(string), "[INFO] Vocк recebeu seu sбlario de patente: %d R$",Salario_patente9);
SendClientMessage(i, 0xCAFF95AA, string);
}
como exemplo,
Atenciosamente,
[NRG]VICTOR / [BWL]Chamaleon
Re: Sistema de Patentes. -
zSuYaNw - 21.03.2013
"Sistema de patentes" mбs conhecido como "Sistema de nнveis".
Re: Sistema de Patentes. -
Maklister - 21.03.2013
Patente pra mim = PB
aconselho a tabular seu code:
http://tabulador.medianewsonline.com/
Isso tambйm pode ser melhorado:
dini
Re: Sistema de Patentes. -
smiiir - 21.03.2013
da pro gasto
5/10
Devia indetar
Colocar em zcmd ou outro
DOF2 ou outro
Respuesta: Sistema de Patentes. -
[BWL]Chamaleon - 21.03.2013
Ok, coloco todos eles depois
Re: Sistema de Patentes. -
Sky™ - 21.03.2013
Vitor um tutorial se deve explicar as funзхes e o portque de usa-las vc simplesmente colocou o codigo ai
acho que seria melhor se vc fizesse um fs com esse sistema. mбs seu primeiro projeto ficou Otimo
Re: Sistema de Patentes. -
Kuddy - 21.03.2013
Achei muito mal explicado, visto que vc da o code pronto e vai falando: poem isso aqui, isto daqui ali e aquilo й pra por lб.
Re: Sistema de Patentes. -
Dwayne-Pheonix - 21.03.2013
Ficou meio bagunзado nгo acha