Geebrox
27.02.2017, 22:58
Есть текстдравы переключение между скинами при регистрации. Очень странная ситуация, при выборе мужского пола, переключение скинов работает нормально, но при выборе женского пола при переключение на предыдущие скины, как бы скины меняются на те, которых вообще нет в массиве.
http://i.imgur.com/I5dz6Oh.png
// В настройках (отдельный инклюд)
#define PLAYER_MODELS_MALE 2, 3, 4, 5, 6, 7
#define PLAYER_MODELS_FEMALE 12, 13, 40, 41, 55
// В переменных
new const player_models[2][] =
{
{PLAYER_MODELS_MALE, -1},
{PLAYER_MODELS_FEMALE, -1}
};
// OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
if(playertextid == PTD_join[playerid][5] ||
playertextid == PTD_join[playerid][6])
{
new model_picker =
((playertextid == PTD_join[playerid][6]) ? (1) : (-1)) +
GetPVarInt(playerid, "model_picker");
if(model_picker == -1)
{
while(player_models[player[playerid][player_gender]][model_picker]
!= -1)
{
model_picker++;
}
model_picker--;
}
else if(player_models[player[playerid][player_gender]][model_picker]
== -1)
{
model_picker = 0;
}
PlayerTextDrawSetPreviewModel(playerid, PTD_join[playerid][4],
(player[playerid][player_model] =
player_models[player[playerid][player_gender]][model_picker]));
PlayerTextDrawShow(playerid, PTD_join[playerid][4]);
SetPVarInt(playerid, "model_picker", model_picker);
return 1;
}
// Выбор пола
player[playerid][player_gender] = response;
PlayerTextDrawSetString(playerid, PTD_join[playerid][0],
(!response) ? ("Мужской") : ("Женский"));
PlayerTextDrawShow(playerid, PTD_join[playerid][0]);
PlayerTextDrawSetPreviewModel(playerid, PTD_join[playerid][4],
(player[playerid][player_model] = player_models[response][0]));
PlayerTextDrawShow(playerid, PTD_join[playerid][4]);
SetPVarInt(playerid, "model_picker", 0);
printf("Gender: %d", player[playerid][player_gender]);
return 1;
http://i.imgur.com/I5dz6Oh.png
// В настройках (отдельный инклюд)
#define PLAYER_MODELS_MALE 2, 3, 4, 5, 6, 7
#define PLAYER_MODELS_FEMALE 12, 13, 40, 41, 55
// В переменных
new const player_models[2][] =
{
{PLAYER_MODELS_MALE, -1},
{PLAYER_MODELS_FEMALE, -1}
};
// OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
if(playertextid == PTD_join[playerid][5] ||
playertextid == PTD_join[playerid][6])
{
new model_picker =
((playertextid == PTD_join[playerid][6]) ? (1) : (-1)) +
GetPVarInt(playerid, "model_picker");
if(model_picker == -1)
{
while(player_models[player[playerid][player_gender]][model_picker]
!= -1)
{
model_picker++;
}
model_picker--;
}
else if(player_models[player[playerid][player_gender]][model_picker]
== -1)
{
model_picker = 0;
}
PlayerTextDrawSetPreviewModel(playerid, PTD_join[playerid][4],
(player[playerid][player_model] =
player_models[player[playerid][player_gender]][model_picker]));
PlayerTextDrawShow(playerid, PTD_join[playerid][4]);
SetPVarInt(playerid, "model_picker", model_picker);
return 1;
}
// Выбор пола
player[playerid][player_gender] = response;
PlayerTextDrawSetString(playerid, PTD_join[playerid][0],
(!response) ? ("Мужской") : ("Женский"));
PlayerTextDrawShow(playerid, PTD_join[playerid][0]);
PlayerTextDrawSetPreviewModel(playerid, PTD_join[playerid][4],
(player[playerid][player_model] = player_models[response][0]));
PlayerTextDrawShow(playerid, PTD_join[playerid][4]);
SetPVarInt(playerid, "model_picker", 0);
printf("Gender: %d", player[playerid][player_gender]);
return 1;