[Ajuda] Oque tem de errado no codigo?
#1

Peguei o sistema de login do falcon, sу que quando vocк se registra, o Samp-server fecha sozinho!! bem na hora de spawnar , alguem pode me ajudar?

Cуdigo do sistema :

Код:
#include <a_samp>
#include <Double-O-Files_2>
#define DialogRegistro 123
#define DialogLogin    124
#define DialogSaidaA   125
#define DialogSaidaB   126
#define MAXIMO_TLOGAR 3
#define CASE_SENSITIVE false
#define VALOR_MAXIMO_VIDA 100.0
#define VALOR_MAXIMO_COLETE 100.0
#define ContasPlayers "/ContasPlayers/%s.ini"
#define ContinuarUltimaPosicao

new arquivo[45];
new _string[200];
new nome[MAX_PLAYER_NAME];
new TentativasDeLogar[MAX_PLAYERS];
new bool:PrimeiroSpawn[MAX_PLAYERS];
new TotalDeVezesMorreu[MAX_PLAYERS];
new TotalDeVezesMatou[MAX_PLAYERS];

stock SalvarDadosPlayer(playerid)
{
        static Float:PosX, Float:PosY, Float:PosZ, Float:Vida, Float:Colete;
        GetPlayerHealth(playerid, Vida);
        GetPlayerArmour(playerid, Colete);
        GetPlayerPos(playerid, PosX, PosY, PosZ);
        GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo)) DOF2_CreateFile(arquivo);
 
        DOF2_SetInt(arquivo, "Dinheiro", GetPlayerMoney(playerid));
        DOF2_SetInt(arquivo, "Level", GetPlayerScore(playerid));
        DOF2_SetInt(arquivo, "LevelProcurado", GetPlayerWantedLevel(playerid));
        DOF2_SetInt(arquivo, "SkinAtual", GetPlayerSkin(playerid));
        DOF2_SetFloat(arquivo, "Vida", Vida);
        DOF2_SetFloat(arquivo, "Colete", Colete);
        #if defined ContinuarUltimaPosicao
        DOF2_SetFloat(arquivo, "PosX", PosX);
        DOF2_SetFloat(arquivo, "PosY", PosY);
        DOF2_SetFloat(arquivo, "PosZ", PosZ);
        DOF2_SetInt(arquivo, "Interior", GetPlayerInterior(playerid));
        DOF2_SetInt(arquivo, "VirtualWorld", GetPlayerVirtualWorld(playerid));
        #endif
        DOF2_SetInt(arquivo, "TotalDeVezesMorreu", TotalDeVezesMorreu[playerid]);
        DOF2_SetInt(arquivo, "TotalDeVezesMatou", TotalDeVezesMatou[playerid]);
        return 0x1;
}
 
stock CarregarDadosPlayer(playerid)
{
    GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo)) return 0x1;
 
        GivePlayerMoney(playerid, DOF2_GetInt(arquivo, "Dinheiro"));
        SetPlayerScore(playerid, DOF2_GetInt(arquivo, "Level"));
        SetPlayerWantedLevel(playerid, DOF2_GetInt(arquivo, "LevelProcurado"));
        TotalDeVezesMorreu[playerid] = DOF2_GetInt(arquivo, "TotalDeVezesMorreu");
        TotalDeVezesMatou[playerid] = DOF2_GetInt(arquivo, "TotalDeVezesMatou");
        return 0x1;
}
 
public OnFilterScriptInit()
{
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        print("MM");
        print("MM       [FLB]Falcon's Login Box");
        print("MM");
        print("MM       (FilterScript Carregado)");
        print("MM");
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        return 1;
}
 
public OnFilterScriptExit()
{
        DOF2_Exit();
    print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        print("MM");
        print("MM       [FLB]Falcon's Login Box");
        print("MM");
        print("MM      (FilterScript Descarregado)");
        print("MM");
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        for(new ii, ff = GetMaxPlayers(); ii < ff; ii++)
        {
            if(!IsPlayerConnected(ii)) continue;
            SalvarDadosPlayer(ii);
        }
        return 1;
}



public OnPlayerConnect(playerid)
{
    PrimeiroSpawn[playerid] = true;
    TentativasDeLogar[playerid] = 0;
    GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo))
        {
            format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
            ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
        }
        if(DOF2_FileExists(arquivo))
        {
            format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
            ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
        }
        return 1;
}
 
