SA-MP Forums Archive
Фотоаппарат как радар, проблема с вопроизведением. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Фотоаппарат как радар, проблема с вопроизведением. (/showthread.php?tid=664568)



Фотоаппарат как радар, проблема с вопроизведением. - Romashka - 04.03.2019

Приветствую, уже второй день мучаюсь с 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;
}
написал что то типо этого, но отображение бывает в принципе, но оно очень не корректное иногда вообще не не считывает скорость.


Re: Фотоаппарат как радар, проблема с вопроизведением. - OKStyle - 06.03.2019

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