 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
[MANUAL] Перенос авторынка из LARP'a
| |
| ABATAP | Дата: Понедельник, 31.01.2011, 13:59 | Сообщение # 1 |
|
Советчик
Группа:
Продвинутые
Сообщений: 1007
Награды: 14
Город: Новосибирск
Репутация: 729
Замечания: 0%
Статус: 
| Автор: Borog25 Взято: Soviet Connection Ко всем #define вставляем (комментарий прочитать, учесть и удалить): Code #define OwnCars 184 /* 184 означает порядковый номер первой покупной машины. Изменять можно только при первом переносе системы. Считаем количество всех функций создания машин в паблике OnGameModeInit, учитывая цикл с созданием домов, получаем порядковый номер последней машины, прибавляем к нему 1 - это и будет первая покупная машина. После переноса системы эту цифру нельзя менять, т.к. порядковые номера записываются к игрокам, и все может сбиться. Для примера поиска правильной цифры: в стандартном GodFather'e есть 37 машин с домами и, допустим, 100 дополнительных машин. То есть всего 37+100 = 137 машин. Прибавляем 137+1=138 эта цифры и будет первой покупной машиной, которую надо указать. 184 - стандартно в ЛАРПе.*/ Ко всем forward вставляем: Code forward IsAtDealership(playerid); forward IsAnOwnableCar(vehicleid); Ко всем new вставляем следующий код: Code new OwnableCarOffer[MAX_PLAYERS]; new OwnableCarID[MAX_PLAYERS]; new OwnableCarPrice[MAX_PLAYERS];
enum pInfo { pPcarkey, pPcarkey2, pPcarkey3 } new PlayerInfo[MAX_PLAYERS][pInfo];
enum cInfo { cModel, Float:cLocationx, Float:cLocationy, Float:cLocationz, Float:cAngle, cColorOne, cColorTwo, cOwner[MAX_PLAYER_NAME], cDescription[MAX_PLAYER_NAME], cValue, cLicense, cRegistration, cOwned, cLock }; new CarInfo[MAX_VEHICLES][cInfo]; В самый конец вставляем следующий код: Code public IsAtDealership(playerid) { if(IsPlayerConnected(playerid)) { if(IsPlayerInRangeOfPoint(playerid,25.0,2128.0864,-1135.3912,25.5855) || IsPlayerInRangeOfPoint(playerid,50,537.3366,-1293.2140,17.2422) || IsPlayerInRangeOfPoint(playerid,35,2521.5544,-1524.4504,23.8365) || IsPlayerInRangeOfPoint(playerid,50,2155.0146,-1177.3333,23.8211) || IsPlayerInRangeOfPoint(playerid,50,299.1723,-1518.6627,24.6007)) { return 1; } } return 0; } В public OnPropUpdate() перед самым последний return 1; вставляем следующий код: Code idx = OwnCars; while(idx < sizeof(CarInfo)) { new coordsstring[256]; format(coordsstring, sizeof(coordsstring), "%d,%f,%f,%f,%f,%d,%d,%s,%s,%d,%s,%d,%d\n", CarInfo[idx][cModel], CarInfo[idx][cLocationx], CarInfo[idx][cLocationy], CarInfo[idx][cLocationz], CarInfo[idx][cAngle], CarInfo[idx][cColorOne], CarInfo[idx][cColorTwo], CarInfo[idx][cOwner], CarInfo[idx][cDescription], CarInfo[idx][cValue], CarInfo[idx][cLicense], CarInfo[idx][cOwned], CarInfo[idx][cLock]); if(idx == OwnCars) { file2 = fopen("cars.cfg", io_write); } else { file2 = fopen("cars.cfg", io_append); } fwrite(file2, coordsstring); idx++; fclose(file2); } В public OnGameModeInit() после самой последней функции создания транспорта вставляем следующий код: Code for(new h = OwnCars; h < sizeof(CarInfo); h++) { AddStaticVehicleEx(CarInfo[h][cModel],CarInfo[h][cLocationx],CarInfo[h][cLocationy],CarInfo[h][cLocationz]+1.0,CarInfo[h][cAngle],CarInfo[h][cColorOne],CarInfo[h][cColorTwo],60000); } В public OnPlayerConnect(playerid) вставляем: Code OwnableCarOffer[playerid] = 999; OwnableCarID[playerid] = 0; OwnableCarPrice[playerid] = 0; В public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) в самое начало вставляем следующий код: Code if(IsAnOwnableCar(vehicleid) && CarInfo[vehicleid][cLock] == 1 && CarInfo[vehicleid][cOwned] == 1) { if(PlayerInfo[playerid][pAdmin] >= 1337) { } else { new Float:cx, Float:cy, Float:cz; GetPlayerPos(playerid, cx, cy, cz); SetPlayerPos(playerid, cx, cy, cz); } } В public OnPlayerStateChange(playerid, newstate, oldstate) в if(newstate == PLAYER_STATE_DRIVER) перед самой первой проверкой вставляем следующий код: Code if(IsAnOwnableCar(newcar)) { if(CarInfo[newcar][cOwned] == 0) { TogglePlayerControllable(playerid, 0); format(string,sizeof(string),"~w~Vehicle: %s~n~Price: ~g~%d~n~~w~/v buy to buy this vehicle~n~~r~/exit ~w~to exit this vehicle",CarInfo[newcar][cDescription],CarInfo[newcar][cValue]); GameTextForPlayer(playerid,string,5000,5); } if(CarInfo[newcar][cOwned] == 1) { format(string,sizeof(string),"Vehicle registered to %s",CarInfo[newcar][cOwner]); SendClientMessage(playerid, COLOR_BLUE, string); /*if(keycar != vehicle) { RemovePlayerFromVehicle(playerid); SendClientMessage(playerid, COLOR_GREY, "You don't have a key of this vehicle"); }*/ if(PlayerInfo[playerid][pPcarkey] == vehicle) { } else if(PlayerInfo[playerid][pPcarkey2] == vehicle) { } else if(PlayerInfo[playerid][pPcarkey3] == vehicle) { } else { if(PlayerInfo[playerid][pAdmin] >= 1337 /*&& AdminDuty[playerid] == 1*/) // Если есть переменная AdminDuty, то зоны комментария можно удалить { SendClientMessage(playerid, COLOR_GREY, " You can drive this car because you are admin on duty !"); } else { RemovePlayerFromVehicle(playerid); SendClientMessage(playerid, COLOR_GREY, "You don't have a key of this vehicle"); } } } } • Качаем прикрепленный zip архив. • В public OnPlayerCommandText(playerid, cmdtext[]) вставляем код из файла 'Code1.pwn' (из архива) В нем вы найдете 3 команды: /vehicle /accept /cancel • Файл 'cars.cfg' (из архива) вставляем в папку 'scriptfiles' в папке с сервером.
|
| |
|
|
| colderpilot | Дата: Понедельник, 31.01.2011, 14:07 | Сообщение # 2 |
|
Группа:
Продвинутые
Сообщений: 720
Награды: 3
Город: Moscow
Репутация: 331
Замечания: 80%
Статус: 
| Ща ка потестю,отпишу Добавлено (31.01.2011, 14:06) --------------------------------------------- карс.zip как фс работает,а ауто кидать в сл? Добавлено (31.01.2011, 14:07) --------------------------------------------- ниок я ламерэ 
ваще найс гель
|
| |
|
|
| ABATAP | Дата: Понедельник, 31.01.2011, 14:09 | Сообщение # 3 |
|
Советчик
Группа:
Продвинутые
Сообщений: 1007
Награды: 14
Город: Новосибирск
Репутация: 729
Замечания: 0%
Статус: 
| Quote (colderpilot) карс.zip как фс работает Непонял о_0
|
| |
|
|
| SUPER_MEN4iG | Дата: Понедельник, 31.01.2011, 18:51 | Сообщение # 4 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 0
Город: Astrakhan
Репутация: 0
Замечания: 0%
Статус: 
| чувак а ты сам то пробывал вставлять в любой мод???
|
| |
|
|
| ABATAP | Дата: Понедельник, 31.01.2011, 19:03 | Сообщение # 5 |
|
Советчик
Группа:
Продвинутые
Сообщений: 1007
Награды: 14
Город: Новосибирск
Репутация: 729
Замечания: 0%
Статус: 
| Quote (SUPER_MEN4iG) вставлять в любой мод прочитай название раздела. 
|
| |
|
|
| TURBO2 | Дата: Понедельник, 31.01.2011, 20:02 | Сообщение # 6 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 244
Награды: 1
Город: Peter
Репутация: 223
Замечания: 40%
Статус: 
| Quote (ABATAP) чувак а ты сам то пробывал вставлять в любой мод??? я пробывал все норм работает ток без пабликов loadcar и savecarcoords у меня не запахало добавил их и все работает
skype: nitrolatos
|
| |
|
|
| Fus1 | Дата: Вторник, 01.02.2011, 01:09 | Сообщение # 7 |
|
Группа:
Продвинутые
Сообщений: 2704
Награды: 121
Город: Melbourne Australia
Репутация: 3103
Замечания: 0%
Статус: 
| не будет работать, лучше уж [fs] скачать , кстати кто то вырывал из LARP'a систему авто и в 'fs' делал, ищите. А на самом деле в LARP'e очень плохая система авто.
|
| |
|
|
| SUPER_MEN4iG | Дата: Вторник, 01.02.2011, 09:17 | Сообщение # 8 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 0
Город: Astrakhan
Репутация: 0
Замечания: 0%
Статус: 
| Fus1, хмм Мне очень даже нравится если её сделать нормально Чисто для основы брать вот и всё)
|
| |
|
|
| TURBO2 | Дата: Вторник, 01.02.2011, 14:41 | Сообщение # 9 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 244
Награды: 1
Город: Peter
Репутация: 223
Замечания: 40%
Статус: 
| ABATAP, забыл вот это Code public IsAnOwnableCar(vehicleid) { if(vehicleid >= OwnCars && vehicleid <= OwnCars+84) { return 1; } return 0; } Добавлено (01.02.2011, 14:41) ---------------------------------------------
Quote (Fus1) не будет работать, почему небудет? ну впервый раз незаработало но добавил паблики loadcar и savecarcoords и все заработало
skype: nitrolatos
|
| |
|
|
| SUPER_MEN4iG | Дата: Среда, 02.02.2011, 22:29 | Сообщение # 10 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 0
Город: Astrakhan
Репутация: 0
Замечания: 0%
Статус: 
| во нашёл) баг там иды путаются когда тачку паркуеш она в другую превращается например купил я булет, превратилась она в султан хДД Добавлено (02.02.2011, 22:29) --------------------------------------------- 90 машин пораставил прописал в public IsAnOwnableCar(vehicleid) <= OwnCars+90 чёто также путаются странно
|
| |
|
|
| TURBO2 | Дата: Четверг, 03.02.2011, 00:05 | Сообщение # 11 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 244
Награды: 1
Город: Peter
Репутация: 223
Замечания: 40%
Статус: 
| Quote (SUPER_MEN4iG) чёто также путаются странно #define OwnCars 184 смотри например у тебя 199машин на сервере на 200 ты появляешься в селе значит в owncars 200 или ты вот это for(new h = OwnCars; h < sizeof(CarInfo); h++) { AddStaticVehicleEx(CarInfo[h][cModel],CarInfo[h][cLocationx],CarInfo[h][cLocationy],CarInfo[h][cLocationz]+1.0,CarInfo[h][cAngle],CarInfo[h][cColorOne],CarInfo[h][cColorTwo],60000); } нетуда суешь
skype: nitrolatos
|
| |
|
|
| SUPER_MEN4iG | Дата: Четверг, 03.02.2011, 09:35 | Сообщение # 12 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 0
Город: Astrakhan
Репутация: 0
Замечания: 0%
Статус: 
| TURBO2, туда я вставляю после последнего AddStaticVehicleEx
|
| |
|
|
| Danila_Stark | Дата: Четверг, 03.02.2011, 13:44 | Сообщение # 13 |
|
Новенький
Группа:
Пользователи
Сообщений: 21
Награды: 0
Город: Прокопьевск
Репутация: 0
Замечания: 0%
Статус: 
| а если кары ещё добавляит ID собються?
|
| |
|
|
| TURBO2 | Дата: Четверг, 03.02.2011, 14:41 | Сообщение # 14 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 244
Награды: 1
Город: Peter
Репутация: 223
Замечания: 40%
Статус: 
| Quote (Danila_Stark) а если кары ещё добавляит ID собються? public IsAnOwnableCar(vehicleid) { if(vehicleid >= OwnCars && vehicleid <= OwnCars+84/* тут скоко добавляешь если одну добавить то 85*/) { return 1; } return 0; }Добавлено (03.02.2011, 14:41) ---------------------------------------------
Quote (SUPER_MEN4iG) TURBO2, туда я вставляю после последнего AddStaticVehicleE не обязательно после последнего AddStaticVehicleEx смоттри где все fornew и там добавляй
skype: nitrolatos
|
| |
|
|
| Danila_Stark | Дата: Четверг, 03.02.2011, 15:39 | Сообщение # 15 |
|
Новенький
Группа:
Пользователи
Сообщений: 21
Награды: 0
Город: Прокопьевск
Репутация: 0
Замечания: 0%
Статус: 
| а если удалить все старые кары и 1 оставить public IsAnOwnableCar(vehicleid) { if(vehicleid >= OwnCars && vehicleid <= OwnCars+тут 1?) { return 1; } return 0; }
|
| |
|
|
|
 |
|
 | |
| |
|