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

 



 
        
[Include] RemoveBuilding (2)
JasonGordon 24.05.2017 23:48
[SA-MP] Hosted Tab (116)
DieSeL 17.05.2017 17:33
Физрук (15)
Lanablogger1 16.05.2017 16:00
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы 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
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
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 1 из 11
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Какая нужна функция и как использовать...
Какая нужна функция и как использовать...
Brain_TolmachДата: Четверг, 23.02.2012, 00:52 | Сообщение # 1
Новенький
Группа: Продвинутые
Сообщений: 55
Награды: 2
Город: Лениногорск
Репутация: 36
Замечания: 0%
Статус:
Здраствуйте,столкнулся с таким вопросом при создании команды /me все написал правильно но еще нужна такая функция или что...что бы текст был виден на определенное растояние допустим 10 метров,а не всем игрокам или только самому себе...подскажите

Code

  if(strcmp(cmdtext,"/me",true,3)==0)
  {
   if(!cmdtext[3])return SendClientMessage(playerid,-1,"Подсказка: [/me] [Текст]");
   new string[170];
   GetPlayerName(playerid,string,sizeof(string));
   format(string,sizeof(string)," %s %s",string,cmdtext[3]);
   SendClientMessageToAll(-1,string);
   return 1;
  }



LatronДата: Четверг, 23.02.2012, 01:02 | Сообщение # 2
Группа: I'm V.I.P.
Сообщений: 2115
Награды: 22
Город: Орел
Репутация: 1604
Замечания: 0%
Статус:
Brain_Tolmach, ProxDetector( 30.0, playerid, string, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA );


Моё портфолио

Мои работы:
[ Lesson ] Операторы в PAWN.
[ Lesson ] Переменная.
[ GM ] RegSys. ( Last update: 21.04.2012 )




Улыбайся всем как можно шире - =)) Они должны быть уверены,что ты холодная лицемерная сволочь. © Виктор Пелевин
crackerДата: Четверг, 23.02.2012, 09:09 | Сообщение # 3
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 198
Награды: 5
Город: Красноярск
Репутация: 74
Замечания: 60%
Статус:
Code

  if(strcmp(cmdtext,"/me",true,3)==0)  
   {  
    if(!cmdtext[3])return SendClientMessage(playerid,-1,"Подсказка: [/me] [Текст]");  
    new string[170];  
    GetPlayerName(playerid,string,sizeof(string));  
    format(string,sizeof(string)," %s %s",string,cmdtext[3]);  
    ProxDetector( 30.0, playerid, string, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA );  
    return 1;  
   }  

Fus1Дата: Четверг, 23.02.2012, 09:21 | Сообщение # 4
Группа: Продвинутые
Сообщений: 2705
Награды: 121
Город: Melbourne Australia
Репутация: 3103
Замечания: 0%
Статус:
Quote (Latron)
ProxDetector( 30.0, playerid, string, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA, 0xC2A2DAAA );

Ужас. И тем более , если у него нет это функции ?

Code
stock MeAction(playerid,string[],Float:radius)
{
    new p = GetMaxPlayers();
    for(new i; i < p; i++)
    {
        if(IsPlayerNearPlayer(playerid,i,radius))
        SendClientMessage(i,COLOR_PURPLE,string);
    }
    return 1;
}


Code
stock IsPlayerNearPlayer(playerid,id,Float:range)
{
  new Float:x,Float:y,Float:z;
  GetPlayerPos(id,x,y,z);
  if(IsPlayerInRangeOfPoint(playerid,range,x,y,z))
  return 1;
  return 0;
}


И используем,

Code
MeAction(playerid,string,15);


Где у нас string это то , что мы будем выводить, а '15', это дистанция.



Сообщение отредактировал Fus1 - Четверг, 23.02.2012, 11:06
__JesterДата: Четверг, 23.02.2012, 09:34 | Сообщение # 5
Новенький
Группа: Пользователи
Сообщений: 48
Награды: 0
Город: Волгоград
Репутация: 22
Замечания: 0%
Статус:
Fus1, а что вот эти у него есть?
Code

       if(IsPlayerNearPlayer(playerid,i,radius))
       SendClientMessageEx(i,COLOR_PURPLE,string);


