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

 



 
          





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





Последние Файлы 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
Модератор форума: AXE, Weddew  
[Архив #2] Вопросы ответы по SAMP [от 11.01.2012]
ВеликсДата: Среда, 11.01.2012, 23:37 | Сообщение # 1
Мастер джэдай
Группа: Модераторы
Сообщений: 3931
Награды: 287
Город: Мухосранск
Репутация: 8429
Замечания: 0%
Статус:
[move]-= Вопрос | Ответ =-[/move]

В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.


Новичкам:


  • Внятно объясняйте вашу проблему, если вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
  • Помощь идет только по желанию пользователя, если вам человек помог вам только частично, не нужно начинать поливать его грязью.
  • Возможно тип вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
  • В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за вас. (!!!)
  • Если вы хотите отблагодарить пользователя, жмите на кнопку . (Только для продвинутых, и выше)
  • Если вы уже задавали вопрос, и не получили на него ответа, лучше напишите в ЛС одному, из участников группы Support, чем зафлуживать тему.


Скриптерам:

  • Не оскорблять новичков.
  • Не флудить сообщениями, подобных "Закрой PAWNO и иди делай уроки".
  • Не посылать в поиск. Юзер итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
  • Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.



[cut=freestyle]
ПРИНЕСЛА СОРОКА В РОТЕ ПРИВОРОТ ,
СВЯЗАЛАСЬ НА ШЕЕ ЛОЗА И БЫЛ ПОЛНЫЙ ПИ**ЕЦ,
ОСЕНЬ С ЗИМОЙ, ЛЕТО С ВЕСНОЙ,
ГУСЬ С ЛИСОЙ, ЕБ**ИСЬ ВО ТЬМЕ НОЧНОЙ.
УЗЕЛ ЗАВЯЗАЛСЯ, ПЕПЕЛ РАЗМЕТАЛСЯ И ЛИСА ЗАБЕРЕМЕНЕЛА.
ВМЕСТЕ ВЕК ВЕКОВАТЬ, ПУТУ НЕ РАЗВЯЗАТЬ.
ТРАВА ПЕРЕПЛЕТИСЬ, УЗЕЛ ЗАВОРОЖИСЬ.
ЛЕНАРУ ДАЙ УМА И ЛЕНУ
НА ВЕЛЕ НЕ ОТРАЗИСЬ,ЕБ*СЬ ЕБ*СЬ ЕБ*СЬ
© Хасан
[/cut]


Сообщение отредактировал Weddew - Понедельник, 09.06.2014, 03:17
GeryyДата: Четверг, 20.12.2012, 13:00 | Сообщение # 5386
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Quote (artemganin1999)
Так возвращаюсь к воротам , вы мне скинули ссылку чтобы открывать ворота командой, а вот что делать если мне нужно для фракций, как я на одном сервере видел, просто если ты состоишь в какой либо фракции то просто если пешком то alt и ворота открываются, если на машине то H , возможно так как нибудь сделать?

тоже самое, только в команду которая открывает ворота добавить проверку на принадлежность игрока к фракции.



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
artemganin1999Дата: Четверг, 20.12.2012, 16:34 | Сообщение # 5387
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
ясно короче ищу что нибудь в поисковике, хотя уже неделю найти не могу)

Добавлено (20.12.2012, 16:34)
---------------------------------------------
Помогите плз, я в кодах полный нуб :D , я нашел как сделать ворота, там написано

Code
Далее находим public OnPlayerCommandText(playerid, cmdtext[]) и вставляем это:

Code
if (strcmp(cmdtext, "/hopen", true)==0)//Команду придамате сами  
{  
if (PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pLeader] == 12)//фракция\банда любая
{  
MoveObject(gatevorota,x,y,z, 3.0);/// координаты открытых ворот (3.0)-это скорость открывания  
SetTimer("vorotagate", 10000, 0);  
SendClientMessage(playerid,0xFFFF00AA,"Ворота закроются в течение 10 секунд!");  
return 1;  
}  
SendClientMessage(playerid,0xAA3333AA,"Ты не состоишь тут!");  
}  

у меня не получается вставить , как то по нубски получается
Code
public OnPlayerCommandText(playerid, cmdtext[])
     {
     if (strcmp(cmdtext, "/hopen", true)==0)//Команду придамате сами
     {
     if (PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pLeader] == 12)//фракция\банда любая
     {
     MoveObject(gatevorota,x,y,z, 3.0);/// координаты открытых ворот (3.0)-это скорость открывания
     SetTimer("vorotagate", 10000, 0);
     SendClientMessage(playerid,0xFFFF00AA,"Ворота закроются в течение 10 секунд!");
     return 1;
     }
     SendClientMessage(playerid,0xAA3333AA,"Ты не состоишь тут!");
     }

выдает 4 ошибки

WeddewДата: Четверг, 20.12.2012, 16:54 | Сообщение # 5388
Группа: Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
Quote (artemganin1999)
выдает 4 ошибки

Выложите лог ошибок.




www.weddew-shop.ru
artemganin1999Дата: Четверг, 20.12.2012, 19:24 | Сообщение # 5389
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Quote (Weddew)
Выложите лог ошибок.

Code
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 017: undefined symbol "PlayerInfo"
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : warning 215: expression has no effect
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 001: expected token: ";", but found "]"
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 029: invalid expression, assumed zero
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664     Copyright (c) 1997-2006, ITB CompuPhase

4 Errors.

Добавлено (20.12.2012, 19:24)
---------------------------------------------
Спасибо с ошибками все в порядке, мне это не подходит, помогите пожалуйста если это возможно, сделать такие ворота как я описывал но чтоб не в мод вставлять а это был как бы filterscript если это возможно

WeddewДата: Четверг, 20.12.2012, 19:38 | Сообщение # 5390
Группа: Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
Quote (artemganin1999)
Выложите лог ошибок.

Code
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 017: undefined symbol "PlayerInfo"
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : warning 215: expression has no effect
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 001: expected token: ";", but found "]"
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : error 029: invalid expression, assumed zero
C:\Documents and Settings\1\Рабочий стол\Новая папка (12)\test.pwn(93) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664     Copyright © 1997-2006, ITB CompuPhase

4 Errors.


У Вас массив хранения данных персонажа по другому назван.

Quote (artemganin1999)
Спасибо с ошибками все в порядке, мне это не подходит, помогите пожалуйста если это возможно, сделать такие ворота как я описывал но чтоб не в мод вставлять а это был как бы filterscript если это возможно

Это возможно, но все-же придется сделать кое-какие изменения.




www.weddew-shop.ru
artemganin1999Дата: Четверг, 20.12.2012, 19:50 | Сообщение # 5391
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
а вот как это вообще сделать, я не говорю изменить, я в общем я просто уже хз как я по разному делал, везде искал и толку 0
X_LeonSДата: Четверг, 20.12.2012, 21:56 | Сообщение # 5392
Группа: I'm V.I.P.
Сообщений: 610
Награды: 8
Город: Барнаул
Репутация: 202
Замечания: 40%
Статус:
Ребят, знающие помогите пожалуйста. Вобщем пишу системку и надо так:
жму в диалоге пункт, проходит время и игроку который нажимал (не всем игрокам )на пункт в диалоге вылетал еще один диалог. Вот код:

Code

      case 0:
      {
       SetTimer("TimeSpawnVeh1",6000,false);
       GivePlayerMoneyEx(playerid, -100);
       TogglePlayerControllableEx(playerid, 1);
       PlayerInfo[playerid][pRentcar] = 1;
      }


а вот тут надо второй диалог который вылетает именно тому кто жал (а не всем)

Code

forward TimeSpawnVeh1();
public TimeSpawnVeh1()
{
  for(new i = 0; i < MAX_PLAYERS; i++)
  {
   TogglePlayerControllableEx(i, 0);
   format(loginstring,sizeof(loginstring),"бла бла бла");
   ShowPlayerDialog(i, 776, DIALOG_STYLE_MSGBOX, "ыыы", loginstring, "Да", "Нет");     
  }
}



Мои услуги:
-Качественный мапинг (в данный момент работ нет так как пока всё для своего сервера)
-Скриптинг мелочей
-Разработка сайтов
-Работы в PhotoShop
Обращаться по icq или скайпу!
ICQ - 926048
Skype - x_leons


GeryyДата: Пятница, 21.12.2012, 02:09 | Сообщение # 5393
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Quote (X_LeonS)
Ребят, знающие помогите пожалуйста. Вобщем пишу системку и надо так: жму в диалоге пункт, проходит время и игроку который нажимал (не всем игрокам )на пункт в диалоге вылетал еще один диалог.


Не тот таймер взял:
Code

case 0:    
         {    
           SetTimerEx("TimeSpawnVeh1",6000,0,"i",playerid);
           GivePlayerMoneyEx(playerid, -100);    
           TogglePlayerControllableEx(playerid, 1);    
           PlayerInfo[playerid][pRentcar] = 1;    
         }

forward TimeSpawnVeh1(playerid);    
public TimeSpawnVeh1(playerid)    
{    
          TogglePlayerControllableEx(playerid, 0);    
          format(loginstring,sizeof(loginstring),"бла бла бла");    
          ShowPlayerDialog(playerid, 776, DIALOG_STYLE_MSGBOX, "ыыы", loginstring, "Да", "Нет");
     }    



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Пятница, 21.12.2012, 02:14
JiggaДата: Пятница, 21.12.2012, 07:54 | Сообщение # 5394
Новенький
Группа: Пользователи
Сообщений: 53
Награды: 0
Город: Владивосток
Репутация: 0
Замечания: 0%
Статус:
все привет, вот такая проблема после регистрации нужно выбрать скин. проблема в том что клавиши которые я задаю не срабатывают
вот код которой после регистрации выдаю
Code
case 2:
{
         SetPlayerInterior(playerid,5);
      SetPlayerCameraLookAt(playerid, 208.800, -1.0000, 1001.2100);
   SetPlayerCameraPos(playerid, 208.800, -4.0000, 1001.2000);
   SetPlayerPos(playerid, 208.800, -1.7000, 1001.2100);
   SetPlayerFacingAngle(playerid, 180.0);
   SetPVarInt(playerid,"SkinS",1);
   SetPlayerSkin(playerid,Skinman[CurPlayerSkin[playerid]]);
}

вот действие клавиш
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(GetPVarInt(playerid,"SkinS") == 1)
{
if(newkeys == KEY_ANALOG_LEFT)
{
CurPlayerSkin[playerid] = (CurPlayerSkin[playerid] < 16) ? CurPlayerSkin[playerid] + 1 : 0;
SetPlayerSkin(playerid,Skinman[CurPlayerSkin[playerid]]);
}
else if(newkeys == KEY_ANALOG_RIGHT)
{
CurPlayerSkin[playerid] = (CurPlayerSkin[playerid] > 0) ? CurPlayerSkin[playerid] - 1 : 15;
SetPlayerSkin(playerid,Skinman[CurPlayerSkin[playerid]]);
}
else if(newkeys == KEY_JUMP) return ShowPlayerDialog(playerid,NULL+1, DIALOG_STYLE_INPUT, "E-mail", "текст:", "ок", "");
}
return 1;
}

X_LeonSДата: Пятница, 21.12.2012, 10:05 | Сообщение # 5395
Группа: I'm V.I.P.
Сообщений: 610
Награды: 8
Город: Барнаул
Репутация: 202
Замечания: 40%
Статус:
Geryy, а как бы сделать чтоб определнный ид ТС так же присваивался игроку, а потом после таймера если надо -респаунился. Как бы сделать?


Мои услуги:
-Качественный мапинг (в данный момент работ нет так как пока всё для своего сервера)
-Скриптинг мелочей
-Разработка сайтов
-Работы в PhotoShop
Обращаться по icq или скайпу!
ICQ - 926048
Skype - x_leons


GeryyДата: Пятница, 21.12.2012, 12:05 | Сообщение # 5396
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Quote (X_LeonS)
а как бы сделать чтоб определнный ид ТС так же присваивался игроку, а потом после таймера если надо -респаунился. Как бы сделать?

Присваивался, всмысле передавался через таймер ID Тс в котором находится игрок или как?



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
X_LeonSДата: Пятница, 21.12.2012, 13:12 | Сообщение # 5397
Группа: I'm V.I.P.
Сообщений: 610
Награды: 8
Город: Барнаул
Репутация: 202
Замечания: 40%
Статус:
Geryy, да уже все , сделал .))


Мои услуги:
-Качественный мапинг (в данный момент работ нет так как пока всё для своего сервера)
-Скриптинг мелочей
-Разработка сайтов
-Работы в PhotoShop
Обращаться по icq или скайпу!
ICQ - 926048
Skype - x_leons


artemganin1999Дата: Пятница, 21.12.2012, 14:37 | Сообщение # 5398
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Quote (artemganin1999)
а вот как это вообще сделать, я не говорю изменить, я в общем я просто уже хз как я по разному делал, везде искал и толку 0

блин что делать

MaxДата: Пятница, 21.12.2012, 20:14 | Сообщение # 5399
Уверенный в себе
Группа: Продвинутые
Сообщений: 172
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
[bgcolor=blue]public Keys()
{
new keys, updown, leftright, playerid;
new Float:x, Float:y, Float:z, Float:angle;
for (playerid = 0; playerid < MAX_PLAYERS; playerid++) {
if (IsPlayerConnected(playerid)) {
GetPlayerKeys(playerid, keys, updown, leftright);
if (keys & KEY_ACTION && IsPlayerInAnyVehicle(playerid)) {
if (!keydown[playerid]) {
keydown[playerid] = true;
if (rampid[playerid] == -1) {
GetPlayerPos(playerid, x, y, z);
angle = GetXYInFrontOfPlayer(playerid, x, y, GetOptimumRampDistance(playerid));
switch (playerramptypes[playerid]) {
case 2:
{
angle -= 90.0;
if (angle < 0.0) angle += 360.0;
z += 0.5;
}
case 1:
{z -= 0.5;
}
}
rampid[playerid] = CreateObject(ramptypes[playerramptypes[playerid]], x, y, z - 0.5, 0.0, 0.0, angle);
SetTimerEx("RemoveRamp", 2000, 0, "d", playerid);
}
}
} else keydown[playerid] = false;
}
}
}[/bgcolor]

ВОПРОС: Как сделать чтобы трамплин вызывалься только на отдельных id транстпорта? Какое условие if нужно?

artemganin1999Дата: Пятница, 21.12.2012, 20:54 | Сообщение # 5400
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
mda sorry
Поиск:





 


 


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