como puedo comprar en cualquier lado
#1
una pregunta cómo hago para que al apretar B pueda comprar cosas sin estar en la base?

Código PHP:
#include <amxmodx>

#define PLUGIN "Nuevo buy sexy"
#define VERSION "1.0"
#define AUTHOR "3lmack'"

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("buy""cmd_buy")
}


public 
cmd_buy(id)
{
    new 
menu menu_create("\r[\wNuevo\r] \wBuy Menu""cmd_buy_abrir")
    
menu_additem(menu"\wHandgun""0")
    
menu_additem(menu"\wShotgun""1")
    
menu_additem(menu"\wSub-Machine Gun""2")
    
menu_additem(menu"\wRifle""3")
    
menu_additem(menu"\wMachine Gun""4")
    
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
menu_setprop(menuMPROP_EXITNAME"\rSalir")
    
    
menu_display(idmenu0)
    return 
PLUGIN_HANDLED;

Responder
#2
https://forums.alliedmods.net/showthread.php?p=358059
Responder
#3
(23/02/2017, 05:46 PM)Web Controller escribió: https://forums.alliedmods.net/showthread.php?p=358059

ese plugin bloquea el buy? yo quería que el rango de compra sea más grande para abrir el menú del buy en cualquier punto del mapa

Código PHP:
/* AMX Mod X
*   Buyzone Range
*
* (c) Copyright 2006 by VEN
*
* This file is provided as is (no warranties)
*
*     DESCRIPTION
*       Plugin allows to set buyzone range: everywhere/nowhere/default
*       Note: AMX Mod X v1.75+ required
*
*     CVARs
*       bz_range (0: Nowhere, 1: Default, 2: Everywhere, default: 1)
*       Note: CVAR change is accepted every new round and player spawn
*/

#include <amxmodx>
#include <fakemeta>

// plugin's main information
#define PLUGIN_NAME "Buyzone Range"
#define PLUGIN_VERSION "0.1"
#define PLUGIN_AUTHOR "VEN"

// OPTIONS BELOW

// CVAR name and its default value
#define CVAR_NAME "bz_range"
#define CVAR_DEF "1"

// uncomment to disable automatic 32/64bit processor detection
// possible values is <0: 32bit | 1: 64bit>
//#define PROCESSOR_TYPE 0

// OPTIONS ABOVE

// mapzone player's private data offset
#define OFFSET_32BIT 235
#define OFFSET_64BIT 268

// offset's linux difference
#define OFFSET_LINUX_DIFF 5

// buyzone bit
#define BIT_BUYZONE (1<<0)

// determination of actual offsets
#if !defined PROCESSOR_TYPE // is automatic 32/64bit processor detection?
    #if cellbits == 32 // is the size of a cell 32 bits?
        // then considering processor as 32 bit
        #define OFFSET OFFSET_32BIT
    #else // in other case considering the size of a cell as 64 bits
        // and then considering processor as 64 bit
        #define OFFSET OFFSET_64BIT
    #endif
#else // processor type is specified by PROCESSOR_TYPE define
    #if PROCESSOR_TYPE == 0 // 32bit processor defined
        #define OFFSET OFFSET_32BIT
    #else // considering that defined 64bit processor
        #define OFFSET OFFSET_64BIT
    #endif
#endif

// get/set mapzone bits
#define CS_GET_USER_MAPZONES(%1) get_pdata_int(%1, OFFSET, OFFSET_LINUX_DIFF)
#define CS_SET_USER_MAPZONES(%1,%2) set_pdata_int(%1, OFFSET, %2, OFFSET_LINUX_DIFF)

// fake buyzone absmin and absmax
new Float:g_buyzone_min[3] = {-8192.0, -8192.0, -8192.0}
new 
Float:g_buyzone_max[3] = {-8191.0, -8191.0, -8191.0}

new 
g_buyzone
new g_pcvar

new bool:g_enabled
new g_bit

new bool:g_new_round
new g_maxplayers

#define MAX_PLAYERS 32
new bool:g_alive[MAX_PLAYERS 1]

new 
g_msgid_icon
new g_icon_name[] = "buyzone"

#define ICON_R 0
#define ICON_G 160
#define ICON_B 0

public plugin_init() {
    
register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR)

    
g_pcvar register_cvar(CVAR_NAMECVAR_DEF)

    
register_clcmd("buy""menu_block")
    
register_clcmd("buyequip""menu_block")
    
register_clcmd("fullupdate""clcmd_fullupdate")

    
register_event("HLTV""event_new_round""a""1=0""2=0")
    
register_event("ResetHUD""event_player_alive""be")
    
register_event("Health""event_player_dead""bd""1=0")

    
register_forward(FM_PlayerPostThink"forward_player_postthink")

    
g_msgid_icon get_user_msgid("StatusIcon")
    
register_message(g_msgid_icon"message_status_icon")

    
g_maxplayers get_maxplayers()

    
g_buyzone engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"func_buyzone"))
    
