case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
new skin, Float:x, Float:y, Float:z;
skin = PlayerInfo[playerid][pSkin];
x = PlayerInfo[playerid][pPos_x];
y = PlayerInfo[playerid][pPos_y];
z = PlayerInfo[playerid][pPos_z];
SetSpawnInfo(playerid, 0, skin, x, y, z, 0, 0, 0, 0, 0, 0, 0);
TogglePlayerSpectating(playerid, false);
StopAudioStreamForPlayer(playerid);
SetPlayerPos(playerid, 1271.3654,181.0756,19.4705); //I have this to check if the player spawns in this position, but he doesn't
SetCameraBehindPlayer(playerid);
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","You've entered a wrong pass.\nPut your password.","Login","Exit");
}
return 1;
}
}
|
maybe you try to set the position using setplayerpos but you already have setspawninfo, you can try use one of them
|
Add this " logged " where the enum PlayerInfo
Add this line into the login dialog
PlayerInfo[playerid][logged] = 1;
case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
new skin;
skin = PlayerInfo[playerid][pSkin];
StopAudioStreamForPlayer(playerid);
PlayerInfo[playerid][logged] = 1;
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","You've entered a wrong pass.\nPut your password.","Login","Exit");
}
return 1;
}
}
if(PlayerInfo[playerid][logged]==1)
{
new Float:x, Float:y, Float:z;
x = PlayerInfo[playerid][pPos_x];
y = PlayerInfo[playerid][pPos_y];
z = PlayerInfo[playerid][pPos_z];
SetSpawnInfo(playerid, 0, skin, x, y, z, 0, 0, 0, 0, 0, 0, 0);
TogglePlayerSpectating(playerid, false);
StopAudioStreamForPlayer(playerid);
SetPlayerPos(playerid, 1271.3654,181.0756,19.4705); //I have this to check if the player spawns in this position, but he doesn't
SetCameraBehindPlayer(playerid);
PlayerInfo[playerid][logged] = 0;
}
|
add like
Код:
Add this " logged " where the enum PlayerInfo Код:
Add this line into the login dialog
PlayerInfo[playerid][logged] = 1;
case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
new skin;
skin = PlayerInfo[playerid][pSkin];
StopAudioStreamForPlayer(playerid);
PlayerInfo[playerid][logged] = 1;
GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","You've entered a wrong pass.\nPut your password.","Login","Exit");
}
return 1;
}
}
Код:
if(PlayerInfo[playerid][logged]==1)
{
new Float:x, Float:y, Float:z;
x = PlayerInfo[playerid][pPos_x];
y = PlayerInfo[playerid][pPos_y];
z = PlayerInfo[playerid][pPos_z];
SetSpawnInfo(playerid, 0, skin, x, y, z, 0, 0, 0, 0, 0, 0, 0);
TogglePlayerSpectating(playerid, false);
StopAudioStreamForPlayer(playerid);
SetPlayerPos(playerid, 1271.3654,181.0756,19.4705); //I have this to check if the player spawns in this position, but he doesn't
SetCameraBehindPlayer(playerid);
PlayerInfo[playerid][logged] = 0;
}
|