Raised This Month: $51 Target: $400
 12% 

Rebuy and FullAmmo Primary and secondary


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
AstRoid
Junior Member
Join Date: May 2020
Location: Cordoba, Argentina
Old 10-23-2020 , 17:04   Rebuy and FullAmmo Primary and secondary
Reply With Quote #1

Hello again xd. As you can see, I'm creating my first shopping menu, and I was needing 2 little things. A rebuy to give you the weapons you bought in the menu and 2 commands for the primary and secondary ammunition (I adapted some stocks but as a test). (Like the one in the default menu of the cs, and to be charged the price of bullets)


PHP Code:
#include <amxmodx> 
#include <cstrike> 
#include <fun> 
#include <hamsandwich> 
#include <fakemeta> 
#include <nst_weapons>  
#include <jctf>

#define BuySound "NST_WeaponMenu/BuySound.wav"
#define PickWeapon "items/gunpickup2.wav"

const m_pNext 42
const m_rgpPlayerItems 367

enum _
:iListWeapon 
{
    
iName[20],
    
iCost
}
enum _:iListSpecialWeapon
{
    
iName[20],
    
iCost,
    
iAdrenaline
}
enum _:WEAPON_SLOT
{
    
WPN_RIFLE 1,
    
WPN_PISTOL,
    
WPN_KNIFE,
    
WPN_HE,
    
WPN_C4
}

new const 
iPistols[][iListWeapon] = 
{   
//Nombre - Dinero 
    
{"Glock",   400},
    {
"Usp",    500},
    {
"Fiveseven",    600},
    {
"Desert Deagle",    650},
    {
"Dual Elites",    750}
}
new const 
iShotguns[][iListWeapon] = 
{
    {
"M3",   1700},
    {
"XM1014",   3000}
}
new const 
iSubMachineGuns[][iListWeapon] = 
{
    {
"Tmp",   1250},
    {
"Mp5 Navy",   1500},
    {
"Ump45",   1700},
    {
"P90",   2350}
}
new const 
iRifles[][iListWeapon] = 
{
    {
"Famas",   2250},
    {
"Scout",   2750},
    {
"M4A1",   3100},
    {
"Aug",    3500},
    {
"PlasmaGun",    5000}

}
/*new const iMachineGuns[][iListWeapon] =
{
    {"M249",    0} 
}*/
new const iEquipment[][iListWeapon] = 
{
    {
"Kevlar",   1000},
    {
"HE Grenade",   300},
    {
"Flashbang",   200},
    {
"Smoke Grenade",   300}
}
/*new const iKnifes[][iListWeapon] =
{
    {"Default",    0} 
}*/
new const iAdre[][iListSpecialWeapon] =
{  
//Nombre - Dinero - Adrenalina
    
{"M249",    575010},
    {
"Sg550",   420020},
    {
"G3SG1",  5000,  30},
    {
"Awp",  4750,    40},
    {
"VVIP Weapons"16000100}
}

