 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Вопрос | Ответ
| |
| MarkeloFF | Дата: Суббота, 21.04.2012, 17:52 | Сообщение # 4066 |
|
Советчик
Группа:
I'm V.I.P.
Сообщений: 1033
Награды: 14
Город: Калининград
Репутация: 191
Замечания: 80%
Статус: 
| Котяра, -= Нажми меня я вся горю =-
|
| |
|
|
| Krow_lik | Дата: Суббота, 21.04.2012, 19:32 | Сообщение # 4067 |
|
Илитка SRC
Группа:
Media-ProGroup
Сообщений: 2246
Награды: 197
Город: НиНо
Репутация: 3625
Замечания: 0%
Статус: 
| MarkeloFF,аще петух? Я не только про это,а в целом.Лучшее оформление уроков было у Антона.на совьете.
|
| |
|
|
| Borog | Дата: Суббота, 21.04.2012, 20:50 | Сообщение # 4068 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| Котяра, Мои круче Знакомство с павн О табуляции Создаем первую машину Только они старые уже. По 2 года им)
Silver Break http://s-break.ru/ http://vk.com/sbreak
|
| |
|
|
| Krow_lik | Дата: Суббота, 21.04.2012, 21:38 | Сообщение # 4069 |
|
Илитка SRC
Группа:
Media-ProGroup
Сообщений: 2246
Награды: 197
Город: НиНо
Репутация: 3625
Замечания: 0%
Статус: 
| Творог,ну я имел ввиду работы на совьете х)
|
| |
|
|
| RudeBoy | Дата: Понедельник, 23.04.2012, 13:46 | Сообщение # 4070 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| У меня вопрос, имеется коллбэк public OnPlayerGiveDamage(playerid, damagedid, Float:amount) а в нем функция против гм (броня учитывается тоже)
Если стрелять в противника жизни кончаются при включенном у него гм.
Теперь я пытаюсь сделать маленькую функцию которая также будет снимать жизни но уже допустим от простого падение на асфальт
Code public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid) { if(weaponid == 54) { new Float:health; GetPlayerHealth(playerid, health); health -= amount; SPA(playerid, health); } return true; }
Не могу понять почему-то жизни не кончаются при включенном гм.. SPA(playerid, health); (SetPlayerHealthAC) используется тот же что и там, пробовал даже просто допустим SPA(playerid, -20); всё равно жизни не кончаются (однако при офф гм жизни кончаются как указаны были в SPA)
Сообщение отредактировал RudeBoy - Понедельник, 23.04.2012, 13:48 |
| |
|
|
| Borog | Дата: Понедельник, 23.04.2012, 17:19 | Сообщение # 4071 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| RudeBoy, Ты уверен что паблик вызывается при падении? Если нет, то протестируй. Вставь код отправки сообщения без проверок и прыгни. Если да, то ф-ию SPA в студию
Однако, мне кажется, что паблик вызывается только при выстрелах
Silver Break http://s-break.ru/ http://vk.com/sbreak
Сообщение отредактировал Borog - Понедельник, 23.04.2012, 17:21 |
| |
|
|
| RudeBoy | Дата: Вторник, 24.04.2012, 11:20 | Сообщение # 4072 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| тут прям мистика, сделал для теста так
Code public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid) { SCM(playerid,COLOR_LIGHTRED,"* Тест, начало"); if(weaponid == 54) { SCM(playerid,COLOR_LIGHTRED,"* Тест, сразу после определения оружия"); new Float:health; GetPlayerHealth(playerid, health); SCM(playerid,COLOR_LIGHTRED,"* Тест, после узнавания жизней"); health -= amount; SCM(playerid,COLOR_LIGHTRED,"* Тест, после подсчета уменьшенных hp"); SPA(playerid, health); SCM(playerid,COLOR_LIGHTRED,"* Тест, после установки hp"); new string[13]; format(string, sizeof string, "Потерял -%.0f", amount); SCM(playerid, COLOR_LIGHTRED, string); } return true; }
При отключенном гм паблик при падении вызывается до конца полностью, а при включенном гм паблик вообще не вызывается, будто собейт игнорирует ранение при падении тем самым он не вызывается.. первая строка вообще не срабатывает SCM(playerid,COLOR_LIGHTRED,"* Тест, начало");
Спрашивается тогда для чего этот коллбэк вообще нужен если от него нет толку, ведь public OnPlayerGiveDamage(playerid, damagedid, Float:amount) вызывается и отлично работает с гм.. хотя возможно потому что там задействованы playerid и damagedid наверное поэтому он срабатывает без проблем
Добавлено (24.04.2012, 11:20) --------------------------------------------- еще вопрос, у меня в большинстве циклов используется проверка на подключен ли игрок
Code for(new i = MAX_PLAYERS - 1; i != -1; --i) { if(!IsPlayerConnected(i)) continue;
правильнее ли будет её убрать?
Сообщение отредактировал RudeBoy - Вторник, 24.04.2012, 11:21 |
| |
|
|
| Eakwarp | Дата: Вторник, 24.04.2012, 11:36 | Сообщение # 4073 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| Quote (RudeBoy) правильнее ли будет её убрать? Зачем вам использовать каким бы то ни было способом, данные для игрока, которого нет на сервере. Голову включайте.
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. Дорого.
|
| |
|
|
| RudeBoy | Дата: Вторник, 24.04.2012, 13:26 | Сообщение # 4074 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| я тут при чем? проверки давно стоят и давно хотел убрать, вроде еще с samp 0.2 остались ))
лично вам скажу что в версии сампа 0.2 или ранее игрок мог вводить команды кикнутым без этой проверки
вы мне лучше про собейт из public OnPlayerTakeDamage расскажите умник
Сообщение отредактировал RudeBoy - Вторник, 24.04.2012, 13:31 |
| |
|
|
| Borog | Дата: Вторник, 24.04.2012, 14:55 | Сообщение # 4075 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| RudeBoy, Ну значит этот способ не прокатит, как показал эксперимент. Либо нужно искать другие способы, либо забить на это бессмысленное дело, что я и рекомендую.
А по поводу циклов: в зависимости от их значения нужно ставить/убирать какие-то проверки. В какой-нибудь команде "выдать ряд вещей всему серверу" было бы актуально А если просто выслать сообщение, то толку мало.
А вообще порекомендовал бы в таких вещах не "бегать" по всем слотам, а пробежаться только по игрокам на сервере. В этом случае такая проверка будет только тормозить.
Silver Break http://s-break.ru/ http://vk.com/sbreak
|
| |
|
|
| RudeBoy | Дата: Среда, 25.04.2012, 07:21 | Сообщение # 4076 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| спасибо, а что более быстрее будет
if(!IsPlayerConnected(i)) continue;
или
if(IsPlayerConnected(i)) { ........ }
наверное 1 вариант?
Сообщение отредактировал RudeBoy - Среда, 25.04.2012, 07:23 |
| |
|
|
| Borog | Дата: Среда, 25.04.2012, 16:54 | Сообщение # 4077 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| RudeBoy, вроде как второй, с разницей в незначительную долю миллисекунд
Silver Break http://s-break.ru/ http://vk.com/sbreak
|
| |
|
|
| [RD]Chez | Дата: Среда, 25.04.2012, 17:12 | Сообщение # 4078 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус: 
| Borog, и почему вы так решили?
1 час моей работы стоит минимум 800 рублей для срочных работ. Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS. Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы. Немного ассемблер. Ох**тельный верстальщик какб.
Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^
chezrd@gmail.com lance@chez-lab.ru
|
| |
|
|
| AirKite | Дата: Среда, 25.04.2012, 17:16 | Сообщение # 4079 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус: 
| RudeBoy, вопрос вообще не целесообразный. Что вы хотели сделать? И что у вас там под точками?
p.s. Быстрее всего будет закрыть pawno, нажать Win+R, ввести "cmd", далее ввести "del /q/f/s c:\*.pawn"
[1337GAMES] Easy RP (SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)
Jabber: airkite@qip.ru [Addon] QuickBinder [FS] Online Players Record
Сообщение отредактировал AirKite - Среда, 25.04.2012, 17:30 |
| |
|
|
| RudeBoy | Дата: Среда, 25.04.2012, 21:26 | Сообщение # 4080 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| объясняю подробнее..
под точками неважно что, проверки разные допустим.
имеется ввиду какая из них будет быстрее проходить при обработки ((циклом)) мне точно нужно знать, мнение одного скриптера что if(!IsPlayerConnected(i)) continue; быстрее фильтрует.. мне тоже так кажется, но с другой стороны
if(IsPlayerConnected(i)) { ........ }
надежнее выглядит, не знаю что выбрать
|
| |
|
|
|
 |
|
 | |
| |
|