Написание плагинов

hanson

Участник
Сообщения
303
Реакции
15
AlmazON, ответьте, хотя бы вы мне, можно сделать так, чтобы на карте бегало 20-50 куриц? КСГО
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
на карте бегало 20-50 куриц?
Самих куриц наделать легко, а вот, чтобы бегали - за это карта, скорее, отвечает. У куриц, как и у ботов, есть своя мини-навигационная (ограниченная) сеть, по которой они и бегают.
 
Последнее редактирование:

Hejter

xor ebx, ebx
Сообщения
1,759
Реакции
393

Napas

Участник
Сообщения
832
Реакции
667
Напишите плагин, когда срабатывает на карте spawn kill, чтобы в PrintToChatAll или в PrintHintTextToAll
писало "spawn kill активирован"
 

Napas

Участник
Сообщения
832
Реакции
667
Napas, для чего это нужно?

На MG картах люди не видят что срабатывает spawn kill и просят реснуть через админку, это уже меня начинает бесить, вот хочу чтобы писали или в чат или в hint, что spawn kill активирован, чтобы все видели и не доставали админов :D
 

hanson

Участник
Сообщения
303
Реакции
15
Ребят, прошу написать плагин, который выводит в чат сообщение типа: На сервере x/y игроков при написании команды sm_online. Также прошу подключить csgo colors и фразу вывести в транслит.

Заранее огромное спасибо.
 

Hejter

xor ebx, ebx
Сообщения
1,759
Реакции
393
Ребят, прошу написать плагин, который выводит в чат сообщение типа: На сервере x/y игроков при написании команды sm_online. Также прошу подключить csgo colors и фразу вывести в транслит.

Заранее огромное спасибо.

Инклюды:
[INC] CS:GO Colors (1.4)

Команды:
sm_online


Файл перевода добавлен.
online_players.phrases.txt

Примечание:
Если не хочешь чтобы выводило MaxPlayers (количество слотов на сервере), удали {2} в файле перевода.
 

Вложения

  • Online_Players.rar
    6.6 КБ · Просмотры: 28
Последнее редактирование модератором:

mumuxtarka

Участник
Сообщения
46
Реакции
5
Всем привет. Простой плагин нужен. Если человек введет в консоль больше 20 команд в секунду то его кикнет
 

hanson

Участник
Сообщения
303
Реакции
15
Здравствуйте. Игра - ксго.

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

Также прошу написать плагин, который проигрывает звук игроку, когда он прыгает.

Заранее спасибо.
 

Webman

Nevermind
Сообщения
803
Реакции
330
hanson, пробуй
PHP:
#include <sourcemod>
#include <sdktools>

public OnPluginStart()
{
    HookEvent("player_death", Event_PlayerDeath, EventHookMode_Post);
    HookEvent("player_jump", Event_PlayerJump);
}

public OnConfigsExecuted()
{
    AddFileToDownloadsTable("sound/project/death.mp3"); // путь до звука, который будет проигрываться после смерти
    AddFileToDownloadsTable("sound/project/jumps.mp3"); // путь до звука, который будет проигрываться во время прыжка
}

public OnMapStart()
{
    PrecacheSound("project/death.mp3", true);
    PrecacheSound("project/jumps.mp3", true);
}

public Action:Event_PlayerJump(Handle:event, const String:name[], bool:dontBroadcast)
{
    new client = GetClientOfUserId(GetEventInt(event, "userid"));
    
    EmitSoundToClient(client, "project/jumps.mp3");
}

public Action:Event_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
    new client = GetClientOfUserId(GetEventInt(event, "userid"));
    
    EmitSoundToClient(client, "project/death.mp3");
}
 

Вложения

  • event_sounds.sp
    1.1 КБ · Просмотры: 23

hanson

Участник
Сообщения
303
Реакции
15
Webman, спасибо большое, но у меня не работает. На fastdl залил. Не могли бы вы еще раз написать код, указав следующие пути везде где это необходимо?

sounds/foldermz/other/death.mp3
sounds/foldermz/other/jump.mp3

Заранее спасибо.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
[CS:GO] Звук при смерти и прыжке игрока

у меня не работает
По мне, так и не будет работать. Это для CS:S.
PHP:
#include <sdktools_stringtables>

#define SOUND_DOWNLOAD_DEATH	"sounds/foldermz/other/death.mp3"	//Полный путь звука при смерти игрока
#define SOUND_DOWNLOAD_JUMP		"sounds/foldermz/other/jump.mp3"	//Полный путь звука при прыжке игрока
#define SOUND_PLAY_DEATH		"foldermz/other/death.mp3"		//Проигрываемый звук при смерти игрока
#define SOUND_PLAY_JUMP			"foldermz/other/jump.mp3"		//Проигрываемый звук при прыжке игрока

public OnPluginStart()
{
	HookEvent("player_death", Event_PlayerDeath);
	HookEvent("player_jump", Event_PlayerJump);
}

public OnMapStart()
{
	AddFileToDownloadsTable(SOUND_DOWNLOAD_DEATH);
	AddFileToDownloadsTable(SOUND_DOWNLOAD_JUMP);
}

public Event_PlayerDeath(Handle:event, String:name[], bool:dontBroacast)
ClientCommand(GetClientOfUserId(GetEventInt(event, "userid")), "playgamesound \"*/%s\"", SOUND_PLAY_DEATH);

public Event_PlayerJump(Handle:event, String:name[], bool:dontBroacast)
ClientCommand(GetClientOfUserId(GetEventInt(event, "userid")), "playgamesound \"*/%s\"", SOUND_PLAY_JUMP);
 

White Wolf

🍉
Сообщения
2,382
Реакции
2,187
hanson, код Webman'a не будет работать в cs:go, так как в данной игре используется другой метод воспроизведения звука. К сожалению разработчики sourcemod никак не впилят этот метод в EmitSoundToClient и подобные ему natives.
В данной статье подробно описано как работать со звуками в cs:go.
 

DarklSide

Участник
Сообщения
931
Реакции
468
в данной игре используется другой метод воспроизведения звука. К сожалению разработчики sourcemod никак не впилят этот метод в EmitSoundToClient

hanson, переименоваем файлы:

death.mp3 -> deaths.mp3
jump.mp3
-> jumps.mp3

Кидаем на fastdl (либо там их переименоваем).

PHP:
#include <sdktools_sound>
#include <sdktools_stringtables>
#pragma newdecls required
static const char s_Death[] = "*/foldermz/other/deaths.mp3";
static const char s_Jump[] = "*/foldermz/other/jumps.mp3";
public void OnPluginStart()
{
    HookEvent("player_death", Event_OnPlayerDeath);
    HookEvent("player_jump", Event_OnPlayerJump);
}
public void OnConfigsExecuted()
{
    PrecacheSound(s_Death, true);
    AddFileToDownloadsTable("sound/foldermz/other/deaths.mp3");
    PrecacheSound(s_Jump, true);
    AddFileToDownloadsTable("sound/foldermz/other/jumps.mp3");
}
public void Event_OnPlayerDeath(Event event, const char[] name, bool dontBroadcast)
{
    EmitSoundToClient(GetClientOfUserId(event.GetInt("userid")), s_Death);
}
public void Event_OnPlayerJump(Event event, const char[] name, bool dontBroadcast)
{
    EmitSoundToClient(GetClientOfUserId(event.GetInt("userid")), s_Jump);
}
 
Последнее редактирование:

hanson

Участник
Сообщения
303
Реакции
15
AlmazON, спасибо большое. Все работает.

White Wolf, если бы я знал, как по статьям писать плагины, я бы не обращался на этот форум.
 
Сверху Снизу