AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   nVault save + load (https://forums.alliedmods.net/showthread.php?t=347093)

wildbiker 04-01-2024 16:46

nVault save + load
 
Hi!

Can someone help me? I need save and load option (steamid) for this plugin. Unfortunately i don't understand exactly how the nVault works. Thanks! :D

PHP Code:

#include <amxmodx>
#include <chatmanager>

#define PLUGIN_VERSION "4.1"

enum
{
    
CM_MENU_ITEM_PREFIX,
    
CM_MENU_ITEM_CHAT_COLOR,
    
CM_MENU_ITEM_CUSTOM_NAME
}

public 
plugin_init()
{
    
register_plugin("CM: Toggle Chat"PLUGIN_VERSION"OciXCrom")
    
register_cvar("CRXCMToggleChat"PLUGIN_VERSIONFCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
    
register_dictionary("ChatManager.txt")
    
register_clcmd("say /cm""Menu_Display")
    
register_clcmd("say_team /cm""Menu_Display")
}

public 
Menu_Display(id)
{
    new 
szText[128], szItem[128]
    
formatex(szTextcharsmax(szText), "%L"id"CM_MENU_TITLE")
    
    new 
iMenu menu_create(szText"Menu_Handler")

    
cm_get_user_prefix(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_PREFIX"idcm_get_user_prefix_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_chat_color(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CHAT_COLOR"idcm_get_user_chat_color_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_custom_name(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CUSTOM_NAME"idcm_get_user_custom_name_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
menu_display(idiMenu)
    return 
PLUGIN_HANDLED
}

public 
Menu_Handler(idiMenuiItem)
{
    switch(
iItem)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(iMenu)
            return 
PLUGIN_HANDLED
        
}
        case 
CM_MENU_ITEM_PREFIXcm_set_user_prefix_status(id, !cm_get_user_prefix_status(id))
        case 
CM_MENU_ITEM_CHAT_COLORcm_set_user_chat_color_status(id, !cm_get_user_chat_color_status(id))
        case 
CM_MENU_ITEM_CUSTOM_NAMEcm_set_user_custom_name_status(id, !cm_get_user_custom_name_status(id))
    }
    
    
menu_destroy(iMenu)
    
Menu_Display(id)
    return 
PLUGIN_HANDLED
}

check_validity(szText[], const iLen)
{
    if(
szText[0])
        
format(szTextiLen"\d: %s"szText)



georgik57 04-04-2024 05:48

Re: nVault save + load
 
I would recommend using OciXCrom's chat plugins:
https://amxx-bg.info/pluginlab/

Bugsy 04-04-2024 11:57

Re: nVault save + load
 
nVault is very simple, take a look at this. Ask if you have any questions.

wildbiker 04-04-2024 14:30

Re: nVault save + load
 
Yes, I use it (OciXCrom's Chatmanager), it is an add-on with which I can turn off the prefix (Admin) and the color of the text. The problem is that it doesn't have a save function and it has to be set up again every time you change the map.

wildbiker 04-04-2024 14:33

Re: nVault save + load
 
Thanks, I already found and looked at this description. My problem is that I've never used it before, and I don't know how to solve saving and loading. Unfortunately, I don't have the opportunity to learn more seriously now, maybe I'll postpone it until later.

wildbiker 04-04-2024 14:42

Re: nVault save + load
 
I've made it this far, I'm trying. But if someone can help, I will be very happy.

PHP Code:

#include <amxmodx>
#include <chatmanager>
#include <nvault>

#define PLUGIN_VERSION "4.1"

new g_iVault;

enum
{
    
CM_MENU_ITEM_PREFIX,
    
CM_MENU_ITEM_CHAT_COLOR,
    
CM_MENU_ITEM_CUSTOM_NAME
}

public 
plugin_init()
{
    
register_plugin("CM: Toggle Chat"PLUGIN_VERSION"OciXCrom")
    
register_cvar("CRXCMToggleChat"PLUGIN_VERSIONFCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
    
register_dictionary("ChatManager.txt")
    
register_clcmd("say /cm""Menu_Display")
    
register_clcmd("say_team /cm""Menu_Display")
    
g_iVault nvault_open("chatmanager")
}

public 
plugin_end()
{
    
nvault_close(g_iVault);
}

public 
Menu_Display(id)
{
    new 
szText[128], szItem[128]
    
formatex(szTextcharsmax(szText), "%L"id"CM_MENU_TITLE")
    
    new 
iMenu menu_create(szText"Menu_Handler")

    
cm_get_user_prefix(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_PREFIX"idcm_get_user_prefix_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_chat_color(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CHAT_COLOR"idcm_get_user_chat_color_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_custom_name(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CUSTOM_NAME"idcm_get_user_custom_name_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
menu_display(idiMenu)
    return 
PLUGIN_HANDLED
}

public 
Menu_Handler(idiMenuiItem)
{
    switch(
iItem)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(iMenu)
            return 
PLUGIN_HANDLED
        
}
        case 
CM_MENU_ITEM_PREFIXcm_set_user_prefix_status(id, !cm_get_user_prefix_status(id))
        case 
CM_MENU_ITEM_CHAT_COLORcm_set_user_chat_color_status(id, !cm_get_user_chat_color_status(id))
        case 
CM_MENU_ITEM_CUSTOM_NAMEcm_set_user_custom_name_status(id, !cm_get_user_custom_name_status(id))
    }
    
    
menu_destroy(iMenu)
    
Menu_Display(id)
    return 
PLUGIN_HANDLED
}

check_validity(szText[], const iLen)
{
    if(
szText[0])
        
format(szTextiLen"\d: %s"szText)
}

public 
client_authorized(id)
{
    
// need code here...
}

public 
client_disconnected(id)
{
    
// need code here...



mlibre 04-04-2024 15:01

Re: nVault save + load
 
use bbcode's [php]sma here[/php]

wildbiker 04-04-2024 15:15

Re: nVault save + load
 
Edited, thanks!

wildbiker 04-10-2024 08:04

Re: nVault save + load
 
I give up, I can't do it.

I looked through the nVault tutorial, it's really not complicated, the main problem is that I don't know which value to save. I need to check with the plugin whether it is enabled or disabled when connecting, but I don't know the way to do it.

Anyone have an idea?

bigdaddy424 04-10-2024 13:46

Re: nVault save + load
 
PHP Code:

#include <amxmodx>
#include <chatmanager>
#include <nvault>

#define PLUGIN_VERSION "4.1"

#define SetBit(%1,%2)      (%1 |= (1<<%2))
#define ClearBit(%1,%2)    (%1 &= ~(1<<%2))
#define CheckBit(%1,%2)    (%1 & (1<<%2)) 

new vaultvalue[MAX_PLAYERS 1]
enum
{
    
CM_MENU_ITEM_PREFIX,
    
CM_MENU_ITEM_CHAT_COLOR,
    
CM_MENU_ITEM_CUSTOM_NAME
}

public 
plugin_init()
{
    
register_plugin("CM: Toggle Chat"PLUGIN_VERSION"OciXCrom")
    
register_cvar("CRXCMToggleChat"PLUGIN_VERSIONFCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
    
register_dictionary("ChatManager.txt")
    
register_clcmd("say /cm""Menu_Display")
    
register_clcmd("say_team /cm""Menu_Display")
    
vault nvault_open("chatmanager")
}

public 
plugin_end()
{
    
nvault_close(vault);
}

public 
Menu_Display(id)
{
    new 
szText[128], szItem[128]
    
formatex(szTextcharsmax(szText), "%L"id"CM_MENU_TITLE")
    
    new 
iMenu menu_create(szText"Menu_Handler")

    
cm_get_user_prefix(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_PREFIX"idcm_get_user_prefix_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_chat_color(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CHAT_COLOR"idcm_get_user_chat_color_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
cm_get_user_custom_name(idszTextcharsmax(szText))
    
check_validity(szTextcharsmax(szText))
    
formatex(szItemcharsmax(szItem), "%L %L%s"id"CM_MENU_CUSTOM_NAME"idcm_get_user_custom_name_status(id) ? "CM_MENU_ENABLED" "CM_MENU_DISABLED"szText)
    
menu_additem(iMenuszItem)
    
    
menu_display(idiMenu)
    return 
PLUGIN_HANDLED
}

public 
Menu_Handler(idiMenuiItem)
{
    switch(
iItem)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(iMenu)
            return 
PLUGIN_HANDLED
        
}
        case 
CM_MENU_ITEM_PREFIX
        {
            
cm_set_user_prefix_status(id, !cm_get_user_prefix_status(id))
            
cm_get_user_prefix_status(id) ? SetBit(value[id], CM_MENU_ITEM_PREFIX) : ClearBit(value[id], CM_MENU_ITEM_PREFIX)
        }
        case 
CM_MENU_ITEM_CHAT_COLOR
        {
            
cm_set_user_chat_color_status(id, !cm_get_user_chat_color_status(id))
            
cm_get_user_chat_color_status(id) ? SetBit(value[id], CM_MENU_ITEM_CHAT_COLOR) : ClearBit(value[id], CM_MENU_ITEM_CHAT_COLOR)
        }
        case 
CM_MENU_ITEM_CUSTOM_NAME
        {
            
cm_set_user_custom_name_status(id, !cm_get_user_custom_name_status(id))
            
cm_get_user_custom_name_status(id) ? SetBit(value[id], CM_MENU_ITEM_CUSTOM_NAME) : ClearBit(value[id], CM_MENU_ITEM_CUSTOM_NAME)
        }
    }
    
    
menu_destroy(iMenu)
    
Menu_Display(id)
    return 
PLUGIN_HANDLED
}

check_validity(szText[], const iLen)
{
    if(
szText[0])
        
format(szTextiLen"\d: %s"szText)
}

public 
client_authorized(id, const authid[])
{
    
value[id] = nvault_get(vaultauthid)
    
cm_set_user_prefix_status(idbool:CheckBit(value[id], CM_MENU_ITEM_PREFIX))
    
cm_set_user_chat_color_status(idbool:CheckBit(value[id], CM_MENU_ITEM_CHAT_COLOR))
    
cm_set_user_custom_name_status(idbool:CheckBit(value[id], CM_MENU_ITEM_CUSTOM_NAME))
}

public 
client_disconnected(id)
{
    new 
authid[32]
    
get_user_authid(idauthid31)
    
nvault_set(vaultauthidfmt("%d"value[id]))




All times are GMT -4. The time now is 09:00.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.