public OnPlayerDisconnect(playerid, reason)
{
        SalvarDadosPlayer(playerid);
        return 1;
}


public OnPlayerSpawn(playerid)
{
        if(PrimeiroSpawn[playerid] == true)
        {
                PrimeiroSpawn[playerid] = false;
            SetPlayerHealth(playerid, VALOR_MAXIMO_VIDA);
            GetPlayerName(playerid, nome, sizeof(nome));
                format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                SetPlayerSkin(playerid, DOF2_GetInt(arquivo, "SkinAtual"));
                #if defined ContinuarUltimaPosicao
                SetPlayerPos(playerid, DOF2_GetFloat(arquivo, "PosX"), DOF2_GetFloat(arquivo, "PosY"), DOF2_GetFloat(arquivo, "PosZ"));
                SetPlayerInterior(playerid, DOF2_GetInt(arquivo, "Interior"));
                SetPlayerVirtualWorld(playerid, DOF2_GetInt(arquivo, "VirtualWorld"));
                #endif
                if(DOF2_GetFloat(arquivo, "Vida") == 0) return 0x1;
                SetPlayerHealth(playerid, DOF2_GetFloat(arquivo, "Vida"));
                SetPlayerArmour(playerid, DOF2_GetFloat(arquivo, "Colete"));
        }
        return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TotalDeVezesMorreu[playerid] ++;
        TotalDeVezesMatou[killerid] ++;
        return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
        if(dialogid == DialogRegistro)
        {
            if(!response) ShowPlayerDialog(playerid, DialogSaidaA, DIALOG_STYLE_MSGBOX, "{FFFFFF}[FLB]Confirmar saida", "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Vocк ainda nгo estб registrado.\n\nTem certeza que deseja sair ?", "Sair", "Voltar");
            if(response)
            {
                if(strlen(inputtext) < 5 || strlen(inputtext) > 20)
                {
                    GetPlayerName(playerid, nome, sizeof(nome));
                    format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                        return ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
                }
                GetPlayerName(playerid, nome, sizeof(nome));
                        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                        DOF2_CreateFile(arquivo);
                        DOF2_SetString(arquivo, "Senha", inputtext);
                        DOF2_SetInt(arquivo, "Dinheiro", 0);
                        DOF2_SetInt(arquivo, "Level", 0);
                        DOF2_SetInt(arquivo, "LevelProcurado", 0);
                        DOF2_SetInt(arquivo, "SkinAtual", 0);
                        DOF2_SetFloat(arquivo, "Vida", VALOR_MAXIMO_VIDA);
                        DOF2_SetFloat(arquivo, "Colete", VALOR_MAXIMO_COLETE);
                        #if defined ContinuarUltimaPosicao
                        DOF2_SetFloat(arquivo, "PosX", 0.0);
                        DOF2_SetFloat(arquivo, "PosY", 0.0);
                        DOF2_SetFloat(arquivo, "PosZ", 0.0);
                        DOF2_SetInt(arquivo, "Interior", 0);
                        DOF2_SetInt(arquivo, "VirtualWorld", 0);
                        #endif
                        DOF2_SetInt(arquivo, "TotalDeVezesMorreu", 0);
                        DOF2_SetInt(arquivo, "TotalDeVezesMatou", 0);
                        SpawnPlayer(playerid);
                        SendClientMessage(playerid, 0xFFFFFFAA, "[FLB]Obrigado por registrar-se...A administraзгo do servidor lhe deseja um bom jogo !!");
            }
        }
 
        if(dialogid == DialogLogin)
        {
            if(!response) ShowPlayerDialog(playerid, DialogSaidaB, DIALOG_STYLE_MSGBOX, "{FFFFFF}[FLB]Confirmar saida", "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Vocк ainda nгo estб logado.\n\nTem certeza que deseja sair ?", "Sair", "Voltar");
            if(response)
            {
                if(strlen(inputtext) < 5 || strlen(inputtext) > 20)
                {
                    GetPlayerName(playerid, nome, sizeof(nome));
                        format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
                        return ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
                }
                GetPlayerName(playerid, nome, sizeof(nome));
                        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                        if(!strcmp(inputtext, DOF2_GetString(arquivo, "Senha"), CASE_SENSITIVE))
                        {
                            CarregarDadosPlayer(playerid);
                            SpawnPlayer(playerid);
                        }
                        else
                        {
                            TentativasDeLogar[playerid] ++;
                            if(TentativasDeLogar[playerid] <= MAXIMO_TLOGAR)
                            {
                                GetPlayerName(playerid, nome, sizeof(nome));
                                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                                ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
                                        format(_string, sizeof(_string), "Senha incorreta !!  || %d Tentativa(s) de %d", TentativasDeLogar[playerid], MAXIMO_TLOGAR);
                    SendClientMessage(playerid, 0xFF0000AA, _string);
                                }
                            if(TentativasDeLogar[playerid] > MAXIMO_TLOGAR)
                            {
                                SendClientMessage(playerid, 0xFF0000AA, "Vocк excedeu o limite mбximo de tentativas de logar...");
                                SendClientMessage(playerid, 0xFF0000AA, "Por questхes de seguranзa vocк foi kickado !!");
                                Kick(playerid);
                            }
                        }
            }
        }
 
        if(dialogid == DialogSaidaA)
        {
            if(response)
            {
                SendClientMessage(playerid, 0xFFFFFFAA, "Vocк decidiu sair sem se registrar...");
                Kick(playerid);
            }
            else
            {
                GetPlayerName(playerid, nome, sizeof(nome));
                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
            }
        }
 
        if(dialogid == DialogSaidaB)
        {
            if(response)
            {
                SendClientMessage(playerid, 0xFFFFFFAA, "Vocк decidiu sair sem se logar...");
                Kick(playerid);
            }
            else
            {
                GetPlayerName(playerid, nome, sizeof(nome));
                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
                ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
            }
        }
        return 1;
}
Caso precise...