Code
new Float:x, Float:y, Float:z;
GetPlayerPos( playerid, x, y ,z );
for( new id=0; id<MAX_PLAYERS; id++ )
{
     if ( IsPlayerInRangeOfPoint( i, 30.0, x, y, z ) ) SendClientMessage(i, COLOR_PURPLE, string);  

}

EakwarpДата: Четверг, 23.02.2012, 10:16 | Сообщение # 6
Мастер джэдай
Группа: Продвинутые
Сообщений: 4877
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус:
Quote (Fus1)
если у него нет это функции ?

Quote (Fus1)
 if(IsPlayerNearPlayer(playerid,i,radius))

Quote (Fus1)
SendClientMessageEx

facepalm.

Ты бездарь.

А так, достаточно воспользоваться простым алгоритмом.

1. Узнаем текущие координаты игрока
2. Цикл на всех игроков.(рекомендую уже использовать foreach, 2012й год на дворе).
3. Если игрок в радиусе от координат игрока - вывод ему сообщения.

Добавлено (23.02.2012, 10:16)
---------------------------------------------
Upd. Ну или воспользоваться кодом __Jester, поставленную задачу выполняет.


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. Дорого.
LatronДата: Четверг, 23.02.2012, 11:03 | Сообщение # 7
Группа: I'm V.I.P.
Сообщений: 2115
Награды: 22
Город: Орел
Репутация: 1604
Замечания: 0%
Статус:
Fus1, да ужас, но 70% что у него обычный ГФ, где везде используется функция ProxDetector.

Quote (Eakwarp)
А так, достаточно воспользоваться простым алгоритмом.

1. Узнаем текущие координаты игрока
2. Цикл на всех игроков.(рекомендую уже использовать foreach, 2012й год на дворе).
3. Если игрок в радиусе от координат игрока - вывод ему сообщения.


Ага,жаль только он этого сделать не сможет.



Моё портфолио

Мои работы:
[ Lesson ] Операторы в PAWN.
[ Lesson ] Переменная.
[ GM ] RegSys. ( Last update: 21.04.2012 )




Улыбайся всем как можно шире - =)) Они должны быть уверены,что ты холодная лицемерная сволочь. © Виктор Пелевин

Сообщение отредактировал Latron - Четверг, 23.02.2012, 11:10
Brain_TolmachДата: Четверг, 23.02.2012, 11:10 | Сообщение # 8
Новенький
Группа: Продвинутые
Сообщений: 55
Награды: 2
Город: Лениногорск
Репутация: 36
Замечания: 0%
Статус:
Мод с 0 пишу только 3 функции есть проверка игрока в зоне
Code

stock IsPlayerInArea(playerid,Float:miny,Float:maxx,Float:maxy)//Использование-if(IsPlayerInArea(playerid,x min,y min,X max,Y max))
{
  new Float:x,Float:y,Float:z;//Это проверкка игрока в зоне
  GetPlayerPos(playerid,X,Y,Z);
  if(X >= minx && y >= miny && Y<= maxy)
  {
      return 1;
  }
}

Проверка игрока в кубе
Code

stock IsPlayerInCube(playerid,Float:xmin,Float:ymin,Float:zmin,Float:xmax,Float:ymax,Float:zmax)
{
  new Float:x,Float:y,Float:z;// if(IsPlayerInCube(playerid,xmin,ymin,zmin,xmax,ymax,zmax))
  GetPlayerPos(playerid(x,y,z);//Проверка игррока в кубе
  if(x > xmin && y > ymin && z > zmin && x < xmax && y < ymax && z < zmax)return 1;
  return 0;
}

И проверка игрока в радиусе
Code

stock PlayerToPoint(Float:radi,playerid,Float:x,Float:y,Float:z)//Проверка игрока в радиусе
{
  if(IsPlayerConnected(playerid))//if(playerToPoint(3.0,playerd,xyz))
  {
      new Float:oldposx,Float:oldposy,Floatoldposz;
      new Float:tempposx,Float:tempposy,Float:tempposz;
      GetPlayerPos(playerid,oldposx,oldposy,oldposz);
      tempposx = (oldposx -x);
      tempposy = (oldpos -y);
      tempposz = (oldpos -z);
      if(((tempposx < radi)&&(tempposx > -radi))&&((tempposy < radi)&&(temppos > -radi))&&((tempposz < radi)&&(tempposz > -radi)))
      {
          return 1;
   }
  }
  return 0;
}

А так всем спасибо, сейчас попытаюсь с функцией джестера сделать



LatronДата: Четверг, 23.02.2012, 11:12 | Сообщение # 9
Группа: I'm V.I.P.
Сообщений: 2115
Награды: 22
Город: Орел
Репутация: 1604
Замечания: 0%
Статус:
Brain_Tolmach, PlayerToPoint(Float:radi,playerid,Float:x,Float:y,Float:z)//Проверка игрока в радиусе
Это удалите, это прошлый век,сейчас есть уже IsPlayerInRangeOfPoint - стандартная.
И используйте способ фаса, касательно /me.



Моё портфолио

Мои работы:
[ Lesson ] Операторы в PAWN.
[ Lesson ] Переменная.
[ GM ] RegSys. ( Last update: 21.04.2012 )




Улыбайся всем как можно шире - =)) Они должны быть уверены,что ты холодная лицемерная сволочь. © Виктор Пелевин

