SA-MP Forums Archive
[Ajuda] [GM] Oque estб dando errado? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] [GM] Oque estб dando errado? (/showthread.php?tid=365066)



[GM] Oque estб dando errado? - Rh4yF1th3r - 01.08.2012

Fiz apenas um teste por esse Tutorial:
https://sampforum.blast.hk/showthread.php?tid=353471
baixei a Include Fini, fiz tudo certinho, mas o jogo fica reiniciando.


Код:
#include <a_samp>
#include <a_fini>// ou #include <Fini>

#define Cor_Advogado  0xFF6600AA
enum pInfo
{
    pEmprego
}
new PlayerInfo[MAX_PLAYERS][pInfo];

new pName[MAX_PLAYER_NAME];//Define o nome para usarmos no GetPlayerName
main()
{
	print("\n----------------------------------");
	print(" GAMEMODE ON");
	print("----------------------------------\n");
}

public OnGameModeInit()
{
	// Don't use these lines if it's a filterscript
	SetGameModeText("NOME");
	AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
	return 1;
}

public OnPlayerConnect(playerid)
{

new string[80];//Define a string para usarmos.
GetPlayerName(playerid, pName, sizeof(pName));//Pega o nome do Player.
format(string, sizeof(string), "Empregos/%s.ini",pName);//Cria o formato do arquivo.
Fini_OpenFile(string);//abre o arquivo para pegar o emprego do player.
PlayerInfo[playerid][pEmprego] = Fini_GetValue("Emprego"); //Pega o emprego do player
Fini_CloseFile();//Fecha o arquivo.
        
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{

new string[80];//Define a string para usarmos.
GetPlayerName(playerid, pName, sizeof(pName));//Pega o nome do Player.
format(string, sizeof(string), "Empregos/%s.ini",pName);//Cria o formato do arquivo.
if(Fini_Exists(string))//Checa se o arquivo do Formato que definimos a cima existe.
{
	Fini_OpenFile(string);//abre o arquivo para podermos salvar o emprego.
	Fini_SetVal("Emprego", PlayerInfo[playerid][pEmprego]);//salva o emprego do player.
	Fini_SaveFile(string);//salva o arquivo.
	Fini_CloseFile();//fecha o arquivo.
}
else
{//Se o player nгo tem o arquivo de emprego, ele sera criado automaticamente.
	Fini_Create(string);//cria o arquivo do player para salvar o emprego.
    Fini_OpenFile(string);//abre o arquivo do player para modificarmos oque ah dentro.
    Fini_SetVal("Emprego", PlayerInfo[playerid][pEmprego]);//Seta o emprego do player para salvarmos
    Fini_SaveFile(string);//salva o arquivo do player para quando ele logar entrar com o mesmo emprego em que saio.
    Fini_CloseFile();// fecha o arquivo do emprego do player
}

return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{

if(strcmp(cmdtext, "/viraradvogado", true) == 0)
{
    PlayerInfo[playerid][pEmprego] = 1; // Alйm de "Definir" que o emprego do player й 1 que no caso й advogado, ele       seta o emprego do player para 1 (advogado).
    SendClientMessage(playerid, Cor_Advogado, "Parabens, vocк virou um advogado");//Manda a mensagem para o   player disendo que ele virou um advogado.
}


if(strcmp(cmdtext, "/checaradvogado", true) == 0)
{
if(PlayerInfo[playerid][pEmprego] == 1)//Checa se o player й do emprego 1 (Advogado)
{
	SendClientMessage(playerid, Cor_Advogado, "Parabens, vocк й um advogado");//Manda a mensagem disendo que o player й advogado.
}
else
{//Checa se o player nгo й advogado
	SendClientMessage(playerid, Cor_Advogado, "Vocк nгo й um advogado.");//Manda a mensagem disendo que ele nгo й um advogado.
}
}

if(strcmp(cmdtext, "/sairdoemprego", true) == 0)
{
if(PlayerInfo[playerid][pEmprego] == 1)//Checa se o player й do emprego 1 (Advogado).
{
    PlayerInfo[playerid][pEmprego] = 0;//Seta o emprego do player para 0 (Sem emprego ou se preferir Civil).
    SendClientMessage(playerid, Cor_Advogado, "Parabens, vocк nгo й mais um advogado");//Manda a mensagem disendo que o player nгo й mais um advogado.
}
else
{//Checa se o player nгo й advogado
    SendClientMessage(playerid, Cor_Advogado, "Vocк nгo tem um emprego!");//Manda a mensagem disendo que ele nгo й um advogado.
}
}
return 0;
}