Онлайн карта на стене дома.
#1

Решил создать карту на стене и сделать перемещение пимпочки на карте зависящей от какого либо перемещения человека, машины:

PHP код:
#include <a_samp>
new sosok;
public 
OnFilterScriptInit()
{
    
SetTimer("UpdateMap"3001);
    return 
1;
}
public 
OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/sosok"true) == 0)
    {
        
CreateObject(191681628.10, -1370.8519.33,   90.0290.0090.00);
        
CreateObject(191691626.60, -1370.8519.33,   90.0490.0290.04);
        
CreateObject(191701628.10, -1370.8517.83,   89.9490.0090.00);
        
CreateObject(191711626.60, -1370.8517.83,   89.9889.9090.00);
        
sosok CreateObject(191771627.35, -1370.8218.58,   270.000.000.00);
        
        
SetPlayerCameraPos(playerid,1626.8065,-1364.7648,19.4418);
        
SetPlayerCameraLookAt(playerid,1627.3491,-1370.9197,18.5732);
    }
    return 
0;
}
forward UpdateMap();
public 
UpdateMap()
{
    new 
Float:xFloat:yFloat:z;
    for(new 
iGetMaxPlayers(); != ji++)
    {
        if(!
IsPlayerConnected(i)) continue;
        
GetPlayerPos(ixyz);
        if(
< -3000 || 3000 || < -3000 || 3000) continue;
        
        new 
Float:PosXFloat:PosY;
        
        if(
0PosY 207 224 * -3000;
        else if(
>= 0PosY 207 224 3000;
        
        if(
0PosX 316 - -320 3000;
        else if(
>= 0PosX 316 320 3000;
        
MoveObject(sosokPosX, -1370.8165PosY5);
    }
    return 
1;

Помогите подобрать правильные вычисления

к примеру:

PosY = 207 + 224 * -y / 3000; под игриком например -1368

PosY должна получится 18, я так то сделал (18 = 10 + 17 * 1368 / 3000) но при моём перемещении цифра очень быстро меняется а мне надо к примеру чтоб прошёл 30 координат а цифра 18 увеличилась к примеру на 1 сотую (18.1)

Данный код делал по примеру карты от OkStyle, надеюсь на его помощь
Reply
#2

Тут где-то в общей ветке скриптов было готовое решение.
Reply
#3

всё ненадо высчитал))
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)