Плагин "Пива"Jail Beer Drink

Darksilvers

Участник
Сообщения
35
Реакции
2
Хочу сделать плагин для Jail сервера! Но пришел в тупик!Дело в том что я делал все по уроку который произошел в 2010 году.. Всего 2 урока!Но это не хватает для развития
Вот плагин! Начальный думал по уроку сделать но даже такой простой плагин не под силу..
Смысл:
+При вводе команды "!beer" пишет "Один из охранников подогнал тебе отличного немецкого пива" и дает опьянение при этом забирает 1500$ за бокал
Что сделано:
1.Регистрация команды beer
2.При вводе команды !beer появляется текст
А вот остальное не знаю...Уроков по этому не нашел!..

Вопросы:
1.Как сделать что-бы игрока опьянило? гугл не помог(
2.Как сделать что-бы у игрока забрало денег за ввод команды !beer и опьянило его
3.Если я новичок в скриптинге я правильно сделал что с этого начал?
Сам плагин который не закончен:
PHP:
#include <sourcemod>

public Plugin:myinfo =
{
	name = "Beer Drink",
	author = "FrosT",
	description = "The beer to JailMods",
	version = "1.0.0",
	url = "df"
}

public OnpluginStart()
{
	RegConsoleCmd("beer", Command_Beer);
}

public Action:Command_Beer(client, args)
{
	PrintToChatAll("Один из охранников подогнал тебе отличного немецкого пива.");
	return Plugin_Handled;
}
 
Последнее редактирование:

EPacker2

3D-моделист
Сообщения
1,040
Реакции
759
Re: Первый плагин и тупик!

Во-первых, если ты хочешь, чтобы при написании !beer выводило сообщение, то должно быть так:
PHP:
    RegConsoleCmd("sm_beer", Command_Beer);
Во-вторых, PrintToChatAll выведет сообщение в чат ВСЕМ. Нужно:
PHP:
    for (new client = 1; client <= MaxClients; client++)
    {
         PrintToChat(client, "Один из охранников подогнал тебе отличного немецкого пива.");
    }
 

The End Is Near...

Russian Roulette
Сообщения
874
Реакции
691
Re: Первый плагин и тупик!

На счет денег примерно так:
PHP:
#pragma semicolon 1

#include <sourcemod>
#include <sdktools>

new g_iAccount,
	Handle:cash;

public OnPluginStart()
{
	RegConsoleCmd("beer", Command_Beer);
	
	cash = CreateConVar("sm_cash_beer", "1500", "Цена пива");
	
	g_iAccount = FindSendPropOffs("CCSPlayer", "m_iAccount");
}

public Action:Command_Beer(client, args)
{
	new Cvarcash = GetConVarInt(cash),
		money = GetEntData(client, g_iAccount);
	if (!IsPlayerAlive(client))
	{
		PrintToChat(client, "\x01\x05[SM] \x01Покупка пива разрешена только живым!");
		return Plugin_Handled;
	}
	if (money - Cvarcash > 0)
	{
		SetEntData(client, g_iAccount, money - Cvarcash);
		PrintToChatAll("\x01\x05[SM] \x01Один из охранников подогнал себе отличного немецкого пива.");
// Тут нужно будет вставить создание таймера, по окончании которого будет двигаться экран
		return Plugin_Handled;
	}
	else
	{
		PrintToChat(client, "\x01\x05[SM] \x01Недостаточно наличных для покупки пива");
		return Plugin_Handled;
	}   
    return Plugin_Handled;
}
Смотри плагин FunCommands. Стандартный плагин SM. Там точно найдешь опьянение..
 

Scarface_slv

Участник
Сообщения
222
Реакции
47
Re: Первый плагин и тупик!

Забрать деньги можно так:
PHP:
new cash = GetEntProp(client, Prop_Send, "m_iAccount") - 1500;
if (cash < 0) PrintToChat(client, "У вас не хватает денег");
else SetEntProp(client, Prop_Send, "m_iAccount", cash);
 

KorDen

Atra esterní ono thelduin!
Сообщения
2,142
Реакции
1,424
Re: Первый плагин и тупик!

PrintToChatAll("\x01\x05[SM] \x01Один из охранников подогнал себе отличного немецкого пива.");
Можно вопрос, зачем \x01\x05 в начале писать? Почему не просто \x05 ? Ведь получается что указывается дефолтный цвет, которым ничего не пишется и за которым сразу следует зеленый.
 

The End Is Near...

Russian Roulette
Сообщения
874
Реакции
691
Re: Первый плагин и тупик!

KorDen
1. Так привычнее
2. На случай если он будет использовать несколько цветов
 

FrozDark

Участник
Сообщения
1,769
Реакции
2,050
Re: Первый плагин и тупик!

Можно вопрос, зачем \x01\x05 в начале писать? Почему не просто \x05 ? Ведь получается что указывается дефолтный цвет, которым ничего не пишется и за которым сразу следует зеленый.

поддержка CSGO
 
Сверху Снизу