Raised This Month: $ Target: $400
 0% 

Please Melp Me About This Plugin !!!


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
KiNg Clan
Junior Member
Join Date: Feb 2011
Old 02-13-2013 , 03:16   Please Melp Me About This Plugin !!!
Reply With Quote #1

PHP Code:
/*
*    Plugin Original Author: Crock / =)
*
*/
#include <amxmodx>
#include <engine>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <xs>
#include <cstrike>
#include <biohazard>
#include <colorchat>
#define ENG_NULLENT        -1
#define EV_INT_WEAPONKEY    EV_INT_impulse
#define WEAPONKEY 33
#define MAX_PLAYERS                32
#define IsValidUser(%1) (1 <= %1 <= g_MaxPlayers)
const USE_STOPPED 0
const OFFSET_ACTIVE_ITEM 373
const OFFSET_WEAPONOWNER 41
const OFFSET_LINUX 5
const OFFSET_LINUX_WEAPONS 4
#define WEAP_LINUX_XTRA_OFF            4
#define m_fKnown                44
#define m_flNextPrimaryAttack             46
#define m_flTimeWeaponIdle            48
#define m_iClip                    51
#define m_fInReload                54
#define PLAYER_LINUX_XTRA_OFF            5
#define m_flNextAttack                83
#define RELOAD_TIME 2.7
#define wId CSW_UMP45
const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
new const 
Fire_snd[] = {"weapons/kingeth.wav"}
new const 
went[] ={"weapon_ump45"}
new const 
GUNSHOT_DECALS[] = { 4142434445 }
new 
ethereal_V_MODEL[64] = "kingeth/v_kingeth.mdl"
new ethereal_P_MODEL[64] = "kingeth/p_kingeth.mdl"
new ethereal_W_MODEL[64] = "kingeth/w_kingeth.mdl"
new cvar_ethereal_hasarcvar_ethereal_mermicvar_ethereal_sarjorcvar_ethereal_fiyat
new g_has_ethereal[33]
new 
g_MaxPlayersg_orig_event_etherealg_clip_ammo[33]
new 
Float:cl_pushangle[MAX_PLAYERS 1][3], m_iBlood[2]
new 
g_ethereal_TmpClip[33]
public 
plugin_init()
{
    
register_plugin("[BIO]: Ethereal Silahi""1.0""EDIT: !KiNg Clan")
    
register_clcmd("say /kingeth""etherealsatinal")
    
register_clcmd("say /eth""etherealsatinal")
    
register_clcmd("say_team /kingeth""etherealsatinal")
    
register_clcmd("say_team /eth""etherealsatinal")
    
register_logevent("TurSonu"2"1=Round_End")
    
RegisterHam(Ham_Spawn"player""OyuncuDogunca")
    
register_event("CurWeapon","CurrentWeapon","be","1=1")
    
RegisterHam(Ham_Item_AddToPlayerwent"fw_ethereal_AddToPlayer")
    
RegisterHam(Ham_Use"func_tank""fw_UseStationary_Post"1)
    
RegisterHam(Ham_Use"func_tankmortar""fw_UseStationary_Post"1)
    
RegisterHam(Ham_Use"func_tankrocket""fw_UseStationary_Post"1)
    
RegisterHam(Ham_Use"func_tanklaser""fw_UseStationary_Post"1)
    
RegisterHam(Ham_Item_Deploywent"fw_Item_Deploy_Post"1)
    
RegisterHam(Ham_Weapon_PrimaryAttackwent"fw_ethereal_PrimaryAttack")
    
RegisterHam(Ham_Weapon_PrimaryAttackwent"fw_ethereal_PrimaryAttack_Post"1)
    
RegisterHam(Ham_Item_PostFramewent"ethereal__ItemPostFrame");
    
RegisterHam(Ham_Weapon_Reloadwent"ethereal__Reload");
    
RegisterHam(Ham_Weapon_Reloadwent"ethereal__Reload_Post"1);
    
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage")
    
register_forward(FM_SetModel"fw_SetModel")
    
register_forward(FM_UpdateClientData"fw_UpdateClientData_Post"1)
    
register_forward(FM_PlaybackEvent"fwPlaybackEvent")
    
cvar_ethereal_hasar register_cvar("bio_ethereal_hasar""2")
    
cvar_ethereal_mermi register_cvar("bio_ethereal_mermi""30")
    
cvar_ethereal_sarjor register_cvar("bio_ethereal_sarjor""100")
    
cvar_ethereal_fiyat register_cvar("bio_ethereal_fiyat""9000")
    
g_MaxPlayers get_maxplayers()
}
public 
plugin_precache()
{
    
precache_model(ethereal_V_MODEL)
    
precache_model(ethereal_P_MODEL)
    
precache_model(ethereal_W_MODEL)
    
precache_sound(Fire_snd)
    
m_iBlood[0] = precache_model("kingeth/kingeth1.spr")
    
m_iBlood[1] = precache_model("kingeth/kingeth2.spr")
    
register_forward(FM_PrecacheEvent"fwPrecacheEvent_Post"1)
}
 