Cуdigo do meu GM

Код:
#include <a_samp>
#include <cpstream>
#include <Double-O-Files_2>
#define DialogRegistro 123
#define DialogLogin    124
#define DialogSaidaA   125
#define DialogSaidaB   126
#define MAXIMO_TLOGAR 3
#define CASE_SENSITIVE false
#define VALOR_MAXIMO_VIDA 100.0
#define VALOR_MAXIMO_COLETE 100.0
#define ContasPlayers "/ContasPlayers/%s.ini"
#define ContinuarUltimaPosicao
new pickuprefeitura;
new saidaprefeitura;
new entradadp;
new saidadalegacia;
new entradalojinha;
new saidalojinha;
new autoescola;
new saidaescola;
new lojadearmas;
new saidalojadearmas;
new entradaroupas;
new saidaroupas;
new entradabanco;
new saidabanco;
new entradacomida;
new saidacomida;
new CP_RESTAURANTE;
#define DIALOG_RESTAURANTE 12341
new CP_LJARMAS;
#define  DIALOG_WEAPONS 12342
#define FILTERSCRIPT

new arquivo[45];
new _string[200];
new nome[MAX_PLAYER_NAME];
new TentativasDeLogar[MAX_PLAYERS];
new bool:PrimeiroSpawn[MAX_PLAYERS];
new TotalDeVezesMorreu[MAX_PLAYERS];
new TotalDeVezesMatou[MAX_PLAYERS];

stock SalvarDadosPlayer(playerid)
{
        static Float:PosX, Float:PosY, Float:PosZ, Float:Vida, Float:Colete;
        GetPlayerHealth(playerid, Vida);
        GetPlayerArmour(playerid, Colete);
        GetPlayerPos(playerid, PosX, PosY, PosZ);
        GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo)) DOF2_CreateFile(arquivo);

        DOF2_SetInt(arquivo, "Dinheiro", GetPlayerMoney(playerid));
        DOF2_SetInt(arquivo, "Level", GetPlayerScore(playerid));
        DOF2_SetInt(arquivo, "LevelProcurado", GetPlayerWantedLevel(playerid));
        DOF2_SetInt(arquivo, "SkinAtual", GetPlayerSkin(playerid));
        DOF2_SetFloat(arquivo, "Vida", Vida);
        DOF2_SetFloat(arquivo, "Colete", Colete);
        #if defined ContinuarUltimaPosicao
        DOF2_SetFloat(arquivo, "PosX", PosX);
        DOF2_SetFloat(arquivo, "PosY", PosY);
        DOF2_SetFloat(arquivo, "PosZ", PosZ);
        DOF2_SetInt(arquivo, "Interior", GetPlayerInterior(playerid));
        DOF2_SetInt(arquivo, "VirtualWorld", GetPlayerVirtualWorld(playerid));
        #endif
        DOF2_SetInt(arquivo, "TotalDeVezesMorreu", TotalDeVezesMorreu[playerid]);
        DOF2_SetInt(arquivo, "TotalDeVezesMatou", TotalDeVezesMatou[playerid]);
        return 0x1;
}

