GetPlayerTargetPlayer
#1

OnPlayerUpDate

Code:
   if(GetPlayerTargetPlayer(playerid) != INVALID_PLAYER_ID)
    {     
        
        SetPVarInt(playerid, "TargetPlayer", GetPlayerTargetPlayer(playerid));
        return 1;
    }
Code:
    if(playertextid == PlayerText) 
    {
    	if(!GetPVarInt(playerid, "TargetPlayer")) return SendClientMessage(playerid, -1, "(( {FF0000}Error: {FFFFFF}Вы не выбрали игрока! ))"); 
        return 1;
    }
На сервере два игрока, если один игрок выделит игрока нажмет на TextDraw, то у другого всегда при выделение игрока и нажатие на TextDraw выводит:
Code:
if(!GetPVarInt(playerid, "TargetPlayer")) return SendClientMessage(playerid, -1, "(( {FF0000}Error: {FFFFFF}Вы не выбрали игрока! ))");
В чем проблема?
Reply
#2

А ты учел что playerid может быть 0?
Reply
#3

Quote:
Originally Posted by Stepashka
View Post
А ты учел что playerid может быть 0?
А как правильно использовать?
Reply
#4

pawn Code:
if (playertextid == PlayerText) {
    if (GetPVarInt(playerid, "TargetPlayer") == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "(( {FF0000}Error: {FFFFFF}Вы не выбрали игрока! ))");
    return 1;
}

OnPlayerUpDate() {
    SetPVarInt(playerid, "TargetPlayer", GetPlayerTargetPlayer(playerid));
    return 1;
}
Reply
#5

Quote:
Originally Posted by Stepashka
View Post
pawn Code:
OnPlayerUpDate() {
    SetPVarInt(playerid, "TargetPlayer", GetPlayerTargetPlayer(playerid));
    return 1;
}
Что то не работает:

pawn Code:
public OnPlayerUpdate(playerid)
{
   
    if(GetPlayerTargetPlayer(playerid) != INVALID_PLAYER_ID)
    {    
        new string[MAX_PLAYER_NAME + 10 + 3 + 3 + 5];
       
        new Float:health;
        GetPlayerHealth(GetPlayerTargetPlayer(playerid),health);
        format(string, sizeof(string), "~w~%d", floatround(health, floatround_round));
        PlayerTextDrawSetString(playerid, Target[playerid][4], string);  
       
        new Float:Armour;
        GetPlayerArmour(GetPlayerTargetPlayer(playerid), Armour);  
        format(string, sizeof(string), "~w~%d", floatround(Armour, floatround_round));
        PlayerTextDrawSetString(playerid, Target[playerid][5], string);
       
        format(string, sizeof(string), "~w~%s ~g~(%i)", PN[GetPlayerTargetPlayer(playerid)], GetPlayerTargetPlayer(playerid));
        PlayerTextDrawSetString(playerid, Target[playerid][6], string);    
       
        PlayerTextDrawShow(playerid, Target[playerid][0]);
        PlayerTextDrawShow(playerid, Target[playerid][1]);
        PlayerTextDrawShow(playerid, Target[playerid][2]);
        PlayerTextDrawShow(playerid, Target[playerid][3]);
        PlayerTextDrawShow(playerid, Target[playerid][4]);
        PlayerTextDrawShow(playerid, Target[playerid][5]);      
        PlayerTextDrawShow(playerid, Target[playerid][6]);  
       
        SetPVarInt(playerid, "TargetPlayer", GetPlayerTargetPlayer(playerid));
        return 1;
    }
    return 1;
}
Reply
#6

Ты объясни что не работает... Выводи дебаги со значениями, всегда помогает..
Reply
#7

Quote:
Originally Posted by DeViLsS
View Post
Что то не работает:
Ты где у меня проверку видишь?! За пределы проверки вынеси, присвоение должно быть всегда.
Reply
#8

Quote:
Originally Posted by Stepashka
View Post
Ты где у меня проверку видишь?! За пределы проверки вынеси, присвоение должно быть всегда.
Благодарю. Позже попробую
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)