Сообщение отредактировал Latron - Четверг, 23.02.2012, 11:12
EmiGrantДата: Четверг, 23.02.2012, 11:12 | Сообщение # 10
Долгожитель
Группа: Продвинутые
Сообщений: 1362
Награды: 34
Город: Пятигорск
Репутация: 1653
Замечания: 40%
Статус:
Quote (Brain_Tolmach)
И проверка игрока в радиусе

stock PlayerToPoint(Float:radi,playerid,Float:x,Float:y,Float:z)//Проверка игрока в радиусе
{
if(IsPlayerConnected(playerid))//if(playerToPoint(3.0,playerd,xyz))
{
new Float:oldposx,Float:oldposy,Floatoldposz;
new Float:tempposx,Float:tempposy,Float:tempposz;
GetPlayerPos(playerid,oldposx,oldposy,oldposz);
tempposx = (oldposx -x);
tempposy = (oldpos -y);
tempposz = (oldpos -z);
if(((tempposx < radi)&&(tempposx > -radi))&&((tempposy < radi)&&(temppos > -radi))&&((tempposz < radi)&&(tempposz > -radi)))
{
return 1;
}
}


Нахрена?





Если человек несет бред, то здесь 2 варианта: либо он очень умный либо очень тупой © EmiGrant
Brain_TolmachДата: Четверг, 23.02.2012, 11:15 | Сообщение # 11
Новенький
Группа: Продвинутые
Сообщений: 55
Награды: 2
Город: Лениногорск
Репутация: 36
Замечания: 0%
Статус:
Latron, Спасибо понел,сейчас удалю и воспользуюсь функцией фобоса..

Добавлено (23.02.2012, 11:15)
---------------------------------------------
EmiGrant, Я начинающий скриптер мало знаю стандартных функций.


LatronДата: Четверг, 23.02.2012, 11:19 | Сообщение # 12
Группа: I'm V.I.P.
Сообщений: 2115
Награды: 22
Город: Орел
Репутация: 1604
Замечания: 0%
Статус:
[off]
Quote (Brain_Tolmach)
Latron, Спасибо понел,сейчас удалю и воспользуюсь функцией фобоса..

Фобос это новая кликуха фаса? crazy [/off]
Quote (Brain_Tolmach)
EmiGrant, Я начинающий скриптер мало знаю стандартных функций.

http://wiki.sa-mp.com/



Моё портфолио

Мои работы:
[ Lesson ] Операторы в PAWN.
[ Lesson ] Переменная.
[ GM ] RegSys. ( Last update: 21.04.2012 )




Улыбайся всем как можно шире - =)) Они должны быть уверены,что ты холодная лицемерная сволочь. © Виктор Пелевин
Brain_TolmachДата: Четверг, 23.02.2012, 11:23 | Сообщение # 13
Новенький
Группа: Продвинутые
Сообщений: 55
Награды: 2
Город: Лениногорск
Репутация: 36
Замечания: 0%
Статус:
Quote (Latron)
ОффтопикQuote (Brain_Tolmach)Latron, Спасибо понел,сейчас удалю и воспользуюсь функцией фобоса.. Фобос это новая кликуха фаса?

перепутал чуток) просто знакомый есть,фобос)



Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Какая нужна функция и как использовать...
Страница 1 из 11
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM