Перейти к содержимому


Фотография

Единая тема для поиска плагинов L4D

поиск плагин помогите найти

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 1451

#221 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 14 Март 2017 - 14:37

Да ладно спасибо не буду заморачиваться по этому поводу. Достаточно этого будет. Спасибо. Я просто с первой частью мало знаком. Во второй больше возможностей. Но помогаю собрать сервер человеку. Вот и эта была моя главная проблема это на старте чтобы все не ломились. Во второй у меня немного по другому сделано.

Вот попробуй, Vitamin и AlmazON в общий вклад вкинули с таймером.

Прикрепленные файлы



#222 Tagil020

Tagil020

    Участник

  • Пользователь
  • PipPip
  • 117 сообщений

Отправлено 14 Март 2017 - 15:46

Вот попробуй, Vitamin и AlmazON в общий вклад вкинули с таймером.

Да работает. Благодарю!



#223 Vitamin

Vitamin

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 492 сообщений

Отправлено 14 Март 2017 - 16:01

	HookEvent("mission_lost", OnReset, EventHookMode_Pre);
	HookEvent("map_transition", OnReset, EventHookMode_Pre);

Зачем тут Pre перехват ? Так как в событии не берётся никаких данных то нужен EventHookMode_PostNoCopy

public Action Event_Player_Spawn(Event event, const char[] name, bool dontBroadcast)

Тут нужен void,а не Action, так как мы ничего не блокируем (Plugin_Handled или не блокируем Plugin_Continue)

CreateTimer(5.0, MOVETYPENONE, GetClientOfUserId(GetEventInt(event, "userid")), TIMER_FLAG_NO_MAPCHANGE);

Простой передавай UserId, а в CallBack уже извлечешь ClientIndex с проверкой на валидность (писал же)

К тому же зачем вообще его передавать если у тебя в параметрах нету ClientIndex:

public Action MOVETYPENONE(Handle timer)

Совет: Никогда не обозначай верхней табуляцией функции (это еще для #define-констант можно)

 

Еще есть кое что но пока и этого хватит



#224 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 14 Март 2017 - 18:32

	HookEvent("mission_lost", OnReset, EventHookMode_Pre);
	HookEvent("map_transition", OnReset, EventHookMode_Pre);

Зачем тут Pre перехват ? Так как в событии не берётся никаких данных то нужен EventHookMode_PostNoCopy

 

Да забыл исправить что перехватываем без каких либо данных, скопировал в чужом плагине и все. (лень было события искать)


public Action Event_Player_Spawn(Event event, const char[] name, bool dontBroadcast)

Тут нужен void,а не Action, так как мы ничего не блокируем (Plugin_Handled или не блокируем Plugin_Continue)

 

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

CreateTimer(5.0, MOVETYPENONE, GetClientOfUserId(GetEventInt(event, "userid")), TIMER_FLAG_NO_MAPCHANGE);

Простой передавай UserId, а в CallBack уже извлечешь ClientIndex с проверкой на валидность (писал же)

К тому же зачем вообще его передавать если у тебя в параметрах нету ClientIndex:

public Action MOVETYPENONE(Handle timer)

Да ну это надо "Handle" использовать с [MAXPLAYERS+1] потом еще передавать:

public Action Timer_Welcome(Handle hTimer, any UserId)
{
    int iClient = GetClientOfUserId(UserId);

Хочешь исправляй мне лень =).

Меня интересует как "унхуке" сбрасывать если команда проиграла, break; с циклом не помогает, тебе про это что нибудь известно?


А это не дело, я не знаю почему ты на это внимание не обратил

public Action OnReset(Event event, const char[] name, bool dontBroadcast)
{
	for (int i = 1; i <= MaxClients; ++i)
	{
		if (IsClientInGame(i))
		{
			Player_Spawn_Stop = false;
			ServerCommand("sm_rcon sm plugins reload l4d_move_type_none.smx");
		}
	}
}


#225 Vitamin

Vitamin

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 492 сообщений

Отправлено 14 Март 2017 - 20:23

Зачем вообще сбрасывать Event (я логики не вижу в этом), используй глобальную переменную типа boolean и используй её при проверке события.



#226 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 14 Март 2017 - 21:22

Зачем вообще сбрасывать Event (я логики не вижу в этом), используй глобальную переменную типа boolean и используй её при проверке события.

После хука и унхука события, например команда проиграла события больше не хукается (оно так и остается унхукнутым). С одной стороны это будет полезно, команда проиграла карта перезагрузилась игроки уже все сразу подключены ждать не надо. Но мне как бы вообщем нужен код как вообще унхук сбрасывать. Вот в данный момент я знаю только один вариант перезагружать плагин и все.



#227 Vitamin

Vitamin

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 492 сообщений

Отправлено 14 Март 2017 - 21:23

Не пользуюсь вообще этим, поэтому даже не подскажу 



#228 Tagil020

Tagil020

    Участник

  • Пользователь
  • PipPip
  • 117 сообщений

Отправлено 15 Март 2017 - 2:27

Подскажите есть ли в первой части сохранение оружия аптек и так далее в режиме afk?



#229 Mr_keri1

Mr_keri1

    Участник

  • Пользователь
  • PipPip
  • 51 сообщений

Отправлено 15 Март 2017 - 17:02

Подскажите есть ли в первой части сохранение оружия аптек и так далее в режиме afk?

https://forums.allie...ad.php?t=288689 Возможно оно



#230 Tagil020

Tagil020

    Участник

  • Пользователь
  • PipPip
  • 117 сообщений

Отправлено 15 Март 2017 - 18:51

https://forums.allie...ad.php?t=288689 Возможно оно

Нет к сожалению не оно!


Сообщение отредактировал Tagil020: 15 Март 2017 - 19:37


#231 Ren89

Ren89

    Пользователь

  • Пользователь
  • PipPipPip
  • 291 сообщений

Отправлено 16 Март 2017 - 16:48

Подскажите есть ли в первой части сохранение оружия аптек и так далее в режиме afk?

В публичном доступе нету, думаю подойдет и с л4д2, но переписывать надо.

И "переписывать", не совсем точное определение того, что нужно сделать.

А нужно распотрошить плагин с л4д2 - там много лишнего, в л4д1 всё намного проще.

Например, лазер и разрывные патроны в л4д1 привязаны к игроку, а в л4д2 к оружию, а значит учитывать эти вещи в сохранении не нужно и т.д.


есть плагин на двойной инвентарь

сохранение оружия там есть, но это не основная функция плагина и реализовано оно не идеально

но как пример различия способа сохранения оружия в л4д2 и л4д1, подойдёт



#232 Tagil020

Tagil020

    Участник

  • Пользователь
  • PipPip
  • 117 сообщений

Отправлено 16 Март 2017 - 17:12

В публичном доступе нету, думаю подойдет и с л4д2, но переписывать надо.

И "переписывать", не совсем точное определение того, что нужно сделать.

А нужно распотрошить плагин с л4д2 - там много лишнего, в л4д1 всё намного проще.

Например, лазер и разрывные патроны в л4д1 привязаны к игроку, а в л4д2 к оружию, а значит учитывать эти вещи в сохранении не нужно и т.д.


есть плагин на двойной инвентарь

сохранение оружия там есть, но это не основная функция плагина и реализовано оно не идеально

но как пример различия способа сохранения оружия в л4д2 и л4д1, подойдёт

Спасибо за информацию! Мне главное понять работает или нет, хорошо у меня есть от второй части сейчас гляну. Благодарю!



#233 Figa

Figa

    Участник

  • Пользователь
  • PipPip
  • 63 сообщений

Отправлено 18 Март 2017 - 1:35

После хука и унхука события, например команда проиграла события больше не хукается (оно так и остается унхукнутым). С одной стороны это будет полезно, команда проиграла карта перезагрузилась игроки уже все сразу подключены ждать не надо. Но мне как бы вообщем нужен код как вообще унхук сбрасывать. Вот в данный момент я знаю только один вариант перезагружать плагин и все.

 

Вот такой вариант без анхука.

Прикрепленные файлы



#234 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 18 Март 2017 - 2:27

Вот такой вариант без анхука.

Загадка унхука так и не раскрыта хД=).

Почему не используешь ",_" символ, передача без каких либо данных? И не используешь TIMER_FLAG_NO_MAPCHANGE - Если установлен, таймер будет уничтожен при смене карты.


Да и таймеров многовато, не люблю их много. Хотя на вкус и цвет товарища нет.



#235 Figa

Figa

    Участник

  • Пользователь
  • PipPip
  • 63 сообщений

Отправлено 18 Март 2017 - 15:32

Почему не используешь ",_" символ, передача без каких либо данных? И не используешь TIMER_FLAG_NO_MAPCHANGE - Если установлен, таймер будет уничтожен при смене карты.


Да и таймеров многовато, не люблю их много. Хотя на вкус и цвет товарища нет.

 

Ну, если внимательно посмотреть там передача данных идёт.
Толкать везде TIMER_FLAG_NO_MAPCHANGE, не обязательно. Например, у меня таймер UnLockMove, разблокирует запуск таймеров. Убийство данного таймера сменой картой, оставит b_lockmove = true, что не позволит запустить таймеры повторно.
Стоит использовать с флагом TIMER_REPEAT, но там максимум 25 сек., за это время вряд ли кто-сменит карту. Тут есть ещё над чем подумать.


#236 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 18 Март 2017 - 16:52

 

Стоит использовать с флагом TIMER_REPEAT, но там максимум 25 сек., за это время вряд ли кто-сменит карту. Тут есть ещё над чем подумать.

 

Все ровно есть шанс, что таймер может позже повторно запустится без ",_". Ну это как бы да согласен не обязательный флаг TIMER_FLAG_NO_MAPCHANGE но и лишние убийство таймера не когда не помешает. Для раунд старт можно использовать EventHookMode_PostNoCopy - хукать после того, но без переменных а что тоже может повлиять на таймера.



#237 history_maker

history_maker

    Пользователь

  • Пользователь
  • PipPipPip
  • 328 сообщений

Отправлено 09 Май 2017 - 9:00

Не подскажете плагин для полной настройки оружия, как в файлах left4dead\scripts\weapon_****.txt....2 дня уже рою и ничего кроме плагина на даммаг и ротоблина(который не подходит т.к. у меня кооп) найти не смог(



#238 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 09 Май 2017 - 13:04

Не понял вопроса, ты хочешь оружия расставить дополнительное или убрать с карты?



#239 history_maker

history_maker

    Пользователь

  • Пользователь
  • PipPipPip
  • 328 сообщений

Отправлено 09 Май 2017 - 18:46

Не понял вопроса, ты хочешь оружия расставить дополнительное или убрать с карты?

т.к. у меня на сервере стоит снайперский прицел на всех стволах, от снайперки толку малo. Хочу сделать из снайперки некое подобие авп, тобишь большой даммаг, но низкая скорострельность) на версус серверах через ротоблин (плагин weaponatributes) делают такое, даже анимацию передёргивания затвора после каждого выстрела видел...


Сообщение отредактировал history_maker: 09 Май 2017 - 18:47


#240 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 032 сообщений

Отправлено 10 Май 2017 - 4:14

 анимацию передёргивания затвора после каждого выстрела видел...

Наверно ты про это говоришь https://forums.allie...d.php?p=1913580

 

большой даммаг, 

И наверно ты про это говоришь https://forums.allie...d.php?p=1066911





Темы с аналогичным тегами поиск, плагин, помогите, найти

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных