26.06.2015, 16:52
(
Последний раз редактировалось iMFear; 15.07.2015 в 18:02.
)
uй....
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) { case DIALOG_REGISTER: { if(!response) Kick(playerid); if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Bem-vindo, novo jogador!","{00AD85}Bem-vindo, novo jogador!{FFFFFF}Digite sua{00FF22}senha {FFFFFF}abaixo para registrar sua conta.\nassim todas suas conquistas serгo salvos!","Registrar","Sair"); if(response) { new file[64]; GetPlayerName(playerid,file,sizeof(file)); format(file,sizeof(file),DOF2_File(file)); DOF2_CreateFile(file, inputtext); DOF2_SetInt(file, "Kills", 0); DOF2_SetInt(file, "Deaths", 0); DOF2_SetInt(file, "Money", 1000); DOF2_SetInt(file, "AdminLevel", 0); DOF2_SetInt(file, "Level", 0); DOF2_SetInt(file, "Estudo", 0); DOF2_SaveFile(); ShowPlayerDialog(playerid, DIALOG_SEXO, DIALOG_STYLE_MSGBOX,"Vocк й oque?","{FFFFFF}O Nosso servidor й focado em simular a vida real no jogo GTA:SA.\n Para isso, precisamos saber qual й o seu sexo!","Homem!","Mulher!"); } } case DIALOG_SEXO: { if(response) { new file[64]; GetPlayerName(playerid,file,sizeof(file)); format(file,sizeof(file),DOF2_File(file)); DOF2_SetInt(file, "Skin", 170); DOF2_SaveFile(); SpawnPlayer(playerid); SetPlayerPos(playerid, 1722.5123, -1912.7931, 13.5647); GivePlayerMoney(playerid, 1500); SetPlayerSkin(playerid, 170); SendClientMessage(playerid, -1, "[CONTA]: Vocк registrou com sucesso, vocк escolheu o sexo masculino."); } if(!response) { SpawnPlayer(playerid); GivePlayerMoney(playerid, 1500); SetPlayerPos(playerid, 1722.5123, -1912.7931, 13.5647); SetPlayerSkin(playerid, 226); SendClientMessage(playerid, -1, "[CONTA]: Vocк registrou com sucesso, vocк escolheu o sexo feminino."); new file[64]; GetPlayerName(playerid,file,sizeof(file)); format(file,sizeof(file),DOF2_File(file)); DOF2_SetInt(file, "Skin", 226); DOF2_SaveFile(); } } case DIALOG_LOGIN: { if(!response) Kick(playerid); if(response) { new file[64]; GetPlayerName(playerid,file,sizeof(file)); format(file,sizeof(file),DOF2_File(file)); if(DOF2_FileExists(file)) { if(DOF2_CheckLogin(file,inputtext)) { PlayerInfo[playerid][pKills] = DOF2_GetInt(file,"Kills"); PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file,"Deaths"); PlayerInfo[playerid][pMoney] = DOF2_GetInt(file,"Money"); PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file,"AdminLevel"); PlayerInfo[playerid][pLevel] = DOF2_GetInt(file,"Level"); PlayerInfo[playerid][pSkin] = DOF2_GetInt(file,"Skin"); PlayerInfo[playerid][pEstudo] = DOF2_GetInt(file,"Estudo"); SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0); SpawnPlayer(playerid); GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]); SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]); SendClientMessage(playerid, -1, "[CONTA]: Vocк logou na sua conta com sucesso! Bem-vindo de volta. :)"); return 1; } else { ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Senha errada!","{F81414}Vocк digitou sua senha errado!\n{FFFFFF}Digite ela novamente e dessa vez certo para logar.","Logar","Sair"); return 1; } } } } } return 1; }
SetSpawnInfo(playerid, 1, PlayerInfo[playerid][pSkin], 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0);
new file[64];
GetPlayerName(playerid,file,sizeof(file));
format(file,sizeof(file),DOF2_File(file));
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid)); // para ler as contas
stock Nome(playerid)
{
new name[24];
GetPlayerName(playerid, name, sizeof(name));
return name;
}
Player[playerid][Skin] = DOF2_GetInt(File(playerid), "Skin"); SetPlayerSkin(playerid, Player[playerid][pSkin]);
DOF2_SetInt(File(playerid), "Skin", GetPlayerSkin(playerid));
// Includes //
#include <a_samp>
#include <zcmd>
#include <DOF2>
// Includes //
// Defines
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SEXO 3
/* */
// Vбriaveis
enum pInfo
{
pKills,
pDeaths,
pMoney,
pAdmin,
pSkin,
pLevel,
pEstudo
}
new PlayerInfo[MAX_PLAYERS][pInfo];
new PlayerSkin[MAX_PLAYERS];
/* */
#if defined FILTERSCRIPT
#else
main()
{
print("\n----------------------------------");
print(" RPG Gamemode inciado com sucesso!");
print("----------------------------------\n");
}
#endif
public OnGameModeInit()
{
SetGameModeText("Blank Script");
return 1;
}
public OnGameModeExit()
{
DOF2_Exit();
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
return 1;
}
public OnPlayerConnect(playerid)
{
new file[64];
GetPlayerName(playerid,file,sizeof(file));
format(file,sizeof(file),DOF2_File(file));
if(DOF2_FileExists(file))
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Bem-vindo novamente!","{00AD85}Bem-vindo novamente, jogador!{FFFFFF}Digite sua{00FF22}senha {FFFFFF}abaixo para logar na sua conta!","Logar","Sair");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Bem-vindo, jogador!","{00AD85}Bem-vindo, novo jogador!{FFFFFF}Digite sua{00FF22}senha {FFFFFF}abaixo para se registrar sua conta,\nassim todas suas conquistas serгo salvos!","Registrar","Sair");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid)); // para ler as contas
PlayerSkin[playerid] = GetPlayerSkin(PlayerInfo[playerid][pSkin]);
DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]);
DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
DOF2_SetInt(file, "Money",PlayerInfo[playerid][pMoney]);
DOF2_SetInt(file, "Level",PlayerInfo[playerid][pLevel]);
DOF2_SetInt(file, "Skin",PlayerInfo[playerid][pSkin]);
DOF2_SetInt(file, "Estudo",PlayerInfo[playerid][pEstudo]);
return 1;
}
public OnPlayerSpawn(playerid)
{
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid)); // para ler as contas
PlayerInfo[playerid][pSkin] = DOF2_GetInt(file,"Skin");
SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
PlayerInfo[killerid][pKills]++; // Will increase the killerid kills
PlayerInfo[playerid][pDeaths]++; // Will increase the playerid ( the one who died ) the deaths.
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DIALOG_REGISTER:
{
if(!response) Kick(playerid);
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Bem-vindo, novo jogador!","{00AD85}Bem-vindo, novo jogador!{FFFFFF}Digite sua{00FF22}senha {FFFFFF}abaixo para registrar sua conta.\nassim todas suas conquistas serгo salvos!","Registrar","Sair");
if(response)
{
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid));
DOF2_CreateFile(file, inputtext);
DOF2_SetInt(file, "Kills", 0);
DOF2_SetInt(file, "Deaths", 0);
DOF2_SetInt(file, "Money", 1000);
DOF2_SetInt(file, "AdminLevel", 0);
DOF2_SetInt(file, "Level", 0);
DOF2_SetInt(file, "Estudo", 0);
DOF2_SaveFile();
ShowPlayerDialog(playerid, DIALOG_SEXO, DIALOG_STYLE_MSGBOX,"Vocк й oque?","{FFFFFF}O Nosso servidor й focado em simular a vida real no jogo GTA:SA.\n Para isso, precisamos saber qual й o seu sexo!","Homem!","Mulher!");
}
}
case DIALOG_SEXO:
{
if(response) {
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid));
DOF2_SaveFile();
SpawnPlayer(playerid);
SetPlayerPos(playerid, 1722.5123, -1912.7931, 13.5647);
GivePlayerMoney(playerid, 1500);
SetPlayerSkin(playerid, 170);
SendClientMessage(playerid, -1, "[CONTA]: Vocк registrou com sucesso, vocк escolheu o sexo masculino.");
}
if(!response) {
SpawnPlayer(playerid);
GivePlayerMoney(playerid, 1500);
SetPlayerPos(playerid, 1722.5123, -1912.7931, 13.5647);
SetPlayerSkin(playerid, 226);
SendClientMessage(playerid, -1, "[CONTA]: Vocк registrou com sucesso, vocк escolheu o sexo feminino.");
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid)); // para ler as contas
DOF2_SetInt(file, "Skin", 226);
DOF2_SaveFile();
}
}
case DIALOG_LOGIN:
{
if(!response) Kick(playerid);
if(response)
{
new file[40];
format(file, sizeof(file), "Contas/%s.ini", Nome(playerid)); // para ler as contas
if(DOF2_FileExists(file))
{
if(DOF2_CheckLogin(file,inputtext))
{
PlayerInfo[playerid][pKills] = DOF2_GetInt(file,"Kills");
PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file,"Deaths");
PlayerInfo[playerid][pMoney] = DOF2_GetInt(file,"Money");
PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file,"AdminLevel");
PlayerInfo[playerid][pLevel] = DOF2_GetInt(file,"Level");
PlayerInfo[playerid][pSkin] = DOF2_GetInt(file,"Skin");
PlayerInfo[playerid][pEstudo] = DOF2_GetInt(file,"Estudo");
SetSpawnInfo(playerid, 1, PlayerInfo[playerid][pSkin], 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
SendClientMessage(playerid, -1, "[CONTA]: Vocк logou na sua conta com sucesso! Bem-vindo de volta. :)");
return 1;
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Senha errada!","{F81414}Vocк digitou sua senha errado!\n{FFFFFF}Digite ela novamente e dessa vez certo para logar.","Logar","Sair");
return 1;
}
}
}
}
}
return 1;
}
stock Nome(playerid)
{
new name[24];
GetPlayerName(playerid, name, sizeof(name));
return name;
}
Entгo, eu testei o codigo do IgorLuiz, e nгo funcionou, dai adicionei no cуdigo dele o SetSpawnInfo do Cleyson, e tambйm nгo funcionou, entгo peguei a OnDialogResponse do tуpico mesmo, e adicionei o codigo do Cleyson e nгo funcionou, nenhuma das trкs alternativas foi. Quando eu entro no jogo, registro e coloco o sexo que sou no caso homem, ele vai lб e seta skin do homem, porem quando saio do jogo e reentro, ele me spawna sу que com a skin do cj, independemente do sexo que foi escolhido.
Ou seja, quando escolho o sexo ele seta certinho, mulher com skin de mulher, homem com skin de homem, o problema estб na hora de relogar. Independemente da escolha do sexo, ele vai setar a skin do CJ. @EDIT, vou ver o quк voces falaram ao editar #Vou testar a do ITakeALot |