stock CarregarDadosPlayer(playerid)
{
    GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo)) return 0x1;

        GivePlayerMoney(playerid, DOF2_GetInt(arquivo, "Dinheiro"));
        SetPlayerScore(playerid, DOF2_GetInt(arquivo, "Level"));
        SetPlayerWantedLevel(playerid, DOF2_GetInt(arquivo, "LevelProcurado"));
        TotalDeVezesMorreu[playerid] = DOF2_GetInt(arquivo, "TotalDeVezesMorreu");
        TotalDeVezesMatou[playerid] = DOF2_GetInt(arquivo, "TotalDeVezesMatou");
        return 0x1;
}

public OnFilterScriptInit()
{
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        print("MM");
        print("MM       [FLB]Falcon's Login Box");
        print("MM");
        print("MM       (FilterScript Carregado)");
        print("MM");
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        return 1;
}

public OnFilterScriptExit()
{
        DOF2_Exit();
    print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        print("MM");
        print("MM       [FLB]Falcon's Login Box");
        print("MM");
        print("MM      (FilterScript Descarregado)");
        print("MM");
        print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
        for(new ii, ff = GetMaxPlayers(); ii < ff; ii++)
        {
            if(!IsPlayerConnected(ii)) continue;
            SalvarDadosPlayer(ii);
        }
        return 1;
}


//---------------------------------------------------------------------------//


public OnGameModeInit()
{


    UsePlayerPedAnims();
    DisableInteriorEnterExits();
    
   //--------------------------------------------------------------// Picks Prefeitura
	pickuprefeitura = CreatePickup(1318,1,1481.0474,-1772.3025,18.7958,- 1);
	saidaprefeitura = CreatePickup(1318,1,390.2762,173.5630,1008.3828,0);
   //--------------------------------------------------------------//
    
    //--------------------------------------------------------------// Picks Delegacia
    
	entradadp = CreatePickup(1318,1,1555.4150,-1675.5891,16.1953,0);
	saidadalegacia = CreatePickup(1318,1,246.8677,62.3194,1003.6406,0);
    //--------------------------------------------------------------//
    
    //--------------------------------------------------------------//Loja Utilidades

	entradalojinha = CreatePickup(1318,1,1352.3073,-1759.1672,13.5078,0);
	saidalojinha = CreatePickup(1318,1,-27.4811,-58.2749,1003.5469,0);
    //---------------------------------------------------------------//
    
    //------------------------------------------------------------// Auto escola
	autoescola = CreatePickup(1318,1,1310.2886,-1366.7953,13.5066,0);
	saidaescola = CreatePickup(1318,1,-2029.7419,-119.6236,1035.1719,0);
	//-----------------------------------------------------------//
	
	
	//-----------------------------------------------------------// Loja de armas

	lojadearmas = CreatePickup(1318,1,1368.7428,-1279.7837,13.5469,0);
	 
	saidalojadearmas = CreatePickup(1318,1,296.9225,-112.0565,1001.5156,0);

	//-----------------------------------------------------------//
	
	//----------------------------------------------------------------// Check Point loja de armas
	CP_RESTAURANTE = CPS_AddCheckpoint(369.5663,-6.0179,1001.8589, 2, 80);
	CP_LJARMAS = CPS_AddCheckpoint(287.9503,-106.1560,1001.5156, 2, 80);
	//--------------------------------------------------------------// Loja de roupas
	entradaroupas = CreatePickup(1318,1,499.4935,-1360.6184,16.3690,0);
	saidaroupas = CreatePickup(1318,1,161.3360,-97.1107,1001.8047,0);
   //--------------------------------------------------------------------------// Banco
	entradabanco = CreatePickup(1318,1,1070.8387,-1873.7089,13.5469,0);
	saidabanco = CreatePickup(1318,1,834.6682,7.4084,1004.1870,0);
  //--------------------------------------------------------------------------// Restaurante

	entradacomida = CreatePickup(1318,1,1199.2367,-918.1534,43.1233,0);
	saidacomida = CreatePickup(1318,1,364.9182,-11.7836,1001.8516,0);
  //--------------------------------------------------------------------------//
  
    
  

	// Don't use these lines if it's a filterscript
	SetGameModeText("BVL - RPG");
	
	AddStaticVehicle(411,1062.3021,-1737.3225,13.1867,91.0133,6,6); // carro ¬¬
    AddStaticVehicle(451,1358.7067,-1745.0420,13.2431,272.9545,3,3); // carro 2
	AddPlayerClass(26, 1481.1099,-1767.8229,18.7958,358.4289, 0, 0, 0, 0, 0, 0);
	return 1;
}