public 
plugin_init()
{
    
register_plugin("[CTF] Menu de Compra""1.0""GoodbayKOD")
    
register_clcmd("buymenu""MenuNst"// Comando para abrir el menu
    
register_clcmd("F2""Stock_Rebuy"// Comando Rebuy
}
public 
plugin_natives()
{
    
register_native("MenuNst""MenuNst"1// Native para abrir el menu por Include
}
public 
MenuNst(id

    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de Compra^n\yComprar Anterior\r[\wF2\r]""MenuNst_Handler")
    
menu_additem(iMenu"Pistola""")
    
menu_additem(iMenu"Escopetas""")
    
menu_additem(iMenu"SubAmetralladoras""")
    
menu_additem(iMenu"Rifles""")
    
menu_additem(iMenu"Equipamiento""")
    
menu_additem(iMenu"\yAdrenalina^n""")
    
menu_additem(iMenu"Municion Primaria""")
    
menu_additem(iMenu"Municion Secundaria""")
    
menu_additem(iMenu"Salir""")
    
menu_setprop(iMenuMPROP_PERPAGE0)
    
menu_display(idiMenu)
    return 
PLUGIN_CONTINUE

public 
MenuNst_Handler(idiMenuiItem

    if(!
is_user_alive(id)) { menu_destroy(iMenu); return; }
    if(
iItem == MENU_EXIT) { menu_destroy(iMenu); return; }
    switch(
iItem)
    {
        case 
0MenuPistols(id)
        case 
1MenuShotguns(id)
        case 
2MenuSubMachineGuns(id)
        case 
3MenuRifles(id)
        case 
4MenuEquipment(id)
        case 
5MenuAdrenalina(id)
        case 
6: { FullAmmoPrimary(id); MenuNst(id); }
        case 
7: { FullAmmoSecondary(id); MenuNst(id); }
    }
    
menu_destroy(iMenu)
}

public 
MenuPistols(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rPistolas""MenuPistols_Handler")
    for(new 
0sizeof(iPistols); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y$%d \d]"cs_get_user_money(id) < iPistols[i][iCost] ? "\d" ""iPistols[i][iName], iPistols[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuPistols_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
cs_get_user_money(id) < iPistols[iItem][iCost])
    {
        
Stock_MsgSayText(id"!g[CTF] !nTe falta dinero para comprar !t%s!n."iPistols[iItem][iName])
        
menu_destroy(iMenu)
        return
    }
    switch(
iItem
    {
        case 
0: { Stock_SetWeaponDropSlot(idWPN_PISTOL); give_item(id"weapon_glock18");  cs_set_user_bpammo(idCSW_GLOCK1890); }
        case 
1: { Stock_SetWeaponDropSlot(idWPN_PISTOL); give_item(id"weapon_usp"); cs_set_user_bpammo(idCSW_USP90); }
        case 
2: { Stock_SetWeaponDropSlot(idWPN_PISTOL); give_item(id"weapon_fiveseven"); cs_set_user_bpammo(idCSW_FIVESEVEN90); }
        case 
3: { Stock_SetWeaponDropSlot(idWPN_PISTOL); give_item(id"weapon_deagle"); cs_set_user_bpammo(idCSW_DEAGLE90); }
        case 
4: { Stock_SetWeaponDropSlot(idWPN_PISTOL); give_item(id"weapon_elite"); cs_set_user_bpammo(idCSW_ELITE90); }
    }
    
PlaySound(0BuySound)
    
cs_set_user_money(idcs_get_user_money(id) - iPistols[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iPistols[iItem][iName])
    
menu_destroy(iMenu)
}
public 
MenuShotguns(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rEscopetas""MenuShotguns_Handler")
    for(new 
0sizeof(iShotguns); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y$%d \d]"cs_get_user_money(id) < iShotguns[i][iCost] ? "\d" ""iShotguns[i][iName], iShotguns[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuShotguns_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
cs_get_user_money(id) < iShotguns[iItem][iCost])
    {
        
Stock_MsgSayText(id"!g[CTF] !nTe falta dinero para comprar !t%s!n."iShotguns[iItem][iName])
        
menu_destroy(iMenu)
        return
    }
    switch(
iItem
    {
        case 
0: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_m3"); cs_set_user_bpammo(idCSW_M390); }
        case 
1: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_xm1014"); cs_set_user_bpammo(idCSW_XM101490); }
    }
    
PlaySound(0BuySound)
    
cs_set_user_money(idcs_get_user_money(id) - iShotguns[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iShotguns[iItem][iName])
    
menu_destroy(iMenu)
}
public 
MenuSubMachineGuns(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rSubAutomaticas""MenuSubMachineGuns_Handler")
    for(new 
0sizeof(iSubMachineGuns); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y$%d \d]"cs_get_user_money(id) < iSubMachineGuns[i][iCost] ? "\d" ""iSubMachineGuns[i][iName], iSubMachineGuns[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuSubMachineGuns_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
cs_get_user_money(id) < iSubMachineGuns[iItem][iCost]) 
    {
    
Stock_MsgSayText(id"!g[CTF] !nTe falta dinero para comprar !t%s!n."iSubMachineGuns[iItem][iName])
    
menu_destroy(iMenu)
    return
    }
    switch(
iItem
    {
        case 
0: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_tmp"); cs_set_user_bpammo(idCSW_TMP90); }
        case 
1: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_mp5navy"); cs_set_user_bpammo(idCSW_MP5NAVY90); }
        case 
2: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_ump45"); cs_set_user_bpammo(idCSW_UMP4590); }
        case 
3: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_p90"); cs_set_user_bpammo(idCSW_P9090); }
    }
    
PlaySound(0BuySound)
    
cs_set_user_money(idcs_get_user_money(id) - iSubMachineGuns[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iSubMachineGuns[iItem][iName])
    
menu_destroy(iMenu)     
}
public 
MenuRifles(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rRifles""MenuRifles_Handler")
    for(new 
0sizeof(iRifles); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y$%d \d]"cs_get_user_money(id) < iRifles[i][iCost] ? "\d" ""iRifles[i][iName], iRifles[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuRifles_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
cs_get_user_money(id) < iRifles[iItem][iCost])
    {
        
Stock_MsgSayText(id"!g[CTF] !nTe falta dinero para comprar !t%s!n."iRifles[iItem][iName])
        
menu_destroy(iMenu)
        return
    }
    switch(
iItem
    {
        case 
0: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_famas"); cs_set_user_bpammo(idCSW_FAMAS90); }
        case 
1: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_scout"); cs_set_user_bpammo(idCSW_SCOUT90); }
        case 
2: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_m4a1"); cs_set_user_bpammo(idCSW_M4A190); }
        case 
3: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_aug"); cs_set_user_bpammo(idCSW_AUG90); }
        case 
4: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_plasma(id); }
    }
    
PlaySound(0BuySound)
    
cs_set_user_money(idcs_get_user_money(id) - iRifles[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iRifles[iItem][iName])
    
menu_destroy(iMenu)
}
/*public MenuMachineGuns(id)
{
    new szText[100]
    new iMenu = menu_create("\r[\wCTT\r]\y Menu de compra: \rAmetralladoras", "MenuMachineGuns_Handler")
    for(new i = 0; i < sizeof(iMachineGuns); i++) 
    {
        format(szText, charsmax(szText), "%s%s \d[ \y$Free \d]", cs_get_user_money(id) < iMachineGuns[i][iCost] ? "\d" : "", iMachineGuns[i][iName], iMachineGuns[i][iCost])
        menu_additem(iMenu, szText, "")
    }
    menu_display(id, iMenu)
}
public MenuMachineGuns_Handler(id, iMenu, iItem)
{
    if(iItem == MENU_EXIT) return
    if(cs_get_user_money(id) < iMachineGuns[iItem][iCost])
    {
        Stock_MsgSayText(id, "!g[CTF] !nTe falta dinero para comprar !t%s!n.", iMachineGuns[iItem][iName])
        menu_destroy(iMenu)
        return
    }
    switch(iItem) 
    {
        case 0: 
        {
            Stock_SetWeaponDropSlot(id, WPN_RIFLE)
            give_item(id, "weapon_m249"); cs_set_user_bpammo(id, CSW_M249, 90)
        }
    }
    PlaySound(0, BuySound)
    cs_set_user_money(id, cs_get_user_money(id) - iMachineGuns[iItem][iCost])
    Stock_MsgSayText(id, "!g[CTF] !nCompraste !t%s!n.", iMachineGuns[iItem][iName])
    menu_destroy(iMenu)
}*/
public MenuEquipment(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rEquipamiento""MenuEquipment_Handler")
    for(new 
0sizeof(iEquipment); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y$%d \d]"cs_get_user_money(id) < iEquipment[i][iCost] ? "\d" ""iEquipment[i][iName], iEquipment[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuEquipment_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
cs_get_user_money(id) < iEquipment[iItem][iCost])
    {
        
Stock_MsgSayText(id"!g[CTF] !nTe falta dinero para comprar !t%s!n."iEquipment[iItem][iName])
        
menu_destroy(iMenu)
        return
    }
    switch(
iItem
    {
       case 
0cs_set_user_armor(id100CS_ARMOR_VESTHELM)     
       case 
1give_item(id"weapon_hegrenade")
       case 
2give_item(id"weapon_flashbang")
       case 
3give_item(id"weapon_smokegrenade")
    } 
    
PlaySound(0BuySound)
    
cs_set_user_money(idcs_get_user_money(id) - iEquipment[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iEquipment[iItem][iName])
    
menu_destroy(iMenu)
}
/*public MenuKnifes(id)
{
    new szText[100]
    new iMenu = menu_create("\r[\wCTT\r]\y Menu de compra: \rCuchillos", "MenuMenuKnifes_Handler")
    for(new i = 0; i < sizeof(iKnifes); i++) 
    {
        format(szText, charsmax(szText), "%s%s \d[ \y$Free \d]", cs_get_user_money(id) < iKnifes[i][iCost] ? "\d" : "", iKnifes[i][iName], iKnifes[i][iCost])
        menu_additem(iMenu, szText, "")
    }
    menu_display(id, iMenu)
}
public MenuMenuKnifes_Handler(id, iMenu, iItem)
{
    if(iItem == MENU_EXIT) return
    if(cs_get_user_money(id) < iKnifes[iItem][iCost])
    {
        Stock_MsgSayText(id, "!g[CTF] !nTe falta dinero para comprar !t%s!n.", iKnifes[iItem][iName])
        menu_destroy(iMenu)
        return
    }
    switch(iItem) 
    {
        case 0: 
        {
            Stock_SetWeaponDropSlot(id, WPN_RIFLE)
            give_item(id, "weapon_m249"); cs_set_user_bpammo(id, CSW_M249, 90)
        }
    }
    PlaySound(0, BuySound)
    cs_set_user_money(id, cs_get_user_money(id) - iKnifes[iItem][iCost])
    Stock_MsgSayText(id, "!g[CTF] !nCompraste !t%s!n.", iKnifes[iItem][iName])
    menu_destroy(iMenu)
}*/
public MenuAdrenalina(id)
{
    new 
szText[100]
    new 
iMenu menu_create("\r[\wCTF\r]\y Menu de compra: \rAdrenalina""MenuAdre_Handler")
    for(new 
0sizeof(iAdre); i++) 
    {
        
format(szTextcharsmax(szText), "%s%s \d[ \y%d \d] \d[ \y$%d \d] "jctf_get_adrenaline(id) < iAdre[i][iAdrenaline] || cs_get_user_money(id) < iAdre[i][iCost] ? "\d" ""iAdre[i][iName], iAdre[i][iAdrenaline], iAdre[i][iCost])
        
menu_additem(iMenuszText"")
    }
    
menu_display(idiMenu)
}
public 
MenuAdre_Handler(idiMenuiItem)
{
    if(
iItem == MENU_EXIT) return
    if(
jctf_get_adrenaline(id) < iAdre[iItem][iAdrenaline] || cs_get_user_money(id) < iAdre[iItem][iCost])
    {
        
Stock_MsgSayText(id"!g[CTF] !nTe falta adrenalina para comprar !t%s!n."iAdre[iItem][iName])
        
menu_destroy(iMenu)
        return
    }
    switch(
iItem
    {
        case 
0: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_m249"); cs_set_user_bpammo(idCSW_M24990); }
        case 
1: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_sg550"); cs_set_user_bpammo(idCSW_SG55090); }
        case 
2: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_g3sg1"); cs_set_user_bpammo(idCSW_G3SG190); }
        case 
3: { Stock_SetWeaponDropSlot(idWPN_RIFLE); give_item(id"weapon_awp"); cs_set_user_bpammo(idCSW_AWP90); }
        case 
4: { Stock_SetWeaponDropSlot(idWPN_PISTOL); Stock_SetWeaponDropSlot(idWPN_RIFLE); give_void(id); give_lf(id); }    
    } 
    
PlaySound(0BuySound)
    
jctf_add_adrenaline(id, - iAdre[iItem][iAdrenaline])
    
cs_set_user_money(idcs_get_user_money(id) - iAdre[iItem][iCost])
    
Stock_MsgSayText(id"!g[CTF] !nCompraste !t%s!n."iAdre[iItem][iName])
    
menu_destroy(iMenu)
}
stock Stock_MsgSayText(id, const szText[], any:...) // Stock de ColorChat New
{
    static 
szMsg[128]
    
vformat(szMsgcharsmax(szMsg), szText3)
    
replace_all(szMsgcharsmax(szMsg), "!g""^x04")   // Color Verde
    
replace_all(szMsgcharsmax(szMsg), "!n""^x01")   // Color Normal (Amarillo)
    
replace_all(szMsgcharsmax(szMsg), "!t""^x03")   // Color de equipo (CT = Celeste | TT = Rojo)
    
static iMsgSayText
    
if(!iMsgSayTextiMsgSayText get_user_msgid("SayText")
    
message_begin(id MSG_ONE MSG_ALLiMsgSayText, {0,0,0}, id)
    
write_byte(1)
    
write_string(szMsg)
    
message_end()
}
stock Stock_SetWeaponDropSlot(idiSlot// Stock de Dropeo de Arma
{
    new 
szName[24]
    new 
iItem get_pdata_cbase(idm_rgpPlayerItems iSlot5)
    while(
iItem 0)
    {
        
pev(iItempev_classnameszName23)
        
engclient_cmd(id"drop"szName)
        
iItem get_pdata_cbase(iItemm_pNext4)
    }
    
set_pdata_cbase(idm_rgpPlayerItems iSlot, -15)
}
stock FullAmmoPrimary(id// Stock de Full Municion Primaria
{
    
PlaySound(0PickWeapon)
    
cs_set_user_bpammo(idCSW_UMP4590)
    
cs_set_user_bpammo(idCSW_AK4790)
    
cs_set_user_bpammo(idCSW_AUG90)
    
cs_set_user_bpammo(idCSW_AWP90)
    
cs_set_user_bpammo(idCSW_FAMAS90)
    
cs_set_user_bpammo(idCSW_G3SG190)
    
cs_set_user_bpammo(idCSW_GALIL90)
    
cs_set_user_bpammo(idCSW_M24990)
    
cs_set_user_bpammo(idCSW_M390)
    
cs_set_user_bpammo(idCSW_M4A190)
    
cs_set_user_bpammo(idCSW_MAC1090)
    
cs_set_user_bpammo(idCSW_MP5NAVY90)
    
cs_set_user_bpammo(idCSW_P22890)
    
cs_set_user_bpammo(idCSW_P9090)
    
cs_set_user_bpammo(idCSW_SG55090)
    
cs_set_user_bpammo(idCSW_SG55290)
    
cs_set_user_bpammo(idCSW_TMP90)
    
cs_set_user_bpammo(idCSW_XM101490)
}
stock FullAmmoSecondary(id// Stock de Full Municion Secundaria
{
    
PlaySound(0PickWeapon)
    
cs_set_user_bpammo(idCSW_DEAGLE90)
    
cs_set_user_bpammo(idCSW_ELITE90)
    
cs_set_user_bpammo(idCSW_FIVESEVEN90)
    
cs_set_user_bpammo(idCSW_GLOCK1890)
    
cs_set_user_bpammo(idCSW_P22890)
    
cs_set_user_bpammo(idCSW_USP90)
}
stock PlaySound(id, const iSound[]) // Stock de Sonido/Musica
{
    if (
equal(iSound[strlen(iSound)-4], ".mp3"))
        
client_cmd(id"mp3 play ^"sound/%s^""iSound)
    else
        
client_cmd(id"spk ^"%s^""iSound)

AstRoid is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


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


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