[AJUDA] Salvar Player Numa Profissгo
#1

Fala ai galera!, Bem eu criei um sistema de profissхes com base num sistema de proffs q achei num site ingles, e tava querendo que quando o player estive numa proffisгo e deconecta-se, quando ele conecta-se novamente ele voltase para a profissгo, ja tentei de tudo quanter forma usando dini, sistemas de banco de dados, ja usei o serch varias vezes e ja to com dor de cabeзa , kk


Se vocкs podessem me ajudar eu agradecia muito, e desde ja agradeзo!
Reply
#2

Manda a vбriavel da profissгo ae^^
Reply
#3

Quote:
Originally Posted by [Full]Garfield[XDB]
View Post
Manda a vбriavel da profissгo ae^^
new PlayerJob[MAX_PLAYERS];

Valeu ai pela ajuda!
Reply
#4

pawn Code:
#define peidao 1
pawn Code:
new arquivo[500];
pawn Code:
new nome[MAX_PLAYER_NAME];
pawn Code:
format(arquivo, sizeof(arquivo), "contas/%s.ini", nome);
pawn Code:
dini_IntSet(arquivo, "Emprego", PlayerJob[playerid]);
pawn Code:
PlayerJob[playerid] = dini_Int(arquivo, "Emprego");
pawn Code:
PlayerJob[playerid] = peidao; //Usa-se para deixar o emprego do cidadгo em peidгo.
pawn Code:
SendClientMessage(playerid, 0xFFFFFF, "Parabйns vocк й um peidгo.");
Reply
#5

Deu 3 warnings, "loose indentation", acho q deve ser algum erro meu ja que essas linhas estavam normais, me ajuda ai pf!

Quote:

C:\Documents and Settings\Sйrgio\Meus documentos\Downloads\AMP - TPD\SAMP - TPD\filterscripts\33.pwn(76) : warning 217: loose indentation
C:\Documents and Settings\Sйrgio\Meus documentos\Downloads\AMP - TPD\SAMP - TPD\filterscripts\33.pwn(97) : warning 217: loose indentation
C:\Documents and Settings\Sйrgio\Meus documentos\Downloads\AMP - TPD\SAMP - TPD\filterscripts\33.pwn(114) : warning 217: loose indentation

Cod do meu fs (OnFilterScriptInit, OnPlayerConnect, OnPlayerDisconnect)

Quote:

public OnFilterScriptInit()
{
format(arquivo, sizeof(arquivo), "contas/%s.ini", nome);
// --- Pickups --- //

bodypickup = CreatePickup(1239, 1, 2141.4048,-1732.1564,17.2891, 0);
hackpickup = CreatePickup(1239, 1, 781.3233,-1060.5305,24.8275, 0);
policepickup = CreatePickup(1239,1,256.6144,69.6090,1003.6406,-1);
wantedpointpickup = CreatePickup(1247, 23, 1528.3268,-1677.8229,5.8906);
lawyerpickup = CreatePickup(1239,1,475.7782,-1501.5706,20.5386,0);
hitmanpickup = CreatePickup(1239, 1, 688.0978,-443.2654,16.3359, 0);
orderpickup = CreatePickup(1239, 1, 681.3100,-444.6037,16.3359, 0);
robpickup = CreatePickup(1239, 1, 1941.0897,-2110.6958,13.6953, 0);
hackpcpickup = CreatePickup(1239, 1, 1123.9536,-2036.9503,69.8856, 0);
return 1;
}

public OnFilterScriptExit()
{
return 1;
}
#endif

public OnPlayerConnect(playerid)
{
dini_IntSet(arquivo, "Emprego", PlayerJob[playerid]);
PlayerOffered[playerid] = 999;
PlayerTicket[playerid] = 999;
PlayerDefense[playerid] = 999;
PlayerJob[playerid] = 0;
SetPlayerMapIcon(playerid, 94, 2141.4048,-1732.1564,17.2891, 44, 0); // BodyGuard MapIcon
SetPlayerMapIcon(playerid, 95, 781.3233,-1060.5305,24.8275, 43, 0); // Hacker MapIcon
SetPlayerMapIcon(playerid, 96, 255.5585,64.1626,1003.6406, 30, 0);
// Police ( Interior! - Los Santos Police Department, Lobby - Right corner )
SetPlayerMapIcon(playerid, 97, 475.7782,-1501.5706,20.5386, 44, 0); // Lawyer MapIcon
SetPlayerMapIcon(playerid, 98, 688.0978,-443.2654,16.3359, 43, 0); // Hitman MapIcon
SetPlayerMapIcon(playerid, 99, 1941.0897,-2110.6958,13.6953, 43, 0); // Robber MapIcon
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
PlayerJob[playerid] = dini_Int(arquivo, "Emprego");
return 1;
}

e Vlw pela ajuda!
Reply
#6

pawn Code:
format(arquivo, sizeof(arquivo), "contas/%s.ini", nome); //Й usado para gravar em um arquivo, nгo use neste retorno.
pawn Code:
dini_IntSet(arquivo, "Emprego", PlayerJob[playerid]); //Nгo й ae ele usa-se em desconexгo.
pawn Code:
PlayerJob[playerid] = dini_Int(arquivo, "Emprego"); //Ponha em seu sistema de registro.
Reply
#7

Me perdoe ai leke, mais eu nao to entendendo, tipo agora ele nao deu erros nem warnings, mais so q quando eu entro na profissгo desconecto e conecto novamente eu perco a profissгo, e tipo eu olhei no scriptfiles e nгo crio nenhuma conta em: scriptfiles/contas, como vc configuro ai, e leke outra coisa meu sistema de registro fica em uma fs separada da fs de empregos, e outra coisa eu tenho o comando para o player entrar na profissгo e eu nao intendi onde coloco "PlayerJob[playerid] = peidao;" "SendClientMessage(playerid, 0xFFFFFF, "Parabйns vocк й um peidгo.");" ja q por exemplo eu configuro todas as profissхes mas quando eu entro no serv carrega todas e a q fica e a ultima q carrego


Quote:

public OnPlayerConnect(playerid)
{
format(arquivo, sizeof(arquivo), "contas/%s.ini", nome);
PlayerJob[playerid] = dini_Int(arquivo, "Emprego");
PlayerOffered[playerid] = 999;
PlayerTicket[playerid] = 999;
PlayerDefense[playerid] = 999;
PlayerJob[playerid] = 0;
SetPlayerMapIcon(playerid, 94, 2141.4048,-1732.1564,17.2891, 44, 0); // BodyGuard MapIcon
SetPlayerMapIcon(playerid, 95, 781.3233,-1060.5305,24.8275, 43, 0); // Hacker MapIcon
SetPlayerMapIcon(playerid, 96, 255.5585,64.1626,1003.6406, 30, 0);
// Police ( Interior! - Los Santos Police Department, Lobby - Right corner )
SetPlayerMapIcon(playerid, 97, 475.7782,-1501.5706,20.5386, 44, 0); // Lawyer MapIcon
SetPlayerMapIcon(playerid, 98, 688.0978,-443.2654,16.3359, 43, 0); // Hitman MapIcon
SetPlayerMapIcon(playerid, 99, 1941.0897,-2110.6958,13.6953, 43, 0); // Robber MapIcon
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
dini_IntSet(arquivo, "Emprego", PlayerJob[playerid]);
return 1;
}


Obrigado pela ajuda, e descupe meu erro!
Reply
#8

pawn Code:
if(PlayerJob[playerid] = peidao) return SendClientMessage(playerid, 0xFFFFFF, "Parabйns vocк й um peidгo.");
Reply
#9

Fala ai Galera, Bom Dia!, bom fui testar hj de manhг o q vc me falou garfild, e configurei cada profissгo do meu fs, ai abri meu serv e msm eu ta sem profissгo eu entrei no serv como Guarda-Costas (1є profissгo definida), ai eu deixei de ser Guarda-Costas para ser matador, desconedtei e quando conectei de volta estava novamente como Guarda Costas!, ai embaixo meu cod.
Quote:

public OnPlayerConnect(playerid)
{
format(arquivo, sizeof(arquivo), "contas/%s.ini", nome);
PlayerJob[playerid] = dini_Int(arquivo, "Emprego");
if(PlayerJob[playerid] = 1) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Guarda-Costas!");
if(PlayerJob[playerid] = 2) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Hacker!");
if(PlayerJob[playerid] = 3) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Policial!");
if(PlayerJob[playerid] = 4) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Advogado!");
if(PlayerJob[playerid] = 5) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Matador!");
if(PlayerJob[playerid] = 6) return SendClientMessage(playerid, 0xFFFFFF, "Bem vindo novamente Ladrгo!");
PlayerOffered[playerid] = 999;
PlayerTicket[playerid] = 999;
PlayerDefense[playerid] = 999;
PlayerJob[playerid] = 0;
SetPlayerMapIcon(playerid, 94, 2141.4048,-1732.1564,17.2891, 44, 0); // BodyGuard MapIcon
SetPlayerMapIcon(playerid, 95, 781.3233,-1060.5305,24.8275, 43, 0); // Hacker MapIcon
SetPlayerMapIcon(playerid, 96, 255.5585,64.1626,1003.6406, 30, 0);
// Police ( Interior! - Los Santos Police Department, Lobby - Right corner )
SetPlayerMapIcon(playerid, 97, 475.7782,-1501.5706,20.5386, 44, 0); // Lawyer MapIcon
SetPlayerMapIcon(playerid, 98, 688.0978,-443.2654,16.3359, 43, 0); // Hitman MapIcon
SetPlayerMapIcon(playerid, 99, 1941.0897,-2110.6958,13.6953, 43, 0); // Robber MapIcon
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
dini_IntSet(arquivo, "Emprego", PlayerJob[playerid]);
return 1;
}

Olha nгo se isso tem algo a ver mais eu ja tinha definido para quando o player digita-sse o comando /aceitar contrato, numa deteminada empresa (ex: Hacker) ele se tornava Hacker, vlw a todos q ajudaram, e descupe meu erro!
Reply
#10

Serб q alguem pode me ajudar?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)