Подскажите где можно найти уроки или инфу по созданию плагинов для SourceMod?

Сообщения
5
Реакции
0
Пересмотрел большое количество сайтов, добавлял в друзья тех кто пишет плагины, но ответа так и не нашел. Подскажите топик или сайт где подробно описан процесс создания плагина
 

dragonborn

Участник
Сообщения
110
Реакции
37
Пересмотрел большое количество сайтов, добавлял в друзья тех кто пишет плагины, но ответа так и не нашел. Подскажите топик или сайт где подробно описан процесс создания плагина

Поищи в ютюбе "sourcemod плагин туториал" там есть довольно таки приличное количество уроков, но они только для тех у кого есть достаточно времени что бы разобраться, повторить и закрепить материал.
 

KorDen

Atra esterní ono thelduin!
Сообщения
2,142
Реакции
1,424
Для начала хорошо бы иметь базовые знания си-подобного языка программирования, будет гораздо проще, чем если таких знаний нет.
 

dragonborn

Участник
Сообщения
110
Реакции
37
Для начала хорошо бы иметь базовые знания си-подобного языка программирования, будет гораздо проще, чем если таких знаний нет.

Научиться можно в принципе и так, Sourcemod не такой уж и трудный язык. Хотя конечно изучение займёт достаточное количества времени!
 

SenatoR

Участник
Сообщения
773
Реакции
344
За 3 месяца можно спокойно выучить SP, ибо SP евентовый язык
 

KorDen

Atra esterní ono thelduin!
Сообщения
2,142
Реакции
1,424
Научиться можно в принципе и так, Sourcemod не такой уж и трудный язык. Хотя конечно изучение займёт достаточное количества времени!

Научиться можно, но нюансов много таких, которые гораздо понятнее будут при базовом знани Си. Те же тернарные операции (условие ? если истина : если ложь) многие не исполььзуют, потому что не знают о них, хотя они очень удобны, и многие другие фишки, которые могут сделать код гораздо проще и в работе и в понимании.
 

romzes96

Участник
Сообщения
23
Реакции
0
Народ, а ка сменить флаг в скрипте? Что бы человеку нужен был бы флаг не "o" а "b".
 

KorDen

Atra esterní ono thelduin!
Сообщения
2,142
Реакции
1,424
romzes96,
Либо это:
C-подобный:
enum AdminFlag
{
	Admin_Reservation = 0,	/**< Reserved slot */
	Admin_Generic,			/**< Generic admin abilities */
	Admin_Kick,				/**< Kick another user */
	Admin_Ban,				/**< Ban another user */
	Admin_Unban,			/**< Unban another user */
	Admin_Slay,				/**< Slay/kill/damage another user */
	Admin_Changemap,		/**< Change the map */
	Admin_Convars,			/**< Change basic convars */
	Admin_Config,			/**< Change configuration */
	Admin_Chat,				/**< Special chat privileges */
	Admin_Vote,				/**< Special vote privileges */
	Admin_Password,			/**< Set a server password */
	Admin_RCON,				/**< Use RCON */
	Admin_Cheats,			/**< Change sv_cheats and use its commands */
	Admin_Root,				/**< All access by default */
	Admin_Custom1,			/**< First custom flag type */
	Admin_Custom2,			/**< Second custom flag type */
	Admin_Custom3,			/**< Third custom flag type */
	Admin_Custom4,			/**< Fourth custom flag type */
	Admin_Custom5,			/**< Fifth custom flag type */
	Admin_Custom6,			/**< Sixth custom flag type */
	/* --- */
};
Либо это:
C-подобный:
/**
 * @section Bitwise values definitions for admin flags.
 */
#define ADMFLAG_RESERVATION			(1<<0)		/**< Convenience macro for Admin_Reservation as a FlagBit */
#define ADMFLAG_GENERIC				(1<<1)		/**< Convenience macro for Admin_Generic as a FlagBit */
#define ADMFLAG_KICK				(1<<2)		/**< Convenience macro for Admin_Kick as a FlagBit */
#define ADMFLAG_BAN					(1<<3)		/**< Convenience macro for Admin_Ban as a FlagBit */
#define ADMFLAG_UNBAN				(1<<4)		/**< Convenience macro for Admin_Unban as a FlagBit */
#define ADMFLAG_SLAY				(1<<5)		/**< Convenience macro for Admin_Slay as a FlagBit */
#define ADMFLAG_CHANGEMAP			(1<<6)		/**< Convenience macro for Admin_Changemap as a FlagBit */
#define ADMFLAG_CONVARS				(1<<7)		/**< Convenience macro for Admin_Convars as a FlagBit */
#define ADMFLAG_CONFIG				(1<<8)		/**< Convenience macro for Admin_Config as a FlagBit */
#define ADMFLAG_CHAT				(1<<9)		/**< Convenience macro for Admin_Chat as a FlagBit */
#define ADMFLAG_VOTE				(1<<10)		/**< Convenience macro for Admin_Vote as a FlagBit */
#define ADMFLAG_PASSWORD			(1<<11)		/**< Convenience macro for Admin_Password as a FlagBit */
#define ADMFLAG_RCON				(1<<12)		/**< Convenience macro for Admin_RCON as a FlagBit */
#define ADMFLAG_CHEATS				(1<<13)		/**< Convenience macro for Admin_Cheats as a FlagBit */
#define ADMFLAG_ROOT				(1<<14)		/**< Convenience macro for Admin_Root as a FlagBit */
#define ADMFLAG_CUSTOM1				(1<<15)		/**< Convenience macro for Admin_Custom1 as a FlagBit */
#define ADMFLAG_CUSTOM2				(1<<16)		/**< Convenience macro for Admin_Custom2 as a FlagBit */
#define ADMFLAG_CUSTOM3				(1<<17)		/**< Convenience macro for Admin_Custom3 as a FlagBit */
#define ADMFLAG_CUSTOM4				(1<<18)		/**< Convenience macro for Admin_Custom4 as a FlagBit */
#define ADMFLAG_CUSTOM5				(1<<19)		/**< Convenience macro for Admin_Custom5 as a FlagBit */
#define ADMFLAG_CUSTOM6				(1<<20)		/**< Convenience macro for Admin_Custom6 as a FlagBit */
 

romzes96

Участник
Сообщения
23
Реакции
0
А можешь помочь, как тут флаг поменять? Что бы человек не смог выдовать орудие не с флагом "o" а с флагом "b" смог(ну или любой другой флаг кроме "o").
Я сделал так:
C-подобный:
public OnPluginStart()
{
    RegAdminCmd("wg", ConsoleCmd, ADMFLAG_CUSTOM2); //For admins to be able to use the wg command, they must have the "o" flag in their flags
	RegAdminCmd("say !wg", ConsoleCmd, ADMFLAG_CUSTOM2); //If you know how to and want to change the flag alphabet, replace ADM_CUSTOM1 with something else (ADM_GENERIC means all sourcemod admins will have the access, and ADM_CUSTOM2 is the "p" flag)
	RegAdminCmd("say_team !wg", ConsoleCmd, ADMFLAG_CUSTOM2);
}
Правильно?
 

September

Участник
Сообщения
5,238
Реакции
2,742
  • Команда форума
  • #14
C-подобный:
public OnPluginStart()
{
    RegAdminCmd("wg", ConsoleCmd, ADMFLAG_GENERIC); //For admins to be able to use the wg command, they must have the "o" flag in their flags
	RegAdminCmd("say !wg", ConsoleCmd, ADMFLAG_GENERIC); //If you know how to and want to change the flag alphabet, replace ADM_CUSTOM1 with something else (ADM_GENERIC means all sourcemod admins will have the access, and ADM_CUSTOM2 is the "p" flag)
	RegAdminCmd("say_team !wg", ConsoleCmd, ADMFLAG_GENERIC);
}
 
Сверху Снизу