 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Скриптинг Vice-City MP Вопрос-Ответ
| |
| Relax | Дата: Четверг, 24.06.2010, 02:02 | Сообщение # 1 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Будем решать все проблемы по скриптингу вместе =) Начнём с меня... Есть у меня к примеру команда Code if(strcmp(cmd, "givemoney", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /c givemoney [playerid/PartOfName] [money]"); return 1; } new playa; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } new money; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /c givemoney [playerid/PartOfName] [money]"); return 1; } money = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 104) { ResetPlayerMoney(playa); GiveMoney(playa, money); printf("AdmCmd: %s set %s to $%d",sendername, giveplayer, money); } return 1; } вот так выглядит проверка на нахождение ника в строке Code public IsStringAName(string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) { new testname[MAX_PLAYER_NAME]; GetPlayerName(i, testname, sizeof(testname)); //printf("IsS:testname = %s : string = %s",testname,string); if((strcmp(testname, string, true, strlen(string)) == 0)) { //printf("TRUE IsS:testname = %s : string = %s",testname,string); return 1; } } } return 0; } Проблема в том, что если я пишу ид а не ник игрока, то сервак ложиться. Застряёт именно на проверки "ник или ид". Если убрать проверку на ник, а брать только по ид, то работает, но мне хотелось бы чтобы работало и так и так. Кто что подскажет?
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
Сообщение отредактировал Relax - Четверг, 24.06.2010, 02:03 |
| |
|
|
| ymon | Дата: Четверг, 24.06.2010, 08:57 | Сообщение # 2 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| ну есть же стандартная функция Code stock FindPlayerIDFromString(string[]) { new MessageString[256]; new player = INACTIVE_PLAYER_ID; new p = 0; while (p < MAX_PLAYERS) { if (strfind(PlayerName(p),string,true) != -1) { player=p;break; } p++; } if (player == INACTIVE_PLAYER_ID) { if ((strlen(string) > 2) || !(IsNumeric(string))) { format(MessageString,sizeof(MessageString),"Unable to find %s.",string); SendClientMessageToAll(COLOR_GREY, MessageString); return INACTIVE_PLAYER_ID; } player = strval(string); } if (!IsPlayerConnected(player)) { format(MessageString,sizeof(MessageString),"Invalid ID %d.",player); SendClientMessageToAll(COLOR_GREY, MessageString); return INACTIVE_PLAYER_ID; } return player; } Решил сделать тему Помощи по геим текстам, но к сожелению не создаёться.. напишу здесь Все допоолнительные коды геим текстов : ~t~ - Салатовый (Обычный для GameTextForPlayerBottom/GameTextForAllBottom)http://xmages.net/storage/10/1/0/2/2/upload/0b79340a.png ~b~ - Синий http://xmages.net/storage/10/1/0/2/2/upload/e44186d5.png ~h~ - Белый http://xmages.net/storage/10/1/0/2/2/upload/90fc769d.png ~w~ - Серый http://xmages.net/storage/10/1/0/2/2/upload/36ccfba5.png ~o~ - Красный http://xmages.net/storage/10/1/0/2/2/upload/459795fa.png ~p~ - Фиолетовый http://xmages.net/storage/10/1/0/2/2/upload/cae7b602.png ~q~ - Розово-Серый http://xmages.net/storage/10/1/0/2/2/upload/fd3067e8.png ~r~ - Розовый (Обычный для GameTextForPlayer/GameTextForAll) http://xmages.net/storage/10/1/0/2/2/upload/361423aa.png ~x~ - Грязно-голубой http://xmages.net/storage/10/1/0/2/2/upload/81eff7c2.png ~y~ - Жёлтый http://xmages.net/storage/10/1/0/2/2/upload/ace977ca.png
Site - http://ymon.ispvds.com/
|
| |
|
|
| Relax | Дата: Четверг, 24.06.2010, 14:16 | Сообщение # 3 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Стандартный не читает ник с строки, проверял... Хотелось бы как-то свой уже код поправить...
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
Сообщение отредактировал Relax - Четверг, 24.06.2010, 14:17 |
| |
|
|
| ymon | Дата: Пятница, 25.06.2010, 13:11 | Сообщение # 4 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| ну тогда незнаю, завтра попро6ую написать ра6очий, щас не могу кава сомаась  Добавлено (25.06.2010, 13:11) --------------------------------------------- вот сделал... но всёравно когда пишешь неправельное имя/ид сервер выкидывает.... я уже хз почему воть Code stock FindPlayerIDFromString(playerid,string[]) { new Player = 255, i = 0, MessString[256]; while (i <= MAX_PLAYERS){if(strfind(PlayerName(i),string,true) != -1){Player = i;break;}i++;} if (Player == 255) { if ( (strlen(string) > 2) || (!IsNumeric(string)) ) { format(MessString,sizeof(MessString),"Unable to find %s",string); SendClientMessage(playerid, COLOR_MAIN, MessString); return 255; } Player = strval(string); } if (!IsPlayerConnected(Player)) { format(MessString,sizeof(MessString),"Playerid %d Not Connected",Player); SendClientMessage(playerid, COLOR_MAIN, MessString); return 255; } return Player; }
Site - http://ymon.ispvds.com/
|
| |
|
|
| Relax | Дата: Суббота, 26.06.2010, 00:09 | Сообщение # 5 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Вот и я не пойму... Хоть в стандарте, хоть в моих функциях, если указываешь проверять только по нику или только по ид, то всё норм. А если ставишь проверять по нику, и если не ник то по ид, то сервак решит. Мб что-то в серве? У меня эти функции под са-мп пашут на ура.
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
Сообщение отредактировал Relax - Суббота, 26.06.2010, 00:10 |
| |
|
|
| ymon | Дата: Суббота, 26.06.2010, 04:42 | Сообщение # 6 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| сервак конечно да, он и так ели дышет, он даж таймеры в фс запускать не хочет... может действительно сервак ибо он минимально оптимизирован, и любая нагрузка на него и креш.
Site - http://ymon.ispvds.com/
|
| |
|
|
| Relax | Дата: Воскресенье, 27.06.2010, 20:24 | Сообщение # 7 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Кстати, я вот уже написал достаточно много кода и на протяжении написания заметил кучу багов с функциями.. GivePlayerMoney - функция просто не работает CreateVehicle - создаёт машину, но увидеть можно только после перезахода на серв ResetPlayerMoney - не работает PutPlayerInVehicle и PutDirectlyInVehicle абсолютно одинаковые функции. Зачем это нужно? Кроме того они не работают если ты уже в машине. SetVehiclePos - не работает если вы сидите в этой машине Багов очень много... Остаётся надеятся на вс-мп 0.4
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
| |
|
|
| ymon | Дата: Понедельник, 28.06.2010, 05:49 | Сообщение # 8 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| я тож видел что эти фун-и не рабят, про GivePlayerMoney незнал.. ещё не работает SetPlayerSkin не думаю что 0.4 вобще выйдет ибо форум закрыли и видео о бетатестах убрали.
Site - http://ymon.ispvds.com/
|
| |
|
|
| Relax | Дата: Понедельник, 28.06.2010, 14:58 | Сообщение # 9 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Он то выйдет, просто не так быстро. Их ддосят ) Неужели под вс-мп больше кодеров нет? Мы только тут вдвоём в теме
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
Сообщение отредактировал Relax - Понедельник, 28.06.2010, 14:59 |
| |
|
|
| ymon | Дата: Среда, 30.06.2010, 13:46 | Сообщение # 10 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| Точно хз, но кажеться ещё окстайл павнил в вайсе
Site - http://ymon.ispvds.com/
|
| |
|
|
| Relax | Дата: Пятница, 02.07.2010, 01:59 | Сообщение # 11 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Так-с, ну вот ещё пару печальных новостей. Функции SetVehicleDoorsStatus(vehicleid,bool); SetVehicleTyre(vehicleid,bool); SetVehicleAlarm(vehicleid,bool); SetVehicleLights(vehicleid,bool); не работают... SetVehiclePos работает криво... если раз машину переместил, то в игре её уже никак нельзя переместить через SetVehiclePos В общем всё очень печально.
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
| |
|
|
| Relax | Дата: Суббота, 03.07.2010, 22:28 | Сообщение # 12 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Кстати, если кому интересно... нашёл нормальную вики для вс-мп http://famp.ru/wiki/Main_Page
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
| |
|
|
| ymon | Дата: Среда, 21.07.2010, 13:17 | Сообщение # 13 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 77
Награды: 5
Город: Комсомольск
Репутация: 21
Замечания: 0%
Статус: 
| Во спс за ссыль, пригодиться) Добавлено (21.07.2010, 13:17) --------------------------------------------- http://forum.vicecitymultiplayer.com/index.php?topic=2034 
Site - http://ymon.ispvds.com/
|
| |
|
|
| Sаint | Дата: Пятница, 23.07.2010, 08:33 | Сообщение # 14 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 316
Награды: 10
Город: Rossosh
Репутация: 110
Замечания: 0%
Статус: 
| Quote (Relax) Кстати, если кому интересно... нашёл нормальную вики для вс-мп http://famp.ru/wiki/Main_Page это официальная их Wiki ссылка доступна на форуме, я тоже пробовал писать мод, но всё очень сыро и багнуто поэтому перестал, потом был на паблик бета тесте 0.4 понравилось на много больше чем са-мп 0.3а, печально только что в вс-мп нет поддержки возможности писать в чат русский текст, только английский и команды как-то не привычно после са-мп реализованы "/c command"
My profile on vicecitymultiplayer.com My profile on sa-mp.com Public Enemy No.1 - ULTIMATE Группа сервера в ВКонтакте
Vice City Multiplayer
|
| |
|
|
| Relax | Дата: Суббота, 24.07.2010, 03:48 | Сообщение # 15 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус: 
| Sаint, Когда я дал ссылку, то офф сайт и форум не работал. Поэтому я написал если кто не знает. По поводу мода... я на 75% сделал и забил. Функции криво работают либо вообще не работают. В общем я уже говорил тебе... "/c command" они пофиксят, да и много другого тоже
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
| |
|
|
|
 |
|
 | |
| |
|