editar plugins y mejorarlo
#1
hola ayuden a arreglar este plugins de apuestas de frags

primero me gustaria quitar la multipicacion de frags

solo dejar menu simple asi

en menu que aparesca asi
apostar 10 frags
apostar 20 frags
apostar 30 frags
apostar 40 frags
apostar todo los frags

lo segundo que no me descuenta los frags que pierdo en la apuesta
este lo estoy usando con un plugins de rango

yo probe este plugins pero le falta arreglar esas cosas
los que saben editar plugins si es posible que me ayuden a arreglar el codigo para que funcione el plugins porfa
Código PHP:
#include <amxmodx>
#include <cstrike>

new const Ganar[] = { "events/enemy_died.wav" // Ganar una apuesta
new const Perder[] = { "events/friend_died.wav" // Perer una apuesta

enum Colors
{
    
Gris 33,
    
Rojo,
    
Azul
}

enum _DATA_BET BET_AMOUNTBET_MULTIPLIER };

new const 
g_PluginInfo[][] = { "Betting System""v1.0""RusselNight""AMXX" };

new const 
g_BetAmounts[][_DATA_BET] =
{
    { 
2},
    { 
4},
    { 
6},
    { 
8}
};

new 
bool:g_bPlayerBetting[33] = falseg_iBetAmount[33], Float:g_fTimeBetProgress 5.0g_iPozog_iMinAmountDoN;

new 
bool:g_bFirstRound true;

native rangos_get_user_frags(id);
native rangos_set_user_frags(idfrags);

public 
plugin_init()
{
    
register_plugin(g_PluginInfo[0], g_PluginInfo[1], g_PluginInfo[2]);
    
    
register_event("HLTV""ev_NewRound""a""1=0""2=0");

    
register_clcmd("say /ganar""clcmd_Bet");
    
register_clcmd("say /ganartodo""clcmd_Bet");
    
register_clcmd("say /bono""clcmd_Pozo");
}

public 
plugin_precache()
{
    
precache_sound(Ganar)
    
precache_sound(Perder)


public 
client_disconnect(id
{
    
g_bPlayerBetting[id] = false;
    
g_iBetAmount[id] = 0
}

public 
ev_NewRound()
{
    if(
g_bFirstRound)
    {
        
g_iPozo 10;
        
g_iMinAmountDoN 100;
        
g_bFirstRound false;
    }
}

public 
clcmd_Bet(id)
{
    
Show_BetM(id);

    return 
PLUGIN_HANDLED;
}

public 
Show_BetM(id)
{
    static 
szText[256], iMenui;
    
formatex(szTextcharsmax(szText), "Menu de Suerte");
    
iMenu menu_create(szText"Handled_BetM");

    for(
0sizeof(g_BetAmounts); i++)
    {
        
formatex(szTextcharsmax(szText), "%d frags - x%d (Multiplicar ganancia por x%d)" g_BetAmounts[i][BET_AMOUNT], g_BetAmounts[i][BET_MULTIPLIER], g_BetAmounts[i][BET_MULTIPLIER]); 
        
menu_additem(iMenuszText);
    }

    if(
rangos_get_user_frags(id) >= g_iMinAmountDoN)
    {
        
menu_additem(iMenu"\wJugar\y ME LA JUEGO");
    }
    else
    {
        
formatex(szTextcharsmax(szText), "\dJugar ME LA JUEGO \y[Necesitas %d Frags]"g_iMinAmountDoN);
        
menu_additem(iMenuszText);
    }

    
menu_setprop(iMenuMPROP_EXITNAME"\d[\rCerrar Menu\d]");
    
menu_display(idiMenu);
    return 
PLUGIN_HANDLED
}

public 
Handled_BetM(idiMenuiItem)
{
    new 
szName[32];
    
get_user_name(idszNamecharsmax(szName));

    if(
iItem == MENU_EXIT)
    {
        
menu_destroy(iMenu);
        return 
PLUGIN_HANDLED;
    }

    if(
g_bPlayerBetting[id])
    {
        
ChatColor(idAzul"!g[%s]!y Ya estas!g realizando una apuesta."g_PluginInfo[3]);
        return 
PLUGIN_HANDLED;
    }

    if(
iItem >= sizeof(g_BetAmounts))
    {
        if(
rangos_get_user_frags(id) < g_iMinAmountDoN)
        {
            
ChatColor(idAzul,"!g[%s]!y No tienes!g suficientes frags."g_PluginInfo[3]);
            return 
PLUGIN_HANDLED;
        }

        
ChatColor(0Azul"!g[%s]!t %s!y aposto todos sus frags!g (%d)!y en!g Me la juego!!"g_PluginInfo[3], szNamerangos_get_user_frags(id));
        
        
set_task(g_fTimeBetProgress"Bet_DoN_Result"id);
    }
    else
    {
        if(
get_user_frags(id) < g_BetAmounts[iItem][BET_AMOUNT])
        {
            
ChatColor(idAzul"!g[%s]!y No tienes!g frags suficientes!."g_PluginInfo[3]);
            return 
PLUGIN_HANDLED;
        }

        
ChatColor(0Azul"!g[%s]!t %s!y - aposto!g %d frags."g_PluginInfo[3], szNameg_BetAmounts[iItem][BET_AMOUNT]);
        
set_task(g_fTimeBetProgress"Bet_Result"id);
    }

    
g_bPlayerBetting[id] = true;
    
g_iBetAmount[id] = iItem;

    return 
PLUGIN_HANDLED;
}
public 
Bet_Result(id)
{
    if(!
is_user_connected(id))
        return;

    new 
szName[32];
    
get_user_name(idszNamecharsmax(szName));

    switch(
random_num(1103))
    {
        case 
1..25:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y - Gano!g %d Frags..."g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_AMOUNT]);
            
client_cmd(id"spk %s"Ganar)            
            
rangos_set_user_frags(id, (rangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_AMOUNT]));
        }
        case 
26..85:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y perdio!g %d Frags!"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_AMOUNT]);
            
client_cmd(id"spk %s"Perder)
            
rangos_set_user_frags(id, (rangos_get_user_frags(id) + g_iPozo));  
            
g_iPozo += (g_BetAmounts[g_iBetAmount[id]][BET_AMOUNT]/4);
        }
        case 
86:
        {
            
ChatColor(0Azul"!g[%s]!t %s -!g GANO EL POZO! - !y%d Frags!"g_PluginInfo[3], szNameg_iPozo);
            
client_cmd(id"spk %s"Ganar)
            
rangos_set_user_frags(id, (rangos_get_user_frags(id) + g_iPozo));
            
g_iPozo 10;
        }
        case 
87..90:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y Gano!g %d Frags X%d!!g ( +%d Frags)"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_AMOUNT], g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER], g_BetAmounts[g_iBetAmount[id]][BET_AMOUNT]*g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]);
            
rangos_set_user_frags(idrangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_AMOUNT] * g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER])
            
client_cmd(id"spk %s"Ganar)
        }
        case 
91..94:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y Gano!g 16x%d Frags (+%d Frags)"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER], (16*g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]));
            
client_cmd(id"spk %s"Ganar)
            
rangos_set_user_frags(idrangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]*16);
        }
        case 
95..98:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y Gano!g 32x%d Frags!g (+%d Frags)"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER], (32*g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]));
            
client_cmd(id"spk %s"Ganar)
            
rangos_set_user_frags(idrangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]*32);
        }
        case 
99..102:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y Gano!g 88x%d Frags!g (+%d Frags)"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER], (88*g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]));
            
client_cmd(id"spk %s"Ganar)
            
rangos_set_user_frags(idrangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]*88);
        }
        case 
103:
        {
            
ChatColor(0Azul"!g[%s]!t %s!y Gano!g 160x%d Frags!g (+%d Frags)"g_PluginInfo[3], szNameg_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER], (160*g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]));
            
client_cmd(id"spk %s"Ganar)
            
rangos_set_user_frags(idrangos_get_user_frags(id) + g_BetAmounts[g_iBetAmount[id]][BET_MULTIPLIER]*160);
        }
    }

    
g_bPlayerBetting[id] = false;
    
g_iBetAmount[id] = 0;

public 
Bet_DoN_Result(id)
{
    if(!
is_user_connected(id))
        return;

    new 
szName[32];
    
get_user_name(idszNamecharsmax(szName));

    switch(
random_num(1100))
    {
        case 
1..20:
        {

            
ChatColor(0Azul"!g[%s]!t %s!y gano el!g DOBLE DE SUS FRAGS!! !g(+%d Frags)"g_PluginInfo[3], szNameget_user_frags(id));            
            
rangos_set_user_frags(idrangos_get_user_frags(id) * 2);
        }
        case 
21..100:
        {
            
ChatColor(0Azul"!g[%s]r!t %s!y perdio todos sus!g FRAGS !yen el!g Me la juego!! (-%d Frags)"g_PluginInfo[3], szNameget_user_frags(id))
            
client_cmd(id"spk %s"Perder)
            
g_iPozo += (rangos_get_user_frags(id) / 4);
            
rangos_set_user_frags(id0);
        }
    }

    
g_bPlayerBetting[id] = false;
    
g_iBetAmount[id] = 0;
}

public 
clcmd_Pozo(id)
{
    
ChatColor(idAzul"!g[%s]!y Frags acumulados en el!g POZO: %d"g_PluginInfo[3], g_iPozo);

    return 
PLUGIN_HANDLED;
}

stock ChatColor(idColors:colormsg[], any:...)
{
    static 
szMsg[191], msgSayText;
    
#define teaminfo_sent(%0) (TeamInfoSent & (1<<%0))
    
    
if (!msgSayText)
        
msgSayText get_user_msgid("SayText");
    
    
vformat(szMsg190msg4);

    
replace_all(szMsg190"!g""^4");
    
replace_all(szMsg190"!y""^1");
    
replace_all(szMsg190"!t""^3");
    
    
message_begin(id MSG_ONE_UNRELIABLE MSG_BROADCASTmsgSayText, .player id);
    
write_byte(color ? (_:color) : 33);
    
write_string(szMsg);
    
message_end();
}

public 
chatcolor_send_teaminfo(id)
{
    if (!
is_user_connected(id))
        return;
    
    static 
msgTeamInfo;
    if (!
msgTeamInfo)
        
msgTeamInfo get_user_msgid("TeamInfo");
    
    static const 
pTeams[][] = { """TERRORIST""CT" };
    
    for (new 
pid 0pid 3pid++)
    {
        
message_begin(MSG_ONE_UNRELIABLEmsgTeamInfo, .player id)
        
write_byte(pid+33)
        
write_string(pTeams[pid])
        
message_end()
    }

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)