AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Does not create the note (https://forums.alliedmods.net/showthread.php?t=221174)

-Fanaticspx1 07-18-2013 20:34

Does not create the note
 
PHP Code:

#include <amxmodx>
#include <nfvault>
#include <zp50_ammopacks>
#include <fakemeta>

new szKey[30], szData[300], VaultFile[128]

#define Hook_Chooseteam

/*==================================================================================================
  * GLOBAL VARS & ENUMS *
==================================================================================================*/
enum
{
    
PASSWORD 0,
    
NAME,
    
    
MAX_CHANGE
}

enum
{
    
UNREGISTERED 0,
    
REGISTERED,
    
LOGGED,
    
    
MAX_STATUS
}

new 
g_TempPassword[33][32],g_Password[33][32],g_Date[33][32],g_Status[33],gMsg,g_AlredyChanged[33][MAX_CHANGE],g_CanChange

new const g_MsgArgs[][] = { "#Team_Select","#Team_Select_Spect","#IG_Team_Select","#IG_Team_Select_Spect" }


new const 
g_szStatus[MAX_STATUS][] = { "No registrado","Registrado","Logueado" }

/*==================================================================================================
  * BEGINNING OF PLUGIN *
==================================================================================================*/
public plugin_init()
{
    
register_plugin("Sistema de Cuentas","2.0.1","Manu")

    
nfv_file("Datos"VaultFilecharsmax(VaultFile))
    
    
register_message(get_user_msgid("ShowMenu"),"message_showmenu")
    
register_message(get_user_msgid("VGUIMenu"),"message_vguimenu")
    
    
register_clcmd("INGRESAR_PASSWORD","cmd_password")

    
register_message(get_user_msgid("SayText"), "MessageNameChange")
        
register_forward(FM_ClientUserInfoChanged"fw_ClientInfoChanged")
    
    
#if defined Hook_Chooseteam
    
register_clcmd("chooseteam","cmd_block")
    
register_clcmd("jointeam","cmd_block")
    
#endif
    
    
gMsg CreateHudSyncObj()
}

/*==================================================================================================
  * CLIENT_ FUNCS *
==================================================================================================*/

public client_putinserver(id)
{
    
g_Password[id][0] = '^0';g_Status[id] = UNREGISTERED
    
    g_AlredyChanged
[id][NAME] = 0;g_AlredyChanged[id][PASSWORD] = 0
    
    fvault_load
(id)
}

public 
client_infochanged(id)
{
    static 
szName[32],szOldName[32]
    
    
get_user_name(id,szOldName,31);get_user_info(id,"name",szName,31)
    
    if(
equal(szOldName,szName) || g_CanChange)
        return 
PLUGIN_CONTINUE
        
    client_cmd
(id,"name %s",szName);set_user_info(id,"name",szName)
    
    return 
PLUGIN_HANDLED
}

/*==================================================================================================
  * CMDs *
==================================================================================================*/

public cmd_password(id)
{
    static 
szName[32],szArgs[64];read_args(szArgs,63)
    
remove_quotes(szArgs);trim(szArgs)
    
    
get_user_name(id,szName,31)
    
    if(
containi(szArgs," ") != -|| equal(szArgs,"")) {
        
show_msg(id,"Tu password contiene errores...")
        return 
PLUGIN_HANDLED
    
}
    switch(
g_Status[id])
    {
        case 
UNREGISTERED: {
            
show_msg(id,"Confirma tu password para proseguir...");copy(g_TempPassword[id],31,szArgs)
            
show_menu_confirm(id)
        }
        case 
REGISTERED: {
            if(!
equal(g_Password[id],szArgs)) {
                
show_msg(id,"La password ingresada no coincide con la de la cuenta...")
                return 
PLUGIN_HANDLED
            
}
            
            
g_Status[id] = LOGGED;fvault_save(id)// To save the date
            
show_msg(id,"Te logueaste satisfactoriamente en tu cuenta...");change_team(id)
        }
        case 
LOGGED: {
            if(
g_AlredyChanged[id][PASSWORD]) {
                
show_msg(id,"Ya cambiaste tu password en este mapa...")
                return 
PLUGIN_HANDLED
            
}
            
            
show_msg(id,"Confirma tu password para cambiarla...");copy(g_TempPassword[id],31,szArgs)
            
show_menu_confirm(id)
        }
    }
    
    return 
PLUGIN_HANDLED
}


/*==================================================================================================
  * BLOCK CHANGE TEAM *
==================================================================================================*/

public message_showmenu(msgid,dest,id)
{
    static 
szMsg[16];get_msg_arg_string(4,szMsg,15)
    
    for(new 
i;sizeof g_MsgArgs;i++)
    {
        if(
equal(szMsg,g_MsgArgs[i]))
        {
            
show_menu_block(id)
            return 
PLUGIN_HANDLED
        
}
    }
    return 
PLUGIN_CONTINUE
}

public 
message_vguimenu(msgid,dest,id)
{
    if(
get_msg_arg_int(1) != 2)
        return 
PLUGIN_CONTINUE
        
    show_menu_block
(id)
    
    return 
PLUGIN_HANDLED
}

#if defined Hook_Chooseteam
public cmd_block(id) {
    
show_menu_block(id)
    return 
PLUGIN_HANDLED
}
#endif

/*==================================================================================================
  * MENUs *
==================================================================================================*/

public show_menu_block(id)
{
    static 
szMenu[128],szName[32]
    
get_user_name(id,szName,31);formatex(szMenu,127,"\ySistema de CUENTAS por \rMANU^n\wESTADO ACTUAL: \y[ \r%s \y]\w^n^n%s%s",g_szStatus[g_Status[id]],g_Status[id] == LOGGED "Ultima vez que entraste \r":(g_Status[id] == REGISTERED "\yEstas registrado como \r":""),g_Status[id] == LOGGED g_Date[id]:(g_Status[id] == REGISTERED szName:""))
    
    new 
Menu menu_create(szMenu,"handler_menu_block")
    
    
formatex(szMenu,63,"%sLoguear cuenta",g_Status[id] != REGISTERED "\d":"\w")
    
menu_additem(Menu,szMenu,"1",0)
    
    
formatex(szMenu,63,"%sRegistrar cuenta^n",g_Status[id] != UNREGISTERED "\d":"\w")
    
menu_additem(Menu,szMenu,"2",0)
    
    
formatex(szMenu,63,"%s%sCambiar PASSWORD",g_Status[id] != LOGGED "\d":"\w",g_AlredyChanged[id][PASSWORD] ? "\d":"")
    
menu_additem(Menu,szMenu,"3",0)
    
    
menu_additem(Menu,"Informacion","4",0)
    
    
menu_setprop(Menu,MPROP_EXITNAME,"Salir")
    
    
menu_display(id,Menu,0)
}

public 
handler_menu_block(id,menu,item)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    switch(
item)
    {
        case 
0: {
            if(
g_Status[id] != REGISTERED)
            {
                
show_msg(id,"No puedes elegir esta opcion...")
                return 
PLUGIN_HANDLED
            
}
            
            
show_msg(id,"Ingresa tu PASSWORD para entrar a tu cuenta...");client_cmd(id,"messagemode INGRESAR_PASSWORD")
        }
        case 
1: {
            if(
g_Status[id] != UNREGISTERED)
            {
                
show_msg(id,"No puedes elegir esta opcion...")
                return 
PLUGIN_HANDLED
            
}
            
            
show_msg(id,"Ingresa una PASSWORD para crear una cuenta...");client_cmd(id,"messagemode INGRESAR_PASSWORD")
        }
        case 
2: {
            if(
g_Status[id] != LOGGED || g_AlredyChanged[id][PASSWORD])
            {
                
show_msg(id,"No estas logueado o ya cambiaste tu password durante el mapa...")
                return 
PLUGIN_HANDLED
            
}
            
            
show_msg(id,"Ingresa tu nueva PASSWORD...");client_cmd(id,"messagemode INGRESAR_PASSWORD")
        }
        case 
3: {
            
set_hudmessage(02550, -1.0, -1.024.07.0)
            
ShowSyncHudMsg(id,gMsg,"Este sistema de cuentas fue creado por^nManu para los usuarios de AlliedModders^nConsiste en poder registrar un nick para evitar^nel robo del mismo, protegiendolo asi con password")
        }
    }
    
    return 
PLUGIN_HANDLED
}