public OnGameModeExit()
{
	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)
{
    PrimeiroSpawn[playerid] = true;
    TentativasDeLogar[playerid] = 0;
    GetPlayerName(playerid, nome, sizeof(nome));
        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
        if(!DOF2_FileExists(arquivo))
        {
            format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
            ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
        }
        if(DOF2_FileExists(arquivo))
        {
            format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
            ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
        }

	SetPlayerMapIcon(playerid,0,1553.779052, -1675.300048, 16.195312, 30,0);
	SetPlayerMapIcon(playerid,1,1481.0018, -1771.9679, 177.3439, 23,0);
	SetPlayerMapIcon(playerid,2,1351.6273,-1755.6560,13.3462, 25,0);
	SetPlayerMapIcon(playerid,3,1365.4934,-1279.4292,13.5469, 6,0);
	SetPlayerMapIcon(playerid,4,1067.9973,-1874.2985,13.5469, 52,0);
	SetPlayerMapIcon(playerid,5,1199.8157,-920.4167,43.1070, 10,0);

	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    SalvarDadosPlayer(playerid);
	return 1;
}

public OnPlayerSpawn(playerid)
{
    if(PrimeiroSpawn[playerid] == true)
        {
                PrimeiroSpawn[playerid] = false;
            SetPlayerHealth(playerid, VALOR_MAXIMO_VIDA);
            GetPlayerName(playerid, nome, sizeof(nome));
                format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                SetPlayerSkin(playerid, DOF2_GetInt(arquivo, "SkinAtual"));
                #if defined ContinuarUltimaPosicao
                SetPlayerPos(playerid, DOF2_GetFloat(arquivo, "PosX"), DOF2_GetFloat(arquivo, "PosY"), DOF2_GetFloat(arquivo, "PosZ"));
                SetPlayerInterior(playerid, DOF2_GetInt(arquivo, "Interior"));
                SetPlayerVirtualWorld(playerid, DOF2_GetInt(arquivo, "VirtualWorld"));
                #endif
                if(DOF2_GetFloat(arquivo, "Vida") == 0) return 0x1;
                SetPlayerHealth(playerid, DOF2_GetFloat(arquivo, "Vida"));
                SetPlayerArmour(playerid, DOF2_GetFloat(arquivo, "Colete"));
        }
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TotalDeVezesMorreu[playerid] ++;
        TotalDeVezesMatou[killerid] ++;
	return 1;
}

public OnVehicleSpawn(vehicleid)
{
	return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
	return 1;
}

