delius39
Новичок
И так, написал код и решил проблемы которые мог. Но сейчас не могу найти не проблему, не решение. В чём суть - при регистрации игрок выбирает к примеру женский пол и тёмный цвет кожи, это вторые варианты. Но почему-то вне зависимости от его выбора выбирается мужской пол и светлый цвет кожи. После чего рандомится скин из того что предложено в данном варианте. Добавив принт мне отображает тоже самое что в базе данных(1-мужской пол, 1-светлый цвет кожи)
Вот код:
Вот код:
PHP:
case DLG_REGSEX:
{
if(response) player_info[playerid][SEX] = 1;
else player_info[playerid][SEX] = 2;
SPD(playerid, DLG_REGRACE, DIALOG_STYLE_LIST, "{FFBC00}Ðåãèñòðàöèÿ{FFFFFF} • Âûáåðèòå öâåò êîæè âàøåãî ïåðñîíàæà",
"Ñâåòëûé\nÒ¸ìíûé",
"Äàëåå", "Âûõîä");
printf("%d", player_info[playerid][SEX]);
}
case DLG_REGRACE:
{
if(response) player_info[playerid][RACE] = 1;
else player_info[playerid][RACE] = 2;
SPD(playerid, DLG_REGREF, DIALOG_STYLE_INPUT, "{FFBC00}Ðåãèñòðàöèÿ{FFFFFF} • Ââåäèòå Nick_Name èãðîêà êîòîðûé âàñ ïðèãëàñèë",
"{FFFFFF}Ââåäèòå íèê èãðîêà, ïðèãëàñèâøåãî âàñ íà äàííûé ñåðâåð.\n\
Åñëè òàêîãî èãðîêà íå èìååòñÿ, òî íàæìèòå êíîïêó \"Ïðîïóñòèòü\".\n\n\
\t{FFBC00}Ïðèìå÷àíèå:\n\
\t•Ïðè äîñòèæåíèè Âàìè 4 óðîâíÿ, èãðîê ïðèãëàñèâøèé âàñ ïîëó÷àåò 150.000 âèðò.",
"Äàëåå", "Ïðîïóñòèòü");
printf("%d", player_info[playerid][RACE]);
}
case DLG_REGREF:
{
if(response)
{
static const fmt_query[] = "SELECT * FROM `accounts` WHERE `name` = '%s'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)];
format(query, sizeof(query), fmt_query, inputtext);
mysql_tquery(dbHandle, query, "CheckReferal", "is", playerid, inputtext);
}
else
{
TogglePlayerSpectating(playerid, 0);
SetPVarInt(playerid, "logged", 1);
SetSpawnInfo(playerid, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
}
new regmaleskins[2][4] =
{
{230,78,137,200}, //ñâåòëûé
{18,79,134,136} //ò¸ìíûé
};
new regfemaleskins[2][2] =
{
{41,65}, //ñâåòëûé
{13,195} //ò¸ìíûé
};
new newskinindex;
switch(player_info[playerid][RACE])
{
case 1: {}
case 2: newskinindex++;
}
if(player_info[playerid][SEX] == 1) player_info[playerid][SKIN] = regmaleskins[newskinindex][random(4)];
else player_info[playerid][SKIN] = regfemaleskins[newskinindex][random(2)];
new Year, Month, Day;
getdate (Year, Month, Day);
new date[13];
format(date, sizeof(date), "%02d.%02d.%d.", Day, Month, Year);
new ip[16];
GetPlayerIp(playerid, ip, sizeof(ip));
static const fmt_query[] = "INSERT INTO `accounts` (`name`, `password`, `salt`, `email`, `sex`, `race`, `ref`, `skin`, `regdata`, `regip`) VALUES ('%s', '%s', '%s', '%s', '%d', '%d', '%d', '%d', '%s', '%s')";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)+(-2+64)+(-2+10)+(-2+64)+(-2+1)+(-2+1)+(-2+8)+(-2+3)+(-2+12)+(-2+15)];
format(query, sizeof(query), fmt_query, player_info[playerid][NAME], player_info[playerid][PASSWORD], player_info[playerid][SALT], player_info[playerid][EMAIL], player_info[playerid][SEX], player_info[playerid][RACE], player_info[playerid][REF], player_info[playerid][SKIN], date, ip);
printf("%d", player_info[playerid][SKIN]);
mysql_query(dbHandle, query);
static const fmt_query2[] = "SELECT * FROM `accounts` WHERE `name` = '%s' AND `password` = '%s'";
format(query, sizeof(query), fmt_query2, player_info[playerid][NAME], player_info[playerid][PASSWORD]);
mysql_tquery(dbHandle, query, "PlayerLogin", "i", playerid);
}
Последнее редактирование:
