About XKits
XKits - offers a beautiful menu of kits for your server, offering a seamless experience for players to access and manage their kits.
What about giving kits to players?
- The plugin features its own system for granting kits, both temporarily and permanently.
- It can operate entirely on a permissions system.
- You can easily combine both options for flexibility.
Key Features:
- Language Support: Switch plugin language in the code - LanguageEnglish = true.
- Interface Optimization: Adjusts for different monitor resolutions.
- Data Storage: Player data is stored in oxide/data/XDataSystem/XKits.
- Multi-language Support: Available in Russian, English, Ukrainian, and Spanish.
- Sound Effects: Adds sound effects when interacting with the menu.
- Optimized UI Timer: Enhanced UI update timer for better performance.
- CoolDown Reset: Automatic reset of CoolDown after server wipe.
- Easy Kit Management: Create, edit, and view kits, cooldowns, limits, items, blueprints, modules, genes, chances, and slots in the UI.
- UI Kit Editor: Edit kit items and seed/clone genes directly within the UI.
- Inventory Protection: Prevents misplacement of items in the Wear/Belt container.
- Chat Customization: Customize avatar and prefix for chat messages.
- Default Kits: Set default kits for new players and a list of kits available immediately.
- Kit Deletion: Specify the duration before a kit is deleted, ideal for events.
- Usage Limits: Set a limit on how many times a kit can be taken (e.g., 5 uses in total).
- CoolDown Setting: Set a CoolDown period for each kit.
- Inventory Check: Clears player inventory before giving a kit and checks for available space.
- Kit Availability: Displays kit settings, including deletion time, CoolDown, and maximum number of uses, in view all kits mode.
- Automatic Kit Selection: Players can independently select/change their kits from the available ones.
- Custom Kit Images: Default size is 230x544, adjustable in configuration. Custom images available for an additional fee.
Permissions
xkits.use - access to menu. xkits.admin - access to admin functionality. xkits.showall - access to the ability to view all kits. xkits.ignorecd - allow to ignore CoolDown.
Commands
/k, /kit, /kits - to open the kits menu. [ Commands can be changed in the config. ] /k kitName, /kit kitName, /kits kitName - to take a kit. [ Commands can be changed in the config. ] /kit.admin givekit kitName - give a kit to the inventory of the player you are looking at. (Admin permission) xkits_admin_kit_ccmd give steamID kitName seconds - give kit to a player. [ You can change the seconds and thus change the date of deleting the kit from the player. 0 - the kit will always be available to the player. seconds: 1000 or -1000. Automatically converted to Unix-time. ] xkits_admin_kit_ccmd remove steamID kitName - remove a kit from a player. [ The kit will no longer be available to the player. ] xkits_admin_kit_ccmd givekit steamID kitName - give a kit to the inventory of the player.
API
bool API_GivePlayerKit(BasePlayer player, string giveKitName, bool dropMessage = false) - give a kit to the inventory of the player. [ dropMessage - display in the console the number of items that did not fit in the inventory. ] bool IsKit(string kitName) - check if a kit exists. double GetKitCooldown(string kitName) - get kit CoolDown. (sec.) double GetDeleteKitUnixDate(string kitName) - get date of kit deletion. (Unix-time) string GetKitImageURL(string kitName) - get link to the image of the kit. string GetKitPermission(string kitName) - get permission of the kit. int GetKitAmountOfUses(string kitName) - get number of uses of the kit. void PlayerTimerRemove(BasePlayer player) - remove player from UI update timer. (Useful for custom menu)
Hooks
object CanTakeKit(BasePlayer player, string takeKitName) - is called when a player tries to take a kit. Return not null will prevent this action. object CanGiveKit(BasePlayer player, string giveKitName) - is called when trying to give a kit to the player inventory using the API. Return not null will prevent this action.
Config
{ "General settings": { "SteamID profile for custom avatar": 0, "Chat prefix": "<size=12><color=#FFFFFF50>[</color> <color=#00FF0050>XKits</color> <color=#FFFFFF50>]</color></size>\n", "List of kits that will be available to the player at all times - [ Will be given to the player ]": [], "List of commands to open the menu": [ "k", "kit", "kits" ] }, "GUI settings": { "Color_background_1": "0.517 0.521 0.509 0.95", "Color_background_2": "0.217 0.221 0.209 0.95", "Color_background_3": "0.217 0.221 0.209 1", "Button color (icons)": "1 1 1 0.75", "Block color": "0.517 0.521 0.509 0.5", "Color of the active button next": "0.35 0.45 0.25 1", "Color of the inactive button next": "0.35 0.45 0.25 0.4", "Text color of the active button next": "0.75 0.95 0.41 1", "Text color of the inactive button next": "0.75 0.95 0.41 0.4", "Color of the active button back": "0.65 0.29 0.24 1", "Color of the inactive button back": "0.65 0.29 0.24 0.4", "Text color of the active button back": "0.92 0.79 0.76 1", "Text color of the inactive button back": "0.92 0.79 0.76 0.4", "MainIMG_OffsetMin": "16.5 -99.55", "MainIMG_OffsetMax": "-16.5 117.25", "InfoIMG_OffsetMin": "10 35", "InfoIMG_OffsetMax": "106.2 -35" } }