public 
show_menu_confirm(id)
{
    static 
szTitle[128];formatex(szTitle,127,"\w%sLa password sera \r%s^n^n\yConfirmar?",g_Status[id] == LOGGED "Estas cambiando tu password^n":"Estas seteando tu password^n",g_TempPassword[id])
    
    new 
Menu menu_create(szTitle,"handler_menu_confirm")
    
    
menu_additem(Menu,"\rSi\w, confirmar","1",0)
    
menu_additem(Menu,"\rNo\w, deseo reescribirla","2",0)
    
    
menu_setprop(Menu,MPROP_EXIT,MEXIT_NEVER)
    
    
menu_display(id,Menu,0)
}

public 
handler_menu_confirm(id,menu,item)
{
    switch(
item)
    {
        case 
0: {
            switch(
g_Status[id])
            {
                case 
LOGGED: {
                    
show_msg(id,"Tu password ha sido cambiada satisfactoiramente")
                    
                    
copy(g_Password[id],31,g_TempPassword[id]);fvault_save(id)
                    
                    
g_AlredyChanged[id][PASSWORD] = 1
                
}
                case 
UNREGISTERED: {    
                    
show_msg(id,"Tu cuenta ha sido creada satisfactoriamente")
                    
                    
copy(g_Password[id],31,g_TempPassword[id]);fvault_save(id)
                    
                    
g_Status[id] = LOGGED;change_team(id)
                }
            }
        }
        case 
1: {
            
menu_destroy(menu)
            
            
client_cmd(id,"messagemode INGRESAR_PASSWORD")
            
            
g_Status[id] == LOGGED show_msg(id,"Ingresa tu nueva PASSWORD..."):show_msg(id,"Ingresa la PASSWORD para tu nueva cuenta...")
        }
    }
    
    return 
PLUGIN_HANDLED
}

