У меня была такая задумка, даже часть кода была написана, но мне стало лень этим заниматься.Мог бы кто-нибудь написать плагин который изменяет кол-во денег полученных за убийство определенным оружием?
#pragma semicolon 1
#include <sourcemod>
#include <sdktools>
#include <vip_core>
#pragma newdecls required
public Plugin myinfo =
{
name = "[VIP] Blue Screen of Kill",
author = "johnspade - kleuser",
description = "The plugin fades the screen to transparent blue for a second when you kill someone",
version = "2.0",
url = "http://johnspade.ru"
}
static const char g_sFeature[] = "BlueScreen";
public void VIP_OnVIPLoaded()
{
VIP_RegisterFeature(g_sFeature, BOOL);
}
public void OnPluginStart()
{
HookEvent("player_death", Event_PlayerDeath);
if(VIP_IsVIPLoaded())
{
VIP_OnVIPLoaded();
}
}
public void OnPluginEnd()
{
if(CanTestFeatures() && GetFeatureStatus(FeatureType_Native, "VIP_UnregisterFeature") == FeatureStatus_Available)
{
VIP_UnregisterFeature(g_sFeature);
}
}
void PerformFade(int client, int duration, const int color[4])
{
if(IsPlayerAlive(client) && VIP_IsClientVIP(client) && VIP_IsClientFeatureUse(client, g_sFeature))
{
Handle message = StartMessageOne("Fade", client);
PbSetInt(message, "duration", duration);
PbSetInt(message, "hold_time", 0);
PbSetInt(message, "flags", 0x0001);
PbSetColor(message, "clr", color);
EndMessage();
}
}
public void Event_PlayerDeath(Handle event, const char[] name, bool dontBroadcast)
{
PerformFade(GetClientOfUserId(GetEventInt(event, "attacker")), 600, {0, 0, 255, 90});
}
Есть же такой модуль готовый.Кто может помочь немножко с плагином?
Пробую переделать один плагин под модуль для VIP. Всё сделал, вроде всё работает, но по умолчанию он выключен. Так вот, как бы сделать его включенным по умолчанию?
PHP:#pragma semicolon 1 #include <sourcemod> #include <sdktools> #include <vip_core> #pragma newdecls required public Plugin myinfo = { name = "[VIP] Blue Screen of Kill", author = "johnspade - kleuser", description = "The plugin fades the screen to transparent blue for a second when you kill someone", version = "2.0", url = "http://johnspade.ru" } static const char g_sFeature[] = "BlueScreen"; public void VIP_OnVIPLoaded() { VIP_RegisterFeature(g_sFeature, BOOL); } public void OnPluginStart() { HookEvent("player_death", Event_PlayerDeath); if(VIP_IsVIPLoaded()) { VIP_OnVIPLoaded(); } } public void OnPluginEnd() { if(CanTestFeatures() && GetFeatureStatus(FeatureType_Native, "VIP_UnregisterFeature") == FeatureStatus_Available) { VIP_UnregisterFeature(g_sFeature); } } void PerformFade(int client, int duration, const int color[4]) { if(IsPlayerAlive(client) && VIP_IsClientVIP(client) && VIP_IsClientFeatureUse(client, g_sFeature)) { Handle message = StartMessageOne("Fade", client); PbSetInt(message, "duration", duration); PbSetInt(message, "hold_time", 0); PbSetInt(message, "flags", 0x0001); PbSetColor(message, "clr", color); EndMessage(); } } public void Event_PlayerDeath(Handle event, const char[] name, bool dontBroadcast) { PerformFade(GetClientOfUserId(GetEventInt(event, "attacker")), 600, {0, 0, 255, 90}); }
Да нет. Я точно видел в какой-то теме такой плагин для вип. Не стал его ставить, потому что это у меня по умолчанию для всех включено.@Altaj, нет, там другое. он тоже выключен по умолчанию, я проверял.
хочется своего чуть-чуть)
Всё сделал, вроде всё работает, но по умолчанию он выключен. Так вот, как бы сделать его включенным по умолчанию?
/**
* Устанаваливает значение функции по-умолчанию.
* -
* @param sFeatureName Уникальное имя ф-и.
* @param bStatus Значение (true - Включена, false - Выключена).
* -
* @noreturn
*/
native void VIP_SetFeatureDefStatus(const char[] sFeatureName, bool bStatus);
public void VIP_OnFeatureRegistered(const char[] sFeatureName)
{
if (StrEqual(sFeatureName, g_sFeature))
{
VIP_SetFeatureDefStatus(g_sFeature, true);
}
}
Надо inc от 3.0 достать, вдруг там изменили эту функцию!@DarklSide, компелится норм но Native "VIP_SetFeatureDefStatus" was not found
что я делаю не так? плагин вообще отвалился.
если что у меня ядро 3.0
и я не шарю в коде, так балуюсь :D
/**
* Добавляет новую VIP-функцию.
* -
* @param sFeatureName Уникальное имя ф-и.
* @param ValType Тип данных ф-и.
* @param FeatureType Тип ф-и.
* @param Item_select_callback Обратный вызов при смене статуса ф-и.
* @param Item_display_callback Обратный вызов при отображении пункта ф-и .
* @param Item_draw_callback Обратный вызов при отображении стиля пункта ф-и.
* @param bDefStatus Значение по-умолчанию (true - Включена, false - Выключена).
* -
* @noreturn
*/
native void VIP_RegisterFeature(const char[] sFeatureName,
VIP_ValueType ValType = VIP_NULL,
VIP_FeatureType FType = TOGGLABLE,
ItemSelectCallback Item_select_callback = INVALID_FUNCTION,
ItemDisplayCallback Item_display_callback = INVALID_FUNCTION,
ItemDrawCallback Item_draw_callback = INVALID_FUNCTION,
bool bDefStatus = false);
мне это ни о чем не говорит, я же говорю, что не шарюПропусти не нужные параметры, либо вставь их дефолтные значения.