09:22
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: Alcoholik  
Реализовать /trunk
LastHeroДата: Пятница, 28.08.2009, 22:57 | Сообщение # 1
Постоялец
Группа: Продвинутые
Сообщений: 392
Награды: 8
Репутация: 29
Замечания: 20%
Статус:
Возможно есть знатаки которые смогут обьяснить как реализовать /trunk с ларпа в gf оч нужно new_russian ,награда причетаеться


Изучаем pawno.
AwmДата: Суббота, 29.08.2009, 00:11 | Сообщение # 2
Группа: I'm V.I.P.
Сообщений: 3235
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
LastHero,
просто вырезать и переставить все функции с trunk.




"Life is hard... life is harder if you're stupid." - John Wayne
LastHeroДата: Суббота, 29.08.2009, 09:37 | Сообщение # 3
Постоялец
Группа: Продвинутые
Сообщений: 392
Награды: 8
Репутация: 29
Замечания: 20%
Статус:
так вот сдесь показует [pwn] if(vehTrunk[result][slot] != 0)[/pwn]
ошибку D:\НЕ трОГАЙ!!!!!!!!!\GF.pwn(23928) : error 001: expected token: ";", but found "]"

Добавлено (29.08.2009, 09:37)
---------------------------------------------
ето я понял но там вставлять очччень долго может кто делал распишет ну просто ет просидеть часа 3 -4 ито если получиться


Изучаем pawno.
MorozzzkoДата: Суббота, 29.08.2009, 11:42 | Сообщение # 4
Мастер джэдай
Группа: Продвинутые
Сообщений: 2179
Награды: 40
Город: Moscow
Репутация: 590
Замечания: 0%
Статус:
LastHero, угу, будут тут расписывать, размечтался.
ищи саму команду /trunk, переменные, енамы, функции связанные с транком и копипасть



Главный программист в Malefic Entertainment.
Thomas_MorganДата: Суббота, 29.08.2009, 17:53 | Сообщение # 5
Советчик
Группа: I'm V.I.P.
Сообщений: 1156
Награды: 25
Город: Chicago, IL
Репутация: 837
Замечания: 20%
Статус:
В начало

[pwn]#define MAX_TRUNK_SLOTS (7)
#define MAX_VEHICLE_MODELS (70)
[/pwn]

К Форвардам

[pwn]forward SaveTrunk();
forward LoadTrunk();[/pwn]

Ко всем Нью

[pwn]new vehTrunkCounter[MAX_VEHICLES] = 1;
newvehTrunk[MAX_VEHICLES][MAX_TRUNK_SLOTS];
new vehTrunkAmmo[MAX_VEHICLES][MAX_TRUNK_SLOTS];
new Float:vehTrunkArmour[MAX_VEHICLES];[/pwn]

в ГаймМодеИнит

[pwn]LoadTrunk();[/pwn]

Сама команда

[pwn]
Команду вырежи из обычного ларпа а то она у меня в сообщение не влзит :D
[/pwn]

В саамый конец мода

[pwn]public SaveTrunk()
{
new idx;
new File: file2;
idx = 1;
while (idx < sizeof(CarInfo))
{
new coordsstring[256];
format(coordsstring, sizeof(coordsstring), "%i,%i,%i,%i,%i,%i,%i,%i,%i,%f\n",
vehTrunk[idx][1],
vehTrunkAmmo[idx][1],
vehTrunk[idx][2],
vehTrunkAmmo[idx][2],
vehTrunk[idx][3],
vehTrunkAmmo[idx][3],
vehTrunk[idx][4],
vehTrunkAmmo[idx][4],
vehTrunkCounter[idx],
vehTrunkArmour[idx]);
if(idx == 1)
{
file2 = fopen("trunk.cfg", io_write);
}
else
{
file2 = fopen("trunk.cfg", io_append);
}
fwrite(file2, coordsstring);
idx++;
fclose(file2);
}
return 1;
}

