Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
25/04/2021, 06:14 PM
(Última modificación: 25/04/2021, 06:14 PM por MalitoMaloso. Edited 1 time in total.)
hola busco un menu de armas simple
que solo el admin la pueda abrir
/armas
que solo se pueda abrir el menu una vez por ronda
porfa para el que tenga algo asi me lo paso
y los que ponga /armas diga no eres vip o admin para acceder al meni
armas primarias
aka47
m4
fama
awp
armas segundarias
usp
deagle
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
Prueba con esto. Puedes añadir más armas siguiendo la info de esta página:
https://forums.alliedmods.net/archive/in...59003.html
Código PHP: #include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.0.0" #define AUTHOR "gabs"
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmas[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_DEAGLE, "weapon_deagle", "Pistola Deagle"} }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /guns", "GunsMenu"); register_clcmd("say /armas", "GunsMenu"); }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_CVAR)) return; new iMenu, iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenú by \rGabs") iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmas; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmas[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmas[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return;
new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmas[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmas[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmas[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmas[iItem][wpnInfo_MenuName]) }
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
26/04/2021, 03:51 AM
(Última modificación: 26/04/2021, 03:56 AM por MalitoMaloso.)
esta bueno pero se podria dejar que solo 1 vez por ronda se abriera el menu ?
y cuando uno esta muerto no tendria que dejar usar el menu ya que sale cuando uno esta muerto y puede elejir arma
Mensajes: 215
Temas: 4
Registro en: Jan 2016
Reputación:
5
Sirve?
Código PHP: #include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.1.0" #define AUTHOR "gabs - sami"
#define SetBitOpenedMenu(%1) (g_bitsIsOpenedMenu |= (1<<(%1&31))) #define CheckBitOpenedMenu(%1) (g_bitsIsOpenedMenu & (1<<(%1&31)))
new g_bitsIsOpenedMenu
new g_iMenu
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmas[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_DEAGLE, "weapon_deagle", "Pistola Deagle"} }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /guns", "GunsMenu"); register_clcmd("say /armas", "GunsMenu"); register_event("HLTV", "ev_new_round", "a", "1=0", "2=0") }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_CVAR) || !is_user_alive(id)) return; else if(CheckBitOpenedMenu(id)) client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un ^4arma ^1esta ronda."); if(!g_iMenu) { new iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenú by \rGabs"); g_iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmas; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmas[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmas[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(g_iMenu, iText); } menu_setprop(g_iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(g_iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(g_iMenu, MPROP_EXITNAME, "Salir"); }
menu_display(id, g_iMenu); }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return;
new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmas[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmas[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmas[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmas[iItem][wpnInfo_MenuName]) SetBitOpenedMenu(id); }
public ev_new_round() { g_bitsIsOpenedMenu = 0; }
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
Mensajes: 215
Temas: 4
Registro en: Jan 2016
Reputación:
5
26/04/2021, 07:53 AM
(Última modificación: 26/04/2021, 08:02 AM por samueldmq. Edited 1 time in total.
Razón: Pierde el indentado en la vista previa XD
)
No estaba igual
Código PHP: #include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.5" #define AUTHOR "gabs - sami"
#define SetBit(%1,%2) (%2 |= (1<<(%1&31))) #define CheckBit(%1,%2) (%2 & (1<<(%1&31)))
new g_bitsIsOpenedPMenu new g_bitsIsOpenedSMenu
new g_iPMenu new g_iSMenu
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrimarias[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_FAMAS, "weapon_famas", "Rifle Famas"}, {CSW_AWP, "weapon_awp", "Sniper AWP"} }
new const szArmasSecundarias[][wpnInfo] = { {CSW_USP, "weapon_usp", "Pistola USP"}, {CSW_DEAGLE, "weapon_deagle", "Pistola Deagle"} }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_clcmd("say /guns", "CheckGunsMenu"); register_clcmd("say /armas", "CheckGunsMenu"); register_event("HLTV", "ev_new_round", "a", "1=0", "2=0") }
public CheckGunsMenu(id) { if( !(get_user_flags(id) & ADMIN_CVAR)) { client_print_color(id, print_team_default, "^4[GUNS]^1 No eres ^4VIP ^1o ^4ADMIN ^1para acceder al menu de armas."); return; } if(!is_user_alive(id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 No puedes abrir el ^4menu de armas^1 estando ^4muerto^1."); return; } if(!CheckBit(id, g_bitsIsOpenedPMenu)) { GunsPMenu(id); } else if(!CheckBit(id, g_bitsIsOpenedSMenu)) { GunsSMenu(id); } else { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya usaste el menu de armas esta ronda."); } }
public GunsPMenu(id) { if(!g_iPMenu) { new iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenu de armas. \rPrimaria"); g_iPMenu = menu_create(iTitle, "GunsPMenu_Handler"); for(new i = 0; i < sizeof szArmasPrimarias; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrimarias[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrimarias[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(g_iPMenu, iText); } menu_setprop(g_iPMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(g_iPMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(g_iPMenu, MPROP_EXITNAME, "Salir"); } menu_display(id, g_iPMenu); }
public GunsPMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return; new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrimarias[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasPrimarias[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrimarias[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Haz elegido un ^4%s^1", szArmasPrimarias[iItem][wpnInfo_MenuName]) SetBit(id, g_bitsIsOpenedPMenu) GunsSMenu(id) }
public GunsSMenu(id) { if(!g_iSMenu) { new iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenu de armas. \rSecundaria"); g_iSMenu = menu_create(iTitle, "GunsSMenu_Handler"); for(new i = 0; i < sizeof szArmasSecundarias; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSecundarias[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSecundarias[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(g_iSMenu, iText); } menu_setprop(g_iSMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(g_iSMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(g_iSMenu, MPROP_EXITNAME, "Salir"); } menu_display(id, g_iSMenu); }
public GunsSMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return; new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSecundarias[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasSecundarias[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSecundarias[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Haz elegido una ^4%s^1", szArmasSecundarias[iItem][wpnInfo_MenuName]) SetBit(id, g_bitsIsOpenedSMenu) GunsSMenu(id) }
public ev_new_round() { g_bitsIsOpenedPMenu = g_bitsIsOpenedSMenu = 0; }
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
IGUAL SE PUEDE ABRIR ESTANDO MUERTO AUN QUE SALE
NO PUEDES ABRIR EL MENU ESTANDO MUERTO
PERO IGUAL ME SALE Y PUEDO ELEJIR ARMA
Y IGUAL PUEDE ABRIR EL MENU MAS DE UNA VEZ EN LA RONDA
Mensajes: 215
Temas: 4
Registro en: Jan 2016
Reputación:
5
Probado
Código PHP: #include <amxmodx> #include <cstrike> #include <fun> #include <fakemeta> #include <hamsandwich>
#define PLUGIN "Weapons 4 Admins" #define VERSION "2.0" #define AUTHOR "gabs - sami"
#define SetBit(%1,%2) (%2 |= (1<<(%1&31))) #define CheckBit(%1,%2) (%2 & (1<<(%1&31)))
new g_bitsIsOpenedPMenu new g_bitsIsOpenedSMenu
new g_iPMenu new g_iSMenu
enum /* Weapon types for stock */ { Primary = 1 , Secondary , Knife , Grenades , C4 };
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÃÂS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrimarias[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_FAMAS, "weapon_famas", "Rifle Famas"}, {CSW_AWP, "weapon_awp", "Sniper AWP"} }
new const szArmasSecundarias[][wpnInfo] = { {CSW_USP, "weapon_usp", "Pistola USP"}, {CSW_DEAGLE, "weapon_deagle", "Pistola Deagle"} }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_clcmd("say /guns", "CheckGunsMenu"); register_clcmd("say /armas", "CheckGunsMenu"); register_event("HLTV", "ev_new_round", "a", "1=0", "2=0") }
public CheckGunsMenu(id) { if( !(get_user_flags(id) & ADMIN_CVAR)) { client_print_color(id, print_team_default, "^4[GUNS]^1 No eres ^4VIP ^1o ^4ADMIN ^1para acceder al menu de armas."); return; } if(!is_user_alive(id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 No puedes abrir el ^4menu de armas^1 estando ^4muerto^1."); return; } if(!CheckBit(id, g_bitsIsOpenedPMenu)) { GunsPMenu(id); } else if(!CheckBit(id, g_bitsIsOpenedSMenu)) { GunsSMenu(id); } else { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya usaste el menu de armas esta ronda."); } return; }
public GunsPMenu(id) { if(!g_iPMenu) { new iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenu de armas. \rPrimaria"); g_iPMenu = menu_create(iTitle, "GunsPMenu_Handler"); for(new i = 0; i < sizeof szArmasPrimarias; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrimarias[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrimarias[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(g_iPMenu, iText); } menu_setprop(g_iPMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(g_iPMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(g_iPMenu, MPROP_EXITNAME, "Salir"); } menu_display(id, g_iPMenu); }
public GunsPMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return; new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrimarias[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); StripWeapons(id, Primary); give_item(id, szArmasPrimarias[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrimarias[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Haz elegido un ^4%s^1", szArmasPrimarias[iItem][wpnInfo_MenuName]) SetBit(id, g_bitsIsOpenedPMenu) GunsSMenu(id) }
public GunsSMenu(id) { if(!g_iSMenu) { new iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns] \wMenu de armas. \rSecundaria"); g_iSMenu = menu_create(iTitle, "GunsSMenu_Handler"); for(new i = 0; i < sizeof szArmasSecundarias; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSecundarias[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSecundarias[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(g_iSMenu, iText); } menu_setprop(g_iSMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(g_iSMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(g_iSMenu, MPROP_EXITNAME, "Salir"); } menu_display(id, g_iSMenu); }
public GunsSMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) return; new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSecundarias[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); StripWeapons(id, Secondary); give_item(id, szArmasSecundarias[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSecundarias[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Haz elegido una ^4%s^1", szArmasSecundarias[iItem][wpnInfo_MenuName]) SetBit(id, g_bitsIsOpenedSMenu) }
public ev_new_round() { g_bitsIsOpenedPMenu = g_bitsIsOpenedSMenu = 0; }
/* * Stripweapons.inc */ stock StripWeapons(id, Type, bool: bSwitchIfActive = true) { new iReturn; if(is_user_alive(id)) { new iEntity, iWeapon; while((iWeapon = GetWeaponFromSlot(id, Type, iEntity)) > 0) iReturn = ham_strip_user_weapon(id, iWeapon, Type, bSwitchIfActive); } return iReturn; }
/* * bugsy * http://forums.alliedmods.net/showpost.php?p=1575989&postcount=2 * * Gets a weapon entity id based on inventory slot. * * @param id: Player id * @param iSlot: Inventory slot you want to get the weaponid from * @param &iEntity: Weapon entity id * @return: Weapon CSW_* index on success, otherwise 0 * * Ex: GetWeaponFromSlot(id, 3, iEntity); // Should return CSW_KNIFE if player has one. * // Knife is always in 3th slot (if not changed with plugin or something); */ stock GetWeaponFromSlot( id , iSlot , &iEntity ) { if ( !( 1 <= iSlot <= 5 ) ) return 0; iEntity = 0; const m_rgpPlayerItems_Slot0 = 367; const m_iId = 43; const XO_WEAPONS = 4; const XO_PLAYER = 5; iEntity = get_pdata_cbase( id , m_rgpPlayerItems_Slot0 + iSlot , XO_PLAYER ); return ( iEntity > 0 ) ? get_pdata_int( iEntity , m_iId , XO_WEAPONS ) : 0; }
/* * ConnorMcLeod * http://forums.alliedmods.net/showpost.php?p=1109747&postcount=42 * * Strips a player's weapon based on weapon index. * * @param id: Player id * @param iCswId: Weapon CSW_* index * @param iSlot: Inventory slot (Leave 0 if not sure) * @param bSwitchIfActive: Switch weapon if currently deployed * @return: 1 on success, otherwise 0 * * Ex: ham_strip_user_weapon(id, CSW_M4A1); // Strips m4a1 if user has one. * ham_strip_user_weapon(id, CSW_HEGRENADE, _, false); // Strips HE grenade if user has one * // without switching weapons. */ stock ham_strip_user_weapon(id, iCswId, iSlot = 0, bool:bSwitchIfActive = true) { new iWeapon if( !iSlot ) { static const iWeaponsSlots[] = { -1, 2, //CSW_P228 -1, 1, //CSW_SCOUT 4, //CSW_HEGRENADE 1, //CSW_XM1014 5, //CSW_C4 1, //CSW_MAC10 1, //CSW_AUG 4, //CSW_SMOKEGRENADE 2, //CSW_ELITE 2, //CSW_FIVESEVEN 1, //CSW_UMP45 1, //CSW_SG550 1, //CSW_GALIL 1, //CSW_FAMAS 2, //CSW_USP 2, //CSW_GLOCK18 1, //CSW_AWP 1, //CSW_MP5NAVY 1, //CSW_M249 1, //CSW_M3 1, //CSW_M4A1 1, //CSW_TMP 1, //CSW_G3SG1 4, //CSW_FLASHBANG 2, //CSW_DEAGLE 1, //CSW_SG552 1, //CSW_AK47 3, //CSW_KNIFE 1 //CSW_P90 } iSlot = iWeaponsSlots[iCswId] }
const XTRA_OFS_PLAYER = 5 const m_rgpPlayerItems_Slot0 = 367
iWeapon = get_pdata_cbase(id, m_rgpPlayerItems_Slot0 + iSlot, XTRA_OFS_PLAYER)
const XTRA_OFS_WEAPON = 4 const m_pNext = 42 const m_iId = 43
while( iWeapon > 0 ) { if( get_pdata_int(iWeapon, m_iId, XTRA_OFS_WEAPON) == iCswId ) { break } iWeapon = get_pdata_cbase(iWeapon, m_pNext, XTRA_OFS_WEAPON) }
if( iWeapon > 0 ) { const m_pActiveItem = 373 if( bSwitchIfActive && get_pdata_cbase(id, m_pActiveItem, XTRA_OFS_PLAYER) == iWeapon ) { ExecuteHamB(Ham_Weapon_RetireWeapon, iWeapon) }
if( ExecuteHamB(Ham_RemovePlayerItem, id, iWeapon) ) { user_has_weapon(id, iCswId, 0) ExecuteHamB(Ham_Item_Kill, iWeapon) return 1 } }
return 0 }
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
26/04/2021, 09:21 PM
(Última modificación: 26/04/2021, 09:23 PM por MalitoMaloso.)
sigue igual
seguro que funciona bien ? yo mori y igual pude abrir el menu y elejir arma
igual podia abrir mas de 1 vez el menu por ronda
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
26/04/2021, 10:06 PM
(Última modificación: 26/04/2021, 10:07 PM por GabsHp. Edited 1 time in total.)
Ahí traté de dejarlo un poco más completo
Igual prueba y comentas cualquier error
Código PHP: /* Sublime AMXX Editor v3.0.0-beta */
#include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.0.18" #define AUTHOR "gabs"
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrim[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_M3, "weapon_m3", "Escopeta M3"} }
new const szArmasSec[][wpnInfo] = { {CSW_DEAGLE, "weapon_deagle", "Desert Deagle"}, {CSW_USP, "weapon_usp", "USP"}, {CSW_GLOCK18, "weapon_glock18", "GLOCK 18"} } new g_iPrim, g_iSec;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event( "HLTV", "fw_NewRound", "a", "1=0", "2=0" );
register_clcmd("say /guns", "MainMenu"); register_clcmd("say /armas", "MainMenu"); }
public fw_NewRound() { g_iPrim = 0; g_iSec = 0; }
public MainMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK)) return PLUGIN_HANDLED; new iMenu, iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns Menú] \wMenú by \rGabs"); iMenu = menu_create(iTitle, "MainMenuHandler"); formatex(iText, charsmax(iText), "%sSeleccionar Primaria", Get_BitVar(g_iPrim, id) ? "\d":"\w"); menu_additem(iMenu, iText); formatex(iText, charsmax(iText), "%sSeleccionar Secundaria", Get_BitVar(g_iSec, id) ? "\d":"\w"); menu_additem(iMenu, iText); menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public MainMenuHandler(id, iItem, iMenu) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
switch(iItem) { case 0: { if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; } GunsMenu(id); return PLUGIN_HANDLED; } case 1: { if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } Guns2Menu(id); return PLUGIN_HANDLED; } } return PLUGIN_HANDLED; }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED; new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Primaria] \wMenú by \rGabs^n\dSelecciona tu arma primaria"); iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmasPrim; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrim[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; } new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasPrim[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrim[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasPrim[iItem][wpnInfo_MenuName]) Set_BitVar(g_iPrim, id); return PLUGIN_HANDLED; }
public Guns2Menu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED; new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Secundaria] \wMenú by \rGabs^n\dSelecciona tu arma secundaria"); iMenu = menu_create(iTitle, "Guns2Menu_Handler"); for(new i = 0; i < sizeof szArmasSec; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSec[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public Guns2Menu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasSec[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSec[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasSec[iItem][wpnInfo_MenuName]) Set_BitVar(g_iSec, id); return PLUGIN_HANDLED; }
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
27/04/2021, 02:42 AM
(Última modificación: 27/04/2021, 03:01 AM por MalitoMaloso. Edited 2 times in total.)
FUNCIONA BIEN PERO SOLO ABRE UNA RONDA DSP NO DEJA ELEJIR ARMAS
Y SI ESTOY MUERTO IGUAL ME SALE EL MENU
Mensajes: 215
Temas: 4
Registro en: Jan 2016
Reputación:
5
(26/04/2021, 09:21 PM)MalitoMaloso escribió: sigue igual
seguro que funciona bien ? yo mori y igual pude abrir el menu y elejir arma
igual podia abrir mas de 1 vez el menu por ronda
Lo probé antes de pasarlo
Me rindo
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
Código PHP: /* Sublime AMXX Editor v3.0.0-beta */
#include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.0.19" #define AUTHOR "gabs"
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrim[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_M3, "weapon_m3", "Escopeta M3"} }
new const szArmasSec[][wpnInfo] = { {CSW_DEAGLE, "weapon_deagle", "Desert Deagle"}, {CSW_USP, "weapon_usp", "USP"}, {CSW_GLOCK18, "weapon_glock18", "GLOCK 18"} } new g_iPrim, g_iSec;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event( "HLTV", "fw_NewRound", "a", "1=0", "2=0" );
register_clcmd("say /guns", "MainMenu"); register_clcmd("say /armas", "MainMenu"); }
public fw_NewRound() { static i, mp; if(!mp) mp = get_maxplayers();
for(i = 1; i <= mp; ++i) { UnSet_BitVar(g_iPrim,i) UnSet_BitVar(g_iSec,i) } }
public MainMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns Menú] \wMenú by \rGabs"); iMenu = menu_create(iTitle, "MainMenuHandler"); formatex(iText, charsmax(iText), "%sSeleccionar Primaria", Get_BitVar(g_iPrim, id) ? "\d":"\w"); menu_additem(iMenu, iText); formatex(iText, charsmax(iText), "%sSeleccionar Secundaria", Get_BitVar(g_iSec, id) ? "\d":"\w"); menu_additem(iMenu, iText); menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu);
return PLUGIN_HANDLED; }
public MainMenuHandler(id, iItem, iMenu) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
switch(iItem) { case 0: { if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; } GunsMenu(id); return PLUGIN_HANDLED; } case 1: { if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } Guns2Menu(id); return PLUGIN_HANDLED; } } return PLUGIN_HANDLED; }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Primaria] \wMenú by \rGabs^n\dSelecciona tu arma primaria"); iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmasPrim; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrim[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; }
new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasPrim[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrim[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasPrim[iItem][wpnInfo_MenuName]) Set_BitVar(g_iPrim, id); return PLUGIN_HANDLED; }
public Guns2Menu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED; new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Secundaria] \wMenú by \rGabs^n\dSelecciona tu arma secundaria"); iMenu = menu_create(iTitle, "Guns2Menu_Handler"); for(new i = 0; i < sizeof szArmasSec; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSec[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public Guns2Menu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasSec[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSec[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasSec[iItem][wpnInfo_MenuName]) Set_BitVar(g_iSec, id); return PLUGIN_HANDLED; }
► NO DOY AYUDA VIA MENSAJE PRIVADO ◄
* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Mensajes: 39
Temas: 14
Registro en: Apr 2021
Reputación:
0
(27/04/2021, 04:45 PM)kikizon2 escribió: Código PHP: /* Sublime AMXX Editor v3.0.0-beta */
#include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.0.19" #define AUTHOR "gabs"
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrim[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_M3, "weapon_m3", "Escopeta M3"} }
new const szArmasSec[][wpnInfo] = { {CSW_DEAGLE, "weapon_deagle", "Desert Deagle"}, {CSW_USP, "weapon_usp", "USP"}, {CSW_GLOCK18, "weapon_glock18", "GLOCK 18"} } new g_iPrim, g_iSec;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event( "HLTV", "fw_NewRound", "a", "1=0", "2=0" );
register_clcmd("say /guns", "MainMenu"); register_clcmd("say /armas", "MainMenu"); }
public fw_NewRound() { static i, mp; if(!mp) mp = get_maxplayers();
for(i = 1; i <= mp; ++i) { UnSet_BitVar(g_iPrim,i) UnSet_BitVar(g_iSec,i) } }
public MainMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns Menú] \wMenú by \rGabs"); iMenu = menu_create(iTitle, "MainMenuHandler"); formatex(iText, charsmax(iText), "%sSeleccionar Primaria", Get_BitVar(g_iPrim, id) ? "\d":"\w"); menu_additem(iMenu, iText); formatex(iText, charsmax(iText), "%sSeleccionar Secundaria", Get_BitVar(g_iSec, id) ? "\d":"\w"); menu_additem(iMenu, iText); menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu);
return PLUGIN_HANDLED; }
public MainMenuHandler(id, iItem, iMenu) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
switch(iItem) { case 0: { if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; } GunsMenu(id); return PLUGIN_HANDLED; } case 1: { if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } Guns2Menu(id); return PLUGIN_HANDLED; } } return PLUGIN_HANDLED; }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Primaria] \wMenú by \rGabs^n\dSelecciona tu arma primaria"); iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmasPrim; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrim[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; }
new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasPrim[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrim[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasPrim[iItem][wpnInfo_MenuName]) Set_BitVar(g_iPrim, id); return PLUGIN_HANDLED; }
public Guns2Menu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED; new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Secundaria] \wMenú by \rGabs^n\dSelecciona tu arma secundaria"); iMenu = menu_create(iTitle, "Guns2Menu_Handler"); for(new i = 0; i < sizeof szArmasSec; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSec[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public Guns2Menu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasSec[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSec[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasSec[iItem][wpnInfo_MenuName]) Set_BitVar(g_iSec, id); return PLUGIN_HANDLED; }
PERDON POR REVIVIR EL TEMA PERO A MI ME LANZA ERROR Y NO ME DEJA COMPILAR
baw-ma.sma(94) : error 017: undefined symbol "client_print_color"
baw-ma.sma(104) : error 017: undefined symbol "client_print_color"
baw-ma.sma(126) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(144) : error 017: undefined symbol "client_print_color"
baw-ma.sma(149) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(152) : error 017: undefined symbol "client_print_color"
baw-ma.sma(167) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(185) : error 017: undefined symbol "client_print_color"
baw-ma.sma(189) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(192) : error 017: undefined symbol "client_print_color"
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
(28/04/2021, 02:05 AM)gmartinez escribió: PERDON POR REVIVIR EL TEMA PERO A MI ME LANZA ERROR Y NO ME DEJA COMPILAR
baw-ma.sma(94) : error 017: undefined symbol "client_print_color"
baw-ma.sma(104) : error 017: undefined symbol "client_print_color"
baw-ma.sma(126) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(144) : error 017: undefined symbol "client_print_color"
baw-ma.sma(149) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(152) : error 017: undefined symbol "client_print_color"
baw-ma.sma(167) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(185) : error 017: undefined symbol "client_print_color"
baw-ma.sma(189) : error 017: undefined symbol "cs_get_weapon_info"
baw-ma.sma(192) : error 017: undefined symbol "client_print_color"
Actualiza tu amx a 1.9
Mensajes: 39
Temas: 14
Registro en: Apr 2021
Reputación:
0
28/04/2021, 02:07 AM
(Última modificación: 28/04/2021, 02:22 PM por gmartinez.)
(28/04/2021, 02:06 AM)GabsHp escribió: Actualiza tu amx a 1.9
hamm sorry uso compilador web, quizá sea por eso
(27/04/2021, 04:45 PM)kikizon2 escribió: Código PHP: /* Sublime AMXX Editor v3.0.0-beta */
#include <amxmodx> #include <cstrike> #include <fun>
#define PLUGIN "Weapons 4 Admins" #define VERSION "1.0.19" #define AUTHOR "gabs"
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
enum _:wpnInfo { wpnInfo_Id, wpnInfo_Name[32], wpnInfo_MenuName[32], }
//AÑADE MÁS ARMAS SIGUIENDO LA INFORMACIÓN: https://forums.alliedmods.net/archive/index.php/t-59003.html new const szArmasPrim[][wpnInfo] = { {CSW_AK47, "weapon_ak47", "Rifle AK47"}, {CSW_M4A1, "weapon_m4a1", "Rifle M4A1"}, {CSW_M3, "weapon_m3", "Escopeta M3"} }
new const szArmasSec[][wpnInfo] = { {CSW_DEAGLE, "weapon_deagle", "Desert Deagle"}, {CSW_USP, "weapon_usp", "USP"}, {CSW_GLOCK18, "weapon_glock18", "GLOCK 18"} } new g_iPrim, g_iSec;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event( "HLTV", "fw_NewRound", "a", "1=0", "2=0" );
register_clcmd("say /guns", "MainMenu"); register_clcmd("say /armas", "MainMenu"); }
public fw_NewRound() { static i, mp; if(!mp) mp = get_maxplayers();
for(i = 1; i <= mp; ++i) { UnSet_BitVar(g_iPrim,i) UnSet_BitVar(g_iSec,i) } }
public MainMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[32], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Guns Menú] \wMenú by \rGabs"); iMenu = menu_create(iTitle, "MainMenuHandler"); formatex(iText, charsmax(iText), "%sSeleccionar Primaria", Get_BitVar(g_iPrim, id) ? "\d":"\w"); menu_additem(iMenu, iText); formatex(iText, charsmax(iText), "%sSeleccionar Secundaria", Get_BitVar(g_iSec, id) ? "\d":"\w"); menu_additem(iMenu, iText); menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu);
return PLUGIN_HANDLED; }
public MainMenuHandler(id, iItem, iMenu) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
switch(iItem) { case 0: { if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; } GunsMenu(id); return PLUGIN_HANDLED; } case 1: { if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } Guns2Menu(id); return PLUGIN_HANDLED; } } return PLUGIN_HANDLED; }
public GunsMenu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED;
new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Primaria] \wMenú by \rGabs^n\dSelecciona tu arma primaria"); iMenu = menu_create(iTitle, "GunsMenu_Handler"); for(new i = 0; i < sizeof szArmasPrim; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasPrim[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public GunsMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iPrim, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma primaria durante esta ronda!"); return PLUGIN_HANDLED; }
new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasPrim[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasPrim[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasPrim[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasPrim[iItem][wpnInfo_MenuName]) Set_BitVar(g_iPrim, id); return PLUGIN_HANDLED; }
public Guns2Menu(id) { if(!(get_user_flags(id) & ADMIN_KICK) || !is_user_alive(id)) return PLUGIN_HANDLED; new iMenu, iTitle[64], iText[64]; formatex(iTitle, charsmax(iTitle), "\r[Arma Secundaria] \wMenú by \rGabs^n\dSelecciona tu arma secundaria"); iMenu = menu_create(iTitle, "Guns2Menu_Handler"); for(new i = 0; i < sizeof szArmasSec; i++) { new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[i][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); formatex(iText, charsmax(iText), "\r[\w%s\r] [\y%d \w de munición\r]", szArmasSec[i][wpnInfo_MenuName], iWpnAmmo); menu_additem(iMenu, iText); } menu_setprop(iMenu, MPROP_BACKNAME, "Atrás"); menu_setprop(iMenu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(iMenu, MPROP_EXITNAME, "Salir"); menu_display(id, iMenu); return PLUGIN_HANDLED; }
public Guns2Menu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT || !is_user_alive(id)) return PLUGIN_HANDLED;
if(Get_BitVar(g_iSec, id)) { client_print_color(id, print_team_default, "^4[GUNS]^1 Ya has elegido un arma secundaria durante esta ronda!"); return PLUGIN_HANDLED; } new iWpnAmmo; iWpnAmmo = cs_get_weapon_info(szArmasSec[iItem][wpnInfo_Id], CsWeaponInfo:CS_WEAPONINFO_MAX_ROUNDS); give_item(id, szArmasSec[iItem][wpnInfo_Name]); cs_set_user_bpammo(id, szArmasSec[iItem][wpnInfo_Id], iWpnAmmo); client_print_color(id, print_team_default, "^4[GUNS]^1 Se te ha otorgado un ^4%s^1", szArmasSec[iItem][wpnInfo_MenuName]) Set_BitVar(g_iSec, id); return PLUGIN_HANDLED; }
Disculpa Kikizon2 ya compile el plugin y todo, pero no me deja seleccionar, osea me aparece el menu, pero cuando selecciono Primaria o secundaria se queda ahi no me muestra mas nada
|