|
АвтоРынок из SunCity(GtaWorld)
|
|
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:39 | Сообщение # 1 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Часть 1. АвтоРынок из SunCity(GtaWorld) Доброго времени суток Решил выложить по просьбе пользователей сайта, систему авторынка в диалоговых окнах!
Для начала мы создадим 4 форварда
Code //==================================== forward LoadAuto();//згрузка авто forward SaveAuto();//сохранение авто forward TuneCar();//сохраниние тюнинга авто forward CarEnter(playerid,carid); //====================================
И так. Даллее мы идем в
Code //==================================== new PlayerInfo[MAX_PLAYERS][pInfo]; //====================================
И добовляем в нем 2 строчки
Code //==================================== pCarKey, pCarKey2, new PlayerInfo[MAX_PLAYERS][pInfo]; //====================================
Чтоб было у вас также как выше
Далее мы создадим
Code //==================================== new Autoinfo;
enum aInfo { aStats,//куплена или нет aModel,// модель Float:aAutoX,//корды Float:aAutoY, Float:aAutoZ, Float:aAutoAngle, aColor1,//цвета aColor2, aOwner[MAX_PLAYER_NAME],//владелец aPrice,//цена aKey,//уровень aLock,//штраф aPaintJob, };
new AutoInfo[MAX_VEHICLES][aInfo]; //====================================
Следуюшиее делаем чтобы когда вы садитесь в машину которая на продажу высвечивалось диалоговое окно.
Code //==================================== public CarEnter(playerid,carid) { if(AutoInfo[carid][aStats]==0) { new string[512]; format(string,sizeof(string),"Уровень: %d\nСтоимость: %d\nВведите 2 цвета через запятую в окошко\nПример: [2,6] без квадратных скобок и пробелов!\nЕсли не введете, то цвет останется таким, какой установлен сейчас", AutoInfo[carid][aKey], AutoInfo[carid][aPrice]); ShowPlayerDialog(playerid,920,DIALOG_STYLE_INPUT,"Авторынок",string,"Принять","Отмена"); } return 1; }
Cоздаем далее паблик
Code //==================================== public OnVehicleSpawn(vehicleid) { if(AutoInfo[vehicleid][a0] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a0]); } if(AutoInfo[vehicleid][a1] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a1]); } if(AutoInfo[vehicleid][a2] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a2]); } if(AutoInfo[vehicleid][a3] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a3]); } if(AutoInfo[vehicleid][a4] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a4]); } if(AutoInfo[vehicleid][a5] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a5]); } if(AutoInfo[vehicleid][a6] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a6]); } if(AutoInfo[vehicleid][a7] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a7]); } if(AutoInfo[vehicleid][a8] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a8]); } if(AutoInfo[vehicleid][a9] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a9]); } if(AutoInfo[vehicleid][a10] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a10]); } if(AutoInfo[vehicleid][a11] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a11]); } if(AutoInfo[vehicleid][a12] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a12]); } if(AutoInfo[vehicleid][a13] != 0) { AddVehicleComponent(vehicleid, AutoInfo[vehicleid][a13]); } if(AutoInfo[vehicleid][aPaintJob] != 0) { ChangeVehiclePaintjob(vehicleid,AutoInfo[vehicleid][aPaintJob]); } return 1; } //====================================
Создае три паблика сразу 1 паблик для загрузки авто 2 для сохранения кооординатов 3 для сохранения тюнинга на авто
Code //==================================== public LoadAuto() { new arrCoords[26][64]; new strFromFile2[256]; new File: file = fopen("careta.cfg", io_read); if (file) { new idx; while (idx < 330) { fread(file, strFromFile2); split(strFromFile2, arrCoords, ','); AutoInfo[idx+1][aStats] = strval(arrCoords[0]); AutoInfo[idx+1][aModel] = strval(arrCoords[1]); AutoInfo[idx+1][aAutoX] = floatstr(arrCoords[2]); AutoInfo[idx+1][aAutoY] = floatstr(arrCoords[3]); AutoInfo[idx+1][aAutoZ] = floatstr(arrCoords[4]); AutoInfo[idx+1][aAutoAngle] = floatstr(arrCoords[5]); AutoInfo[idx+1][aColor1] = strval(arrCoords[6]); AutoInfo[idx+1][aColor2] = strval(arrCoords[7]); strmid(AutoInfo[idx+1][aOwner], arrCoords[8], 0, strlen(arrCoords[8]), 255); AutoInfo[idx+1][aPrice] = strval(arrCoords[9]); AutoInfo[idx+1][aKey] = strval(arrCoords[10]); AutoInfo[idx+1][a0] = strval(arrCoords[11]); AutoInfo[idx+1][a1] = strval(arrCoords[12]); AutoInfo[idx+1][a2] = strval(arrCoords[13]); AutoInfo[idx+1][a3] = strval(arrCoords[14]); AutoInfo[idx+1][a4] = strval(arrCoords[15]); AutoInfo[idx+1][a5] = strval(arrCoords[16]); AutoInfo[idx+1][a6] = strval(arrCoords[17]); AutoInfo[idx+1][a7] = strval(arrCoords[18]); AutoInfo[idx+1][a8] = strval(arrCoords[19]); AutoInfo[idx+1][a9] = strval(arrCoords[20]); AutoInfo[idx+1][a10] = strval(arrCoords[21]); AutoInfo[idx+1][a11] = strval(arrCoords[22]); AutoInfo[idx+1][a12] = strval(arrCoords[23]); AutoInfo[idx+1][a13] = strval(arrCoords[24]); AutoInfo[idx+1][aPaintJob] = strval(arrCoords[25]); idx++; } fclose(file); } return 1; }
public SaveAuto() { new idx; new File: file2; while (idx < 330) { new coordsstring[256]; format(coordsstring, sizeof(coordsstring), "%d,%d,%f,%f,%f,%f,%d,%d,%s,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", AutoInfo[idx+1][aStats], AutoInfo[idx+1][aModel], AutoInfo[idx+1][aAutoX], AutoInfo[idx+1][aAutoY], AutoInfo[idx+1][aAutoZ], AutoInfo[idx+1][aAutoAngle], AutoInfo[idx+1][aColor1], AutoInfo[idx+1][aColor2], AutoInfo[idx+1][aOwner], AutoInfo[idx+1][aPrice], AutoInfo[idx+1][aKey], AutoInfo[idx+1][aLock], AutoInfo[idx+1][a0], AutoInfo[idx+1][a1], AutoInfo[idx+1][a2], AutoInfo[idx+1][a3], AutoInfo[idx+1][a4], AutoInfo[idx+1][a5], AutoInfo[idx+1][a6], AutoInfo[idx+1][a7], AutoInfo[idx+1][a8], AutoInfo[idx+1][a9], AutoInfo[idx+1][a10], AutoInfo[idx+1][a11], AutoInfo[idx+1][a12], AutoInfo[idx+1][a13], AutoInfo[idx+1][aPaintJob]); if(idx == 0) { file2 = fopen("careta.cfg", io_write); } else { file2 = fopen("careta.cfg", io_append); } fwrite(file2, coordsstring); idx++; fclose(file2); } return 1; }
public TuneCar() { for(new i = 0; i < 330; i++) { if(AutoInfo[i][a0] != 0) { AddVehicleComponent(i, AutoInfo[i][a0]); } if(AutoInfo[i][a1] != 0) { AddVehicleComponent(i, AutoInfo[i][a1]); } if(AutoInfo[i][a2] != 0) { AddVehicleComponent(i, AutoInfo[i][a2]); } if(AutoInfo[i][a3] != 0) { AddVehicleComponent(i, AutoInfo[i][a3]); } if(AutoInfo[i][a4] != 0) { AddVehicleComponent(i, AutoInfo[i][a4]); } if(AutoInfo[i][a5] != 0) { AddVehicleComponent(i, AutoInfo[i][a5]); } if(AutoInfo[i][a6] != 0) { AddVehicleComponent(i, AutoInfo[i][a6]); } if(AutoInfo[i][a7] != 0) { AddVehicleComponent(i, AutoInfo[i][a7]); } if(AutoInfo[i][a8] != 0) { AddVehicleComponent(i, AutoInfo[i][a8]); } if(AutoInfo[i][a9] != 0) { AddVehicleComponent(i, AutoInfo[i][a9]); } if(AutoInfo[i][a10] != 0) { AddVehicleComponent(i, AutoInfo[i][a10]); } if(AutoInfo[i][a11] != 0) { AddVehicleComponent(i, AutoInfo[i][a11]); } if(AutoInfo[i][a12] != 0) { AddVehicleComponent(i, AutoInfo[i][a12]); } if(AutoInfo[i][a13] != 0) { AddVehicleComponent(i, AutoInfo[i][a13]); } if(AutoInfo[i][aPaintJob] != 0) { ChangeVehiclePaintjob(i,AutoInfo[i][aPaintJob]); } } return 1; } //====================================
Далее в паблике OnGameModeInit() Вставляем вот это
Code //==================================== for(new c=0;c<MAX_VEHICLES;c++) { Gas[c] = 100; AutoInfo[c][aStats] = -1; lockedcar[c] = 0; } LoadAuto();
for(new h = 0; h < 330; h++) { CreateVehicle(AutoInfo[h][aModel], AutoInfo[h][aAutoX], AutoInfo[h][aAutoY], AutoInfo[h][aAutoZ], AutoInfo[h][aAutoAngle], AutoInfo[h][aColor1], AutoInfo[h][aColor2],SPAWN_CARS); if(AutoInfo[h][aStats] == 0) { new strings[256]; format(strings,sizeof(strings),"Транспорт продается\nУровень: %d\nСтоимость: %d",AutoInfo[h][aKey],AutoInfo[h][aPrice]); nomer[h] = CreateDynamic3DTextLabel(strings, 0xBFF600FF, AutoInfo[h][aAutoX], AutoInfo[h][aAutoY], AutoInfo[h][aAutoZ], 15.0, INVALID_PLAYER_ID,h,0,-1,-1,-1,15.0); } else { new strings[256]; format(strings,sizeof(strings),"ID: %d\nВладелец: %s",h,AutoInfo[h][aOwner]); nomer[h] = CreateDynamic3DTextLabel(strings, 0xBFF600FF, AutoInfo[h][aAutoX], AutoInfo[h][aAutoY], AutoInfo[h][aAutoZ], 15.0, INVALID_PLAYER_ID,h,0,-1,-1,-1,15.0); } } //====================================
>>>>>>>
|
|
| |
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:39 | Сообщение # 2 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Часть 2.
далее в public OnPlayerCommandText(playerid, cmdtext[]) и вставляем следующее
Code //==================================== if(strcmp(cmd, "/addveh", true) == 0)//для создание авто и игры { if(IsPlayerConnected(playerid)) { if(PlayerInfo[playerid][pAdmin] >= 5) { new vehicleid = GetPlayerVehicleID(playerid); if(!IsPlayerInAnyVehicle(playerid)) { SendClientMessage(playerid,COLO R_GREY,"Тебе нужно быть в транспорте"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "ИНФО: /addveh [carid] [color1] [color2] [цена]"); return 1; } new car; car = strval(tmp); if(car < 400 || car > 611) { SendClientMessage(playerid, COLOR_GREY, "От 400 до 611!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "ИНФО: /addveh [carid] [color1] [color2] [цена]"); return 1; } new color1; color1 = strval(tmp); if(color1 < 0 || color1 > 300) { SendClientMessage(playerid, COLOR_GREY, "Цвет лишь от 0 до 300!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "ИНФО: /addveh [carid] [color1] [color2] [цена]"); return 1; } new color2; color2 = strval(tmp); if(color2 < 0 || color2 > 300) { SendClientMessage(playerid, COLOR_GREY, "Цвет от 0 до 300!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "ИНФО: /addveh [carid] [color1] [color2] [цена]"); return 1; } new price; price = strval(tmp); if(price < 1 ) { SendClientMessage(playerid, COLOR_GREY, "Цена не меньше $1"); return 1; } new levl; levl = strval(tmp); if(levl < 2 ) { SendClientMessage(playerid, COLOR_GREY, "Уровень должен быть не меньше 2"); return 1; } new Float:X,Float:Y,Float:Z,Float:Q; GetVehiclePos(GetPlayerVehicleID(playerid), X,Y,Z); GetVehicleZAngle(GetPlayerVehicleID(playerid),Q); AutoInfo[vehicleid][aStats]=0; AutoInfo[vehicleid][aModel]=car; AutoInfo[vehicleid][aAutoX]=X; AutoInfo[vehicleid][aAutoY]=Y; AutoInfo[vehicleid][aAutoZ]=Z; AutoInfo[vehicleid][aAutoAngle]=Q; AutoInfo[vehicleid][aColor1]=color1; AutoInfo[vehicleid][aColor2]=color2; AutoInfo[vehicleid][aPrice]=price; AutoInfo[vehicleid][aKey]=levl; AutoInfo[vehicleid][a0]=0; AutoInfo[vehicleid][a1]=0; AutoInfo[vehicleid][a2]=0; AutoInfo[vehicleid][a3]=0; AutoInfo[vehicleid][a4]=0; AutoInfo[vehicleid][a5]=0; AutoInfo[vehicleid][a6]=0; AutoInfo[vehicleid][a7]=0; AutoInfo[vehicleid][a8]=0; AutoInfo[vehicleid][a9]=0; AutoInfo[vehicleid][a10]=0; AutoInfo[vehicleid][a11]=0; AutoInfo[vehicleid][a12]=0; AutoInfo[vehicleid][a13]=0; AutoInfo[vehicleid][aPaintJob]=0; strmid(AutoInfo[CAR_PROD][aOwner], "The State", 0, 9, 999); SaveAuto(); format(string, sizeof(string), "* Машина на продажу создана."); SendClientMessage(playerid, COLOR_GREY, string); } return 1; } return 1; }
if (strcmp(cmd, "/park", true) == 0)//для парка авто { if(IsPlayerConnected(playerid)) { if(PlayerInfo[playerid][pCarKey2] == 0 && PlayerInfo[playerid][pCarKey] == 0) { SendClientMessage(playerid,COLOR_GREY,"У вас нет тачки"); return 1; } if(IsPlayerInAnyVehicle(playerid)) { new cari = GetPlayerVehicleID(playerid); if(cari == PlayerInfo[playerid][pCarKey2] || cari == PlayerInfo[playerid][pCarKey]) { RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); new Float:xcar, Float:ycar, Float:zcar, Float:ancar; new mods = GetVehicleModel(cari); GetVehicleZAngle(cari, ancar); GetVehiclePos(cari,xcar,ycar,zcar); DestroyVehicle(cari); CreateVehicle(mods,xcar,ycar,zcar,ancar,AutoInfo[cari][aColor1],AutoInfo[cari][aColor2],SPAWN_CARS); AutoInfo[cari][aAutoX] = xcar; AutoInfo[cari][aAutoY] = ycar; AutoInfo[cari][aAutoZ] = zcar; AutoInfo[cari][aAutoAngle] = ancar; SaveAuto(); if(AutoInfo[cari][a0] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a0]); } if(AutoInfo[cari][a1] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a1]); } if(AutoInfo[cari][a2] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a2]); } if(AutoInfo[cari][a3] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a3]); } if(AutoInfo[cari][a4] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a4]); } if(AutoInfo[cari][a5] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a5]); } if(AutoInfo[cari][a6] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a6]); } if(AutoInfo[cari][a7] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a7]); } if(AutoInfo[cari][a8] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a8]); } if(AutoInfo[cari][a9] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a9]); } if(AutoInfo[cari][a10] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a10]); } if(AutoInfo[cari][a11] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a11]); } if(AutoInfo[cari][a12] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a12]); } if(AutoInfo[cari][a13] != 0) { AddVehicleComponent(cari, AutoInfo[cari][a13]); } if(AutoInfo[cari][aPaintJob] != 0) { ChangeVehiclePaintjob(cari,AutoInfo[cari][aPaintJob]); } SendClientMessage(playerid,COLOR_YELLOW,"Транспорт припаркован!"); } else { SendClientMessage(playerid,COLOR_GREY, "Вы не в своей купленной тачке"); } } else { SendClientMessage(playerid,COL OR_GREY,"Вы не в тачке"); } } return 1; }
>>>>>
|
|
| |
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:40 | Сообщение # 3 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Часть 4.
Code if (strcmp(cmd, "/carcolor", true) == 0) { tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); return 1; } new carsi = strval(tmp); if(carsi == 1) { if(PlayerInfo[playerid][pCarKey] == 0) { SendClientMessage(playerid,COLOR_GREY,"У вас нет тачки 1"); return 1; } tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); return 1; } new col1 = strval(tmp); tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); return 1; } new col2 = strval(tmp); if(col1 > 255 || col1 < 0 || col2 > 255 || col2 < 0) { SendClientMessage(playerid,COLOR_GREY,"Цвет можно указывать от 0 до 255"); return 1; } NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - 5000; GivePlayerMoney(playerid,-5000); ChangeVehicleColor(PlayerInfo[playerid][pCarKey],col1,col2); AutoInfo[PlayerInfo[playerid][pCarKey]][aColor1] = col1; AutoInfo[PlayerInfo[playerid][pCarKey]][aColor1] = col2; SBizzInfo[5][sbTill] += 5000; ExtortionSBiz(5, 5000); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Цвет транспорта успешно изменен"); } else if(carsi == 2) { if(PlayerInfo[playerid][pCarKey2] == 0) { SendClientMessage(playerid,COLOR_GREY,"У вас нет тачки 2"); return 1; } tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); return 1; } new col1 = strval(tmp); tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); return 1; } new col2 = strval(tmp); if(col1 > 255 || col1 < 0 || col2 > 255 || col2 < 0) { SendClientMessage(playerid,COLOR_GREY,"Цвет можно указывать от 0 до 255"); return 1; } NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - 5000; GivePlayerMoney(playerid,-5000); ChangeVehicleColor(PlayerInfo[playerid][pCarKey2],col1,col2); AutoInfo[PlayerInfo[playerid][pCarKey2]][aColor1] = col1; AutoInfo[PlayerInfo[playerid][pCarKey2]][aColor1] = col2; SBizzInfo[5][sbTill] += 5000; ExtortionSBiz(5, 5000); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Цвет транспорта успешно изменен"); } else if(carsi == 3) { if(PlayerInfo[playerid][pCarKey3] == 0) { SendClientMessage(playerid,COLOR_GREY,"У вас нет тачки 3"); return 1; } tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2/3 машина] [1 цвет] [2 цвет]"); return 1; } new col1 = strval(tmp); tmp = strtok(cmdtext,idx); if(!strlen(tmp)) { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2/3 машина] [1 цвет] [2 цвет]"); return 1; } new col2 = strval(tmp); if(col1 > 255 || col1 < 0 || col2 > 255 || col2 < 0) { SendClientMessage(playerid,COLOR_GREY,"Цвет можно указывать от 0 до 255"); return 1; } NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - 5000; GivePlayerMoney(playerid,-5000); ChangeVehicleColor(PlayerInfo[playerid][pCarKey3],col1,col2); AutoInfo[PlayerInfo[playerid][pCarKey3]][aColor1] = col1; AutoInfo[PlayerInfo[playerid][pCarKey3]][aColor1] = col2; SBizzInfo[5][sbTill] += 5000; ExtortionSBiz(5, 5000); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Цвет транспорта успешно изменен"); } else { SendClientMessage(playerid,COLOR_GREY,"Используйте: /carcolor [1/2 машина] [1 цвет] [2 цвет]"); } return 1; }
>>>>>
|
|
| |
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:40 | Сообщение # 4 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Часть 5.
Далее в if(strcmp(cmd,"/accept",true)==0) Добовляем следующeе
Code //==================================== else if(strcmp(x_job,"buycar",true) == 0) { if(predlogid[playerid] == -1) { SendClientMessage(playerid,COLOR_GREY,"Вам никто не предлагал продать автомобиль"); return 1; } if(IsPlayerConnected(predlogid[playerid])) { if(predlogmoney[playerid] <= GetPlayerMoney(playerid)) { GetPlayerName(playerid,sendername,sizeof(sendername)); new idid = predlogid[playerid]; if(PlayerInfo[playerid][pCarKey] == 0) { if(predlogidcar[playerid] == PlayerInfo[idid][pCarKey]) { PlayerInfo[idid][pCarKey] = 0; PlayerInfo[playerid][pCarKey] = predlogidcar[playerid]; new cariii = PlayerInfo[playerid][pCarKey]; new fsdkf = predlogid[playerid]; ConsumingMoney[playerid] = 1; ConsumingMoney[fsdkf] = 1; NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - predlogmoney[playerid]; GivePlayerMoney(playerid,-predlogmoney[playerid]); NormMoney[playerid] = 2; AntiMoney[fsdkf] = AntiMoney[fsdkf] + predlogmoney[playerid]; GivePlayerMoney(predlogid[playerid],predlogmoney[playerid]); SendClientMessage(playerid,COLOR_YELLOW,"Вы купили новый автомобиль! Незабудьте его припарковать (/park)"); SendClientMessage(predlogid[playerid],COLOR_YELLOW,"Вы продали свой автомобиль!"); strmid(AutoInfo[cariii][aOwner], sendername, 0, strlen(sendername), 255); format(string,sizeof(string),"ID: %d\nВладелец: %s",cariii,AutoInfo[cariii][aOwner]); UpdateDynamic3DTextLabelText(nomer[cariii],0xBFF600FF,string); new nal = (predlogmoney[playerid]*13) / 100; PlayerInfo[fsdkf][pNalog] += nal; } else if(predlogidcar[playerid] == PlayerInfo[idid][pCarKey2]) { PlayerInfo[idid][pCarKey2] = 0; PlayerInfo[playerid][pCarKey] = predlogidcar[playerid]; new cariii = PlayerInfo[playerid][pCarKey]; new fsdkf = predlogid[playerid]; strmid(AutoInfo[cariii][aOwner], sendername, 0, strlen(sendername), 255); ConsumingMoney[playerid] = 1; ConsumingMoney[fsdkf] = 1; NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - predlogmoney[playerid]; GivePlayerMoney(playerid,-predlogmoney[playerid]); NormMoney[playerid] = 2; AntiMoney[fsdkf] = AntiMoney[fsdkf] + predlogmoney[playerid]; GivePlayerMoney(predlogid[playerid],predlogmoney[playerid]); SendClientMessage(playerid,COLOR_YELLOW,"Вы купили новый автомобиль! Незабудьте его припарковать (/park)"); SendClientMessage(predlogid[playerid],COLOR_YELLOW,"Вы продали свой автомобиль!"); format(string,sizeof(string),"ID: %d\nВладелец: %s",cariii,AutoInfo[cariii][aOwner]); UpdateDynamic3DTextLabelText(nomer[cariii],0xBFF600FF,string); new nal = (predlogmoney[playerid]*13) / 100; PlayerInfo[fsdkf][pNalog] += nal; } } else if(PlayerInfo[playerid][pCarKey2] == 0) { if(predlogidcar[playerid] == PlayerInfo[idid][pCarKey]) { PlayerInfo[idid][pCarKey] = 0; PlayerInfo[playerid][pCarKey2] = predlogidcar[playerid]; new cariii = PlayerInfo[playerid][pCarKey2]; new fsdkf = predlogid[playerid]; strmid(AutoInfo[cariii][aOwner], sendername, 0, strlen(sendername), 255); ConsumingMoney[playerid] = 1; ConsumingMoney[fsdkf] = 1; NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - predlogmoney[playerid]; GivePlayerMoney(playerid,-predlogmoney[playerid]); NormMoney[playerid] = 2; AntiMoney[fsdkf] = AntiMoney[fsdkf] + predlogmoney[playerid]; GivePlayerMoney(predlogid[playerid],predlogmoney[playerid]); SendClientMessage(playerid,COLOR_YELLOW,"Вы купили новый автомобиль! Незабудьте его припарковать (/park)"); SendClientMessage(predlogid[playerid],COLOR_YELLOW,"Вы продали свой автомобиль!"); format(string,sizeof(string),"ID: %d\nВладелец: %s",cariii,AutoInfo[cariii][aOwner]); UpdateDynamic3DTextLabelText(nomer[cariii],0xBFF600FF,string); new nal = (predlogmoney[playerid]*13) / 100; PlayerInfo[fsdkf][pNalog] += nal; } else if(predlogidcar[playerid] == PlayerInfo[idid][pCarKey2]) { PlayerInfo[idid][pCarKey2] = 0; PlayerInfo[playerid][pCarKey2] = predlogidcar[playerid]; new cariii = PlayerInfo[playerid][pCarKey2]; new fsdkf = predlogid[playerid]; strmid(AutoInfo[cariii][aOwner], sendername, 0, strlen(sendername), 255); ConsumingMoney[playerid] = 1; ConsumingMoney[fsdkf] = 1; NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - predlogmoney[playerid]; GivePlayerMoney(playerid,-predlogmoney[playerid]); NormMoney[playerid] = 2; AntiMoney[fsdkf] = AntiMoney[fsdkf] + predlogmoney[playerid]; GivePlayerMoney(predlogid[playerid],predlogmoney[playerid]); SendClientMessage(playerid,COLOR_YELLOW,"Вы купили новый автомобиль! Незабудьте его припарковать (/park)"); SendClientMessage(predlogid[playerid],COLOR_YELLOW,"Вы продали свой автомобиль!"); format(string,sizeof(string),"ID: %d\nВладелец: %s",cariii,AutoInfo[cariii][aOwner]); UpdateDynamic3DTextLabelText(nomer[cariii],0xBFF600FF,string); new nal = (predlogmoney[playerid]*13) / 100; PlayerInfo[fsdkf][pNalog] += nal; } } else { S endClientMessage(playerid,COLOR_GREY,"Вы уже имеете 2 машины"); return 1; } SaveAuto(); } else { SendClientMessage(play erid,COLOR_GREY,"У вас нехватает денег"); } } } //====================================
>>>>>
|
|
| |
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:40 | Сообщение # 5 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Часть 6.
Далее идем в public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) и вставляем следующие
Code //==================================== if(dialogid==920) { if(response==1) { i f(IsPlayerInAnyVehicle(playerid)) { new cara = GetPlayerVehicleID(playerid); if(AutoInfo[cara][aStats] == 0) { if(GetPlayerMoney(playerid) >= AutoInfo[cara][aPrice]) { if(PlayerInfo[playerid][pCarKey] == 0 || PlayerInfo[playerid][pCarKey2] == 0 || PlayerInfo[playerid][pCarKey3] == 0) { if(PlayerInfo[playerid][pLevel] >= AutoInfo[cara][aKey]) { if(PlayerInfo[playerid][pCarKey2] == 0) { if(!strlen(inputtext)) { GetPlayerN ame(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey2] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else if(strfind(inputtext,",", true) != -1) { new razdel[2][64]; split(inputtext, razdel, ','); AutoInfo[cara][aColor1] = strval(razdel[0]); AutoInfo[cara][aColor2] = strval(razdel[1]); if(AutoInfo[cara][aColor1] >= 0 && AutoInfo[cara][aColor1] <= 255) { if(AutoInfo[cara][aColor2] >= 0 && AutoInfo[cara][aColor2] <= 255) { GetPlayerName(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey2] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255); ChangeVehicleColor(cara, AutoInfo[cara][aColor1], AutoInfo[cara][aColor2]); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else { SendClientMessage(playerid,COL OR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Sen dClientMessage(playerid,COLOR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Rem ovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else if(PlayerInfo[playerid][pCarKey3] == 0) { if(!strlen(inputtext)) { GetPlayerN ame(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey3] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else if(strfind(inputtext,",", true) != -1) { new razdel3[2][64]; split(inputtext, razdel, ','); AutoInfo[cara][aColor1] = strval(razdel3[0]); AutoInfo[cara][aColor2] = strval(razdel3[1]); if(AutoInfo[cara][aColor1] >= 0 && AutoInfo[cara][aColor1] <= 255) { if(AutoInfo[cara][aColor2] >= 0 && AutoInfo[cara][aColor2] <= 255) { GetPlayerName(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey3] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255); ChangeVehicleColor(cara, AutoInfo[cara][aColor1], AutoInfo[cara][aColor2]);
SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else { SendClientMessage(playerid,COL OR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Sen dClientMessage(playerid,COLOR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Rem ovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1);
else if(PlayerInfo[playerid][pCarKey] == 0) { if(!strlen(inputtext)) { GetPlayerN ame(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255);
|
|
| |
| Drugs1 | Дата: Воскресенье, 05.06.2011, 01:41 | Сообщение # 6 |
|
Группа: Администраторы
Dream - Win
Сообщений: 1554
Награды: 0
Репутация: 1
Пол: Мужчина
|
| Code SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else if(strfind(inputtext,",", true) != -1) { new razdel2[2][64]; split(inputtext, razdel2, ','); AutoInfo[cara][aColor1] = strval(razdel2[0]); AutoInfo[cara][aColor2] = strval(razdel2[1]); if(AutoInfo[cara][aColor1] >= 0 && AutoInfo[cara][aColor1] <= 255) { if(AutoInfo[cara][aColor2] >= 0 && AutoInfo[cara][aColor2] <= 255) { GetPlayerName(playerid,sendername,sizeof(sendername)); NormMoney[playerid] = 2; AntiMoney[playerid] = AntiMoney[playerid] - AutoInfo[cara][aPrice]; GivePlayerMoney(playerid,-AutoInfo[cara][aPrice]); PlayerInfo[playerid][pCarKey] = cara; AutoInfo[cara][aStats] = 1; strmid(AutoInfo[cara][aOwner], sendername, 0, strlen(sendername), 255); ChangeVehicleColor(cara, AutoInfo[cara][aColor1], AutoInfo[cara][aColor2]); SaveAuto(); SendClientMessage(playerid,COLOR_YELLOW,"Поздравляю с новой покупкой! Не забудьте ее припарковать! (/park)"); new zadk = (AutoInfo[cara][aPrice]*10)/100; SBizzInfo[5][sbTill] += zadk; ExtortionSBiz(6, zadk); SBizzInfo[1][sbTill] += zadk; ExtortionSBiz(2, zadk); format(string,sizeof(string),"ID: %d\nВладелец: %s",cara,AutoInfo[cara][aOwner]); UpdateDynamic3DTextLabelText(nomer[cara],0xBFF600FF,string); return 1; } else { SendClientMessage(playerid,COL OR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Sen dClientMessage(playerid,COLOR_GREY,"Цвет должен быть от 0 до 255"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { Rem ovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } } else { SendClientMessage(playerid,COLOR_GREY,"У вас маленький лвл"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { S endClientMessage(playerid,COLOR_GREY,"У вас уже есть автомобиль, продайте его! (/sellcar)"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { S endClientMessage(playerid,COLOR_GREY,"Нехватает денег!"); RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { RemovePlay erFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } else { RemovePlayerFromVehicle(player id); TogglePlayerControllable(playerid, 1); } } else { RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); } } //====================================
Автор урока: SlootLite
Ситстема полностью вырезана, без wsrning и erors!
|
|
| |