Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- * Description:
- * This is a _WORKING_ real armor plugin for Counter-Strike.
- *
- *
- * Commands / Cvars:
- * Cvar: "ra_kevlar_flags" "cd" // armor flags for normal armor
- * Cvar: "ra_vesthelm_flags" "bcd" // armor flags for armor with vest helmet
- * + cvar flags:
- * - "a" unknown (explosion for example)
- * - "b" head
- * - "c" chest
- * - "d" stomach
- * - "e" leftarm
- * - "f" rightarm
- * - "g" leftleg
- * - "h" rightleg
- *
- *
- * Requires:
- * CStrike
- * CSX
- * Fun
- *
- *
- * Additional Info:
- * Tested with amxmodx 1.8.1. But should work with some older amxx versions.
- *
- *
- * Notes:
- * + Armor scan is preformed after damage is taken so deadly hits will be the way they should (awp hit for example).
- *
- *
- * ChangeLog:
- *
- * + 1.1 (1114 downloads reseted)
- * - Fixed: When armor is set to 0 you cannot pick it up again.
- * - Changed: Code style.
- *
- * + 1.0
- * - First release.
- *
- *
- * Downloads:
- * AMXMODX Community: http://forums.alliedmods.net/showthread.php?t=70773
- *
- **/
- #include <amxmodx>
- #include <cstrike>
- #include <csx>
- #include <fun>
- #define PLUGIN_NAME "Real Armor"
- #define PLUGIN_VERSION "1.1"
- #define PLUGIN_AUTHOR "Numb"
- new g_iCvarP_karmor;
- new g_iCvarP_varmor;
- public plugin_init()
- {
- register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR);
- g_iCvarP_karmor = register_cvar("ra_kevlar_flags", "abcdefgh");
- g_iCvarP_varmor = register_cvar("ra_vesthelm_flags", "abcdefgh");
- }
- public client_damage(iAttacker, iVictim, iDamage, iWpnIndex, iHitPlace, iTA)
- {
- if( is_user_alive(iVictim) && iDamage>0 )
- {
- static s_iArmor, CsArmorType:s_iArmorType;
- s_iArmor = cs_get_user_armor(iVictim, s_iArmorType);
- if( s_iArmor>0 && s_iArmorType!=CS_ARMOR_NONE )
- {
- if( get_armor_cvar_flags((s_iArmorType==CS_ARMOR_VESTHELM)?true:false)&(1<<iHitPlace) )
- {
- if( s_iArmor>iDamage )
- {
- set_user_health(iVictim, get_user_health(iVictim)+iDamage);
- cs_set_user_armor(iVictim, s_iArmor-iDamage, s_iArmorType);
- }
- else
- {
- set_user_health(iVictim, get_user_health(iVictim)+s_iArmor);
- cs_set_user_armor(iVictim, 0, CS_ARMOR_NONE);
- }
- }
- }
- }
- }
- get_armor_cvar_flags(bool:bVestHelm)
- {
- static s_iCvarStr[32];
- get_pcvar_string(bVestHelm?g_iCvarP_varmor:g_iCvarP_karmor, s_iCvarStr, 31);
- return read_flags(s_iCvarStr);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement