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

Help / Support [HELP] Thunder Weapons


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
thekiller123
Member
Join Date: Dec 2012
Old 03-11-2014 , 15:59   [HELP] Thunder Weapons
Reply With Quote #1

Code:
#include <amxmodx>
#include <engine>
#include <zombieplague>
#include <hamsandwich>

#define PLUGIN "[ZP] Sub-plugin: Switch M4a1 Model"
#define VERSION "2.5"
#define AUTHOR "Beuller/ Edit By Slayer."
#define is_valid_player(%1) (1 <= %1 <= 32)

new v_stix_m4a1[]="models/ZP/v_m4a1_zp_dv1.mdl"
new v_stix_ak47[]="models/ZP/p_aktw_darkzp.mdl"
new const p_stix_m4a1[] = "models/ZP/p_m4a1_zp_dv1.mdl"
new const p_stix_ak47[] = "models/ZP/p_aktw_darkzp.mdl"

new bool:g_bHasStixm4a1[33] , g_bHasStixak47[33]

new g_Smoke,g_Lightning
new const sound_thunder[] = "ambience/thunder_clap.wav"

new cvar_dmgmultiplier

public plugin_init() 
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    cvar_dmgmultiplier = register_cvar("zp_thunderdmg_m4a1", "1.1")
        cvar_dmgmultiplier = register_cvar("zp_thunderdmg_ak47", "1.1")
    
    register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
    
    register_event("DeathMsg", "DeathMsg", "a")
    
    RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawn_Post", 1)
    RegisterHam(Ham_Killed, "player", "fw_PlayerKilled")
    RegisterHam(Ham_TakeDamage, "player", "fwHamTakeDamage")
        
    register_event("CurWeapon", "event_CurWeapon", "be", "1=1")
} 

public fwHamTakeDamage(victim, inflictor, attacker, Float:damage)
{    
        if ( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_AK47 && g_bHasStixak47[attacker] )
    {
        SetHamParamFloat(4, damage * get_pcvar_float( cvar_dmgmultiplier ) )
    }
    else if ( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_M4A1 && g_bHasStixm4a1[attacker] )
    {
        SetHamParamFloat(4, damage * get_pcvar_float( cvar_dmgmultiplier ) )
    }
}

public plugin_precache()
{
    precache_model(v_stix_m4a1)
    precache_model(v_stix_ak47)
    precache_model(p_stix_m4a1)
    precache_model(p_stix_ak47)
    precache_sound(sound_thunder)
    g_Lightning = precache_model("sprites/lgtning.spr");
    g_Smoke = precache_model("sprites/steam1.spr");
}

public client_connect(id)
{
    g_bHasStixm4a1[id] = false
    g_bHasStixak47[id] = false
}

public client_disconnect(id)
{
    g_bHasStixm4a1[id] = false
    g_bHasStixak47[id] = false
}

public zp_user_infected_post(infected, infector)
{
            if (g_bHasStixm4a1[infected])
    {
        g_bHasStixm4a1[infected] = false
    }
            else if (g_bHasStixak47[infected])
    {
        g_bHasStixak47[infected] = false
    }
}

public fw_PlayerKilled(victim, attacker, shouldgib)
{
    g_bHasStixm4a1[victim] = false
        g_bHasStixak47[victim] = false
}

public ham_PlayerSpawn_Post(id)
{
    g_bHasStixm4a1[id] = false
        g_bHasStixak47[id] = false
    
    return PLUGIN_CONTINUE
}

public event_round_start()
{
    for (new i = 1; i <= 32; i++)
    {
                g_bHasStixm4a1[i] = false
                g_bHasStixak47[i] = false
    }
}

public DeathMsg()
{
    new Killer = read_data(1)    // Assassin
    new vOrigin[3],coord[3];
    new victim = read_data(2);
    get_user_origin(victim,vOrigin);
    vOrigin[2] -= 26
    coord[0] = vOrigin[0] + 150;
    coord[1] = vOrigin[1] + 150;
    coord[2] = vOrigin[2] + 800;
    
        if(get_user_weapon(Killer) == CSW_AK47)  // If use the m4a1 weapon
    if(get_user_weapon(Killer) == CSW_M4A1)  // If use the m4a1 weapon
    {
        create_thunder(coord,vOrigin);
        emit_sound(victim,CHAN_ITEM, sound_thunder, 1.0, ATTN_NORM, 0, PITCH_NORM);
        emit_sound(Killer,CHAN_ITEM, sound_thunder, 1.0, ATTN_NORM, 0, PITCH_NORM);
        set_model(Killer)
    }
}

create_thunder(vec1[3],vec2[3])
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY); 
write_byte(0); 
write_coord(vec1[0]); 
write_coord(vec1[1]); 
write_coord(vec1[2]); 
write_coord(vec2[0]); 
write_coord(vec2[1]); 
write_coord(vec2[2]); 
write_short(g_Lightning); 
write_byte(1);
write_byte(5);
write_byte(2);
write_byte(20);
write_byte(30);
write_byte(200); 
write_byte(200);
write_byte(200);
write_byte(200);
write_byte(200);
message_end();

message_begin( MSG_PVS, SVC_TEMPENTITY,vec2); 
write_byte(TE_SPARKS); 
write_coord(vec2[0]); 
write_coord(vec2[1]); 
write_coord(vec2[2]); 
message_end();

message_begin(MSG_BROADCAST,SVC_TEMPENTITY,vec2); 
write_byte(TE_SMOKE); 
write_coord(vec2[0]); 
write_coord(vec2[1]); 
write_coord(vec2[2]); 
write_short(g_Smoke); 
write_byte(10);  
write_byte(10)  
message_end();
}

public set_model(id)
{
g_bHasStixm4a1[id] = true
g_bHasStixak47[id] = true
}

public event_CurWeapon(id)
{
        new weapid = read_data(2)

        if(!is_user_alive(id))
            return;
    
    if(g_bHasStixm4a1[id] && weapid == CSW_M4A1)
         if(g_bHasStixak47[id] && weapid == CSW_AK47)
    {
        entity_set_string(id, EV_SZ_viewmodel, v_stix_m4a1)
        entity_set_string(id, EV_SZ_viewmodel, v_stix_ak47)
        entity_set_string(id, EV_SZ_weaponmodel, p_stix_m4a1)
        entity_set_string(id, EV_SZ_weaponmodel, p_stix_ak47)
    }
}
problem evolution models

Last edited by thekiller123; 03-11-2014 at 16:02.
thekiller123 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 12:58.


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