Boa Noite a Todos !
Gostaria De Saber Como Faзo Para Quando o Player Digitar a Senha e Ele Apertar "Enter" Ele For Direto Para o Spawn Dele !
Vamos Lб
Coordenadas De Spawn
pawn Код:
AddPlayerClass(23, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
Sistema De Registro/Login
pawn Код:
#define DIALOG_LOGAR 1
#define DIALOG_REGISTRO 2
pawn Код:
enum pInfo
{
pSkin,
pSenha
};
new PlayerInfo[MAX_PLAYERS][pInfo];
new Erro[MAX_PLAYERS];
pawn Код:
public OnGameModeExit()
{
DOF2_Exit();
return 1;
}
pawn Код:
public OnPlayerConnect
(playerid
){ new name
[MAX_PLAYER_NAME
];
new arquivo
[40];
GetPlayerName
(playerid, name,
32);
format(arquivo,
40,
"Contas/%s.ini", name
);
if(DOF2_FileExists
(arquivo
)) { ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
} else { ShowPlayerDialog
(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Registro",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {FF0000}Nгo Registra\n{FFFFFF}Registre-se ! Nome_Sobrenome\nExemplo: Guru_Josh\nDigite Sua Senha Para Se Registrar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Registrar",
"Cancelar");
} return 1;
}
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
new arquivo[40], name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, 32);
format(arquivo, 40, "Contas/%s.ini", name);
if(DOF2_FileExists(arquivo))
{
DOF2_SetInt(arquivo, "Senha", PlayerInfo[playerid][pSenha]);
DOF2_SetInt(arquivo, "Skin", PlayerInfo[playerid][pSkin]);
DOF2_SaveFile();
}
return 1;
}
pawn Код:
public OnDialogResponse
(playerid, dialogid, response, listitem, inputtext
[]){ new arquivo
[40], name
[MAX_PLAYER_NAME
];
GetPlayerName
(playerid, name,
32);
format(arquivo,
40,
"Contas/%s.ini", name
);
if(dialogid
== DIALOG_REGISTRO
) { if(!strval(inputtext
)) { ShowPlayerDialog
(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Registro",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {FF0000}Nгo Registra\n{FFFFFF}Registre-se ! Nome_Sobrenome\nExemplo: Guru_Josh\nDigite Sua Senha Para Se Registrar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Registrar",
"Cancelar");
SendClientMessage
(playerid,
-1,
"[BKG] Erro, Digite apenas nъmeros para se registrar.");
return 1;
} if(!response
) { Kick
(playerid
);
return 1;
} else { PlayerInfo
[playerid
][pSenha
] = strval(inputtext
);
DOF2_CreateFile
(arquivo
);
DOF2_SetInt
(arquivo,
"Senha", PlayerInfo
[playerid
][pSenha
]);
DOF2_SetInt
(arquivo,
"Skin",
23);
DOF2_SaveFile
();
SendClientMessage
(playerid,
-1,
"[BKG] Sua Conta foi Registrada, Agora digite sua senha novamente para logar!");
ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
} } if(dialogid
== DIALOG_LOGAR
) { if(!strval(inputtext
)) { SendClientMessage
(playerid,
-1,
"[BKG] Erro, Digite apenas nъmeros para se logar.");
ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
} if(!response
) { Kick
(playerid
);
return 1;
} else { PlayerInfo
[playerid
][pSenha
] = DOF2_GetInt
(arquivo,
"Senha");
if(strval(inputtext
) == PlayerInfo
[playerid
][pSenha
]) { PlayerInfo
[playerid
][pSkin
] = DOF2_GetInt
(arquivo,
"Skin");
SetPlayerSkin
(playerid, PlayerInfo
[playerid
][pSkin
]);
SpawnPlayer
(playerid
);
} else { ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
if(Erro
[playerid
] == 5) { 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;
} } } } return 1;
}
pawn Код:
stock ReturnPlayer(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,MAX_PLAYER_NAME);
return name;
}
Podem Me Ajudar Porfavor ? ++Resp
Nгo entendi ? se quando ele logar , automaticamente ele escolhera as skins e jб fara o spawn '-
Acredito que a funзгo Return 0 jogarб ele jб para dentro do mapa, se nгo der certo , tente retirar a public
pawn Код:
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); // Posiзгo do jogador.
SetPlayerFacingAngle(playerid, 269.1425); // Вngulo para focar a visгo do jogador em um determinado ponto.
SetCameraBehindPlayer(playerid); // Cвmera atrбs do jogador.
No local aonde os dados do jogador sгo carregados ao se conectar coloque o seguinte cуdigo:
pawn Код:
public OnDialogResponse
(playerid, dialogid, response, listitem, inputtext
[]){ new arquivo
[40], name
[MAX_PLAYER_NAME
];
GetPlayerName
(playerid, name,
32);
format(arquivo,
40,
"Contas/%s.ini", name
);
if(dialogid
== DIALOG_REGISTRO
) { if(!strval(inputtext
)) { ShowPlayerDialog
(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Registro",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {FF0000}Nгo Registra\n{FFFFFF}Registre-se ! Nome_Sobrenome\nExemplo: Guru_Josh\nDigite Sua Senha Para Se Registrar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Registrar",
"Cancelar");
SendClientMessage
(playerid,
-1,
"[BKG] Erro, Digite apenas nъmeros para se registrar.");
return 1;
} if(!response
) { Kick
(playerid
);
return 1;
} else { PlayerInfo
[playerid
][pSenha
] = strval(inputtext
);
DOF2_CreateFile
(arquivo
);
DOF2_SetInt
(arquivo,
"Senha", PlayerInfo
[playerid
][pSenha
]);
DOF2_SetInt
(arquivo,
"Skin",
23);
DOF2_SaveFile
();
SendClientMessage
(playerid,
-1,
"[BKG] Sua Conta foi Registrada, Agora digite sua senha novamente para logar!");
ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
} } if(dialogid
== DIALOG_LOGAR
) { if(!strval(inputtext
)) { SendClientMessage
(playerid,
-1,
"[BKG] Erro, Digite apenas nъmeros para se logar.");
ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
} if(!response
) { Kick
(playerid
);
return 1;
} else { PlayerInfo
[playerid
][pSenha
] = DOF2_GetInt
(arquivo,
"Senha");
if(strval(inputtext
) == PlayerInfo
[playerid
][pSenha
]) { PlayerInfo
[playerid
][pSkin
] = DOF2_GetInt
(arquivo,
"Skin");
SetPlayerSkin
(playerid, PlayerInfo
[playerid
][pSkin
]);
SpawnPlayer
(playerid
);
SetPlayerPos
(playerid,
1958.3783,
1343.1572,
15.3746);
SetPlayerFacingAngle
(playerid,
269.1425);
} else { ShowPlayerDialog
(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD,
"{00FF00}Brasil {FFFF00}Knight {0000FF}Games {FFFFFF}- Login",
"{FFFFFF}Bem Vindo(a): {FFFF00}NomeDoPlayer\n{FFFFFF}Status Da Conta: {00FF00}Registrada\n{FFFFFF}Digite Sua Senha Para Logar!\nwww.{00FF00}brasil{FFFF00}knight{0000FF}games{FFFFFF}.com",
"Logar",
"Cancelar");
if(Erro
[playerid
] == 5) { 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;
} } } } return 1;
}