public LoadTrunk()
{
new arrCoords[13][64];
new strFromFile2[256];
new File: file = fopen("trunk.cfg", io_read);
if (file)
{
new idx = 1;
while (idx < sizeof(CarInfo))
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, ',');
vehTrunk[idx][1] = strval(arrCoords[0]);
vehTrunkAmmo[idx][1] = strval(arrCoords[1]);
vehTrunk[idx][2] = strval(arrCoords[2]);
vehTrunkAmmo[idx][2] = strval(arrCoords[3]);
vehTrunk[idx][3] = strval(arrCoords[4]);
vehTrunkAmmo[idx][3] = strval(arrCoords[5]);
vehTrunk[idx][4] = strval(arrCoords[6]);
vehTrunkAmmo[idx][4] = strval(arrCoords[7]);
vehTrunkCounter[idx] = strval(arrCoords[8]);
vehTrunkArmour[idx] = floatstr(arrCoords[9]);
idx++;
}
}
return 1;
}
[/pwn]

Ну вот и усё


Сообщение отредактировал Tomas_Morgan - Суббота, 29.08.2009, 17:59
AwmДата: Суббота, 29.08.2009, 19:24 | Сообщение # 6
Группа: I'm V.I.P.
Сообщений: 3235
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
Tomas_Morgan,
забыл написать чтобы он файлик trunk.cfg в scriptfiles пихнул




"Life is hard... life is harder if you're stupid." - John Wayne
TolOloTДата: Суббота, 29.08.2009, 22:12 | Сообщение # 7
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 271
Награды: 5
Город: Киев
Репутация: 13
Замечания: 100%
Статус:
Если не секрет, что эта функция делает? мне лень в ларп лезть))
AwmДата: Воскресенье, 30.08.2009, 04:10 | Сообщение # 8
Группа: I'm V.I.P.
Сообщений: 3235
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
c[L]o_Ud,
багажник в тачках




"Life is hard... life is harder if you're stupid." - John Wayne
LastHeroДата: Воскресенье, 30.08.2009, 15:06 | Сообщение # 9
Постоялец
Группа: Продвинутые
Сообщений: 392
Награды: 8
Репутация: 29
Замечания: 20%
Статус:
Tomas_Morgan спс плюсик поставил

Добавлено (30.08.2009, 15:01)
---------------------------------------------
p.s ет еще не все там еще undefined symbol добавить над) так что займемся yes

Добавлено (30.08.2009, 15:05)
---------------------------------------------
так что не работает)

Добавлено (30.08.2009, 15:06)
---------------------------------------------
точнее если добовлять ети переменные замучаешся yes


Изучаем pawno.
EakwarpДата: Воскресенье, 30.08.2009, 15:11 | Сообщение # 10
Мастер джэдай
Группа: Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус:
Quote (LastHero)
D:\НЕ трОГАЙ!!!!!!!!!\GF.pwn

lolfolder? crazy :D :D :D :D :D



More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.


Valakas Roleplay on Twitter

Платные консультации, разработка, в ICQ. Дорого.
LastHeroДата: Воскресенье, 30.08.2009, 15:31 | Сообщение # 11
Постоялец
Группа: Продвинутые
Сообщений: 392
Награды: 8
Репутация: 29
Замечания: 20%
Статус:
[offtop]Eakwarp ой я молчю,знаем какой ты человек вчера увидил yes [/offtop]

Добавлено (30.08.2009, 15:31)
---------------------------------------------
[pwn]if(strcmp(cmd, "/trunk", true) == 0) // Переписана Project X
{
if(IsPlayerConnected(playerid))
{
new x_nr[64];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "Подсказка: /trunk [имя]");
SendClientMessage(playerid, COLOR_WHITE, "Доступные имена: info, putgun, takegun, putarmour, takearmour");
if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2)
{
SendClientMessage(playerid, COLOR_WHITE, "Выможете обыскать багажник командой /trunk");
}
return 1;
}
if(strcmp(x_nr,"info",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет машины с багажником рядом с вами");
}


if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83 || GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Этот автомобиль не имеет багажника!");
return 1;
}

SendClientMessage(playerid, COLOR_WHITE, "|_______ Багажник _______|");
for(new slot = 1; slot != MAX_TRUNK_SLOTS; slot++)
{
new gunname[100];
if(vehTrunk[result][slot] != 0)
{
GetWeaponName(vehTrunk[result][slot], gunname, sizeof(gunname));
format(string, sizeof(string), "| Слот %i: %s (Аммо: %i)", slot, gunname, vehTrunkAmmo[result][slot]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
format(string, sizeof(string), "| Слот %i: пустой (Аммо: N/A)", slot);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
format(string, sizeof(string), "| Бронежелет: %f%", vehTrunkArmour[result]);
SendClientMessage(playerid, COLOR_WHITE, string);

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник и проверяет то, что находится внутри.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"putgun",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобиля с багажником рядом с вами");
}


if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Нужно подождать 3 секунды, прежде чем использовать эту команду !");
return 1;
}
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83|| GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Это транспортное средство не имеет багажника !");
return 1;
}
new buffer[512];
new gunname[100];
new gunID = GetPlayerWeapon(playerid);
new gunAmmo = GetPlayerAmmo(playerid);

if(gunID != 0 && gunAmmo != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
GetWeaponName(gunID, gunname, sizeof(gunname));
vehTrunkCounter[result]++;
vehTrunk[result][vehTrunkCounter[result]] = gunID;
vehTrunkAmmo[result][vehTrunkCounter[result]] = gunAmmo;
format(buffer, sizeof(buffer), "Вы положили %s (Аммо: %i) в автомобильный багажник.", gunname, gunAmmo);
SendClientMessage(playerid, COLOR_WHITE, buffer);
RemovePlayerWeapon(playerid, gunID);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открыл багажник и положил туда ствол.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Багажник забит");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено много автомобилей в этом радиусе");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"takegun",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}

switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобилей с багажником рядом с вами");
return 1;
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Нужно подождать 3 секунды, прежде чем использовать эту команду!");
return 1;
}


if(vehTrunkCounter[result] != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
new buffer[512];
new gunName[100];

SafeGivePlayerWeapon(playerid, vehTrunk[result][vehTrunkCounter[result]], vehTrunkAmmo[result][vehTrunkCounter[result]]);
GetWeaponName(vehTrunk[result][vehTrunkCounter[result]], gunName, sizeof(gunName));
format(buffer, sizeof(buffer), "Вы вытащили %s (Аммо: %i) из багажника.", gunName, vehTrunkAmmo[result][vehTrunkCounter[result]]);
SendClientMessage(playerid, COLOR_WHITE, buffer);
vehTrunk[result][vehTrunkCounter[result]] = '\0';
vehTrunkAmmo[result][vehTrunkCounter[result]] = '\0';
vehTrunkCounter[result]--;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник автомобиля и вытаскивает оружие.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Багажник пуст ! ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"putarmour",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет багажника машины рядом с вами");
return 1;
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}

new Float:plyArmour;
GetPlayerArmour(playerid, plyArmour);

if(plyArmour != 0)
{
SetPlayerArmour(playerid, 0);
vehTrunkArmour[result] = plyArmour;

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s снимает свой броньжелет и кладет его в багажник автомобиля.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Вы не имеете броньжелет ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"takearmour",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет багажника машины рядом с вами");
return 1;
}


if(vehTrunkArmour[result] != 0)
{
SetPlayerArmour(playerid, vehTrunkArmour[result]);
vehTrunkArmour[result] = 0;

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s достает из багажника броньжелет и одевает его на себя.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " В багажнике нет броньжелета! ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"frisk",true) == 0)
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобиля рядом с вами");
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83 || GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Этот автомобиль не имеет багажника!");
return 1;
}

