Teleport

Teleport 1.0.7 (Optimization)

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #1
MrQout добавил(а) новый ресурс:

Teleport - Телепортирование игроков

Данный плагин позволяет вам легко и просто управлять телепортированием игроков.

Присутствует эффект теслы при телепортации, возможно отключить через переменные плагина.
Конфиг находится по пути cfg/sourcemod/Teleport.cfg (Автоматически сгенерируется)

Узнать больше об этом ресурсе...
 

Rimmer

Помогаю новичкам / Переводчик / Тестер / Заказчик
Сообщения
1,368
Реакции
753
Можно как то сделать так что бы меня телепортировала туда где закончился раунд?

То есть например мне надо что то настроить на карте, но как то не хочется все время убирать ограждения и иди туда куда надо, просто как нибудь Вкл/Выкл данную функцую и все, то есть Вкл запоминает твои координаты и телепортирует в следующим раунде туда где ты был, ну и Выкл выключает это.
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #3
Можно как то сделать так что бы меня телепортировала туда где закончился раунд?

То есть например мне надо что то настроить на карте, но как то не хочется все время убирать ограждения и иди туда куда надо, просто как нибудь Вкл/Выкл данную функцую и все, то есть Вкл запоминает твои координаты и телепортирует в следующим раунде туда где ты был, ну и Выкл выключает это.
В будущем постараюсь реализовать, но в планах нету чтобы был конфиг и прочее под 2+ координат, 1 координата которую можно изменять и работать будет лишь пока карта идет.
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #4
MrQout обновил(а) ресурс Teleport новой записью:

Новые возможности

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

Узнать больше об этом обновлении...
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #5
MrQout обновил(а) ресурс Teleport новой записью:

Небольшое обновление + оптимизация

  • Для использования теперь необходимо поставить: CS:GO Colors (Цветной чат)

  • Теперь возможно использовать телепортации с помощью параметров заданных в основную команду sm_teleport
    Примеры использования Вы можете посмотреть в основной теме под спойлером "Примеры использования".

Узнать больше об этом обновлении...
 

-=HellFire=-

Kernel panic - not syncing: Fatal exception
Сообщения
1,394
Реакции
585
Поддержку CSS OB добавь, на ней все прекрасно заводится
Несколько позиций для сохранений тоже добавь
 

DENFER

Пишу плагины за два биг тести и картошку фри..
Сообщения
260
Реакции
289
Хм, плагин интересный. Мельком пробежался в исходниках, почему не работаешь с колизией игроков, когда они телепортируются? Могу предположить, что при mp_solid_teammates 1 они будут застревать в друг друге 🙃
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #9
Хм, плагин интересный. Мельком пробежался в исходниках, почему не работаешь с колизией игроков, когда они телепортируются? Могу предположить, что при mp_solid_teammates 1 они будут застревать в друг друге 🙃
А ведь скорее всего так и будет, что-то не подумал об этом... Завтра проверю и если что по возможности обновлю.
 

I_ExtaZzZ_I

Участник
Сообщения
168
Реакции
57
Тут ошибка появилась, подскажи пожалуйста, как исправить?


L 05/11/2021 - 21:19:00: [SM] Exception reported: Client index 0 is invalid
L 05/11/2021 - 21:19:00: [SM] Blaming: Teleport.smx
L 05/11/2021 - 21:19:00: [SM] Call stack trace:
L 05/11/2021 - 21:19:00: [SM] [0] IsClientInGame
L 05/11/2021 - 21:19:00: [SM] [1] Line 584, C:\Users\Teleport:SelectNextAction_MenuHandler
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #12
Тут ошибка появилась, подскажи пожалуйста, как исправить?


L 05/11/2021 - 21:19:00: [SM] Exception reported: Client index 0 is invalid
L 05/11/2021 - 21:19:00: [SM] Blaming: Teleport.smx
L 05/11/2021 - 21:19:00: [SM] Call stack trace:
L 05/11/2021 - 21:19:00: [SM] [0] IsClientInGame
L 05/11/2021 - 21:19:00: [SM] [1] Line 584, C:\Users\Teleport:SelectNextAction_MenuHandler
В сл. обновление исправится.
Сообщения автоматически склеены:

Хорошо бы добавить анимацию для точек телепортов, анимированных частиц и т.п.
Как реализовано это в плагине:
Хорошо, интересная задумка! В сл. обновление думаю будет готова с возможностью Вкл/Выкл.
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #13
MrQout обновил(а) ресурс Teleport новой записью:

Fix + News

  • Исправлен баг с неверным индексом игрока.
  • Немного подправлен англ. перевод.

  • Добавлены эффекты на сохраненной позиции.
    По стандарту Выключено.
    Чтобы включить пропишите в конфиге плагина: sm_teleport_effect2_enable 1.0

Узнать больше об этом обновлении...
 

I_ExtaZzZ_I

Участник
Сообщения
168
Реакции
57
Подскажи пожалуйста, как поправить ошибку?

L 06/01/2021 - 17:20:47: [SM] Exception reported: Client index 0 is invalid
L 06/01/2021 - 17:20:47: [SM] Blaming: admin_teleport.smx
L 06/01/2021 - 17:20:47: [SM] Call stack trace:
L 06/01/2021 - 17:20:47: [SM] [0] IsClientConnected
L 06/01/2021 - 17:20:47: [SM] [1] Line 619, C:\Users\scripting\teleport.sp::SelectNextAction_MenuHandler
 

-=HellFire=-

Kernel panic - not syncing: Fatal exception
Сообщения
1,394
Реакции
585
Подскажи пожалуйста, как поправить ошибку?

L 06/01/2021 - 17:20:47: [SM] Exception reported: Client index 0 is invalid
L 06/01/2021 - 17:20:47: [SM] Blaming: admin_teleport.smx
L 06/01/2021 - 17:20:47: [SM] Call stack trace:
L 06/01/2021 - 17:20:47: [SM] [0] IsClientConnected
L 06/01/2021 - 17:20:47: [SM] [1] Line 619, C:\Users\scripting\teleport.sp::SelectNextAction_MenuHandler
Убери IsClientConnected проверку

@MrQout А зачем юзать if (IsClientConnected(i) && IsClientInGame(i) когда первое включает второе и наоборот, но использовать лучше второе.
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
Посмотрел код немного: чистить нужно много.
Как я понял ты создаёшь теслу, но не удаляешь. Привет падения сервера при частых прыжках на картах с большим количеством энтити: lifetime_min и lifetime_max задают время жизни разрядов, но не этой энтити.

Вместо велосипеда GetClient() можно было задействовать родную функцию SM FindTarget()

menu.SetTitle()
поддерживает форматирование и для этого не нужно использовать Format() перед вызовом этой функции.
Кроме того имеет смысл использовать FormatEx(), если в качестве параметров не используется целевая строка. Будет чуть быстрее

В menu.AddItem() не нужно указывать флаг ITEMDRAW_DEFAULT, потому что это дефолтное значение этого параметра у функции.
Если используешь переводы с помощью %t через Format() или FormatEx(), то нужно предварительно вызвать SetGlobalTransTarget() с индексом игрока, которому адресуется перевод, в качестве параметра.

При объявлении переменных не нужно им присваивать значение (bool - false, int - 0, float - 0.0, Handle - INVALID_HANDLE или null), т.к. SP - не плюсы и в SM1.8+ компилятор сам подставляет эти дефолтные значения при создании переменной.

Ещё плагин заточен сугубо под КСГО (переводы использует цвета КСГО, большая часть которых отсутствует в других играх), хотя должен работать везде, где работает sdktools.
И вообще цвета нужно было как минимум вынести из кода в переводы ("Prefix" поменять с "[Teleport]" на "{BLUE}[Teleport] {DEFAULT}").

Ну а вот это это вообще смехота: g_b* = view_as<bool>(GetConVarInt(cvar));
Есть же GetConVarBool()

Ну и для чего делать Format(szPathEffect1, sizeof(szPathEffect1), "particle/smokestack.vmt"); при старте плагина, когда можно сделать эту строку константой?

Кроме того менюшки можно создать раз при старте плагина, а потом просто при отправке игроку поправлять перевод под адресата через MenuAction_Display (название меню) и MenuAction_DisplayItem (пункты меню).
Главное добавить их в параметры меню при его создании.
 
Последнее редактирование:

Pianyy

Участник
Сообщения
62
Реакции
12
Хотелось бы попросить добавить проверку MASK_PLAYERSOLID, как это сделано в [VIP] AIM teleport 1.0.1
Дабы игроки телепортирующиеся по прицелу, не застревали в стенах.

Плюсом еще при телепортирование на сохраненную позицию, игрока поворачивает в том направлении, в котором оно было сохранено, а так же прицел улетает ровно в 90 градусов, может как-нибудь можно убрать, чтобы игрок при телепортирование смотрел в ту сторону в которой был до телепорта.
 
Последнее редактирование:

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #18
Посмотрел код немного: чистить нужно много.
Как я понял ты создаёшь теслу, но не удаляешь. Привет падения сервера при частых прыжках на картах с большим количеством энтити: lifetime_min и lifetime_max задают время жизни разрядов, но не этой энтити.

Вместо велосипеда GetClient() можно было задействовать родную функцию SM FindTarget()

menu.SetTitle()
поддерживает форматирование и для этого не нужно использовать Format() перед вызовом этой функции.
Кроме того имеет смысл использовать FormatEx(), если в качестве параметров не используется целевая строка. Будет чуть быстрее

В menu.AddItem() не нужно указывать флаг ITEMDRAW_DEFAULT, потому что это дефолтное значение этого параметра у функции.
Если используешь переводы с помощью %t через Format() или FormatEx(), то нужно предварительно вызвать SetGlobalTransTarget() с индексом игрока, которому адресуется перевод, в качестве параметра.

При объявлении переменных не нужно им присваивать значение (bool - false, int - 0, float - 0.0, Handle - INVALID_HANDLE или null), т.к. SP - не плюсы и в SM1.8+ компилятор сам подставляет эти дефолтные значения при создании переменной.

Ещё плагин заточен сугубо под КСГО (переводы использует цвета КСГО, большая часть которых отсутствует в других играх), хотя должен работать везде, где работает sdktools.
И вообще цвета нужно было как минимум вынести из кода в переводы ("Prefix" поменять с "[Teleport]" на "{BLUE}[Teleport] {DEFAULT}").

Ну а вот это это вообще смехота: g_b* = view_as<bool>(GetConVarInt(cvar));
Есть же GetConVarBool()

Ну и для чего делать Format(szPathEffect1, sizeof(szPathEffect1), "particle/smokestack.vmt"); при старте плагина, когда можно сделать эту строку константой?

Кроме того менюшки можно создать раз при старте плагина, а потом просто при отправке игроку поправлять перевод под адресата через MenuAction_Display (название меню) и MenuAction_DisplayItem (пункты меню).
Главное добавить их в параметры меню при его создании.
По возможности постараюсь исправить.
 

MrQout

~[C0d3z]
Сообщения
314
Реакции
246
  • Автор ресурса
  • #19
MrQout обновил(а) ресурс Teleport новой записью:

Optimization

  • Оптимизирован и плюсом возможные краши исправлены
  • Когда игрок тпается к другому игроку теперь они не будут застревать друг в друге. (Дается 3 сек. чтобы выйти из игрока, ну а если в течение 3 сек игрок не выйдет то они застрянут в друг друге 🙁)

Узнать больше об этом обновлении...
 

odinochnik

Участник
Сообщения
30
Реакции
0
Есть возможность сделать без рут? для других флагов кроме z
 
Сверху Снизу