/*==================================================================================================
  * LOAD | SAVE *
==================================================================================================*/

public fvault_save(id)
{
    if(
g_Status[id] != LOGGED) return
    
    new 
gName[33]
    
get_user_name(idgNamecharsmax(gName))
    
get_time("%c",g_Date[id],31)
    
    
formatex(szKeycharsmax(szKey), "db_datos")
    
    
formatex(szDatacharsmax(szData), "%d %s %s"zp_ammopacks_get(id), g_Password[id], g_Date[id])
    
    
    
nfv_set_data(VaultFileszKeygNameszData)



public 
fvault_load(id)
{    
    new 
gName[32], g_Load_AmmoPacks[25]
    
get_user_name(idgNamecharsmax(gName))
    
    
formatex(szKeycharsmax(szKey), "db_datos")
    
    if(!
nfv_get_data(VaultFileszKeygNameszDatasizeof(szData) - 1)) {
        
g_Status[id] = UNREGISTERED
        
return;
    }
    
    
parse(szDatag_Load_AmmoPackscharsmax(g_Load_AmmoPacks), g_Password[id], charsmax(g_Password), g_Date[id], charsmax(g_Date))
    
zp_ammopacks_set(idstr_to_num(g_Load_AmmoPacks))
    
g_Status[id] = REGISTERED
}

/*==================================================================================================
  * STOCKS *
==================================================================================================*/

stock change_team(const id)
{
    
engclient_cmd(id,"jointeam","5")
    
    
engclient_cmd(id,"joinclass","5")
}

stock show_msg(const id, const string[])
{
    
set_hudmessage(025500.150.1012.010.0)
    
ShowSyncHudMsg(id,gMsg,"%s",string)
}

public 
MessageNameChange(msgiddestreceiver)
{
    static 
info[64];
    
get_msg_arg_string(2infosizeof(info) - 1);
    
    if(!
equali(info"#Cstrike_Name_Change")) 
        return 
PLUGIN_CONTINUE;
    
    return 
PLUGIN_HANDLED;
}

public 
fw_ClientInfoChanged(idbuffer)
{
    if(
is_user_connected(id))
    {
        static 
szActualName[32], szNewName[32]
        
        
get_user_name(idszActualNamecharsmax(szActualName))
        
engfunc(EngFunc_InfoKeyValuebuffer"name"szNewNamecharsmax(szNewName))
        
        if(
equal(szNewNameszActualName))
            return 
FMRES_IGNORED
    
        engfunc
(EngFunc_SetClientKeyValueidbuffer"name"szActualName)
        
client_cmd(id"name ^"%s^""szActualName)
        
client_print(idprint_console"El cambio de nombre esta Prohibido, por Seguridad")
        
        return 
FMRES_SUPERCEDE
    
}
    return 
FMRES_IGNORED

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang11274{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/ 


Black Rose 07-21-2013 17:53

Re: Does not create the note
 
Thank you for explaining the problem. Especially when all the text is in spanish...


All times are GMT -4. The time now is 06:22.

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