• У форума будет новый домен? Да, мы далеко уже не только игровой форум Подробнее...
Иконка ресурса

Output Info 2020-03-20

Нет прав для скачивания
Исходное расширение позволяло вам получать информацию о выходных действиях сущностей,
Исходное расширение позволяло вам получать информацию о выходных действиях сущностей, но было ограничено в том смысле, что оно позволяло только читать их, не изменяя их каким-либо образом, поэтому я добавил функциональность, чтобы также позволить вам устанавливать эти значения.

Я также добавил Insert / RemoveOutputAction, но эти 2 натива в настоящее время работают только в CS: GO для окон. Это потому, что им нужно немного игровых данных для достижения без утечки памяти. Получение игровых данных было достаточно плохим с учетом всех вложений в Windows, и я не могу проверить их на Linux.
Не стесняйтесь вносить свой вклад, добавляя игровые данные для других игр / систем или предлагая способ сделать это без использования игровых данных. Кроме этих двух туземцев, расширение должно работать на любой игре.

Каковы действия выхода объекта?

^ Basically this stuff

поля:
"OnTrigger" - The output
"!activator" - The target, in this context means apply this action to activator
"AddOutput" - Target input, what action to call
"gravity -0.5" - Parameter, value passed into 'AddOutput'
"0.00" - Delay in seconds before applying this action
"No" - Times to fire, in this context 'No' means fire indefinitely

Пример плагина:
Вот простой пример плагина, который изменяет trigger_multiples, который устанавливает вашу гравитацию на 1, так что вместо этого они устанавливают вашу гравитацию на 0.5

PHP:
#include <sourcemod>
#include <sdktools>
#include <outputinfo>

public void OnPluginStart()
{
    HookEvent( "round_start", Event_RoundStartPost );
}

public void Event_RoundStartPost( Event event, const char[] name, bool dontBroadcast )
{
    // loops through all trigger_multiple and change any 'gravity 1' parameters into 'gravity 0.5'
    int ent = -1;
    while( ( ent = FindEntityByClassname( ent, "trigger_multiple" ) ) != -1 )
    {
        int count = GetOutputActionCount( ent, "m_OnTrigger" );
        for( int i = 0; i < count; i++ )
        {
            char buffer[32];
            GetOutputActionParameter( ent, "m_OnTrigger", i, buffer, sizeof( buffer ) );
            
            if( StrEqual( buffer, "gravity 1" ) )
            {
                SetOutputActionParameter( ent, "m_OnTrigger", i, "gravity 0.5" );
            }
        }
    }
}

Changelog:
- Added "times to fire" field
- Added setters for all of the action fields
- Added insert/remove action natives (CS:GO windows only)

Запланированные:
- Change the bool return to instead throw an error when an action index is out of bounds
- Make EventAction methodmaps for sexier syntax
  • Мне нравится
Реакции: hirowatch
Автор
Cubix
Скачивания
0
Просмотры
169
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя Cubix

Сверху