SendClientMessage(playerid, COLOR_WHITE, "|_______ Багажник _______|");
for(new slot = 1; slot != MAX_TRUNK_SLOTS; slot++)
{
new gunname[100];
if(vehTrunk[result][slot] != 0)
{
GetWeaponName(vehTrunk[result][slot], gunname, sizeof(gunname));
format(string, sizeof(string), "| Слот %i: %s (Аммо: %i)", slot, gunname, vehTrunkAmmo[result][slot]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
format(string, sizeof(string), "| Слот %i: Пусто (Аммо: N/A)", slot);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
format(string, sizeof(string), "| Броньжелет: %f%", vehTrunkArmour[result]);
SendClientMessage(playerid, COLOR_WHITE, string);

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник и проверяет то, что находится внутри.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Вы не полицейский! ");
return 1;
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Подсказка: /trunk [имя]");
SendClientMessage(playerid, COLOR_WHITE, "Доступные имена: info, putgun, takegun, putarmour, takearmour");
if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2)
{
SendClientMessage(playerid, COLOR_WHITE, "Выможете /trunk frisk (обыскать багажник) вы коп");
}
return 1;
}
}
return 1;
}
[/pwn]
кто может его посмареть заранее спс просто при компиляции оч быстро компилит и пустое окно инфо

Добавлено (30.08.2009, 15:31)
---------------------------------------------
[pwn]if(strcmp(cmd, "/trunk", true) == 0) // Переписана Project X
{
if(IsPlayerConnected(playerid))
{
new x_nr[64];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "Подсказка: /trunk [имя]");
SendClientMessage(playerid, COLOR_WHITE, "Доступные имена: info, putgun, takegun, putarmour, takearmour");
if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2)
{
SendClientMessage(playerid, COLOR_WHITE, "Выможете обыскать багажник командой /trunk");
}
return 1;
}
if(strcmp(x_nr,"info",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет машины с багажником рядом с вами");
}


if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83 || GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Этот автомобиль не имеет багажника!");
return 1;
}

SendClientMessage(playerid, COLOR_WHITE, "|_______ Багажник _______|");
for(new slot = 1; slot != MAX_TRUNK_SLOTS; slot++)
{
new gunname[100];
if(vehTrunk[result][slot] != 0)
{
GetWeaponName(vehTrunk[result][slot], gunname, sizeof(gunname));
format(string, sizeof(string), "| Слот %i: %s (Аммо: %i)", slot, gunname, vehTrunkAmmo[result][slot]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
format(string, sizeof(string), "| Слот %i: пустой (Аммо: N/A)", slot);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
format(string, sizeof(string), "| Бронежелет: %f%", vehTrunkArmour[result]);
SendClientMessage(playerid, COLOR_WHITE, string);

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник и проверяет то, что находится внутри.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"putgun",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобиля с багажником рядом с вами");
}


if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Нужно подождать 3 секунды, прежде чем использовать эту команду !");
return 1;
}
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83|| GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Это транспортное средство не имеет багажника !");
return 1;
}
new buffer[512];
new gunname[100];
new gunID = GetPlayerWeapon(playerid);
new gunAmmo = GetPlayerAmmo(playerid);

if(gunID != 0 && gunAmmo != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
GetWeaponName(gunID, gunname, sizeof(gunname));
vehTrunkCounter[result]++;
vehTrunk[result][vehTrunkCounter[result]] = gunID;
vehTrunkAmmo[result][vehTrunkCounter[result]] = gunAmmo;
format(buffer, sizeof(buffer), "Вы положили %s (Аммо: %i) в автомобильный багажник.", gunname, gunAmmo);
SendClientMessage(playerid, COLOR_WHITE, buffer);
RemovePlayerWeapon(playerid, gunID);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открыл багажник и положил туда ствол.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Багажник забит");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено много автомобилей в этом радиусе");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"takegun",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}

switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобилей с багажником рядом с вами");
return 1;
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Нужно подождать 3 секунды, прежде чем использовать эту команду!");
return 1;
}


if(vehTrunkCounter[result] != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
new buffer[512];
new gunName[100];

SafeGivePlayerWeapon(playerid, vehTrunk[result][vehTrunkCounter[result]], vehTrunkAmmo[result][vehTrunkCounter[result]]);
GetWeaponName(vehTrunk[result][vehTrunkCounter[result]], gunName, sizeof(gunName));
format(buffer, sizeof(buffer), "Вы вытащили %s (Аммо: %i) из багажника.", gunName, vehTrunkAmmo[result][vehTrunkCounter[result]]);
SendClientMessage(playerid, COLOR_WHITE, buffer);
vehTrunk[result][vehTrunkCounter[result]] = '\0';
vehTrunkAmmo[result][vehTrunkCounter[result]] = '\0';
vehTrunkCounter[result]--;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник автомобиля и вытаскивает оружие.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Багажник пуст ! ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"putarmour",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет багажника машины рядом с вами");
return 1;
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}