dllfunc(DLLFunc_Spawng_buyzone)
    
engfunc(EngFunc_SetSizeg_buyzoneg_buyzone_ming_buyzone_max)

    
update_state_vars()
}

public 
forward_player_postthink(id) {
    if (
g_alive[id] && g_enabled) {
        switch (
g_bit) {
            case 
BIT_BUYZONEdllfunc(DLLFunc_Touchg_buyzoneid)
            default: 
CS_SET_USER_MAPZONES(idCS_GET_USER_MAPZONES(id) & ~BIT_BUYZONE)
        }
    }
}

public 
event_new_round() {
    
g_new_round true
    set_task
(0.1"task_unset_var")
    
update_state_vars()
}

public 
task_unset_var() {
    
g_new_round false
}

public 
event_player_alive(id) {
    
g_alive[id] = true

    
if (g_new_round) {
        if (
g_enabled)
            
draw_buyzone_icon(idg_bit)
    }
    else {
        
update_state_vars()
        if (
g_enabled) {
            for (new 
1<= g_maxplayers; ++i) {
                if (
g_alive[i])
                    
draw_buyzone_icon(ig_bit)
            }
        }
    }
}

public 
event_player_dead(id) {
    
g_alive[id] = false
}

public 
client_disconnect(id) {
    
g_alive[id] = false
}

public 
message_status_icon(msg_idmsg_destid) {
    if (!
g_alive[id] || !g_enabled)
        return 
PLUGIN_CONTINUE

    
new icon[8]
    
get_msg_arg_string(2icon7)
    if (
equal(icong_icon_name))
        return 
PLUGIN_HANDLED

    
return PLUGIN_CONTINUE
}

public 
menu_block(id) {
    if (
g_alive[id] && g_enabled && !g_bit)
        return 
PLUGIN_HANDLED

    
return PLUGIN_CONTINUE
}

public 
clcmd_fullupdate() {
    return 
PLUGIN_HANDLED
}

update_state_vars() {
    new 
cvar_value get_pcvar_num(g_pcvar)
    
g_enabled true
    
switch (cvar_value) {
        case  
0g_bit 0
        
case  1g_enabled false
        
default: g_bit BIT_BUYZONE
    
}
}

draw_buyzone_icon(iddraw) {
    
message_begin(MSG_ONEg_msgid_icon_id)
    
write_byte(draw)
    
write_string(g_icon_name)
    if (
draw) {
        
write_byte(ICON_R)
        
write_byte(ICON_G)
        
write_byte(ICON_B)
    }
    
message_end()

Responder
#4
(23/02/2017, 05:58 PM)3lmack escribió:
(23/02/2017, 05:46 PM)Web Controller escribió: https://forums.alliedmods.net/showthread.php?p=358059

ese plugin bloquea el buy? yo quería que el rango de compra sea más grande para abrir el menú del buy en cualquier punto del mapa

Leer no hace daño.

VEN escribió:CVARs
bz_range (0: Nowhere, 1: Default, 2: Everywhere, default: 1)
Note: CVAR change is accepted every new round and player spawn

Poné la cvar bz_range en 2 y reiniciá la ronda.
STEAM

(25/07/2016, 11:34 PM)Neeeeeeeeeel.- escribió:
(25/07/2016, 11:33 PM)Web Controller escribió: Este mensaje no se va a ver asi que russel te amo siempre me gustaste :$

Solamente voy a restaurar los datos del template de la db que rompi... no te ilusiones.
Responder
#5
VEN escribió:CVARs
bz_range (0: Nowhere, 1: Default, 2: Everywhere, default: 1)
Note: CVAR change is accepted every new round and player spawn

Poné la cvar bz_range en 2 y reiniciá la ronda.

ya pero ahora me sale error en el log mira
Código PHP:
L 02/23/2017 20:59:40Start of error session.
L 02/23/2017 20:59:40Info (map "de_dust2") (file "addons/amxmodx/logs/error_20170223.log")
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:40: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121)
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:40: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121)
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:40: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121)
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:40: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121)
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:40: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121)
L 02/23/2017 20:59:40: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:40: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:40: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:54: [FAKEMETAInvalid entity
L 02
/23/2017 20:59:54: [AMXXDisplaying debug trace (plugin "buyzonerange.amxx")
L 02/23/2017 20:59:54: [AMXXRun time error 10native error (native "dllfunc")
L 02/23/2017 20:59:54: [AMXX]    [0buyzonerange.sma::forward_player_postthink (line 121

que seria aca
Código PHP:
public forward_player_postthink(id) {
    if (
g_alive[id] && g_enabled) {
        switch (
g_bit) {
            case 
BIT_BUYZONEdllfunc(DLLFunc_Touchg_buyzoneid)
            default: 
CS_SET_USER_MAPZONES(idCS_GET_USER_MAPZONES(id) & ~BIT_BUYZONE)
        }
    }

ayuda Whatdone
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)