AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Glow Round (https://forums.alliedmods.net/showthread.php?t=210437)

riscanuc 03-10-2013 10:54

Glow Round
 
Hy , i have a problem with this plugin ..When respawn this plugin give me 200 hp , 200 armour , 500 speed + red glow . OK..
When die and give me respawn, they disappear . I want to fix this problem , sorry for my bad english

Code:

#include <amxmodx>
#include <engine>
#include <cstrike>
#include <fun>
#include <hamsandwich>

#pragma semicolon 1

#define DMG_GRENADE (1<<24)

static const PLUGIN[ ]    = "Supreme Anti Furien";
static const VERSION[ ]    = "1.0";
static const AUTHOR[ ]    = "Rap";

//static const MODEL[ ]    = "antifurien_suprem";
//static const SKIN[ ]    = "v_cutit_suprem";
//static const SOUND[ ]    = "own_risamalo";

//new suprememdlpath[100];
//new supremeskinpath[100];
//new supremesoundpath[100];

new bool: is_user_supreme[33];

new SyncHudMessage;

public plugin_init( )
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
   
    register_event("HLTV", "eventNewRound", "a", "1=0", "2=0");
    register_event("CurWeapon", "CurWeapon", "be", "1=1");
   
    RegisterHam(Ham_TakeDamage, "player", "HamTakeDamage");
   
    SyncHudMessage = CreateHudSyncObj( );
}
public plugin_precache( )
{
    //formatex(suprememdlpath, sizeof(suprememdlpath) - 1, "models/player/%s/%s.mdl", MODEL, MODEL);
    //formatex(supremeskinpath, sizeof(suprememdlpath) - 1, "models/%s.mdl", SKIN);
    //formatex(supremesoundpath, sizeof(suprememdlpath) - 1, "sound/misc/%s.wav", SOUND);
    //precache_model(suprememdlpath);
    //precache_model(supremeskinpath);
    //precache_sound(supremesoundpath);
}
public client_putinserver(id)
{
    is_user_supreme[id] = false;
}
public client_disconnect(id)
{
    is_user_supreme[id] = false;
}
public eventNewRound( )
{
    new Players[32], iNum, player;
    new RandomPlayer, CTNum = 0;
   
    get_players(Players, iNum, "ch");
   
    for( new i = 0; i < iNum; i++ )
    {
        player = Players[i];
       
        if( is_user_supreme[ player ] )
        {
           
            cs_reset_user_model(player);
            set_rendering(player, kRenderFxNone, 0, 0, 0, kRenderNormal, 0);
            is_user_supreme[player] = false;
        }
       
        if( cs_get_user_team(player) == CS_TEAM_CT )
        {
            set_user_maxspeed(player, 255.0);
            CTNum++;
        }
    }
    if( CTNum == 0 )
    {
        return PLUGIN_CONTINUE;
    }
       
    RandomPlayer = Players[random(iNum)];
   
    while( cs_get_user_team(RandomPlayer) == CS_TEAM_T )
    {
        RandomPlayer = Players[random(iNum)];
    }
   
    set_task(1.0, "SetSupremeAtributes", RandomPlayer);
   
    return PLUGIN_CONTINUE;
}
public CurWeapon(id)
{
    if( is_user_supreme[id] )
    {
        new Weapon = read_data(2);
       
        //if( Weapon == CSW_KNIFE )
        {
            //entity_set_string(id, EV_SZ_viewmodel, supremeskinpath);
        }
        set_user_maxspeed(id, 500.0);
    }
}
public HamTakeDamage(id, inflictor, iAttacker, Float:damage, damagebits)
{
    if( !iAttacker || id == iAttacker || !is_user_connected(iAttacker) || !is_user_connected(id)
        || get_user_team(id) == get_user_team(iAttacker) || damagebits & DMG_GRENADE
        || !is_user_supreme[iAttacker] ) return HAM_IGNORED;
       
    if( get_user_weapon(iAttacker) == CSW_KNIFE )
    {
        SetHamParamFloat(4, damage * 2.0);
        return HAM_IGNORED;
    }
   
   
    return HAM_HANDLED;

public SetSupremeAtributes(id)
{
    if( is_user_connected(id) && is_user_alive(id) )
    {
        set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 0.0, 1.0, 0.0, 5.0, 3);
        ShowSyncHudMsg(0, SyncHudMessage, "%s este Nicolae Guta", get_name(id));
       
        //client_cmd(0, "spk misc/%s", SOUND);
       
        //if( get_user_weapon(id) == CSW_KNIFE )
            //entity_set_string(id, EV_SZ_viewmodel, supremeskinpath);//
       
        set_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 100);
        //cs_set_user_model(id, MODEL);
        set_user_maxspeed(id, 500.0);
        set_user_health(id, 150);
        set_user_armor(id, 150);
       
        is_user_supreme[id] = true;
    }
}
stock get_name(id)
{
    new szName[32];
    get_user_name(id, szName, sizeof szName -1);
   
    return szName;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/


Torge 03-10-2013 11:08

Re: Glow Round
 
You could use a boolean to check whether you died, if yes, don't give abilities again, if no, give.

Kz1.0 03-10-2013 11:27

Re: Glow Round
 
When you die, you want to still get the effect ?
or
When you die, the effect still remains and u want to disable it ??

riscanuc 03-10-2013 12:13

Re: Glow Round
 
When I die , I want to still get the effect :) The speed don't work . You can to restore it :)

Kz1.0 03-10-2013 12:15

Re: Glow Round
 
i think u should hook Player Spawn @@.

Podarok 03-11-2013 03:16

Re: Glow Round
 
I made HAM spawn event hook, you have to do checks on you own... (I called it EVENT_Spawn)
U can delete new round hook and copy all checks to event_spawn, in my opinion that would be better...
Code:
#include <amxmodx> #include <engine> #include <cstrike> #include <fun> #include <hamsandwich> #pragma semicolon 1 #define DMG_GRENADE (1<<24) static const PLUGIN[ ]    = "Supreme Anti Furien"; static const VERSION[ ]    = "1.1"; static const AUTHOR[ ]    = "Rap & Podarok"; //static const MODEL[ ]    = "antifurien_suprem"; //static const SKIN[ ]    = "v_cutit_suprem"; //static const SOUND[ ]    = "own_risamalo"; //new suprememdlpath[100]; //new supremeskinpath[100]; //new supremesoundpath[100]; new bool: is_user_supreme[33]; new SyncHudMessage; public plugin_init( ) {     register_plugin(PLUGIN, VERSION, AUTHOR);         register_event("HLTV", "eventNewRound", "a", "1=0", "2=0");     register_event("CurWeapon", "CurWeapon", "be", "1=1");         RegisterHam(Ham_TakeDamage, "player", "HamTakeDamage");         // Hook Spawn     RegisterHam( Ham_Spawn, "player", "EVENT_Spawn", 1);         SyncHudMessage = CreateHudSyncObj( ); } public plugin_precache( ) {     //formatex(suprememdlpath, sizeof(suprememdlpath) - 1, "models/player/%s/%s.mdl", MODEL, MODEL);     //formatex(supremeskinpath, sizeof(suprememdlpath) - 1, "models/%s.mdl", SKIN);     //formatex(supremesoundpath, sizeof(suprememdlpath) - 1, "sound/misc/%s.wav", SOUND);     //precache_model(suprememdlpath);     //precache_model(supremeskinpath);     //precache_sound(supremesoundpath); } public client_putinserver(id) {     is_user_supreme[id] = false; } public client_disconnect(id) {     is_user_supreme[id] = false; } public eventNewRound( ) {     new Players[32], iNum, player;     new RandomPlayer, CTNum = 0;         get_players(Players, iNum, "ch");         for( new i = 0; i < iNum; i++ )     {         player = Players[i];                 if( is_user_supreme[ player ] )         {                         cs_reset_user_model(player);             set_rendering(player, kRenderFxNone, 0, 0, 0, kRenderNormal, 0);             is_user_supreme[player] = false;         }                 if( cs_get_user_team(player) == CS_TEAM_CT )         {             set_user_maxspeed(player, 255.0);             CTNum++;         }     }     if( CTNum == 0 )     {         return PLUGIN_CONTINUE;     }             RandomPlayer = Players[random(iNum)];         while( cs_get_user_team(RandomPlayer) == CS_TEAM_T )     {         RandomPlayer = Players[random(iNum)];     }         set_task(1.0, "SetSupremeAtributes", RandomPlayer);         return PLUGIN_CONTINUE; } public EVENT_Spawn( id ) {     // ResetHUD can be called when the user is not alive, lets ignore those calls     if ( !is_user_alive( id ) )     {         return HAM_HANDLED;     }     //do some checks here....     set_task(1.0, "SetSupremeAtributes", RandomPlayer);     return HAM_HANDLED; } public CurWeapon(id) {     if( is_user_supreme[id] )     {         new Weapon = read_data(2);                 //if( Weapon == CSW_KNIFE )         {             //entity_set_string(id, EV_SZ_viewmodel, supremeskinpath);         }         set_user_maxspeed(id, 500.0);     } } public HamTakeDamage(id, inflictor, iAttacker, Float:damage, damagebits) {     if( !iAttacker || id == iAttacker || !is_user_connected(iAttacker) || !is_user_connected(id)         || get_user_team(id) == get_user_team(iAttacker) || damagebits & DMG_GRENADE         || !is_user_supreme[iAttacker] ) return HAM_IGNORED;             if( get_user_weapon(iAttacker) == CSW_KNIFE )     {         SetHamParamFloat(4, damage * 2.0);         return HAM_IGNORED;     }             return HAM_HANDLED; }   public SetSupremeAtributes(id) {     if( is_user_connected(id) && is_user_alive(id) )     {         set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 0.0, 1.0, 0.0, 5.0, 3);         ShowSyncHudMsg(0, SyncHudMessage, "%s este Nicolae Guta", get_name(id));                 //client_cmd(0, "spk misc/%s", SOUND);                 //if( get_user_weapon(id) == CSW_KNIFE )             //entity_set_string(id, EV_SZ_viewmodel, supremeskinpath);//                 set_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 100);         //cs_set_user_model(id, MODEL);         set_user_maxspeed(id, 500.0);         set_user_health(id, 150);         set_user_armor(id, 150);                 is_user_supreme[id] = true;     } } stock get_name(id) {     new szName[32];     get_user_name(id, szName, sizeof szName -1);         return szName; } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par } */ /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par } */


All times are GMT -4. The time now is 21:49.

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