new Float:plyArmour;
GetPlayerArmour(playerid, plyArmour);

if(plyArmour != 0)
{
SetPlayerArmour(playerid, 0);
vehTrunkArmour[result] = plyArmour;

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s снимает свой броньжелет и кладет его в багажник автомобиля.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Вы не имеете броньжелет ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"takearmour",true) == 0)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет багажника машины рядом с вами");
return 1;
}


if(vehTrunkArmour[result] != 0)
{
SetPlayerArmour(playerid, vehTrunkArmour[result]);
vehTrunkArmour[result] = 0;

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s достает из багажника броньжелет и одевает его на себя.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SaveTrunk();
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " В багажнике нет броньжелета! ");
return 1;
}
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
return 1;
}
else if(strcmp(x_nr,"frisk",true) == 0)
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
{
new counter = 0;
new result;
new plyName[MAX_PLAYER_NAME];

GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
for(new i; i != MAX_VEHICLES; i++)
{
new dist = CheckPlayerDistanceToVehicle(3.5, playerid, i);
if(dist)
{
result = i;
counter++;
}
}
switch(counter)
{
case 0:
{
SendClientMessage(playerid, COLOR_GREY, " Нет автомобиля рядом с вами");
}

case 1:
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, " Вы не можете открыть багажник, находясь в автомобиле");
return 1;
}
if(IsAPlane(result) || IsABike(result) || IsAOBike(result) || IsABoat(result) || IsAPizzabike(result) || IsABus(result) || IsATowcar(result) || IsAHarvest(result) || IsADrugHarvest(result) || IsASweeper(result) || result >=78 && result <= 83 || GetVehicleModel(GetPlayerVehicleID(result)) == 523)
{
SendClientMessage(playerid, COLOR_GREY, " Этот автомобиль не имеет багажника!");
return 1;
}

SendClientMessage(playerid, COLOR_WHITE, "|_______ Багажник _______|");
for(new slot = 1; slot != MAX_TRUNK_SLOTS; slot++)
{
new gunname[100];
if(vehTrunk[result][slot] != 0)
{
GetWeaponName(vehTrunk[result][slot], gunname, sizeof(gunname));
format(string, sizeof(string), "| Слот %i: %s (Аммо: %i)", slot, gunname, vehTrunkAmmo[result][slot]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
format(string, sizeof(string), "| Слот %i: Пусто (Аммо: N/A)", slot);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
format(string, sizeof(string), "| Броньжелет: %f%", vehTrunkArmour[result]);
SendClientMessage(playerid, COLOR_WHITE, string);

GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открывает багажник и проверяет то, что находится внутри.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}

default:
{
SendClientMessage(playerid, COLOR_GREY, " Найдено более одного автомобиля в диапазоне");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Вы не полицейский! ");
return 1;
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Подсказка: /trunk [имя]");
SendClientMessage(playerid, COLOR_WHITE, "Доступные имена: info, putgun, takegun, putarmour, takearmour");
if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2)
{
SendClientMessage(playerid, COLOR_WHITE, "Выможете /trunk frisk (обыскать багажник) вы коп");
}
return 1;
}
}
return 1;
}
[/pwn]
кто может его посмареть заранее спс просто при компиляции оч быстро компилит и пустое окно инфо


Изучаем pawno.
AwmДата: Воскресенье, 30.08.2009, 17:57 | Сообщение # 12
Группа: I'm V.I.P.
Сообщений: 3235
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
LastHero,
скорее всего лишняя скобка стоит хотя могу ошибаться
(здоровый код смотреть впадел)




"Life is hard... life is harder if you're stupid." - John Wayne
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua