modificare plugin arme

Modificari necesare ale pluginurilor

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
TecT
Membru, skill 0
Membru, skill 0
Posts: 15
Joined: 09 Apr 2020, 22:31
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Has thanked: 2 times
Been thanked: 1 time

04 Feb 2021, 15:32

Salut am si eu o problema cu pluginu asta de vip.
#include amxmodx
#include cstrike
#include fun
#include hamsandwich
#include fakemeta_util

#define p. "VIP Deathrun"
#define v. "1.0"
#define a. "Jică Măcelaru'"

new g_Cvar[5],
bool:Speed[33],
bool:Speedx[33],
bool:Gravity[33];

enum
{
Primary = 1,
Secondary,
Knife,
Grenades,
C4
};

public plugin_init()
{
register_plugin p., v., a.;

register_clcmd "say /vmenu", "vipMenu";

register_event "CurWeapon", "CurrWeapon", "be", "1=1";
register_event "DeathMsg", "Death", "a";

g_Cvar[0] = register_cvar("vip_hp", "500");
g_Cvar[1] = register_cvar("vip_speed", "1000.0");
g_Cvar[2] = register_cvar("vip_gravity", "0.3125");
g_Cvar[3] = register_cvar("vip_ap", "500");
g_Cvar[4] = register_cvar("vip_invis", "150");
}

public vipMenu(id)
{
if(!is_user_alive(id)) return 1;
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print_color id, print_team_default, "^3[DR.INDUNGI.RO] ^1Pentru a putea deschide meniul ai nevoie de ^4VIP^1.";
return 1;
}

new menu = menu_create("\r[DR.INDUNGI.RO] \dChoose your VIP item:", "menuItem");

menu_additem(menu, "\r[DR] \yViață", "1");
menu_additem(menu, "\r[DR] \yViteză", "2");
menu_additem(menu, "\r[DR] \yGravitație", "3");
menu_additem(menu, "\r[DR] \yAk47 \d+ \yM4a1 \d+ \yDeagle", "4");
menu_additem(menu, "\r[DR] \yRifles \r[Strong Weapons]", "5");
menu_additem(menu, "\r[DR] \yShield", "6");
menu_additem(menu, "\r[DR] \yPachet grenade", "7");
menu_additem(menu, "\r[DR] \yMachine Guns \r[5.9]", "8");
menu_additem(menu, "\r[DR] \yViteză normală", "9");
menu_additem(menu, "\r[DR] \yArmură" , "10");
menu_additem(menu, "\r[DR] \yInvizibilitate" , "11");

menu_display id, menu, 0;
return 1;
}

public menuItem(id, menu, item, player)
{
if(!is_user_alive(id)) return 1;
if(item == MENU_EXIT) return 1;

new data[6], iName[64], access, callback;
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback);

new key = str_to_num(data)

switch(key)
{
case 1: set_user_health id, get_pcvar_num(g_Cvar[0]);

case 2:
{
Speed[id] = true;
CurrWeapon(id);
}

case 3:
{
Gravity[id] = true;
CurrWeapon(id);
}

case 4:
{
give_item id, "weapon_ak47";
give_item id, "weapon_m4a1";
give_item id, "weapon_deagle";
cs_set_user_bpammo id, CSW_AK47, 250;
cs_set_user_bpammo id, CSW_M4A1, 250;
cs_set_user_bpammo id, CSW_DEAGLE, 250;
}

case 5:
{
give_item id, "weapon_ak47";
give_item id, "weapon_m4a1";
give_item id, "weapon_deagle";
give_item id, "weapon_famas";
give_item id, "weapon_awp";
give_item id, "weapon_mp5navy";
give_item id, "weapon_ump45";
give_item id, "weapon_galil";
give_item id, "weapon_scout";
give_item id, "weapon_aug";
give_item id, "weapon_sg550";
cs_set_user_bpammo id, CSW_AK47, 250;
cs_set_user_bpammo id, CSW_M4A1, 250;
cs_set_user_bpammo id, CSW_DEAGLE, 250;
cs_set_user_bpammo id, CSW_FAMAS, 250;
cs_set_user_bpammo id, CSW_AWP, 250;
cs_set_user_bpammo id, CSW_MP5NAVY, 250;
cs_set_user_bpammo id, CSW_UMP45, 250;
cs_set_user_bpammo id, CSW_GALIL, 250;
cs_set_user_bpammo id, CSW_SCOUT, 250;
cs_set_user_bpammo id, CSW_AUG, 250;
cs_set_user_bpammo id, CSW_SG550, 250;
}

case 6:
{
StripWeapons id, Primary;
give_item id, "weapon_shield";
}

case 7:
{
give_item id, "weapon_hegrenade";
give_item id, "weapon_flashbang";
give_item id, "weapon_smokegrenade";
cs_set_user_bpammo id, CSW_HEGRENADE, 8;
cs_set_user_bpammo id, CSW_SMOKEGRENADE, 8;
cs_set_user_bpammo id, CSW_FLASHBANG, 8;
}

case 8:
{
give_item id, "weapon_m249";
cs_set_user_bpammo id, CSW_M249, 300;
}

case 9:
{
Speedx[id] = true;
CurrWeapon(id);
}

case 10: set_user_armor id, set_user_armor id, get_pcvar_num(g_Cvar[3]);

case 11: set_user_rendering id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(g_Cvar[4]);
}

return 1;
}

public CurrWeapon(id)
{
if(Speed[id] == true)
set_user_maxspeed id, float(get_pcvar_num(g_Cvar[1]));

if(Speedx[id] == true)
set_user_maxspeed id, 260.0;

if(Gravity[id] == true)
set_pev id, pev_gravity, 0.3125;
}

public client_connected(id)
{
Gravity[id] = false;
Speed[id] = false;
Speedx[id] = false;
}

public Death()
{
new id = read_data(2);

Gravity[id] = false;
Speed[id] = false;

set_user_rendering id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255;

return 1;
}

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;
}

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;
}

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
1 //CSW_SHIELD
}
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
}
problema este la viteza, in loc sa iti dea viteza cand mergi iti da viteza cand sari, la shield iti da un deagle, la pachet grenade iti da 7 he, la armura iti da doar 1 armura si la invizibilitate nu merge.
RoyalServer 2
User avatar
kidd0x
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 1054
Joined: 06 Oct 2018, 14:41
Detinator Steam: Da
SteamID: /id/kidd0x/
Reputatie: Utilizator neserios (tepar!)
Fond eXtream: 0
Location: Constangeles
Discord: kidd0x
Has thanked: 172 times
Been thanked: 81 times

04 Feb 2021, 16:05

TecT wrote:
04 Feb 2021, 15:32
Salut am si eu o problema cu pluginu asta de vip.
#include amxmodx
#include cstrike
#include fun
#include hamsandwich
#include fakemeta_util

#define p. "VIP Deathrun"
#define v. "1.0"
#define a. "Jică Măcelaru'"

new g_Cvar[5],
bool:Speed[33],
bool:Speedx[33],
bool:Gravity[33];

enum
{
Primary = 1,
Secondary,
Knife,
Grenades,
C4
};

public plugin_init()
{
register_plugin p., v., a.;

register_clcmd "say /vmenu", "vipMenu";

register_event "CurWeapon", "CurrWeapon", "be", "1=1";
register_event "DeathMsg", "Death", "a";

g_Cvar[0] = register_cvar("vip_hp", "500");
g_Cvar[1] = register_cvar("vip_speed", "1000.0");
g_Cvar[2] = register_cvar("vip_gravity", "0.3125");
g_Cvar[3] = register_cvar("vip_ap", "500");
g_Cvar[4] = register_cvar("vip_invis", "150");
}

public vipMenu(id)
{
if(!is_user_alive(id)) return 1;
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print_color id, print_team_default, "^3[DR.INDUNGI.RO] ^1Pentru a putea deschide meniul ai nevoie de ^4VIP^1.";
return 1;
}

new menu = menu_create("\r[DR.INDUNGI.RO] \dChoose your VIP item:", "menuItem");

menu_additem(menu, "\r[DR] \yViață", "1");
menu_additem(menu, "\r[DR] \yViteză", "2");
menu_additem(menu, "\r[DR] \yGravitație", "3");
menu_additem(menu, "\r[DR] \yAk47 \d+ \yM4a1 \d+ \yDeagle", "4");
menu_additem(menu, "\r[DR] \yRifles \r[Strong Weapons]", "5");
menu_additem(menu, "\r[DR] \yShield", "6");
menu_additem(menu, "\r[DR] \yPachet grenade", "7");
menu_additem(menu, "\r[DR] \yMachine Guns \r[5.9]", "8");
menu_additem(menu, "\r[DR] \yViteză normală", "9");
menu_additem(menu, "\r[DR] \yArmură" , "10");
menu_additem(menu, "\r[DR] \yInvizibilitate" , "11");

menu_display id, menu, 0;
return 1;
}

public menuItem(id, menu, item, player)
{
if(!is_user_alive(id)) return 1;
if(item == MENU_EXIT) return 1;

new data[6], iName[64], access, callback;
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback);

new key = str_to_num(data)

switch(key)
{
case 1: set_user_health id, get_pcvar_num(g_Cvar[0]);

case 2:
{
Speed[id] = true;
CurrWeapon(id);
}

case 3:
{
Gravity[id] = true;
CurrWeapon(id);
}

case 4:
{
give_item id, "weapon_ak47";
give_item id, "weapon_m4a1";
give_item id, "weapon_deagle";
cs_set_user_bpammo id, CSW_AK47, 250;
cs_set_user_bpammo id, CSW_M4A1, 250;
cs_set_user_bpammo id, CSW_DEAGLE, 250;
}

case 5:
{
give_item id, "weapon_ak47";
give_item id, "weapon_m4a1";
give_item id, "weapon_deagle";
give_item id, "weapon_famas";
give_item id, "weapon_awp";
give_item id, "weapon_mp5navy";
give_item id, "weapon_ump45";
give_item id, "weapon_galil";
give_item id, "weapon_scout";
give_item id, "weapon_aug";
give_item id, "weapon_sg550";
cs_set_user_bpammo id, CSW_AK47, 250;
cs_set_user_bpammo id, CSW_M4A1, 250;
cs_set_user_bpammo id, CSW_DEAGLE, 250;
cs_set_user_bpammo id, CSW_FAMAS, 250;
cs_set_user_bpammo id, CSW_AWP, 250;
cs_set_user_bpammo id, CSW_MP5NAVY, 250;
cs_set_user_bpammo id, CSW_UMP45, 250;
cs_set_user_bpammo id, CSW_GALIL, 250;
cs_set_user_bpammo id, CSW_SCOUT, 250;
cs_set_user_bpammo id, CSW_AUG, 250;
cs_set_user_bpammo id, CSW_SG550, 250;
}

case 6:
{
StripWeapons id, Primary;
give_item id, "weapon_shield";
}

case 7:
{
give_item id, "weapon_hegrenade";
give_item id, "weapon_flashbang";
give_item id, "weapon_smokegrenade";
cs_set_user_bpammo id, CSW_HEGRENADE, 8;
cs_set_user_bpammo id, CSW_SMOKEGRENADE, 8;
cs_set_user_bpammo id, CSW_FLASHBANG, 8;
}

case 8:
{
give_item id, "weapon_m249";
cs_set_user_bpammo id, CSW_M249, 300;
}

case 9:
{
Speedx[id] = true;
CurrWeapon(id);
}

case 10: set_user_armor id, set_user_armor id, get_pcvar_num(g_Cvar[3]);

case 11: set_user_rendering id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(g_Cvar[4]);
}

return 1;
}

public CurrWeapon(id)
{
if(Speed[id] == true)
set_user_maxspeed id, float(get_pcvar_num(g_Cvar[1]));

if(Speedx[id] == true)
set_user_maxspeed id, 260.0;

if(Gravity[id] == true)
set_pev id, pev_gravity, 0.3125;
}

public client_connected(id)
{
Gravity[id] = false;
Speed[id] = false;
Speedx[id] = false;
}

public Death()
{
new id = read_data(2);

Gravity[id] = false;
Speed[id] = false;

set_user_rendering id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255;

return 1;
}

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;
}

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;
}

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
1 //CSW_SHIELD
}
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
}
problema este la viteza, in loc sa iti dea viteza cand mergi iti da viteza cand sari, la shield iti da un deagle, la pachet grenade iti da 7 he, la armura iti da doar 1 armura si la invizibilitate nu merge.
Foloseste "code" cand postezi un sma ca nimeni nu are chef sa scrolleze atat si din cate vad totul e ok la plg , ce vers de amxx folosesti?
Post Reply

Return to “Modificari pluginuri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 4 guests