[Ajuda] PLAYER SPAWNAR APOS LOGIN
#1

E ae rapaziada,
Ao player conectar ele entra na tela de login , ao player fazer o login ele tem que spawnar so que ao player loga ele cai na tela que contem o "<<" ">>" "Spawn",
jб tentei colocar o SpawnPlayer(playerid); , so que em nenhum local colocado funcionou й no antigo sistema de login ficava apos o " GetPlayerName (playerid, SenderName, MAX_PLAYER_NAME);
format (gstring, sizeof (gstring), "[BMS]: Bem Vindo% s", SenderName);" so que tentei tbm e deu fail! .-.

Pastebin : http://pastebin.com/nmKLTAP8
Reply
#2

cara nгo sei estudo o meu sistema ai e ve o que esta faltando no seu

Quote:

new arquivo[40], name[MAX_PLAYER_NAME]; // criando a string arquivo com 40 celulas e criando a variavel name
GetPlayerName(playerid, name, 32); // pegando o nome do player
format(arquivo, 40, "Contas/%s.ini", name); // formatando o arquivo para a pasta Contas
if(dialogid == DIALOG_REGISTRO) // Dialog registro
{
if(!strval(inputtext)) // se ele nao digitar numeros da erro e volta no dialog de registro
{
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Registro", "Status da conta : Nгo Registrada\n digite uma senha para se registrar!", "Registrar", "Cancelar");
SendClientMessage(playerid, -1, "[V-SP] Erro, Digite apenas nъmeros para se registrar.");
return 1;
}
if(!response) //se ele apertar o botao Cancelar, kicka ele !
{
Kick(playerid);
return 1;
}
else // se ele colocar a senha certa cria os arquivos
{
PlayerInfo[playerid][pSenha] = strval(inputtext); // pega a senha que ele digitou no campo do dialog
DOF2_CreateFile(arquivo); // cria o arquivo na pasta Contas
DOF2_SetInt(arquivo, "Senha", PlayerInfo[playerid][pSenha]); // seta a senha para a que ele digitou no dialog
DOF2_SetInt(arquivo, "Skin", 23); // seta a skin dele para 23, podendo mudar para qualquer numero.
DOF2_SaveFile(); // salva o arquivo
SendClientMessage(playerid, -1, "[BBS] Sua Conta foi Registrada, Agora digite sua senha novamente para logar!");
ShowPlayerDialog(playerid, DIALOG_SKIN, DIALOG_STYLE_INPUT, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Skin", "Escolha sua skin entre 1 б 230", "Selecionar", "Cancelar");
}
}
if(dialogid == DIALOG_LOGAR)
{
if(!strval(inputtext)) // se ele nao digitar apenas numeros volta o dialog de login
{
SendClientMessage(playerid, -1, "[BBS] Erro, Digite apenas nъmeros para se logar.");
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Login", "Status da conta : Registrada\n digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Logar", "Cancelar");
return 1;
}
if(!response) // se ele clickar em Cancelar kicka ele !
{
Kick(playerid);
return 1;
}
else // Se ele colocar a senha certa
{
PlayerInfo[playerid][pSenha] = DOF2_GetInt(arquivo, "Senha"); // pega a senha salva dele
if(strval(inputtext) == PlayerInfo[playerid][pSenha]) // pega a senha que ele digitou
{
PlayerInfo[playerid][pSkin] = DOF2_GetInt(arquivo, "Skin"); // pega a skin do player
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]); // seta a skin do player para a skin salva
SpawnPlayer(playerid); // em seguida, spawna o player
}
else // se ele errar a senha mostra o dialog denovo
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Login", "Status da conta : Registrada\n digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Logar", "Cancelar");
Erro[playerid]++; // e adiciona 1 erro
if(Erro[playerid] == 5) // se ele errar 5 vezes ele serб banido !
{
SendClientMessage(playerid, -1, "Sua conta estб banida por errar 5 vezes a sua senha, contacte o Admin para retirar seu Ban!");
Ban(playerid);
return 1;
}
}
}
}
if(dialogid == DIALOG_SKIN)
{
if(strval(inputtext)>=1 && strval(inputtext)<=230) // se ele nao digitar apenas numeros volta o dialog de login
{
DOF2_SetInt(arquivo, "Skin", strval(inputtext));
DOF2_SaveFile();
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Login", "Status da conta : Registrada\n digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Logar", "Cancelar");
return 1;
}
else
{
ShowPlayerDialog(playerid, DIALOG_SKIN, DIALOG_STYLE_INPUT, "{00FF00}[{00FF00}B{00FF00}B{FFFF00}S{FFFF00}]{FFFFFF} - Skin", "Escolha sua skin entre 1 б 230", "Selecionar", "Cancelar");
}
}

Reply
#3

Eu uso o SetSpawnInfo() e depois SpawnPlayer().
Se precisar de uma explicaзгo, eu posso te ajudar.
Reply
#4

Код:
TogglePlayerSpectating(playerid, 1);
TogglePlayerSpectating(playerid, 0);
SpawnPlayer(playerid);
ou

Код:
public OnPlayerRequestClass(playerid, classid)
{
    return SpawnPlayer(playerid);
}
Reply
#5

Mano , coloquei desse jeito aonde ta o spawnplayer , so que insisti nгo da o spawn. :Z

@Edit tentei de todos os jeito que vocкs falaram e nгo da o spawn .-.
Reply
#6

Depois de o player carregar os dados e efetuar o login:

SetTimer("spawnp", 100, false);


No final do GameMode:

forward spawnp(playerid);
public spawnp(playerid)
{
SpawnPlayer(playerid);
return true;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)