[Ajuda] spawn randon/ spawn voltar
#4

PHP код:
#include <a_samp>  
#include <DOF2>  
//Cores  
#define COLOR_LBLUE    0x1E90FFFF  
#define    COLOR_ERROR    0xFF0000FF  
//Kick & ban  
#define KickP(%0)    SetTimerEx("KickPlayer", 500, false, "i", %0)  
//Player configs  
#define    CONTASS    "Contas/%s.ini"  
//Dialogs  
#define D_Registrar     100  
#define D_Logar         101  
#define D_Sexo          102  
// news  
new Float:coordSpawn[3];  
enum PlayerInfo  
{  
    
Skin,  
    
Spawn,  
    
Errosenha,  
    
StatsSpawn,  
};  
new 
pInfo[MAX_PLAYERS][PlayerInfo];  
//==================[VEICULOS ]================  
//==================Spawns variados================  
new Float:Spawnrandonplayers[11][3] = {  
    {
690.2013,-467.9773,16.5363},  
    {-
1546.1204,-2731.1055,48.5391},  
    {-
1271.9763,2712.9788,50.2663},  
    {
1354.9606,475.5364,20.1606},  
    {-
41.8467,1179.1769,19.3797},  
    {-
227.3263,985.0326,19.5998},  
    {
1580.0342,-1635.5411,13.5604},  
    {
1608.0400,-1670.4852,6.2188},  
    {-
1617.0948,685.4459,7.1875},  
    {-
1598.6437,734.0104,-4.9063},  
    {
2264.9048,2445.0249,10.8203}  
};  
//================================================  
main() { }  
public 
OnGameModeInit()  
{  
    
AddPlayerClass(01958.37831343.157215.3746269.1425000000);  
    return 
1;  
}  
public 
OnGameModeExit()  
{  
    
DOF2_Exit();  
    return 
1;  
}  
public 
OnPlayerConnect(playerid)  
{  
    
pInfo[playerid][Errosenha] = 0;  
    
SetPlayerColor(playerid0xFFFFFFFF);  
    
//========================================  
    
return 1;  
}  
public 
OnPlayerDisconnect(playeridreason)  
{  
    
SalvarPlayer(playerid);  
    
pInfo[playerid][Spawn] = 0;  
    
pInfo[playerid][StatsSpawn] = 0;  
    
pInfo[playerid][Errosenha] = 0;  
    return 
1;  
}  
public 
OnPlayerRequestClass(playeridclassid)  
{  
    
//Login e registro  
    
new pArquivos[50], String[256];  
    
format(pArquivossizeof(pArquivos), CONTASSPegarNome(playerid));  
    if(!
DOF2_FileExists(pArquivos))  
    {  
        
format(Stringsizeof(String), "{FFFFFF}Bem vindo ao Essence DayZ \n\n{FFFFFF}Nome:  {FF0000}%s \n\n{FFFFFF}Status:  {FF0000}Registrado(a)"PegarNome(playerid));  
        
ShowPlayerDialog(playeridD_RegistrarDIALOG_STYLE_INPUT"Registro (x)"String"Registrar""");  
    }  
    else  
    {  
        
format(Stringsizeof(String), "{FFFFFF}Bem vindo ao Essence DayZ \n\n{FFFFFF}Nome:  {00FF04}%s \n\n{FFFFFF}Status:  {00FF04}Registrado(a)"PegarNome(playerid));  
        
ShowPlayerDialog(playeridD_LogarDIALOG_STYLE_PASSWORD"Logando (x)"String"Entrar""Sair");  
        
pInfo[playerid][Spawn] = 0;  
    }  
    return 
1;  
}  
public 
OnPlayerRequestSpawn(playerid)  
{  
    if(
pInfo[playerid][StatsSpawn] == 0)  
    {  
        
SendClientMessage(playeridCOLOR_ERROR"Spere carregar ai Viado!");  
        return 
0;  
    }  
    else  
    {  
        
SpawnPlayer(playerid);  
    }  
    return 
1;  
}  
public 
OnPlayerSpawn(playerid)  
{  
    
SetPlayerSkin(playeridpInfo[playerid][Skin]);  
    
/*switch(pInfo[playerid][Spawn])  
    {  
        case 0:  
        {  
            SetPlayerPos(playerid, coordSpawn[0],  coordSpawn[1], coordSpawn[2]);  
            SetPlayerVirtualWorld(playerid, 0);  
            SetCameraBehindPlayer(playerid);  
        }  
        case 1:  
        {  
            new Splay = random(sizeof(Spawnrandonplayers));  
            SetPlayerPos(playerid, Spawnrandonplayers[Splay][0], Spawnrandonplayers[Splay][1], Spawnrandonplayers[Splay][2]);  
            SetPlayerVirtualWorld(playerid, 0);  
            SetCameraBehindPlayer(playerid);  
        }  
    } 
    */  
    
return 1;  
}  
//======================  
public OnPlayerDeath(playeridkilleridreason)  
{  
    
//pInfo[playerid][Spawn] = 1; 
    
new rand random(sizeof(Spawnrandonplayers)); 
    
SetPlayerPos(playeridSpawnrandonplayers[rand][0], Spawnrandonplayers[rand][1], Spawnrandonplayers[rand][2]); 
    
SetPlayerVirtualWorld(playerid0);  
    
SetCameraBehindPlayer(playerid);  
    return 
1;  
}  
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])  
{  
    
//Registro  
    
new    pArquivos[50];  
    
format(pArquivossizeof(pArquivos), CONTASSPegarNome(playerid));  
    if(
dialogid ==  D_Registrar)  
    {  
        if(
response)  
        {  
            if(!
strlen(inputtext)) return ShowPlayerDialog(playeridD_RegistrarDIALOG_STYLE_PASSWORD"{FFFFFF}Bem vindo ao Essence DayZ \n\n{FFFFFF}Nome:  {FF0000}%s \n\n{FFFFFF}Status:  {FF0000}Nao Registrado(a)""Registro"""PegarNome(playerid));  
            
DOF2_CreateFile(pArquivos);  
            
DOF2_SetString(pArquivos"Senha"inputtext);  
            
DOF2_SaveFile();  
            
SalvarPlayer(playerid);  
            
SpawnPlayer(playerid);  
            
pInfo[playerid][Spawn] = 1;  
            
ShowPlayerDialog(playeridD_SexoDIALOG_STYLE_MSGBOX,"> Escolha seu Sexo <","Escolha seu Sexo:","Masculino","Feminino");  
            return 
1;  
        }  
        
SendClientMessage(playeridCOLOR_ERROR"Voce foi kickado por nao se registrar!");  
        
KickP(playerid);  
    }  
    
//Login  
    
if(dialogid == D_Logar)  
    {  
        if(
response)  
        {  
            if(!
strlen(inputtext))return ShowPlayerDialog(playerid,D_Logar,DIALOG_STYLE_PASSWORD"{FFFFFF}Bem vindo ao Essence DayZ \n\n{FFFFFF}Nome:  {00FF04}%s \n\n{FFFFFF}Status:  {00FF04}Registrado(a)""Entrar""Sair"PegarNome(playerid));  
            if(!
strcmp(DOF2_GetString(pArquivos"Senha"), inputtext))  
            {  
                
SendClientMessage(playerid0x00FF00FF"Logado com susesso!");  
                
CarregarPlayer(playerid);  
                
SpawnPlayer(playerid);  
                
pInfo[playerid][Spawn] = 0;  
                
SetPlayerPos(playeridcoordSpawn[0], coordSpawn[1], coordSpawn[2]);  
                return 
1;  
            }  
            if(
pInfo[playerid][Errosenha] == 2)  
            {  
                
SendClientMessage(playeridCOLOR_ERROR"Voce sera kickado apos errar 3 vezes!");  
                
KickP(playerid);  
                return 
1;  
            }  
            
pInfo[playerid][Errosenha]++;  
            
ShowPlayerDialog(playeridD_LogarDIALOG_STYLE_PASSWORD"Logando (x)""{FFFFFF}A senha esta errada.\nPor Favor tente novamente!""Entrar""Sair");  
            return 
1;  
        }  
        
KickP(playerid);  
    }  
    if(
dialogid == D_Sexo)  
    {  
        if(
response)  
        {  
            
SendClientMessage(playerid,-1,"{261BF7}Voce escolheu o Sexo Masculino.");  
            
SetPlayerSkin(playerid144);  
        }  
        else  
        {  
            
SendClientMessage(playerid,-1,"{F71BDE}Voce escolheu o Sexo Feminino.");  
            
SetPlayerSkin(playerid56);  
        }  
    }  
    return 
1;  
}  
//=====================================================  
//=================[STOCKS DO SERVIDOR]================  
stock PegarNome(playerid)  
{  
    new 
Name[MAX_PLAYER_NAME];  
    
GetPlayerName(playeridNameMAX_PLAYER_NAME);  
    return 
Name;  
}  
stock SalvarPlayer(playerid)  
{  
    new 
pArquivos[50];  
    
format(pArquivossizeof(pArquivos), CONTASSPegarNome(playerid));  
    if(
DOF2_FileExists(pArquivos))  
    {  
        
DOF2_SetInt(pArquivos"Level"GetPlayerScore(playerid));  
        
DOF2_SetInt(pArquivos"Skin"GetPlayerSkin(playerid));  
        
DOF2_SetInt(pArquivos"Spawn"pInfo[playerid][Spawn]);  
        
GetPlayerPos(playeridcoordSpawn[0], coordSpawn[1], coordSpawn[2]);  
        
DOF2_SetFloat(pArquivos"PozicaoX"coordSpawn[0]);  
        
DOF2_SetFloat(pArquivos"PozicaoY"coordSpawn[1]);  
        
DOF2_SetFloat(pArquivos"PozicaoZ"coordSpawn[2]);  
        
DOF2_SaveFile();  
    }  
    return 
1;  
}  
stock CarregarPlayer(playerid)  
{  
    new 
pArquivos[50];  
    
format(pArquivossizeof(pArquivos), CONTASSPegarNome(playerid));  
    if(
DOF2_FileExists(pArquivos))  
    {  
        
SetPlayerScore(playeridDOF2_GetInt(pArquivos"Level"));  
        
SetPlayerSkin(playeridDOF2_GetInt(pArquivos"Skin"));  
        
pInfo[playerid][Spawn] = DOF2_GetInt(pArquivos"Spawn");  
        
coordSpawn[0] = DOF2_GetFloat(pArquivos"PozicaoX");  
        
coordSpawn[1] = DOF2_GetFloat(pArquivos"PozicaoY");  
        
coordSpawn[2] = DOF2_GetFloat(pArquivos"PozicaoZ");  
    }  
    return 
1;  
}  
forward KickPlayer(playerid);  
public 
KickPlayer(playerid)  
{  
    
Kick(playerid);  
    return 
1;  

Fiz o teste e funcionou corretamente. Dъvidas disponha-se de min.
Reply


Messages In This Thread
spawn randon/ spawn voltar - by D3sconn3ct - 02.04.2015, 21:33
Re: spawn randon/ spawn voltar - by #Luca[S]. - 02.04.2015, 22:29
Re: spawn randon/ spawn voltar - by Hardware - 02.04.2015, 22:43
Re: spawn randon/ spawn voltar - by ImperioHosting - 02.04.2015, 22:48
Re: spawn randon/ spawn voltar - by D3sconn3ct - 02.04.2015, 23:10
Re: spawn randon/ spawn voltar - by Hardware - 02.04.2015, 23:36
Re: spawn randon/ spawn voltar - by D3sconn3ct - 03.04.2015, 00:20
Re: spawn randon/ spawn voltar - by Hardware - 03.04.2015, 05:39

Forum Jump:


Users browsing this thread: 1 Guest(s)