15.08.2015, 15:26
Hello guys , i'm trying to make some class selection and i ran into some problem.The way my system works is like when player presses right hes teleported to another position with cinematic camera.the problem is : I got 3 different places and i can go to 1 and 2 ,but ot third.
When Player spawns
When player press keys if he's choosing classs
What's the problem?
When Player spawns
PHP код:
if(Player[playerid][AccountVerified] == 1)
{
TogglePlayerControllable(playerid, 0);
SetPlayerSkin(playerid, 105);
SetPlayerPos(playerid, 2494.7563,-1668.0493,13.3438);
SetPlayerCameraPos(playerid, 2464.3269,-1660.7306,13.3076);
SetPlayerCameraLookAt(playerid, 2494.7563,-1668.0493,13.3438);
skinid = 1;
//new string[2];
//format(string,sizeof(string),"%d",skinid);
//SendClientMessage(playerid, 1, string);
}
PHP код:
if(Player[playerid][AccountVerified] == 1 && Player[playerid][LoggedIn] == true)
{
if(PRESSED(KEY_ANALOG_RIGHT) && skinid == 1) //presses right
{
//new string[2];
//format(string,sizeof(string),"%d",skinid);
//SendClientMessage(playerid, 1, string);
SetPlayerPos(playerid, 2218.1865,-1171.0681,25.7266);
SetPlayerSkin(playerid, 102);
InterpolateCameraPos(playerid, 2464.3269,-1660.7306,13.3076, 2223.3882,-1141.7634,25.7969, 2000,CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 2494.7563,-1668.0493,13.3438, 2218.1865,-1171.0681,25.7266, 2000,CAMERA_MOVE);
skinid = 2;
}
if(PRESSED(KEY_ANALOG_RIGHT) && skinid == 2) //presses right
{
//new string[2];
//format(string,sizeof(string),"%d",skinid);
//SendClientMessage(playerid, 1, string);
SetPlayerPos(playerid, 2821.3826,-1087.0073,30.7188);
SetPlayerSkin(playerid, 47);
InterpolateCameraPos(playerid, 2223.3882,-1141.7634,25.7969, 2797.0293,-1087.6442,30.7198, 2000,CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 2218.1865,-1171.0681,25.7266, 2821.3826,-1087.0073,30.7188, 2000,CAMERA_MOVE);
skinid = 3;
}
if(PRESSED(KEY_ANALOG_LEFT) && skinid == 3) //presses left
{
//new string[2];
//format(string,sizeof(string),"%d",skinid);
//SendClientMessage(playerid, 1, string);
SetPlayerPos(playerid, 2218.1865,-1171.0681,25.7266);
SetPlayerSkin(playerid, 102);
InterpolateCameraPos(playerid, 2797.0293,-1087.6442,30.7198, 2223.3882,-1141.7634,25.7969, 2000,CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 2821.3826,-1087.0073,30.7188, 2218.1865,-1171.0681,25.7266, 2000,CAMERA_MOVE);
skinid = 2;
}
if(PRESSED(KEY_ANALOG_LEFT) && skinid == 2) // presses left
{
//new string[2];
//format(string,sizeof(string),"%d",skinid);
//SendClientMessage(playerid, 1, string);
SetPlayerPos(playerid, 2494.7563,-1668.0493,13.3438);
SetPlayerSkin(playerid, 105);
InterpolateCameraPos(playerid, 2223.3882,-1141.7634,25.7969, 2464.3269,-1660.7306,13.3076, 2000,CAMERA_MOVE);
InterpolateCameraLookAt(playerid, 2218.1865,-1171.0681,25.7266, 2494.7563,-1668.0493,13.3438, 2000,CAMERA_MOVE);
skinid = 1;
}
//EVERYTHING WORKS FROM HERE
if(PRESSED(KEY_ANALOG_UP) && skinid == 1)
{
new skinas = GetPlayerSkin(playerid);
for(new i;i < sizeof(GroveSkins);i++)
{
if(skinas < GroveSkins[i])
{
SetPlayerSkin(playerid, GroveSkins[i]);
break;
}
}
}
if(PRESSED(KEY_ANALOG_UP) && skinid == 2)
{
new skinas = GetPlayerSkin(playerid);
for(new i;i < sizeof(BallasSkins);i++)
{
if(skinas < BallasSkins[i])
{
SetPlayerSkin(playerid, BallasSkins[i]);
break;
}
}
}
if(PRESSED(KEY_ANALOG_UP) && skinid == 3)
{
new skinas = GetPlayerSkin(playerid);
for(new i;i < sizeof(VagosSkins);i++)
{
if(skinas < VagosSkins[i])
{
SetPlayerSkin(playerid, VagosSkins[i]);
break;
}
}
}
if(PRESSED(KEY_ANALOG_DOWN) && skinid == 1)
{
new skinas = GetPlayerSkin(playerid);
for(new i = sizeof(GroveSkins) - 1;i < sizeof(GroveSkins);i--)
{
if(skinas > GroveSkins[i])
{
SetPlayerSkin(playerid, GroveSkins[i]);
break;
}
}
}
if(PRESSED(KEY_ANALOG_DOWN) && skinid == 2)
{
new skinas = GetPlayerSkin(playerid);
for(new i = sizeof(BallasSkins) - 1;i < sizeof(BallasSkins);i--)
{
if(skinas > BallasSkins[i])
{
SetPlayerSkin(playerid, BallasSkins[i]);
break;
}
}
}
if(PRESSED(KEY_ANALOG_DOWN) && skinid == 3)
{
new skinas = GetPlayerSkin(playerid);
for(new i = sizeof(VagosSkins) - 1;i < sizeof(VagosSkins);i++)
{
if(skinas > VagosSkins[i])
{
SetPlayerSkin(playerid, VagosSkins[i]);
break;
}
}
}
}
if(Player[playerid][AccountVerified] == 1 && Player[playerid][LoggedIn] == true)
{
if(PRESSED(KEY_SECONDARY_ATTACK))
{
TogglePlayerControllable(playerid, 1);
SetCameraBehindPlayer(playerid);
Player[playerid][AccountVerified] = 2;
}
}