Mensajes: 77
Temas: 26
Registro en: May 2016
Reputación:
0
Saludos
Es posible crear un code lo cual cuando un player1 compre 1 arma y el otro player2 no la pueda comprar porque ya el player1 la tiene..
aprendiendo
Mensajes: 1,902
Temas: 35
Registro en: Jan 2014
Reputación:
28
Comprar en un menú personalizado, o el menú default del CS?
Mensajes: 77
Temas: 26
Registro en: May 2016
Reputación:
0
me seria útil para las dos opciones menu y default CS
aprendiendo
Mensajes: 1,867
Temas: 57
Registro en: Oct 2014
Reputación:
16
para menu es facil, en tu code del menu haces lo siguiente
Código PHP: // creamos un boolean // aca te lo explico para 1 sola arma new bool:g_arma
// en nueva ronda o cuando respawnea (ya no tiene más el arma) g_arma = false
// cuando compra el arma if(g_arma) // si alguien ya compró el arma { client_print(id, print_chat, "Alguien ya tiene esta arma"); return PLUGIN_HANDLED; } else // si nadie la compró { give_item... // le das el arma
}
aca te lo expliqué para un arma, para el menu default del cs creo que ni idea...
Mensajes: 77
Temas: 26
Registro en: May 2016
Reputación:
0
Si se usara el menu natives de skylar quedaria algo asi Código PHP: #include <amxmodx> #include <cstrike> #include <TiendaNatives> #include <ColorChat>
/*------------------ / Defines \ ------------------*/ #define gPlugin "Tienda[Natives]" #define Prefix "[AMXX-ES]"
/*------------------ / Enumerador \ ------------------*/ enum _:DATA_TIENDA { NOMBRE[20], PRECIO }
/*------------------ / Constante \ ------------------*/ new const ItemsTienda[][DATA_TIENDA] = { {"Gatling", 1000}, {"Plasma-Gun", 1200}, {"Balrog-III", 1400} }
/*------------------ / Funciones \ ------------------*/ public plugin_init() { /* = Plugin = */ register_plugin(gPlugin, "1.0", "Skylar") /* = Clcmd = */ register_clcmd("nightvision", "menu_tienda") }
/*------------------ / Tienda \ ------------------*/ public menu_tienda(id) { new i, menu, text[100] menu = menu_create("\y[\dAMXX-ES\y]\w Tienda por Natives", "handler_tienda") for(i = 0; i < sizeof(ItemsTienda); i++) { if(cs_get_user_money(id) < ItemsTienda[i][PRECIO]) { formatex(text, charsmax(text), "\d%s \r[ $%d ]", ItemsTienda[i][NOMBRE], ItemsTienda[i][PRECIO]) } else { formatex(text, charsmax(text), "\w%s \y[ $%d ]", ItemsTienda[i][NOMBRE], ItemsTienda[i][PRECIO]) } menu_additem(menu, text, _, _, menu_makecallback("tienda_callback")) } menu_display(id, menu) }
/*------------------ / Callback \ ------------------*/ public tienda_callback(id, menu, item) { if(cs_get_user_money(id) < ItemsTienda[item][PRECIO]) return ITEM_DISABLED; return ITEM_ENABLED; }
/*------------------ / Handler Tienda \ ------------------*/ public handler_tienda(id, menu, item) { if(item == MENU_EXIT) return PLUGIN_HANDLED; switch(item) { case 0: tienda_gatling(id) case 1: tienda_plasma(id) case 2: tienda_balrog(id) } cs_set_user_money(id, cs_get_user_money(id) - ItemsTienda[item][PRECIO], 1) ColorChat(id, GREEN, "%s^1 Compraste:^4 %s.", Prefix, ItemsTienda[item][NOMBRE]) return PLUGIN_HANDLED; }
Como quedaria porque quede confundido,,
aprendiendo
Mensajes: 684
Temas: 36
Registro en: Oct 2016
Reputación:
2
Código PHP: #include <amxmodx> #include <cstrike> #include <TiendaNatives> #include <ColorChat>
/*------------------ / Defines \ ------------------*/ #define gPlugin "Tienda[Natives]" #define Prefix "[AMXX-ES]"
/*------------------ / Bools \ ------------------*/ new bool:portador[33] new bool:en_uso_balrog
/*------------------ / Enumerador \ ------------------*/ enum _:DATA_TIENDA { NOMBRE[20], PRECIO }
/*------------------ / Constante \ ------------------*/ new const ItemsTienda[][DATA_TIENDA] = { {"Gatling", 1000}, {"Plasma-Gun", 1200}, {"Balrog-III", 1400} }
/*------------------ / Funciones \ ------------------*/ public plugin_init() { /* = Plugin = */ register_plugin(gPlugin, "1.0", "Skylar") register_event("DeathMsg", "muertitos", "a") /* = Clcmd = */ register_clcmd("nightvision", "menu_tienda") }
public muertitos() { new a = read_data(2) if(portador[a]) { en_uso_balrog = false portador[a] = false } }
/*------------------ / Tienda \ ------------------*/ public menu_tienda(id) { new i, menu, text[100] menu = menu_create("\y[\dAMXX-ES\y]\w Tienda por Natives", "handler_tienda") for(i = 0; i < sizeof(ItemsTienda); i++) { if(cs_get_user_money(id) < ItemsTienda[i][PRECIO]) { formatex(text, charsmax(text), "\d%s \r[ $%d ]", ItemsTienda[i][NOMBRE], ItemsTienda[i][PRECIO]) } else { formatex(text, charsmax(text), "\w%s \y[ $%d ]", ItemsTienda[i][NOMBRE], ItemsTienda[i][PRECIO]) } menu_additem(menu, text, _, _, menu_makecallback("tienda_callback")) } menu_display(id, menu) }
/*------------------ / Callback \ ------------------*/ public tienda_callback(id, menu, item) { if(cs_get_user_money(id) < ItemsTienda[item][PRECIO]) return ITEM_DISABLED; return ITEM_ENABLED; }
/*------------------ / Handler Tienda \ ------------------*/ public handler_tienda(id, menu, item) { if(item == MENU_EXIT) return PLUGIN_HANDLED; switch(item) { case 0: { tienda_gatling(id) } case 1: { tienda_plasma(id) } case 2: { if(en_uso_balrog) { ColorChat(id, GREEN, "%s ^1Arma en ^4Uso", Prefix) return PLUGIN_HANDLED; } else { tienda_balrog(id) en_uso_balrog = true portador[id] = true } } } cs_set_user_money(id, cs_get_user_money(id) - ItemsTienda[item][PRECIO], 1) ColorChat(id, GREEN, "%s^1 Compraste:^4 %s.", Prefix, ItemsTienda[item][NOMBRE]) return PLUGIN_HANDLED; }
Debería ir así supongo yo.
Java, Mysql, PHP, Python and more.
Mensajes: 2,094
Temas: 59
Registro en: Feb 2015
Reputación:
15
Creo que se puede con orpheu, ire a investigar un poco.
(18/11/2014, 05:47 PM)Neeeeeeeeeel.- escribió: Por qué necesitan una guía para todo? Meté mano y que salga lo que salga... es la mejor forma de aprender.
(16/05/2016, 11:08 PM)kikizon2 escribió: No cabe duda que tienen mierda en vez de cerebro, par de pendejos v:
Mensajes: 1,933
Temas: 39
Registro en: Jul 2014
Reputación:
23
(23/03/2017, 09:43 PM)OsweRRR escribió: Creo que se puede con orpheu, ire a investigar un poco.
Orpheu en hlds para bloquear dicha compra???
Código PHP: /** * Called when CS internally fires a command to a player. It does this for a few * functions, most notably rebuy/autobuy functionality. This is also used to pass * commands to CZ bots internally. * * @param id Client index. * @param cmd Command string. * @return PLUGIN_HANDLED to block, PLUGIN_CONTINUE for normal operation. */ forward CS_InternalCommand(id, const cmd[]);
Mensajes: 1,191
Temas: 41
Registro en: Jun 2014
Reputación:
8
Código PHP: register_clcmd("deagle", "cmdBlock")
Código PHP: public cmdBlock(id){ if(block) return PLUGIN_HANDLED block = true return PLUGIN_CONTINUE }
capaz funciona (?)
Mensajes: 1,933
Temas: 39
Registro en: Jul 2014
Reputación:
23
(24/03/2017, 02:52 PM)AGustiN escribió: Código PHP: register_clcmd("deagle", "cmdBlock")
Código PHP: public cmdBlock(id){ if(block) return PLUGIN_HANDLED block = true return PLUGIN_CONTINUE }
capaz funciona (?)
con autobuy o rebuy la compro otra vez gg
Mensajes: 1,191
Temas: 41
Registro en: Jun 2014
Reputación:
8
(24/03/2017, 03:08 PM)Sugisaki escribió: (24/03/2017, 02:52 PM)AGustiN escribió: Código PHP: register_clcmd("deagle", "cmdBlock")
Código PHP: public cmdBlock(id){ if(block) return PLUGIN_HANDLED block = true return PLUGIN_CONTINUE }
capaz funciona (?)
con autobuy o rebuy la compro otra vez gg
tendria que registrar todas las compras plox
|