public OnPlayerText(playerid, text[])
{
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{


	if (strcmp("/mycommand", cmdtext, true, 10) == 0)
	{
		// Do something here
		return 1;
	}
	return SendClientMessage(playerid, -1,"[ERRO]: Comando incorreto.");
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
	return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
//---------------------------------------------------------------------------// Loja de armas
	if(CPS_IsPlayerInCheckpoint(playerid, CP_RESTAURANTE))
	{
		ShowPlayerDialog(playerid, DIALOG_RESTAURANTE, DIALOG_STYLE_LIST, "Lista de comidas, selecione uma:", "Pizza			R$ 20\nLanche			R$ 20\nHambuguer		R$ 20\nRefrigerante		R$20\nБgua			R$ 20", "Comprar", "Sair");
	}
   
	if(CPS_IsPlayerInCheckpoint(playerid, CP_LJARMAS))
	{
		ShowPlayerDialog(playerid, DIALOG_WEAPONS, DIALOG_STYLE_LIST, "Listas de Armas, selecione uma:", "9mm				R$500\nGranada			R$ 700\nDesert Eagle			R$800\nSniper				R$900\nSawnoff			R$1000", "Comprar", "Sair");
	}

//---------------------------------------------------------------------------//
  
	return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
	return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
	return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
	return 1;
}

public OnRconCommand(cmd[])
{
	return 1;
}

public OnPlayerRequestSpawn(playerid)
{
	return 1;
}

public OnObjectMoved(objectid)
{
	return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
	return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{

//---------------------------------------------------------------------------// PICKUPS


	if (pickupid == pickuprefeitura)
	{
		SetPlayerPos(playerid,384.808624,173.804992,1008.382812); //COORDENADAS DE ONDE ELE SERA SETADO
		SetPlayerInterior(playerid, 3);
	}
	if (pickupid == saidaprefeitura)
	{
		SetPlayerPos(playerid,1481.2195,-1765.5629,18);
		SetPlayerInterior(playerid, 0);
	}
	if (pickupid == entradadp)
	{
		SetPlayerPos(playerid,246.783996,63.900199,1003.640625);
		SetPlayerInterior(playerid, 6);
	}

	if (pickupid == saidadalegacia)
	{
		SetPlayerPos(playerid,1552.4969,-1675.5400,16.1953);
		SetPlayerInterior(playerid, 0);
	}

	if (pickupid == entradalojinha)
	{
		SetPlayerPos(playerid,-26.691598,-55.714897,1003.546875);
		SetPlayerInterior(playerid,6);
	 }

	if (pickupid == saidalojinha)
	{
		SetPlayerPos(playerid,1351.2592,-1754.8291,13.3539);
		SetPlayerInterior(playerid,0);
	}

	if(pickupid == autoescola)
	{
		SetPlayerPos(playerid,-2029.8295,-117.4203,1035.1719);
		SetPlayerInterior(playerid,3);
	}

	if(pickupid == lojadearmas)
	{
		SetPlayerPos(playerid,296.919982,-108.071998,1001.515625);
		SetPlayerInterior(playerid,6);
	}

	if(pickupid == saidalojadearmas)
	{
		SetPlayerPos(playerid,1366.1481,-1280.0216,13.5469);
		SetPlayerInterior(playerid,0);
	}

	if(pickupid == entradaroupas)
	{
		SetPlayerPos(playerid,161.391006,-93.159156,1001.80468);
		SetPlayerInterior(playerid,18);
	}

	if(pickupid == saidaroupas)
	{
		SetPlayerPos(playerid,500.8576,-1357.4503,16.1328);
		SetPlayerInterior(playerid,0);
	}

	if(pickupid == saidaescola)
	{
		SetPlayerPos(playerid,1306.0063,-1375.0653,13.6401);
		SetPlayerInterior(playerid,0);
	}

	if(pickupid == entradabanco)
	{
		SetPlayerPos(playerid,833.269775,10.588416,1004.179687);
		SetPlayerInterior(playerid,3);
	}
	 
	if(pickupid == saidabanco)
	{
		SetPlayerPos(playerid,1067.0134,-1872.8146,13.5469);
		SetPlayerInterior(playerid,0);
	}
	 
	 
	if(pickupid == entradacomida)
	{
		SetPlayerPos(playerid,365.6134,-8.0815,1001.8516);
		SetPlayerInterior(playerid,9);
	}

	if(pickupid == saidacomida)
	{
		SetPlayerPos(playerid,1199.4030,-921.5519,43.0261);
		SetPlayerInterior(playerid,0);
	}
//---------------------------------------------------------------------------//
	 
	return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
	return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
	return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
	return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
	return 1;
}

public OnPlayerExitedMenu(playerid)
{
	return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
	return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
   
	return 1;
}

public OnPlayerUpdate(playerid)
{
	return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
	return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
	return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
	return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
//---------------------------------------------------------------------------// LOJA DE ARMAS
if (dialogid == DIALOG_RESTAURANTE && response)
	{
		switch (listitem)
      {
          case 0:
             {
                if (GetPlayerMoney(playerid) < 20) return SendClientMessage(playerid, 0xFFFF00, "[x] ERRO: Vocк nгo tem dinheiro suficiente.");
                {
					 SetPlayerHealth(playerid, 100);
                     GivePlayerMoney(playerid, -20);
                     SendClientMessage(playerid, 0xFF4500, "[x] Vocк se alimentou");
                }

             }
             
             case 1:
             {
                if (GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, 0xFFFF00, "[x] ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     SetPlayerHealth(playerid, 100);
                     GivePlayerMoney(playerid, -20);
                     SendClientMessage(playerid, 0xFF4500, "[x] Vocк se alimentou");
                }

             }
             

             case 2:
             {
                if (GetPlayerMoney(playerid) < 1200) return SendClientMessage(playerid, 0xFFFF00, "[x] ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     SetPlayerHealth(playerid, 100);
                     GivePlayerMoney(playerid, -20);
                     SendClientMessage(playerid, 0xFF4500, "[x] Vocк se alimentou.");
                }

             }
             
             case 3:
             {
                if (GetPlayerMoney(playerid) < 1300) return SendClientMessage(playerid, 0xFFFF00, "[x] ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     SetPlayerHealth(playerid, 100);
                     GivePlayerMoney(playerid, -20);
                     SendClientMessage(playerid, 0xFF4500, "[x] Vocк se alimentou");
                }

             }
             
             
             case 4:
             {
                if (GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid, 0xFFFF00, "[x] ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     SetPlayerHealth(playerid, 100);
                     GivePlayerMoney(playerid, -20);
                     SendClientMessage(playerid, 0xFF4500, "[x] Vocк se alimentou");
                }
						return 1;
			 }


	         
      }
      
   }
   
//----------------------------------------------------------------------// ARMAS
if (dialogid == DIALOG_WEAPONS && response)
   {
      switch (listitem)
      {
          case 0:
             {
                if (GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, 0xFF0000, "ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     GivePlayerMoney(playerid, -500);
                     GivePlayerWeapon(playerid, 22, 40);
                     SendClientMessage(playerid, 0xFFFF00, "[x] Vocк comprou uma arma.");
                }
                      return 1;
      }
      
      
        case 1:
             {
                if (GetPlayerMoney(playerid) < 700) return SendClientMessage(playerid, 0xFF0000, "ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     GivePlayerMoney(playerid, -700);
                     GivePlayerWeapon(playerid, 16, 100);
                     SendClientMessage(playerid, 0xFFFF00, "[x] Vocк comprou uma granada.");
                }
                      return 1;
      }
      
      
             case 2:
             {
                if (GetPlayerMoney(playerid) < 800) return SendClientMessage(playerid, 0xFF0000, "ERRO: Vocк nгo tem dinheiro suficiente.");
                {
                     GivePlayerMoney(playerid, -800);
                     GivePlayerWeapon(playerid, 24, 400);
                     SendClientMessage(playerid, 0xFFFF00, "[x] Vocк comprou uma arma.");
                }
                      return 1;
      }

               case 3:
			{
				if (GetPlayerMoney(playerid) < 900) return SendClientMessage(playerid, 0xFF0000, "ERRO: Vocк nгo tem dinheiro suficiente.");
				{
					GivePlayerMoney(playerid, -900);
					GivePlayerWeapon(playerid, 34, 400);
					SendClientMessage(playerid, 0xFFFF00, "[x] Vocк comprou uma arma.");
				}
                      return 1;
			}
      
                case 4:
			{
				if (GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000, "ERRO: Vocк nгo tem dinheiro suficiente.");
				{
					GivePlayerMoney(playerid, -1000);
					GivePlayerWeapon(playerid, 26, 400);
					SendClientMessage(playerid, 0xFFFF00, "[x] Vocк comprou uma arma.");
				}
                      return 1;
			}

      
      
      
      
		}
	}
   
     if(dialogid == DialogRegistro)
        {
            if(!response) ShowPlayerDialog(playerid, DialogSaidaA, DIALOG_STYLE_MSGBOX, "{FFFFFF}[FLB]Confirmar saida", "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Vocк ainda nгo estб registrado.\n\nTem certeza que deseja sair ?", "Sair", "Voltar");
            if(response)
            {
                if(strlen(inputtext) < 5 || strlen(inputtext) > 20)
                {
                    GetPlayerName(playerid, nome, sizeof(nome));
                    format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                        return ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
                }
                GetPlayerName(playerid, nome, sizeof(nome));
                        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                        DOF2_CreateFile(arquivo);
                        DOF2_SetString(arquivo, "Senha", inputtext);
                        DOF2_SetInt(arquivo, "Dinheiro", 0);
                        DOF2_SetInt(arquivo, "Level", 0);
                        DOF2_SetInt(arquivo, "LevelProcurado", 0);
                        DOF2_SetInt(arquivo, "SkinAtual", 0);
                        DOF2_SetFloat(arquivo, "Vida", VALOR_MAXIMO_VIDA);
                        DOF2_SetFloat(arquivo, "Colete", VALOR_MAXIMO_COLETE);
                        #if defined ContinuarUltimaPosicao
                        DOF2_SetFloat(arquivo, "PosX", 0.0);
                        DOF2_SetFloat(arquivo, "PosY", 0.0);
                        DOF2_SetFloat(arquivo, "PosZ", 0.0);
                        DOF2_SetInt(arquivo, "Interior", 0);
                        DOF2_SetInt(arquivo, "VirtualWorld", 0);
                        #endif
                        DOF2_SetInt(arquivo, "TotalDeVezesMorreu", 0);
                        DOF2_SetInt(arquivo, "TotalDeVezesMatou", 0);
                        SpawnPlayer(playerid);
                        SendClientMessage(playerid, 0xFFFFFFAA, "[FLB]Obrigado por registrar-se...A administraзгo do servidor lhe deseja um bom jogo !!");
            }
        }

        if(dialogid == DialogLogin)
        {
            if(!response) ShowPlayerDialog(playerid, DialogSaidaB, DIALOG_STYLE_MSGBOX, "{FFFFFF}[FLB]Confirmar saida", "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Vocк ainda nгo estб logado.\n\nTem certeza que deseja sair ?", "Sair", "Voltar");
            if(response)
            {
                if(strlen(inputtext) < 5 || strlen(inputtext) > 20)
                {
                    GetPlayerName(playerid, nome, sizeof(nome));
                        format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
                        return ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
                }
                GetPlayerName(playerid, nome, sizeof(nome));
                        format(arquivo, sizeof(arquivo), ContasPlayers, nome);
                        if(!strcmp(inputtext, DOF2_GetString(arquivo, "Senha"), CASE_SENSITIVE))
                        {
                            CarregarDadosPlayer(playerid);
                            SpawnPlayer(playerid);
                        }
                        else
                        {
                            TentativasDeLogar[playerid] ++;
                            if(TentativasDeLogar[playerid] <= MAXIMO_TLOGAR)
                            {
                                GetPlayerName(playerid, nome, sizeof(nome));
                                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                                ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
                                        format(_string, sizeof(_string), "Senha incorreta !!  || %d Tentativa(s) de %d", TentativasDeLogar[playerid], MAXIMO_TLOGAR);
                    SendClientMessage(playerid, 0xFF0000AA, _string);
                                }
                            if(TentativasDeLogar[playerid] > MAXIMO_TLOGAR)
                            {
                                SendClientMessage(playerid, 0xFF0000AA, "Vocк excedeu o limite mбximo de tentativas de logar...");
                                SendClientMessage(playerid, 0xFF0000AA, "Por questхes de seguranзa vocк foi kickado !!");
                                Kick(playerid);
                            }
                        }
            }
        }

        if(dialogid == DialogSaidaA)
        {
            if(response)
            {
                SendClientMessage(playerid, 0xFFFFFFAA, "Vocк decidiu sair sem se registrar...");
                Kick(playerid);
            }
            else
            {
                GetPlayerName(playerid, nome, sizeof(nome));
                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк ainda nгo possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira uma senha para registrar-se:", nome);
                ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Registro", _string, "Registrar", "Sair");
            }
        }

        if(dialogid == DialogSaidaB)
        {
            if(response)
            {
                SendClientMessage(playerid, 0xFFFFFFAA, "Vocк decidiu sair sem se logar...");
                Kick(playerid);
            }
            else
            {
                GetPlayerName(playerid, nome, sizeof(nome));
                format(_string, sizeof(_string), "{FF0000}..:: [FLB]Falcon's Login Box ::..\n{FFFFFF}Olб, vocк jб possui uma conta registrada.\n\nNome: {FFFF80}%s\n\n{FFFFFF}Insira sua senha para logar-se:", nome);
                ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFFFFF}[FLB] - Login", _string, "Login", "Sair");
            }
        }

		return 1;
	
	
	
}


public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
	return 1;
}

//---------------------------------------------------------------------------//
Reply
#2

Verifique as Scriptfiles, provavelmente estб faltando a pasta ContasPlayers
Reply
#3

Obrigado era isso mesmo! e mais uma duvida.....

Como faz pra nгo ter que apertar em Spawn? Quando ele logar/registrar ir direto pro jogo?
Reply
#4

Quote:
Originally Posted by leigorm
Посмотреть сообщение
Obrigado era isso mesmo! e mais uma duvida.....

Como faz pra nгo ter que apertar em Spawn? Quando ele logar/registrar ir direto pro jogo?
coloque isto no onplayerrequestspawn

pawn Код:
SpawnPlayer(playerid);
Reply
#5

Quote:
Originally Posted by rodrigooo
Посмотреть сообщение
coloque isto no onplayerrequestspawn

pawn Код:
SpawnPlayer(playerid);
Continua tendo que apertar pra spawnar.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)