shape1
shape2
shape3
shape4
shape7
shape8

Покраска машины балончиком


Статус
Закрыто для дальнейших ответов.

Dmitriy_Orell

алкоголик
Пользователь
12.04.2015
977
2
390
0
Этот скрипт позволит вам красить свою машину, не заезжая в покрасочный гараж. 

Вам лишь стоит взять в руки баллончик и красить машину в выбранный вами цвет.

Автор: BRICS

Скачать

Пароль: pawno-crmp.ru

 
Последнее редактирование модератором:

Ega

Новичок
Пользователь
23.05.2015
5
0
0
А как сделать чтоб эта команда работала в определенном месте?

 

Liroy1337

Новичок
Пользователь
02.11.2016
0
0
0
Не сохраняеться при рескаре , как исправить ?

 

noname_idk

Гуру
Пользователь
19.07.2015
4 046
7
787
0
Скриптер
@Liroy1337, сохранение добавьте... При рестарте тоже же не остается цвет?

 

noname_idk

Гуру
Пользователь
19.07.2015
4 046
7
787
0
Скриптер
@Liroy1337, скиньте сюда сток сохранения автомобилей из мода.

 

Vlad_Trifonov

Гуру
Пользователь
13.03.2015
1 465
5
331
0
@Liroy1337, Скорее всего в конце мода. Поищите что-то типа:

stock SaveCar

stock SaveVeh

и т.д.

Если не поможет, ищите по переменным, т.е. отыщите вначале мода enum с машинами, выберите любую переменную, и осуществляйте по ней поиск, пока не дойдете до сохранения.  

 

Liroy1337

Новичок
Пользователь
02.11.2016
0
0
0
stock SaveCar(car)
{
new ids[32];
format(ids,sizeof(ids),"cars/%d.ini",car);
new iniOpen = ini_openFile(ids);
ini_setInteger(iniOpen, "cMod", CarInfo[car][cMod]);
ini_setFloat(iniOpen, "cMileage", CarInfo[car][cMileage]);
ini_setFloat(iniOpen, "cAx", CarInfo[car][cAx]);
ini_setFloat(iniOpen, "cAy", CarInfo[car][cAy]);
ini_setFloat(iniOpen, "cAz", CarInfo[car][cAz]);
ini_setFloat(iniOpen, "cAa", CarInfo[car][cAa]);
ini_setInteger(iniOpen, "cCol1", CarInfo[car][cCol1]);
ini_setInteger(iniOpen, "cCol2", CarInfo[car][cCol2]);
ini_setInteger(iniOpen, "cWorld", CarInfo[car][cWorld]);
ini_setInteger(iniOpen, "cInter", CarInfo[car][cInter]);
ini_setString(iniOpen, "cOwner", CarInfo[car][cOwner]);
ini_setString(iniOpen, "cNick1", CarInfo[car][cNick1]);
ini_setFloat(iniOpen, "cPx", CarInfo[car][cPx]);
ini_setFloat(iniOpen, "cPy", CarInfo[car][cPy]);
ini_setFloat(iniOpen, "cPz", CarInfo[car][cPz]);
ini_setFloat(iniOpen, "cPa", CarInfo[car][cPa]);
ini_setInteger(iniOpen, "cLock", CarInfo[car][cLock]);
ini_setInteger(iniOpen, "cKey", CarInfo[car][cKey]);
ini_setInteger(iniOpen, "cPrice", CarInfo[car][cPrice]);
ini_setInteger(iniOpen, "cTex", CarInfo[car][cTex]);
ini_setInteger(iniOpen, "cAlarm", CarInfo[car][cAlarm]);
ini_setInteger(iniOpen, "cAlarmOn", CarInfo[car][cAlarmOn]);
ini_setInteger(iniOpen, "cKanistra", CarInfo[car][cKanistra]);
ini_setString(iniOpen, "cNumber", CarInfo[car][cNumber]);
ini_setInteger(iniOpen, "cArest", CarInfo[car][cArest]);
ini_setInteger(iniOpen, "cDayArest", CarInfo[car][cDayArest]);
ini_setInteger(iniOpen, "cMonArest", CarInfo[car][cMonArest]);
ini_setString(iniOpen, "cPArest", CarInfo[car][cPArest]);
ini_setString(iniOpen, "cNameArest", CarInfo[car][cNameArest]);
ini_setString(iniOpen, "cTexOs", CarInfo[car][cTexOs]);
ini_closeFile(iniOpen);
return true;
}

Это ?

 

Vlad_Trifonov

Гуру
Пользователь
13.03.2015
1 465
5
331
0
@Liroy1337, Вшейте данный FS в мод. Инструкция будет ниже. 

Как вшить filterscript в мод?
Добавьте это к #define:
/*Настройки*/
#define MAX_PROCESS 900//процесс раскраски, меньше процесс - быстрее раскрашивается
#define Radius 4//радиус в котором машины будут раскрашиваться
#define PRESSED(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define RELEASED(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))

Это добавьте к new:
Код:
new TimerP;
new Process[MAX_PLAYERS][MAX_VEHICLES];
new ColorBallon[MAX_PLAYERS] = 3;
Это в OnPlayerCommandText:
Код:
if (strcmp("/балончик", cmdtext, true, 10) == 0)return ShowPlayerDialog(playerid,9975,2,"Выберите цвет балончика.","Красный\nСиний\nЗеленый\nЖёлтый\nЧёрный\nРозовый\nБелый\nЯрко-красный","Выбрать","Отменить");
В OnDialogResponse:
 ​
Код:
if(dialogid == 9975)
    {
            if(!response)return 1;
            if(GetPlayerMoney(playerid) < 1000)return SendClientMessage(playerid,-1,"Нехватает денег!");
            switch(listitem)
            {
                    case 0:ColorBallon[playerid] = 3;
                    case 1:ColorBallon[playerid] = 106;
                    case 2:ColorBallon[playerid] = 86;
                    case 3:ColorBallon[playerid] = 6;
                    case 4:ColorBallon[playerid] = 0;
                    case 5:ColorBallon[playerid] = 126;
					case 6:ColorBallon[playerid] = 1;
					case 7:ColorBallon[playerid] = 166;
            }
            for(new v; v < MAX_VEHICLES; v++)Process[playerid][v] = 0;
            GivePlayerMoney(playerid,-1000);
            GivePlayerWeapon(playerid,41,1000);
            SendClientMessage(playerid,-1,"Вы успешно купили балончик за 1000$");
    }
В OnPlayerKeyStateChange:
Код:
if(IsPlayerConnected(playerid))
{
    if(PRESSED(KEY_FIRE) && GetPlayerWeapon(playerid) == 41)
    {
        TimerP = SetTimerEx("Raskraska",30,1,"d",playerid);
    }
    if(RELEASED(KEY_FIRE))
    {
        KillTimer(TimerP);
    }
}
В конец мода:
Код:
forward Raskraska(playerid);
public Raskraska(playerid)
{
    new Float: P[3];
    GetPlayerPos(playerid,P[0],P[1],P[2]);
    for(new v; v < MAX_VEHICLES; v++)
    {
        if((GetVehicleDistanceFromPoint(v,P[0],P[1],P[2])<= Radius) && Process[playerid][v] < MAX_PROCESS)
        {
            if(IsPlayerAimingVehicle(playerid, v))
            {
                Process[playerid][v] += 100;
                if(Process[playerid][v] >= MAX_PROCESS)ChangeVehicleColor(v,ColorBallon[playerid],ColorBallon[playerid]);
                CarInfo[v][cCol1] = ColorBallon[playerid], CarInfo[v][cCol2] = ColorBallon[playerid];
                SaveCar(v);
            }
        }
    }
    return 1;
}
В конец мода:
Код:
stock IsPlayerAimingVehicle(playerid, vehicleid)
{
    new Float:X1, Float:Y1, Float:Z1, Float:X2, Float:Y2, Float:Z2;
    GetPlayerPos(playerid, X1, Y1, Z1);
    GetVehiclePos(vehicleid, X2, Y2, Z2);
    new Float:Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
    if(Distance < 350)
    {
        new Float:A;
        GetPlayerFacingAngle(playerid, A);
        X1 += (Distance * floatsin(-A, degrees));
        Y1 += (Distance * floatcos(-A, degrees));
        Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
        if(Distance < 0.42 )return true;
    }
    return false;
}
Будут ошибки - пишите.

 

Liroy1337

Новичок
Пользователь
02.11.2016
0
0
0
Код:
C:\Users\User\Desktop\SRV\gamemodes\new.pwn(26004 -- 26006) : error 029: invalid expression, assumed zero
C:\Users\User\Desktop\SRV\gamemodes\new.pwn(26006 -- 26007) : error 029: invalid expression, assumed zero
C:\Users\User\Desktop\SRV\gamemodes\new.pwn(26012) : warning 225: unreachable code
Pawn compiler 3.2.3664     Copyright (c) 1997-2006, ITB CompuPhase
 
Как решить ?
 
Последнее редактирование модератором:

Vlad_Trifonov

Гуру
Пользователь
13.03.2015
1 465
5
331
0
@Liroy1337, Строки скидывать нужно. А желательно весь код, в котом есть эти ошибки.  

 

Liroy1337

Новичок
Пользователь
02.11.2016
0
0
0
@Vlad_Trifonov,Строки которые я вставил ? 

Дополнение к сообщению:

@Vlad_Trifonov,

Ну так ваши строки вставил

Дополнение к сообщению:

@Vlad_Trifonov,Напишите ваш скайп , там поможете! 

Или добавьте меня : DANIK10215

 
Последнее редактирование модератором:
Статус
Закрыто для дальнейших ответов.