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

Konstantin

Участник
Сообщения
1,775
Реакции
759
Привет!
Возможно ли сделать выбор нескольких игроков для бана, а потом забанить всех за раз, типа как составление голосования за несколько карт?
Может, это можно сделать в adminmenu_custom?
Оффтоп
 

Lev

Добрая душа
Сообщения
360
Реакции
319
Привет!
Возможно ли сделать выбор нескольких игроков для бана, а потом забанить всех за раз, типа как составление голосования за несколько карт?
Может, это можно сделать в adminmenu_custom?
Оффтоп

Да я тоже согласен. Плагин был бы актуален


вот кому нужен уже написали
http://hlmod.ru/forum/plaginy-dlya-sourcemod/19729-massban.html
 

The End Is Near...

Russian Roulette
Сообщения
874
Реакции
691
diller110
Попробуй еще разок
PHP:
#include <sourcemod>

#define SQL_DatabaseName "Table_JoinCounter"

new Handle:hDataBase = INVALID_HANDLE;

new String:Client_SteamID[MAXPLAYERS + 1][40];

public Plugin:myinfo =
{
	name        = "Join Count",
	author      = "The End Is Near...",
	version     = "1.1",
	url			= "http://world-source.ru/"
};

public OnPluginStart()
{
	decl String:error[1024];
	hDataBase = SQLite_UseDatabase(SQL_DatabaseName, error, sizeof(error));

	if (hDataBase == INVALID_HANDLE)
	{
		SetFailState("Ошибка подключения к базе данных. Имя базы данных: '%s'|| Ошибка: %s", SQL_DatabaseName, error);
	}
	else
	{
		Format(error, sizeof(error), "CREATE TABLE IF NOT EXISTS %s ('Table_ClientSteamID' varchar (256), Table_ClientJoinCount int (20), PRIMARY KEY ('Table_ClientSteamID'));", SQL_DatabaseName);

		if (!SQL_FastQuery(hDataBase, error))
		{
			if (SQL_GetError(hDataBase, error, sizeof(error)))
			{
				SetFailState("Ошибка создания таблицы. Ошибка: %s", error);
			}
		}
	}
}

public OnClientAuthorized(client, const String:auth[])
{
	if (!IsFakeClient(client))
	{
		decl String:query[1024];
		Format(query, sizeof(query), "SELECT Table_ClientJoinCount FROM %s WHERE Table_ClientSteamID = '%s';", SQL_DatabaseName, auth);

		SQL_TQuery(hDataBase, SQL_ConnectPlayer, query, client);

		strcopy(Client_SteamID[client], sizeof(Client_SteamID), auth);
	}
}

public SQL_ConnectPlayer(Handle:owner, Handle:hndl, const String:error[], any:data)
{
	if (hndl == INVALID_HANDLE)
	{
		LogError("Не удалось выполнить запрос. Ошибка: %s", error);
	}
	else
	{
		decl count;

		if (SQL_FetchRow(hndl))
		{
			count = SQL_FetchInt(hndl, 0) + 1;

			decl String:query[1024];
			Format(query, sizeof(query), "UPDATE %s SET Table_ClientJoinCount = %d WHERE Table_ClientSteamID = '%s';", SQL_DatabaseName, count, Client_SteamID[data]);

			if (!SQL_FastQuery(hDataBase, query))
			{
				if (SQL_GetError(hDataBase, query, sizeof(query)))
				{
					LogError("Не сохранить данные. Ошибка: %s", query);
				}
			}
		}
		else
		{		
			decl String:query[1024];
			Format(query, sizeof(query), "INSERT INTO %s ('Table_ClientSteamID', Table_ClientJoinCount) VALUES ('%s', 1);", SQL_DatabaseName, Client_SteamID[data]);

			if (!SQL_FastQuery(hDataBase, query))
			{
				if (SQL_GetError(hDataBase, query, sizeof(query)))
				{
					LogError("Не удалось создать игрока Ошибка: %s", query);
				}
			}

			count = 1;
		}

		PrintToChatAll("\x01Игрок \x04%N \x01(\x04%s\x01) заходил \x04%d \x01раз", data, Client_SteamID[data], count);
	}
}
 

Vicin

Участник
Сообщения
4
Реакции
0
Можешь сделать так чтобы в плагине mapchooser + sound чтобы "Продлить карту" было первым в голосовании?
 
Сообщения
20
Реакции
0
1. !lot
2.
Допустим есть ставка 100 кредитов
Для этого числа выпадает рандомное число от 1 до 200, то есть это своего рода шанс выигрыша.
Берется число от 1 до 200​
Если число до 70 - Проигрыш ставки, то есть сколько вы поставили, столько и проиграли​
Если число от 71 до 140 - Сумма ставки отнимается. То есть если ставка 100, то у игрока отнимется 100кр.​
Если число от 141 до 150 - Выигрыш Ставка*2, выпадает 2х, ставка умножается на 2​
Если число от 151 до 159 - Выигрыш Ставка*3, выпадает 3х​
Если число от 160 до 165 - Выигрыш Ставка*4,выпадает 4х​
Если число от 166 до 170 - Выигрыш Ставка*5,выпадает 5х​
Если число от 171 до 174- Выигрыш Ставка*6,выпадает 6х​
Если число от 175 до 178 - Выигрыш Ставка*7,выпадает 7х​
Если число от 179 до 181- Выигрыш Ставка*8,выпадает 8х​
Если число от 182 до 183 - Выигрыш Ставка*10,выпадает 10х​
Если число 184 - Выигрыш Ставка*11,выпадает 15х​
Если число от 185 до 195 - Выигрыш 100 Кредитов, простой бонус +100 кредитов​
Если число 196 - Выигрыш Ставка*12, выпадает 25х​
Если число 197 - Выигрыш Ставка*13,выпадает 100х​
Если число 198 - Выигрыш Ставка*14,выпадает 125х​
Если число от 199 до 200 - Выигрыш Ставка*15,выпадает 250х​
Остальные числа - Провал ставки. кредиты остаются без изменений, ставка не состоялась​
Что пишет в чат при выигрыше:
[!Lot]/AKyJIA\] выиграл в лотерее [1500] кредитов «15x» [=100=][-200-]
При проигрыше:
[!Lot]/AKyJIA\] проиграл в лотерее [100] кредитов «-1x» [=100=][-140-] (от 71 до 140)
При проигрыши ставки:
[!Lot]/AKyJIA\] проиграл ставку [100] кредитов «0x» [FAIL] [=100=][-70-] (от 1 до 70)
--------------------------------------------------------------------​
[=100=] - ставка игрока.
[-200-] - рандомное число, которое обозначает шанс выигрыша.
--------------------------------------------------------------------​
Это все пишется ВСЕМ в чате.
Если нужны деньги напиши сумму.
Если можно, то нужно это связать с шопом от FroZeDark.
 

vanbka9

Участник
Сообщения
14
Реакции
13
Игорь Шевченко 416102969, Забрал. Посмотри в ЛС!! На странице справа вверху!!
____________________________________________________________________________
Мда.... трудно когда человек не видит лс... как же он собирался заказ делать?
в скайп что-ли добавь "vanbka1494"
 
Последнее редактирование:

Arthur Don

Участник
Сообщения
1,696
Реакции
256
The End Is Near..., поможешь немного переделать один плагин с гранатами?
 

Черная вдова

Участник
Сообщения
2,795
Реакции
670
artushonok,
Оффтоп
 

Arthur Don

Участник
Сообщения
1,696
Реакции
256
Вот сам плагин, надо убрать бесконечность всех гранат, и сделать когда бросаешь любую гранату давалась такая же только один раз, и сделать чтобы такая возможность давалась админам с флагом a
 

Scarface_slv

Участник
Сообщения
222
Реакции
47
Так наверно, не проверял
 

Вложения

  • unlim_grens.sp
    2.3 КБ · Просмотры: 17

Arthur Don

Участник
Сообщения
1,696
Реакции
256
Scarface_slv, не работает, бросаешь любую гранату вторая не даётся
 

Scarface_slv

Участник
Сообщения
222
Реакции
47
artushonok, sm_ug_enabled - 1?
 

Вложения

  • unlim_grens.sp
    2.1 КБ · Просмотры: 8

Scarface_slv

Участник
Сообщения
222
Реакции
47
artushonok, Тогда не знаю, флаг - "а" стоит? Проверил, оба варианта работают...
 

Maus

Участник
Сообщения
125
Реакции
6
The End Is Near..., можешь написать плагин который после убийства пишет такое в чате?)
Вроде видел где-то такой) С настройками и всё такое... Но мне бы хотелось без настроек чтоб)
Заранее спасибо ^_^

[%Plugin Name%] Игрок %username% убил тебя при помощи оружия %weaponname% и у него осталось # HP и # ARMOR.
 
Сверху Снизу