PDA

Просмотр полной версии : [Вопрос] баг при выбере скина



andreiii
23.06.2014, 23:01
у меня такая проблема,я захожу на сервер регаюсь,и немогу выберить скин потому что выходить окно регистрации несколько раз немогу выберить скин,если вы знаите такую проблемку пишите буду рад.

Top_Gamer
24.06.2014, 00:21
Покажи код регистрации.

andreiii
24.06.2014, 00:54
forward OnPlayerRegister(playerid, password[]);
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string[64];
GetPlayerName(playerid, playername, sizeof(playername));
format(string,sizeof(string), "accounts/%s.ini", playername);
new iniFile = ini_createFile(string);
if(iniFile < 0)
{
iniFile = ini_openFile(string);
}
if(iniFile >= 0)
{
strmid(Player[playerid][pPass],password,0,strlen(password),255);
ini_setString(iniFile,"Pass",Player[playerid][pPass]);
ini_setInteger(iniFile, "Rega", 0); // выбор скина
ini_setInteger(iniFile, "Health", 0); // выбор скина
ini_setInteger(iniFile, "Sex", 0); // выбор скина
ini_setInteger(iniFile, "Skin", 0); // выбор скина
ini_setInteger(iniFile, "Member", 0); // выбор скина
ini_setInteger(iniFile, "Leader", 0); // выбор скина
ini_setInteger(iniFile, "Rank", 0); // выбор скина
ini_closeFile(iniFile);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
}
}
return 1;
}

forward OnPlayerLogin(playerid,password[]);
public OnPlayerLogin(playerid,password[])
{
if(IsPlayerConnected(playerid))
{
new string[64];
new pass[64];
GetPlayerName(playerid, playername, sizeof(playername));
format(string,sizeof(string), "accounts/%s.ini", playername);
new iniFile = ini_openFile(string);
ini_getString(iniFile,"Pass",pass,64);
if(strcmp(pass,password,true) == 0)
{
ini_getString(iniFile,"Pass",Player[playerid][pPass],64);
ini_setInteger(iniFile, "Rega", PlayerInfo[playerid][pRega]);//выбор скина
ini_getInteger(iniFile, "Health", PlayerInfo[playerid][pHealth]);//выбор скина
ini_getInteger(iniFile, "Sex", PlayerInfo[playerid][pSex]);//выбор скина
ini_getInteger(iniFile, "Skin", PlayerInfo[playerid][pSkin]);//выбор скина
ini_getInteger(iniFile, "Member", PlayerInfo[playerid][pMember]);//выбор скина
ini_setInteger(iniFile, "Leader", PlayerInfo[playerid][pLeader]);//выбор скина
ini_getInteger(iniFile, "Rank", PlayerInfo[playerid][pRank]);//выбор скина
ini_closeFile(iniFile);
}
else
{
ini_closeFile(iniFile);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
return 1;
}
SpawnPlayer(playerid);
}
return 1;
}

- - - Добавлено - - -

а это OnDialogResponse


//система регистарции
if(dialogid == 1)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
return 1;
}
new pass[64];
strmid(pass,inputtext,0,strlen(inputtext),64);
OnPlayerLogin(playerid,pass);
}
else
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
}
}
if(dialogid == 2)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Регистрация", "{ffffff}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо пройти регистрацию!\n\nВведите пароль от вашего аккаунта\nОн будет запрашиваться каждый раз,когда вы заходите на сервер\n\n\t{66cc33}Примечания:\n\t- Пароль может состоять из русских и латинских символов\n\t- Пароль чувствителен к регистру\n\t- Длина пароля от 6-ти до 15 символов", "Войти", "Выйти");
return 1;
}
new pass[64];
strmid(pass,inputtext,0,strlen(inputtext),64);
OnPlayerRegister(playerid,pass);
}
else
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Регистрация", "{ffffff}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо пройти регистрацию!\n\nВведите пароль от вашего аккаунта\nОн будет запрашиваться каждый раз,когда вы заходите на сервер\n\n\t{66cc33}Примечания:\n\t- Пароль может состоять из русских и латинских символов\n\t- Пароль чувствителен к регистру\n\t- Длина пароля от 6-ти до 15 символов", "Войти", "Выйти");
}
}
//конец
//выбор скина
if(dialogid == 15)//------------------------------------ [ Мужчина ] -------------------------------------------------//
{
if(response)
{
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
PlayerInfo[playerid][pSex] = 0;//Парень
PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pLeader] = 0;
PlayerInfo[playerid][pRank] = 0;
SetPlayerInterior(playerid,5);
ShowMenuForPlayer(Bomj,playerid);
ChosenSkin[playerid] = 230;
TutTime[playerid] = 0;
gOoc[playerid] = 0; gFam[playerid] = 0; gLogin[playerid] = 0;
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Быстрый бег'");
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Вверх,вниз'");
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
SelectChar[playerid] = 255;
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pSkin] = ChosenSkin[playerid];
new skin =2 + random(100);
SetPlayerVirtualWorld(playerid,skin);
OnPlayerRegister(playerid);//заменяем на паблик сохранения
return 1;
}
else//------------------------------------ [ Девушка] -------------------------------------------------
{
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
PlayerInfo[playerid][pSex] = 1;
PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pLeader] = 0;
PlayerInfo[playerid][pRank] = 0;
ChosenSkin[playerid] = 90;
SetPlayerInterior(playerid,5);
ShowMenuForPlayer(Bomj,playerid);
TutTime[playerid] = 0;
gOoc[playerid] = 0; gFam[playerid] = 0; gLogin[playerid] = 0;
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Быстрый бег'");
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Вверх,вниз'");
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
SelectChar[playerid] = 255;
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pSkin] = ChosenSkin[playerid];
new skin =2 + random(100);
SetPlayerVirtualWorld(playerid,skin);
OnPlayerRegister(playerid);//заменяем на паблик сохранения
return 1;
}
}
//конец

Top_Gamer
24.06.2014, 01:45
forward OnPlayerRegister(playerid, password[]);
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string[64];
GetPlayerName(playerid, playername, sizeof(playername));
format(string,sizeof(string), "accounts/%s.ini", playername);
new iniFile = ini_createFile(string);
if(iniFile < 0)
{
iniFile = ini_openFile(string);
}
if(iniFile >= 0)
{
strmid(Player[playerid][pPass],password,0,strlen(password),255);
ini_setString(iniFile,"Pass",Player[playerid][pPass]);
ini_setInteger(iniFile, "Rega", 0); // выбор скина
ini_setInteger(iniFile, "Health", 0); // выбор скина
ini_setInteger(iniFile, "Sex", 0); // выбор скина
ini_setInteger(iniFile, "Skin", 0); // выбор скина
ini_setInteger(iniFile, "Member", 0); // выбор скина
ini_setInteger(iniFile, "Leader", 0); // выбор скина
ini_setInteger(iniFile, "Rank", 0); // выбор скина
ini_closeFile(iniFile);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
}
}
return 1;
}

forward OnPlayerLogin(playerid,password[]);
public OnPlayerLogin(playerid,password[])
{
if(IsPlayerConnected(playerid))
{
new string[64];
new pass[64];
GetPlayerName(playerid, playername, sizeof(playername));
format(string,sizeof(string), "accounts/%s.ini", playername);
new iniFile = ini_openFile(string);
ini_getString(iniFile,"Pass",pass,64);
if(strcmp(pass,password,true) == 0)
{
ini_getString(iniFile,"Pass",Player[playerid][pPass],64);
ini_setInteger(iniFile, "Rega", PlayerInfo[playerid][pRega]);//выбор скина
ini_getInteger(iniFile, "Health", PlayerInfo[playerid][pHealth]);//выбор скина
ini_getInteger(iniFile, "Sex", PlayerInfo[playerid][pSex]);//выбор скина
ini_getInteger(iniFile, "Skin", PlayerInfo[playerid][pSkin]);//выбор скина
ini_getInteger(iniFile, "Member", PlayerInfo[playerid][pMember]);//выбор скина
ini_setInteger(iniFile, "Leader", PlayerInfo[playerid][pLeader]);//выбор скина
ini_getInteger(iniFile, "Rank", PlayerInfo[playerid][pRank]);//выбор скина
ini_closeFile(iniFile);
}
else
{
ini_closeFile(iniFile);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
return 1;
}
SpawnPlayer(playerid);
}
return 1;
}

- - - Добавлено - - -

а это OnDialogResponse


//система регистарции
if(dialogid == 1)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
return 1;
}
new pass[64];
strmid(pass,inputtext,0,strlen(inputtext),64);
OnPlayerLogin(playerid,pass);
}
else
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT, "Авторизация", "{FFFFFF}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо авторизироваться!\n\nВведите пароль от вашего аккаунта!", "Войти", "");
}
}
if(dialogid == 2)
{
if(response)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Регистрация", "{ffffff}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо пройти регистрацию!\n\nВведите пароль от вашего аккаунта\nОн будет запрашиваться каждый раз,когда вы заходите на сервер\n\n\t{66cc33}Примечания:\n\t- Пароль может состоять из русских и латинских символов\n\t- Пароль чувствителен к регистру\n\t- Длина пароля от 6-ти до 15 символов", "Войти", "Выйти");
return 1;
}
new pass[64];
strmid(pass,inputtext,0,strlen(inputtext),64);
OnPlayerRegister(playerid,pass);
}
else
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Регистрация", "{ffffff}Добро пожаловать на сервер Grom Role Play\n{ffffff}Чтобы начать игру вам необходимо пройти регистрацию!\n\nВведите пароль от вашего аккаунта\nОн будет запрашиваться каждый раз,когда вы заходите на сервер\n\n\t{66cc33}Примечания:\n\t- Пароль может состоять из русских и латинских символов\n\t- Пароль чувствителен к регистру\n\t- Длина пароля от 6-ти до 15 символов", "Войти", "Выйти");
}
}
//конец
//выбор скина
if(dialogid == 15)//------------------------------------ [ Мужчина ] -------------------------------------------------//
{
if(response)
{
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
PlayerInfo[playerid][pSex] = 0;//Парень
PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pLeader] = 0;
PlayerInfo[playerid][pRank] = 0;
SetPlayerInterior(playerid,5);
ShowMenuForPlayer(Bomj,playerid);
ChosenSkin[playerid] = 230;
TutTime[playerid] = 0;
gOoc[playerid] = 0; gFam[playerid] = 0; gLogin[playerid] = 0;
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Быстрый бег'");
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Вверх,вниз'");
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
SelectChar[playerid] = 255;
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pSkin] = ChosenSkin[playerid];
new skin =2 + random(100);
SetPlayerVirtualWorld(playerid,skin);
OnPlayerRegister(playerid);//заменяем на паблик сохранения
return 1;
}
else//------------------------------------ [ Девушка] -------------------------------------------------
{
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
PlayerInfo[playerid][pSex] = 1;
PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pLeader] = 0;
PlayerInfo[playerid][pRank] = 0;
ChosenSkin[playerid] = 90;
SetPlayerInterior(playerid,5);
ShowMenuForPlayer(Bomj,playerid);
TutTime[playerid] = 0;
gOoc[playerid] = 0; gFam[playerid] = 0; gLogin[playerid] = 0;
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Быстрый бег'");
SendClientMessage(playerid, COLOR_WHITE, "Используйте клавишу 'Вверх,вниз'");
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
SelectChar[playerid] = 255;
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pSkin] = ChosenSkin[playerid];
new skin =2 + random(100);
SetPlayerVirtualWorld(playerid,skin);
OnPlayerRegister(playerid);//заменяем на паблик сохранения
return 1;
}
}
//конец
Напиши скайп в ЛС, попытаюсь помочь.