Фотоаппарат как радар, проблема с вопроизведением.
#1

Приветствую, уже второй день мучаюсь с GetPlayerCameraFrontVector и другими функциями.

pawn Код:
CMD:radar(playerid)
{
    if(pInfo[playerid][pFrak][0]==3)
    {
        if(GetPVarInt(playerid,"radar") == 1)
        {
            SCM(playerid,-1,"Вы успешно выключили скоростной-радар");
            return DeletePVar(playerid,"radar");
        }
        if(GetPlayerWeapon(playerid) != 43) return SCM(playerid,-1,"В Ваших руках должен находиться радар (фотоаппарат)!");
        SetPVarInt(playerid,"radar",1);
        SCM(playerid,-1,"Вы успешно включили скоростной-радар. Для выключения введите "C_GRAY"/radar "C_WHITE"еще раз");
        SCM(playerid,-1,""C_GRAY"Чтобы узнать скорость Т/С, нужно навести на него прицеливание");
        return 1;
    }
    else
    {
        SCM(playerid,-1,"Нет доступа к команде !");
    }
    return 1;
}

Radar(playerid)
{
    if(GetPVarInt(playerid,"radar") == 1)
    {
        if(GetPlayerWeapon(playerid) != 43)
        {
            SCM(playerid,-1,"Вы успешно выключили скоростной-радары");
            return DeletePVar(playerid,"radar");
        }
        else
        {
            new speed, idspeed = GetPlayerTargetPlayer(playerid);

            if(idspeed != INVALID_PLAYER_ID)
            {
                if(!IsPlayerConnected(idspeed)) return 1;
                if(!IsPlayerInAnyVehicle(idspeed)) return 1;
                SCM(playerid, -1, "Работает");
                new Float:x, Float:y, Float:z;
                GetPlayerPos(idspeed,x,y,z);
                if(!IsPlayerInRangeOfPoint(playerid, 70.0, x,y,z)) return 1;
                new Float:xv,Float:yv,Float:zv;
                GetVehicleVelocity(GetPlayerVehicleID(idspeed),xv,yv,zv);
                speed = floatround(floatsqroot(((xv*xv)+(yv*yv))+(zv*zv))*101.666667);
                format:str_least("~w~~h~CKOPOCЏ’:~w~%f",speed);
                return GameTextForPlayer(playerid, str_least, 850, 4);
            }
        }
    }

    return 1;
}
написал что то типо этого, но отображение бывает в принципе, но оно очень не корректное иногда вообще не не считывает скорость.
Reply
#2

!= предлагаю заменить на ==, потому что не помню, что даёт Target при фотике. И я вижу только проверку позиции, а не вектора.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)