 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Задать вопрос по SAMP (База знаний)
| |
| SevD | Дата: Четверг, 03.11.2011, 19:04 | Сообщение # 5686 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| xpsoft, ой. Не так прочитал, ща сек Так, объясняю пошагово. Сначала создаем функцию, используя stock вместо forward и public: Code stock Proverka(playerid) Затем создаем проверку на членство/лидерство фракцией. Можно без скобок, главное запомнить как: Code if(PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8) return 1; Что выполняется в противном случае (тоже без скобок, несколько действий в одной строке можно разделять запятой): Code else SendClientMessage(playerid, 0xFF0000AA, "Bы не не член агенства!!!"), return 0; В итоге получено: Code stock Proverka(playerid) { if(PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8) return 1; else SendClientMessage(playerid, 0xFF0000AA, "Bы не не член агенства!!!"), return 0; } Вроде же все понятно
Bye-bye SA-MP 0/ Hello EVE Online ^.^
Сообщение отредактировал SevD - Четверг, 03.11.2011, 19:13 |
| |
|
|
| DrugStyle | Дата: Четверг, 03.11.2011, 19:08 | Сообщение # 5687 |
|
Новенький
Группа:
Пользователи
Сообщений: 23
Награды: 0
Город: Valmiera
Репутация: 0
Замечания: 0%
Статус: 
| Кто нибудь подскажет как сделать нелегальные работы, как бы на английском форуме писал мне сказали то что надо в FS искать я искал и ничего ненашёл?!
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 19:11 | Сообщение # 5688 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| Тогда если тебе не сложно обьясни что и куда сувать.
Смотри.
это в дефайн всё.
Code #define FILTERSCRIPT это в дефайн и это тоже туда же ниже forward lockgate(); #if defined FILTERSCRIPT new gate;
и это в самый низ можно запихнуть?
Code public OnFilterScriptInit() { gate = CreateObject(980,1588.5,-1637.9000244141,14.8,0.00000000,0.00000000,0.00000000); //Вот закрытые воротки print("\n--------------------------------------"); print(" Ворота для САПДА"); print("--------------------------------------\n"); return 1; } stock Proverka(playerid) { if(PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8) return 1; else SendClientMessage(playerid, 0xFF0000AA, "Bы не не член агенства!!!"), return 0; } public OnFilterScriptExit() { return 1; } #endif
public OnPlayerCommandText(playerid, cmdtext[]) { if (!strcmp(cmdtext, "/gate", true)) { if(Proverka(playerid) != 1) return 0; // Прерываем продолжение команды, если игрок не проходит проверку MoveObject(gate,1597.0,-1637.9000244141,14.8, 3.5); //Тут открытые SetTimer("lockgate", 7000, 0); SendClientMessage(playerid, COLOR_YELLOW,"Ворота закроются в течение 7сек, Поторопитесь!"); return 1; } return 0; } public lockgate() { MoveObject (gate,1588.5,-1637.9000244141,14.8, 3.0); //Тут закрытые return 1; }
|
| |
|
|
| SevD | Дата: Четверг, 03.11.2011, 19:19 | Сообщение # 5689 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| xpsoft, короче вот весь код (без акков): Code #include <a_samp> #define COLOR_YELLOW 0xFFFF00AA forward lockgate(); new gate;
public OnFilterScriptInit() { gate = CreateObject(980,1588.5,-1637.9000244141,14.8,0.00000000,0.00000000,0.00000000); //Вот закрытые воротки print("\n--------------------------------------"); print(" Ворота для САПДА"); print("--------------------------------------\n"); return 1; }
public OnFilterScriptExit() { return 1; }
public OnPlayerCommandText(playerid, cmdtext[]) { if (!strcmp(cmdtext, "/gate", true)) { if(Proverka(playerid) != 1) return 0; // Прерываем продолжение команды, если игрок не проходит проверку MoveObject(gate,1597.0,-1637.9000244141,14.8, 3.5); //Тут открытые SetTimer("lockgate", 7000, 0); SendClientMessage(playerid, COLOR_YELLOW,"Ворота закроются в течение 7сек, Поторопитесь!"); return 1; } return 0; }
public lockgate() { MoveObject (gate,1588.5,-1637.9000244141,14.8, 3.0); //Тут закрытые return 1; }
stock Proverka(playerid) { if(PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8) return 1; else SendClientMessage(playerid, 0xFF0000AA, "Bы не не член агенства!!!"), return 0; } Добавлено (03.11.2011, 19:19) --------------------------------------------- DrugStyle, кто тебе объяснит как сделать? Взять и написать самому (либо искать ФС как тебе уже сказали). Тут писать никто не будет бесплатно работы. Либо вырезай откуда-нибудь.
Bye-bye SA-MP 0/ Hello EVE Online ^.^
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 19:19 | Сообщение # 5690 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| ну так и 4 ошибки соответственно если этот код юзать.
Code E:\DOCUME~1\A957~1\0016~1\SAMPRE~1\(8)~1\FILTER~1\lsgate.pwn(41) : error 017: undefined symbol "PlayerInfo" E:\DOCUME~1\A957~1\0016~1\SAMPRE~1\(8)~1\FILTER~1\lsgate.pwn(41) : warning 215: expression has no effect E:\DOCUME~1\A957~1\0016~1\SAMPRE~1\(8)~1\FILTER~1\lsgate.pwn(41) : error 001: expected token: ";", but found "]" E:\DOCUME~1\A957~1\0016~1\SAMPRE~1\(8)~1\FILTER~1\lsgate.pwn(41) : error 029: invalid expression, assumed zero E:\DOCUME~1\A957~1\0016~1\SAMPRE~1\(8)~1\FILTER~1\lsgate.pwn(41) : fatal error 107: too many error messages on one line
вот 41
Code if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1) return 1;
|
| |
|
|
| SevD | Дата: Четверг, 03.11.2011, 19:33 | Сообщение # 5691 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| xpsoft, это, вероятнее всего, из-за отсутствующей системы аккаунтов.
Bye-bye SA-MP 0/ Hello EVE Online ^.^
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 19:37 | Сообщение # 5692 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| да это я понял. тоесть как я понял, ты мне не поможешь сделать без этой системы акков проверку?
|
| |
|
|
| SevD | Дата: Четверг, 03.11.2011, 19:38 | Сообщение # 5693 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| xpsoft, проверка без нее не будет работать, можно сделать для теста небольшую самописную, тупо прибивая к игроку переменную, ради проверки работоспособности кода. Делается так: В твой ФС суй паблик Code public OnPlayerConnect(playerid) { SetPVarInt(playerid,"Cop",1); //Присваиваем игроку переменную Cop со значением 1. return 1; } И изменяем нашу проверку, используя переменную: Code stock Proverka(playerid) { if(GetPVarInt(playerid,"Cop") == 1) return 1; else SendClientMessage(playerid, 0xFF0000AA, "Вы не можете сделать это!"), return 0; }
Bye-bye SA-MP 0/ Hello EVE Online ^.^
Сообщение отредактировал SevD - Четверг, 03.11.2011, 19:46 |
| |
|
|
| Splavka | Дата: Четверг, 03.11.2011, 19:42 | Сообщение # 5694 |
|
Новенький
Группа:
Пользователи
Сообщений: 45
Награды: 1
Город: Якутск
Репутация: -2
Замечания: 0%
Статус: 
| Всем добрый день
Столкнулся с такой проблемой. Арендовал БД MySQL. Перенес все из локальной туда. Сегодня столкнулся с проблемой. Мне нельзя использовать ALTER (прав нету), а поле надо добавить. Подскажите, как добавлять поля без использования ALTER и реально ли это?
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 19:45 | Сообщение # 5695 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| не, а если раскидать твой код по файлу мода. просто я затрудняюсь куда и что пихать.
|
| |
|
|
| SevD | Дата: Четверг, 03.11.2011, 19:47 | Сообщение # 5696 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| xpsoft, сверху я написал как сделать, используя переменную. Она присваивается каждому игроку при входе.
Bye-bye SA-MP 0/ Hello EVE Online ^.^
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 20:02 | Сообщение # 5697 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| хорошо. тогда вот мои действия пошагово. 1) открываю свой мод 2) в форварды добавил
Code stock Proverka(playerid); forward lockgate();
3) Иду в public OnGameModeInit() и там пишу свои ворота
Code gate = CreateObject(980,1588.5,-1637.9000244141,14.8,0.00000000,0.00000000,0.00000000); //Вот закрытые воротки
4) Иду прописывать команду для открытия сюда OnPlayerCommandText(playerid, cmdtext[]
Code { if (!strcmp(cmdtext, "/gate", true)) { if(Proverka(playerid) != 1) return 0; // Прерываем продолжение команды, если игрок не проходит проверку MoveObject(gate,1597.0,-1637.9000244141,14.8, 3.5); //Тут открытые SetTimer("lockgate", 7000, 0); SendClientMessage(playerid, COLOR_YELLOW,"Ворота закроются в течение 7сек, Поторопитесь!"); return 1; } return 0; }
5) Создаю паблик такой в самом конце мода public lockgate()
Code public lockgate() { MoveObject (gate,1588.5,-1637.9000244141,14.8, 3.0); //Тут закрытые return 1; }
6) Осталось добавить эту проверку. Её я вставлю опять же после кода в 4 пункте
Code stock Proverka(playerid) { if(PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8) return 1; else SendClientMessage(playerid, 0xFF0000AA, "Bы не не член агенства!!!"), return 0; }
ТАК ВСЁ?
|
| |
|
|
| SevD | Дата: Четверг, 03.11.2011, 20:07 | Сообщение # 5698 |
|
Группа:
Продвинутые
Сообщений: 456
Награды: 38
Город: Москва
Репутация: 452
Замечания: 0%
Статус: 
| Quote 2) в форварды добавил
Code stock Proverka(playerid);
Зачем? Стоки в форварды добавлять не надо)
Quote 6) Осталось добавить эту проверку. Её я вставлю опять же после кода в 4 пункте Сток можешь сунуть в любую часть мода, в конец, например.
Bye-bye SA-MP 0/ Hello EVE Online ^.^
Сообщение отредактировал SevD - Четверг, 03.11.2011, 20:11 |
| |
|
|
| Молорище | Дата: Четверг, 03.11.2011, 20:08 | Сообщение # 5699 |
|
Молор
Группа:
Продвинутые
Сообщений: 427
Награды: 11
Город: Санкт Петербург
Замечания: 0%
Статус: 
| Quote (Fiskar) Vagrant, NeZ_pwn, вы не поняли)
как поставить только локомотив? Без прицепов?
ПОМОГИТЕ!
Мне нечего делать.
|
| |
|
|
| xpsoft | Дата: Четверг, 03.11.2011, 20:12 | Сообщение # 5700 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 97
Награды: 0
Город: Minsk
Репутация: -19
Замечания: 0%
Статус: 
| так. я пока ужинать отошёл. если тебе не сложно, можно с тобой в скайпе решить проблему, а то мой мозг вынесен?
|
| |
|
|
|
 |
|
 | |
| |
|