AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Help with the semiclip plugin (https://forums.alliedmods.net/showthread.php?t=322736)

diavolu111 04-03-2020 09:38

Help with the semiclip plugin
 
I found this plugin on a Russian site. The plugin is going well, but it has a prroblema.This plugin allows you to pass through all players, even through opponents.I'd like it if it can be edited so you can only go through teammates, not opponents.Thanks.

HTML Code:

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

new const VERSION[] = "1.2"
new hologramas
new semiclip
const MAX_PLAYERS = 32

new g_iPlayers[MAX_PLAYERS], g_iNum, g_iPlayer, i
new const g_szAliveFlags[] = "a"
#define RefreshPlayersList()    get_players(g_iPlayers, g_iNum, g_szAliveFlags)

public plugin_init()


{   
    hologramas = register_cvar("hologram","0")
    semiclip = register_cvar("semiclip","1")
    register_plugin("Hologram", VERSION, "G.")
    register_forward(FM_AddToFullPack, "FM_client_AddToFullPack_Post", 1)
    RegisterHam(Ham_Player_PreThink, "player", "Ham_CBasePlayer_PreThink_Post", 1)
}





public FM_client_AddToFullPack_Post(es, e, iEnt, id, hostflags, player, pSet)
{
    if( player && id != iEnt && get_orig_retval() && is_user_alive(id) )
    {
        if( get_pcvar_num(semiclip) == 1)
        {
            set_es(es, ES_Solid, SOLID_NOT)
        }
        if( get_pcvar_num(hologramas) == 1 )
        {
            set_es(es, ES_RenderMode, kRenderTransAdd)
            set_es(es, ES_RenderAmt, 80)
            set_es(es, ES_RenderColor, 0, 0, 0)
            set_es(es, ES_RenderFx, kRenderFxDistort)
        }
        if(is_user_alive(id) && get_pcvar_num(semiclip) == 0 )
        {
            set_pev(id, pev_solid, SOLID_SLIDEBOX)
        }   

    }
 
}

public Ham_CBasePlayer_PreThink_Post(id)
{
    if( !is_user_alive(id)  )
    {
        return
    }
    if(get_pcvar_num(semiclip) == 1)
    {   
    RefreshPlayersList()

    for(i = 0; i<g_iNum; i++)
    {
        g_iPlayer = g_iPlayers[i]
        if( id != g_iPlayer )
        {
            set_pev(g_iPlayer, pev_solid, SOLID_NOT)
        }
    }
    }

}

public client_PostThink(id)
{
    if( !is_user_alive(id) )
    {
        return
    }
    if(get_pcvar_num(semiclip) == 1)
    {
    RefreshPlayersList()

    for(i = 0; i<g_iNum; i++)
    {
        g_iPlayer = g_iPlayers[i]
        if( g_iPlayer != id )
        {
            set_pev(g_iPlayer, pev_solid, SOLID_SLIDEBOX)
        }
    }
    }

}


georgik57 04-08-2020 11:07

Re: Help with the semiclip plugin
 
use schmurgel's team semiclip. best there is.


All times are GMT -4. The time now is 16:13.

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