View Single Post
MuzzMikkel
Member
Join Date: Aug 2010
Location: Denmark
Old 06-02-2011 , 12:53   Re: Keydown not working?
Reply With Quote #10

Quote:
Originally Posted by Jelle View Post
haha, does it make a B as a burn decal?

Then you obviously are using the wrong decal to print on the wall. Look in cyclops again to see which decal is used.
Still dosent work, help please..

SMA:

PHP Code:
#include <superheromod> 

new gHeroID 
new gHeroName[] = "Ultimater" 
new bool:gHasUltimater[SH_MAXSLOTS+1]
new 
bool:gUsingLaser[SH_MAXSLOTS+1]
new const 
gReviveSound[] = "ambience/port_suckin1.wav"
new const gUltimaterKnife[] = "models/shmod/chucky_knife.mdl"
new const gUltimaterDeagle[] = "models/shmod/ultimater_deagle.mdl"
new gLaserSound[] = "weapons/electro5.wav" 

new Beam 
new gSmoke
new gBurnDecal

new pCvarDmgpCvarCoolpCvarMultiShotpCvarBurnDecalspCvarHealthpCvarArmorpCvarGravpCvarSpeedpCvarKnifeMultpCvarDeagleMult


public plugin_init() 

    
    
register_plugin("SUPERHERO Beam Test""0.1""MuzzMikkel"
    
    
    new 
pCvarLevel register_cvar("Ultimater_level""1"
    
pCvarHealth register_cvar("Ultimater_health""500")
    
pCvarArmor register_cvar("Ultimater_armor""400")
    
pCvarGrav register_cvar("Ultimater_gravity""0.4")
    
pCvarSpeed register_cvar("Ultimater_speed""750")
    
pCvarKnifeMult register_cvar("Ultimater_knifemult""3.5")
    
pCvarDeagleMult register_cvar("Ultimater_deaglemult""3.0")
    
pCvarCool register_cvar("Ultimater_cooldown""0.1"
    
pCvarDmg register_cvar("Ultimater_dmg""100")
    
pCvarMultiShot register_cvar("Ultimater_multishot""0.1")
    
pCvarBurnDecals register_cvar("Ultimater_burndecals""1")
    
    
gHeroID sh_create_hero(gHeroNamepCvarLevel)  
    
sh_set_hero_info(gHeroID"Ultimater strongest hero in town!""Beam, Respawn upon death, Powerfull knife & deagle."
    
sh_set_hero_bind(gHeroID)
    
    
sh_set_hero_hpap(gHeroIDpCvarHealthpCvarArmor)
    
sh_set_hero_grav(gHeroIDpCvarGrav)
    
sh_set_hero_speed(gHeroIDpCvarSpeed)
    
sh_set_hero_dmgmult(gHeroIDpCvarKnifeMultCSW_KNIFE)
    
sh_set_hero_dmgmult(gHeroIDpCvarDeagleMultCSW_DEAGLE)
    
    
// Set to correct burn decals if mod is CZ or CS
    
gBurnDecal engfunc(EngFunc_DecalIndex"{bigshot5")
    
    
//CurWeapon
    
register_event("CurWeapon""weapon_change""be""1=1")


public 
plugin_precache()  
{  
    
Beam precache_model("sprites/shmod/beam.spr"
    
gSmoke precache_model("sprites/steam1.spr")
    
precache_sound(gLaserSound)
    
precache_sound(gReviveSound)
    
precache_model(gUltimaterKnife)
    
precache_model(gUltimaterDeagle)
}   

public 
sh_hero_init(idheroidmode)
{
    if ( 
heroid == gHeroID )
        
    switch(
mode)
    {
        case 
SH_HERO_ADD:
        {
            
gHasUltimater[id] = true
            gPlayerInCooldown
[id] = false
            Ultimater_weapons
(id)
            
switch_model(id)
            }
        case 
SH_HERO_DROP:
        {
            
gHasUltimater[id] = false 
            sh_drop_weapon
(idCSW_DEAGLEtrue)
        }
    }
}

public 
sh_hero_key(idheroIDkey)  
{  
    
    if (
gHeroID != heroID || gPlayerInCooldown[id] || !is_user_alive(id)) return  
    
    switch(
key)
    {
        case 
SH_KEYDOWN
        {     
            
            new 
Float:delayTime get_pcvar_float(pCvarMultiShot
            if ( 
delayTime >= 0.1 
            {
                
set_task(delayTime"fire_attack"id__"b"
            } 
            
            
fire_attack(id)
            
            if ( 
gPlayerInCooldown[id] ) 
            { 
                
sh_sound_deny(id
                return 
            }    
            
            
gUsingLaser[id] = true
        
}
        case 
SH_KEYUP: {
            
remove_task(id)
            
            if ( 
sh_is_freezetime() || !gUsingLaser[id] ) return
            
            new 
Float:seconds get_pcvar_float(pCvarCool)
            if ( 
seconds 0.0 sh_set_cooldown(idseconds)
            
            
gUsingLaser[id] = false
        
}
    }
}

public 
sh_client_spawn(id)   
{   
    if (
gHasUltimater[id])  
    {      
        
gPlayerInCooldown[id] = false   
        Ultimater_weapons
(id)
    }  
}   

public 
fire_attack(id)  
{   
    new 
tidtbodydamage  
    
    damage 
get_pcvar_num(pCvarDmg)   
    
    
get_user_aiming(idtidtbody)  
    
    
    
attack_effects(id)
    
    
    if ( 
is_user_alive(tid) && (cs_get_user_team(id) != cs_get_user_team(tid) || sh_friendlyfire_on()) )  
    {  
        
sh_extra_damage(tididdamage"Ultimater")  
    }    
}  

public 
attack_effects(id)
{
    new 
aimvec[3]  
    
get_user_origin(idaimvec3
    
    
emit_sound(idCHAN_ITEMgLaserSoundVOL_NORMATTN_NORM0PITCH_NORM)
    
    new 
origin[3]
    
get_user_origin(idorigin1)
    
    
// Beam effect between two points
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(TE_BEAMPOINTS)    // 0
    
write_coord(origin[0])
    
write_coord(origin[1])
    
write_coord(origin[2])
    
write_coord(aimvec[0])
    
write_coord(aimvec[1])
    
write_coord(aimvec[2])
    
write_short(Beam)
    
write_byte(1)        // framestart
    
write_byte(5)        // framerate
    
write_byte(2)        // life
    
write_byte(40)        // width
    
write_byte(0)        // noise
    
write_byte(255)        // r, g, b
    
write_byte(250)        // r, g, b
    
write_byte(250)        // r, g, b
    
write_byte(200)        // brightness
    
write_byte(200)        // speed
    
message_end()
    
    
// Sparks
    
message_begin(MSG_PVSSVC_TEMPENTITY)
    
write_byte(TE_SPARKS)    // 9
    
write_coord(aimvec[0])
    
write_coord(aimvec[1])
    
write_coord(aimvec[2])
    
message_end()
    
    
// Smoke
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(TE_SMOKE)    // 5
    
write_coord(aimvec[0])
    
write_coord(aimvec[1])
    
write_coord(aimvec[2])
    
write_short(gSmoke)
    
write_byte(22)        // 10
    
write_byte(10)        // 10
    
message_end()
    
    if ( 
get_pcvar_num(pCvarBurnDecals) )
    {
        
// decal and ricochet sound
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(109)    // TE_GUNSHOTDECAL
        
write_coord(aimvec[0])    //pos
        
write_coord(aimvec[1])
        
write_coord(aimvec[2])
        
write_short(0)        // I have no idea what thats supposed to be
        
write_byte(gBurnDecal == (18))    //decal
        
message_end()
        
    }
}  

public 
weapon_change(id

    
    if ( !
sh_is_active() || !gHasUltimater[id] ) return   
    
    if(
read_data(2) == CSW_KNIFE || read_data(2) == CSW_DEAGLE)
    {
        
switch_model(id
            
        if (
read_data(3) == 0
        { 
            
sh_reload_ammo(id1
        } 
    } 
}

Ultimater_weapons(id

if (
sh_is_active() && is_user_alive(id) && gHasUltimater[id] ) 
{  
    
sh_give_weapon(idCSW_DEAGLE

}

switch_model(id

if (!
sh_is_active() || !is_user_alive(id) || !gHasUltimater[id] ) return 

if ( 
get_user_weapon(id) == CSW_KNIFE)  

    
set_pev(idpev_viewmodel2gUltimaterKnife)  


else if ( 
get_user_weapon(id) == CSW_DEAGLE 

    
set_pev(idpev_viewmodel2gUltimaterDeagle

}

public 
sh_client_death(victimattacker)
{
if ( !
sh_is_active() || !sh_is_inround() ) return
if ( !
is_user_connected(victim) || is_user_alive(victim) || !gHasUltimater[victim] || random_num(12) != || gPlayerInCooldown[victim]) return
if ( 
victim == attacker ) return

set_task(0.5"Ultimater_respawn"victim)
}

public 
Ultimater_respawn(id)
{
if ( !
is_user_connected(id) || is_user_alive(id) || !sh_is_inround() ) return

ExecuteHamB(Ham_CS_RoundRespawnid)

emit_sound(idCHAN_STATICgReviveSound1.0ATTN_NORM0PITCH_NORM)

sh_chat_message(idgHeroID"You used Ultimater's powers to revive yourself.")

new 
Float:cooldown get_pcvar_float(pCvarCool)
if ( 
cooldown 0.0 ) {
    
gPlayerInCooldown[id] = true
    set_task
(cooldown"enable_ultimater"id)
}
}

public 
enable_ultimater(id)
{
gPlayerInCooldown[id] = false

MuzzMikkel is offline
Send a message via MSN to MuzzMikkel