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

 



 
          





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





Последние Файлы 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
Модератор форума: AXE, Weddew  
SetVehicleParamsForPlayer
SanSayДата: Суббота, 25.06.2011, 19:47 | Сообщение # 1
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
сеня заметил мега недоработку SetVehicleParamsForPlayer.
в рекомендованной на вики статье получается что когда тачка будет появляться в стриммере, ей будет присваиваться значение желтого маркера и блокировки дверей равные значениям заданным для последнего игрока

stock SetVehicleParamsForPlayerEx(vehicleid, playerid, objective, doorslocked)
{
SetVehicleParamsForPlayer(vehicleid, playerid, objective, doorslocked);
iVehicleObjective[vehicleid][0] = objective;
iVehicleObjective[vehicleid][1] = doorslocked;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
SetVehicleParamsForPlayer(vehicleid, forplayerid, iVehicleObjective[vehicleid][0], iVehicleObjective[vehicleid][1]);
}

т.к. в переменной iVehicleObjective не сохраняется ид игрока, но ведь одна и таже машина для модного игрока может быть открыта, а для другого закрыта, тут получается если я кому то закрыл эту тачу
SetVehicleParamsForPlayerEx(vehicleid,playerid,0,1);
то этой таче присвоилось значение iVehicleObjective[vehicleid][1] = 1
и когда у любого игрока к которому эта тача попадет в стример сработает
public OnVehicleStreamIn(vehicleid, forplayerid)
{
SetVehicleParamsForPlayer(vehicleid, forplayerid, iVehicleObjective[vehicleid][0], iVehicleObjective[vehicleid][1]);
}
где iVehicleObjective[vehicleid][1] у этой таче = 1

или я туплю?

и если я прав, то получается эта функция является урезанной версией функции SetVehicleParamsEx



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
Fus1Дата: Суббота, 25.06.2011, 20:53 | Сообщение # 2
Группа: Продвинутые
Сообщений: 2704
Награды: 121
Город: Melbourne Australia
Репутация: 3103
Замечания: 0%
Статус:
Помню что-то такое было, что закрываешь машину и для других игроков она открыта, решение проблемы делали так.

Code
public OnVehicleStreamIn(vehicleid, forplayerid)
{
  if(CarInfo[vehicleid][cLock] == 0)
  SetVehicleParamsForPlayer(vehicleid,forplayerid,0,0);
  else
  SetVehicleParamsForPlayer(vehicleid,forplayerid,0,1);
  return 1;
}

SanSayДата: Суббота, 25.06.2011, 21:35 | Сообщение # 3
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
ну так то так, но это же как то подурацки, нахера чето придумывать, если функцию нужно было просто сразу нормальной сделать... это относится и к SetVehicleParamsEx


simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
HELKERNДата: Воскресенье, 26.06.2011, 05:00 | Сообщение # 4
Уважаемый человек
Группа: I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус:
Quote (SanSay)
или я туплю?

Точно :D

OpenCarDoor(vehicleid)
{
new e,l,a,d,b,b2,o;
GetVehicleParamsEx(vehicleid,e,l,a,d,b,b2,o);
SetVehicleParamsEx(vehicleid,e,l,a,0,b,b2,o);
}
CloseCarDoor(vehicleid)
{
new e,l,a,d,b,b2,o;
GetVehicleParamsEx(vehicleid,e,l,a,d,b,b2,o);
SetVehicleParamsEx(vehicleid,e,l,a,1,b,b2,o);
}

Пользуйся :D и больше ниче не надо

SanSayДата: Воскресенье, 26.06.2011, 10:37 | Сообщение # 5
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
HELKERN, ты не внимательно прочитал мое сообщение, я знаю эту функцию и она является той же SetVehicleParamsForPlayer просто с более расширенным фунционалом и у нее тоже присутствует недостаток как и у SetVehicleParamsForPlayer - устанавливает значения для ВСЕХ игроков, а не плохобы чтобы для каждого индивидуально, чтобы не использовать доп. причендалов типо
if(CarInfo[vehicleid][cLock] == 0)
SetVehicleParamsForPlayer(vehicleid,forplayerid,0,0);
else
SetVehicleParamsForPlayer(vehicleid,forplayerid,0,1);
return 1;



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2


Сообщение отредактировал SanSay - Воскресенье, 26.06.2011, 10:38
HELKERNДата: Воскресенье, 26.06.2011, 10:41 | Сообщение # 6
Уважаемый человек
Группа: I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус:
SanSay,
Quote (SanSay)
SetVehicleParamsForPlayer

Устанавливает для 1ого игрока

Quote (HELKERN)
SetVehicleParamsEx(vehicleid,e,l,a,0,b,b2,o);

Устанавливает для всех игроков

Quote (SanSay)
а не плохобы чтобы для каждого индивидуально, чтобы не использовать доп. причендалов типо
if(CarInfo[vehicleid][cLock] == 0)
SetVehicleParamsForPlayer(vehicleid,forplayerid,0,0);
else
SetVehicleParamsForPlayer(vehicleid,forplayerid,0,1);
return 1;

Такие "причиндалы" какраз нужно использовать для каждого индивидуально

Определись

SanSayДата: Воскресенье, 26.06.2011, 10:47 | Сообщение # 7
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
HELKERN, SetVehicleParamsForPlayer да, устанавливает для одного, но только последнее значение, т.е. если я первому закрыл дверь, а второму открыл, то потом ко всем кому попадет эта машина в стриммер, она будет открыта - читай первый пост

Quote (HELKERN)
Такие "причиндалы" какраз нужно использовать для каждого индивидуально

так не проще было сделать функцию типа: SetVehicleParamsEx(vehicleid,id,e,l,a,0,b,b2,o);

кстати, можно конечно и самому сделать функцию типа SetVehicleParamsEx2 которая будет "в ручную" добавлять нужную переменную (ид), но все что ручное, оно, я думаю, намного сильнее напрягает серв, нежели вшитое разрабами, но может я ошибаюсь и разницы нет... этого я, наверно, никогда не узнаю )



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2


Сообщение отредактировал SanSay - Воскресенье, 26.06.2011, 10:48
  • Страница 1 из 1
  • 1
Поиск:





 


 


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