public 
fwPrecacheEvent_Post(type, const name[])
{
    if (
equal("events/ump45.sc"name))
    {
        
g_orig_event_ethereal get_orig_retval()
        return 
FMRES_HANDLED
    
}
    return 
FMRES_IGNORED
}
public 
client_connect(id)
{
    
g_has_ethereal[id] = false
}
public 
client_disconnect(id)
{
    
g_has_ethereal[id] = false
}
public 
fw_SetModel(entitymodel[])
{
    if(!
is_valid_ent(entity))
        return 
FMRES_IGNORED;
    static 
szClassName[33]
    
entity_get_string(entityEV_SZ_classnameszClassNamecharsmax(szClassName))
    if(!
equal(szClassName"weaponbox"))
        return 
FMRES_IGNORED;
    static 
iOwner
    iOwner 
entity_get_edict(entityEV_ENT_owner)
    if(
equal(model"models/w_ump45.mdl"))
    {
        static 
iStoredSVDID
        iStoredSVDID 
find_ent_by_owner(ENG_NULLENTwententity)
        if(!
is_valid_ent(iStoredSVDID))
            return 
FMRES_IGNORED;
        if(
g_has_ethereal[iOwner])
        {
            
entity_set_int(iStoredSVDIDEV_INT_WEAPONKEYWEAPONKEY)
            
g_has_ethereal[iOwner] = false
            entity_set_model
(entityethereal_W_MODEL)
            return 
FMRES_SUPERCEDE;
        }
    }
    return 
FMRES_IGNORED;
}
public 
give_ethereal(id)
{
    
drop_weapons(id1);
    new 
iWep2 give_item(id,went)
    if( 
iWep2 )
    {
    
cs_set_weapon_ammo(iWep2get_pcvar_num(cvar_ethereal_mermi))
    
cs_set_user_bpammo (idwIdget_pcvar_num(cvar_ethereal_sarjor))
    }
    
g_has_ethereal[id] = true;
}
public 
etherealsatinal(iditemid)
{
    if (!
is_user_alive(id))
    {
        
ColorChat(id,NORMAL,"^4[!KiNg Clan]:^1^3Ethereal Silahini^1 ^4Alamabilmek Icin^1 ^3Hayatta Olmaniz Gereklidir!^1")
        return 
PLUGIN_HANDLED
    
}
    new 
para cs_get_user_money(id)
    if (
para >= get_pcvar_num(cvar_ethereal_fiyat))
    {
        
cs_set_user_money(idpara get_pcvar_num(cvar_ethereal_fiyat))
        
give_ethereal(id)
        
ColorChat(id,NORMAL,"^4[!KiNg Clan]:^1^3Ethereal Silahini^1 ^4Satin Aldiniz!^1")
    }
    else
    {
        
ColorChat(id,NORMAL,"^4[!KiNg Clan]:^1^3Ethereal Silahini Almak Icin^1 ^4Yeterli Paraniz Yok^1 ^3Silahin Degeri:^1^4%d^1^3TL^1"get_pcvar_num(cvar_ethereal_fiyat))
    }
    return 
PLUGIN_HANDLED
}
public 
OyuncuDogunca(id)
{
    
g_has_ethereal[id] = false
}
public 
TurSonu(id)
{
    
g_has_ethereal[id] = false
}
public 
fw_ethereal_AddToPlayer(etherealid)
{
    if(!
is_valid_ent(ethereal) || !is_user_connected(id))
        return 
HAM_IGNORED;
    if(
entity_get_int(etherealEV_INT_WEAPONKEY) == WEAPONKEY)
    {
        
g_has_ethereal[id] = true
        entity_set_int
(etherealEV_INT_WEAPONKEY0)
        return 
HAM_HANDLED;
    }
    return 
HAM_IGNORED;
}
public 
fw_UseStationary_Post(entitycalleractivatoruse_type)
{
    if (
use_type == USE_STOPPED && is_user_connected(caller))
        
replace_weapon_models(callerget_user_weapon(caller))
}
public 
fw_Item_Deploy_Post(weapon_ent)
{
    static 
owner
    owner 
fm_cs_get_weapon_ent_owner(weapon_ent)
    static 
weaponid
    weaponid 
cs_get_weapon_id(weapon_ent)
    
replace_weapon_models(ownerweaponid)
    
UTIL_PlayWeaponAnimation(owner,2,2)
}
public 
CurrentWeapon(id)
{
    
replace_weapon_models(idread_data(2))
}
replace_weapon_models(idweaponid)
{
    switch (
weaponid)
    {
        case 
wId:
        {
            if(
g_has_ethereal[id])
            {
                
set_pev(idpev_viewmodel2ethereal_V_MODEL)
                
set_pev(idpev_weaponmodel2ethereal_P_MODEL)
            }
        }
    }
}
public 
fw_UpdateClientData_Post(PlayerSendWeaponsCD_Handle)
{
  if(!
is_user_alive(Player) || (get_user_weapon(Player) != wId) || !g_has_ethereal[Player])
  return 
FMRES_IGNORED
  set_cd
(CD_HandleCD_flNextAttackhalflife_time () + 0.001)
  return 
FMRES_HANDLED
}
public 
fw_ethereal_PrimaryAttack(Weapon)
{
    new 
Player get_pdata_cbase(Weapon414)
    if (!
g_has_ethereal[Player])
        return;
    
pev(Player,pev_punchangle,cl_pushangle[Player])
    
g_clip_ammo[Player] = cs_get_weapon_ammo(Weapon)
    if(
g_clip_ammo[Player]>0)
    
UTIL_PlayWeaponAnimation(Player5,2)
}
public 
fwPlaybackEvent(flagsinvokereventidFloat:delayFloat:origin[3], Float:angles[3], Float:fparam1Float:fparam2iParam1iParam2bParam1bParam2)
{
    if ((
eventid != g_orig_event_ethereal))
        return 
FMRES_IGNORED
    
if (!(<= invoker <= g_MaxPlayers))
        return 
FMRES_IGNORED
    playback_event
(flags FEV_HOSTONLYinvokereventiddelayoriginanglesfparam1fparam2iParam1iParam2bParam1bParam2)
    return 
FMRES_SUPERCEDE
}
public 
fw_ethereal_PrimaryAttack_Post(Weapon)
{    new 
Player get_pdata_cbase(Weapon414)
    new 
szClipszAmmo
    get_user_weapon
(PlayerszClipszAmmo)
    if(
Player && Player 33)
    {
    if(
g_has_ethereal[Player])
    {
    if(
szClip 0)emit_sound(PlayerCHAN_WEAPONFire_sndVOL_NORMATTN_NORM0PITCH_NORM)
    }
    if(
g_has_ethereal[Player])
    {
        new 
Float:push[3]
        
pev(Player,pev_punchangle,push)
        
xs_vec_sub(push,cl_pushangle[Player],push)
        
xs_vec_mul_scalar(push,0.6,push)
        
xs_vec_add(push,cl_pushangle[Player],push)
        
set_pev(Player,pev_punchangle,push)
        if (!
g_clip_ammo[Player])
            return
        
make_blood_and_bulletholes(Player)
    }
    }
}
public 
fw_TakeDamage(victiminflictorattackerFloat:damage)
{
    if ( 
IsValidUserattacker ) && get_user_weapon(attacker) == CSW_UMP45 && g_has_ethereal[attacker] )
    {
        
SetHamParamFloat(4damage get_pcvar_floatcvar_ethereal_hasar ) )
    }
}
stock fm_cs_get_current_weapon_ent(id)
{
    return 
get_pdata_cbase(idOFFSET_ACTIVE_ITEMOFFSET_LINUX);
}
stock fm_cs_get_weapon_ent_owner(ent)
{
    return 
get_pdata_cbase(entOFFSET_WEAPONOWNEROFFSET_LINUX_WEAPONS);
}
stock UTIL_PlayWeaponAnimation(const Player, const Sequence,body)
{
    
set_pev(Playerpev_weaponanimSequence)
    
message_begin(MSG_ONE_UNRELIABLESVC_WEAPONANIM, .player Player)
    
write_byte(Sequence)
    
write_byte(body)//pev(Player, pev_body))
    
message_end()
}
stock make_blood_and_bulletholes(id)
{
    new 
aimOrigin[3], targetbody
    get_user_origin
(idaimOrigin3)
    
get_user_aiming(idtargetbody)
    if(
target && target <= g_MaxPlayers && is_user_zombie(target))
    {
        new 
Float:fStart[3], Float:fEnd[3], Float:fRes[3], Float:fVel[3]
        
pev(idpev_originfStart)
        
velocity_by_aim(id64fVel)
        
fStart[0] = float(aimOrigin[0])
        
fStart[1] = float(aimOrigin[1])
        
fStart[2] = float(aimOrigin[2])
        
fEnd[0] = fStart[0]+fVel[0]
        
fEnd[1] = fStart[1]+fVel[1]
        
fEnd[2] = fStart[2]+fVel[2]
        new 
res
        engfunc
(EngFunc_TraceLinefStartfEnd0targetres)
        
get_tr2(resTR_vecEndPosfRes)
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BLOODSPRITE)
        
write_coord(floatround(fStart[0]))
        
write_coord(floatround(fStart[1]))
        
write_coord(floatround(fStart[2]))
        
write_shortm_iBlood ])
        
write_shortm_iBlood ] )
        
write_byte(70)
        
write_byte(random_num(1,2))
        
message_end()
    }
    else if(!
is_user_connected(target))
    {
        if(
target)
        {
            
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
            
write_byte(TE_DECAL)
            
write_coord(aimOrigin[0])
            
write_coord(aimOrigin[1])
            
write_coord(aimOrigin[2])
            
write_byte(GUNSHOT_DECALS[random_num 0sizeof GUNSHOT_DECALS -) ] )
            
write_short(target)
            
message_end()
        }
        else
        {
            
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
            
write_byte(TE_WORLDDECAL)
            
write_coord(aimOrigin[0])
            
write_coord(aimOrigin[1])
            
write_coord(aimOrigin[2])
            
write_byte(GUNSHOT_DECALS[random_num 0sizeof GUNSHOT_DECALS -) ] )
            
message_end()
        }
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_GUNSHOTDECAL)
        
write_coord(aimOrigin[0])
        
write_coord(aimOrigin[1])
        
write_coord(aimOrigin[2])
        
write_short(id)
        
write_byte(GUNSHOT_DECALS[random_num 0sizeof GUNSHOT_DECALS -) ] )
        
message_end()
        
message_begin(MSG_ALLSVC_TEMPENTITY
        
write_byte(TE_SPARKS)
        
write_coord(aimOrigin[0])
        
write_coord(aimOrigin[1])
        
write_coord(aimOrigin[2])
        
message_end()
        
message_begin(MSG_ALLSVC_TEMPENTITY
        
write_byte(TE_SPARKS)
        
write_coord(aimOrigin[0]+2)
        
write_coord(aimOrigin[1])
        
write_coord(aimOrigin[2])
        
message_end()
        
message_begin(MSG_ALLSVC_TEMPENTITY
        
write_byte(TE_SPARKS)
        
write_coord(aimOrigin[0])
        
write_coord(aimOrigin[1]+2)
        
write_coord(aimOrigin[2])
        
message_end()
        
message_begin(MSG_ALLSVC_TEMPENTITY
        
write_byte(TE_SPARKS)
        
write_coord(aimOrigin[0])
        
write_coord(aimOrigin[1])
        
write_coord(aimOrigin[2]+2)
        
message_end()
 
    }
}
public 
ethereal__ItemPostFrame(weapon_entity) {
    new 
id pev(weapon_entitypev_owner)
    if (!
is_user_connected(id))
        return 
HAM_IGNORED;
    if (!
g_has_ethereal[id])
        return 
HAM_IGNORED;
    new 
Float:flNextAttack get_pdata_float(idm_flNextAttackPLAYER_LINUX_XTRA_OFF)
    new 
iBpAmmo cs_get_user_bpammo(idwId);
    new 
iClip get_pdata_int(weapon_entitym_iClipWEAP_LINUX_XTRA_OFF)
    new 
fInReload get_pdata_int(weapon_entitym_fInReloadWEAP_LINUX_XTRA_OFF)
    if( 
fInReload && flNextAttack <= 0.0 )
    {
        new 
min(get_pcvar_num(cvar_ethereal_mermi) - iClipiBpAmmo)
        
set_pdata_int(weapon_entitym_iClipiClip jWEAP_LINUX_XTRA_OFF)
        
cs_set_user_bpammo(idwIdiBpAmmo-j);
        
set_pdata_int(weapon_entitym_fInReload0WEAP_LINUX_XTRA_OFF)
        
fInReload 0
    
}
    return 
HAM_IGNORED;
}
public 
ethereal__Reload(weapon_entity) {
    new 
id pev(weapon_entitypev_owner)
    if (!
is_user_connected(id))
        return 
HAM_IGNORED;
    if (!
g_has_ethereal[id])
        return 
HAM_IGNORED;
    
g_ethereal_TmpClip[id] = -1;
    new 
iBpAmmo cs_get_user_bpammo(idwId);
    new 
iClip get_pdata_int(weapon_entitym_iClipWEAP_LINUX_XTRA_OFF)
    if (
iBpAmmo <= 0)
        return 
HAM_SUPERCEDE;
    if (
iClip >= get_pcvar_num(cvar_ethereal_mermi))
        return 
HAM_SUPERCEDE;
    
UTIL_PlayWeaponAnimation(id1,2)
    
g_ethereal_TmpClip[id] = iClip;
    return 
HAM_IGNORED;
}
public 
ethereal__Reload_Post(weapon_entity) {
    new 
id pev(weapon_entitypev_owner)
    if (!
is_user_connected(id))
        return 
HAM_IGNORED;
    if (!
g_has_ethereal[id])
        return 
HAM_IGNORED;
    if (
g_ethereal_TmpClip[id] == -1)
        return 
HAM_IGNORED;
    
set_pdata_int(weapon_entitym_iClipg_ethereal_TmpClip[id], WEAP_LINUX_XTRA_OFF)
    
set_pdata_float(weapon_entitym_flTimeWeaponIdleRELOAD_TIMEWEAP_LINUX_XTRA_OFF)
    
set_pdata_float(idm_flNextAttackRELOAD_TIMEPLAYER_LINUX_XTRA_OFF)
    
set_pdata_int(weapon_entitym_fInReload1WEAP_LINUX_XTRA_OFF)
    
UTIL_PlayWeaponAnimation(id1,2)
    return 
HAM_IGNORED;
}
stock drop_weapons(iddropwhat)
{
     static 
weapons[32], numiweaponid
     num 
0
     get_user_weapons
(idweaponsnum)
     for (
0numi++)
     {
          
weaponid weapons[i]
          if (
dropwhat == && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM))
          {
               static 
wname[32]
               
get_weaponname(weaponidwnamesizeof wname 1)
               
engclient_cmd(id"drop"wname)
          }
     }

ERROR:
When this plugin grenade with a normal weapon damage by 20 is 160 damage How do I set it?
Take maximum 100 damage with grenades.
100 hp with a maximum grant of this plugin grenade damage ?

Last edited by KiNg Clan; 02-13-2013 at 07:33.
KiNg Clan is offline
 



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 20:30.


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