Team SemiClip reikalingas pagalba.

Šiame forume vartotojai gali prašyti jiems reikiamo plugino.
Forum rules
Šiame forume galite siūlyti idėjas ar prašyti jums reikalingų pluginų. Jei kas nors pradės jį kurti, tai pasirašys Jūsų sukurtoje temoje. Niekada nepykite, jei niekas neatsako į Jūsų prašymą. Gal tai tiesiog per sudėtinga, arba reikalauja per daug darbo.
Post Reply
Chemodan
O taip. Jis jau surinko 50 žinučių!
Posts: 79
Joined: 2013 Jan 26 19:51
Skype: okmu1231

Team SemiClip reikalingas pagalba.

Post by Chemodan »

Sveiki , reikalingas pluginas kuris leidžia tik CT VIP/ADMIN su flagu ADMIN_CHAT eiti kiaurai team , pluginas Semi Clip atrodo . Busiu dekingas. Nes nesigauna padaryt , kad veiktu taip kaip noriu.

User avatar
laimiukas3
Moderatorius
Posts: 4569
Joined: 2012 Aug 03 01:12
Skype: laimiukas3
Location: Vilnius
Contact:

Re: Team SemiClip reikalingas pagalba.

Post by laimiukas3 »

Code: Select all

#include <amxmodx>#include <hamsandwich>#include <fakemeta> public plugin_init(){    register_plugin("Admin NO Clip", "1.0", "[A]tomen")    RegisterHam(Ham_Spawn, "player", "fwd_Ham_Spawn_post", 1)} public fwd_Ham_Spawn_post(id){    if(get_user_flags(id) & ADMIN_CHAT && pev(id, pev_solid) != SOLID_TRIGGER)        set_pev(id, pev_solid, SOLID_TRIGGER)     return HAM_IGNORED} 
Image
Image
Image

Chemodan
O taip. Jis jau surinko 50 žinučių!
Posts: 79
Joined: 2013 Jan 26 19:51
Skype: okmu1231

Re: Team SemiClip reikalingas pagalba.

Post by Chemodan »

Jis veikia , bet jis ne švelniai praejna , reikia dar pralysti į žmogu.. ir Terai negali liesti Admina ar visus net CT..

Code: Select all

#include <amxmodx>#include <fakemeta> #pragma semicolon 1 #define DISTANCE 120 new g_iTeam[33];new bool:g_bSolid[33];new bool:g_bHasSemiclip[33];new Float:g_fOrigin[33][3]; new bool:g_bSemiclipEnabled; new g_iForwardId[3];new g_iMaxPlayers;new g_iCvar[3]; public plugin_init( ){    register_plugin( "(Team-)Semiclip", "1.2", "SchlumPF*" );        g_iCvar[0] = register_cvar( "semiclip_enabled", "1" );    g_iCvar[1] = register_cvar( "semiclip_teamclip", "0" );    g_iCvar[2] = register_cvar( "semiclip_transparancy", "1" );        register_forward( FM_ClientCommand, "fwdClientCommand" );        if( get_pcvar_num( g_iCvar[0] ) )    {        g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" );        g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" );        g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 );                g_bSemiclipEnabled = true;    }    else        g_bSemiclipEnabled = false;        g_iMaxPlayers = get_maxplayers( );} public fwdPlayerPreThink( plr ){    static id, last_think;     if( last_think > plr )    {        for( id = 1 ; id <= g_iMaxPlayers ; id++ )        {            if( is_user_alive( id ) )            {                if( get_pcvar_num( g_iCvar[1] ) )                    g_iTeam[id] = get_user_team( id );                                g_bSolid[id] = pev( id, pev_solid ) == SOLID_SLIDEBOX ? true : false;                pev( id, pev_origin, g_fOrigin[id] );            }            else                g_bSolid[id] = false;        }    }     last_think = plr;     if( g_bSolid[plr] )    {        for( id = 1 ; id <= g_iMaxPlayers ; id++ )        {            if( g_bSolid[id] && get_distance_f( g_fOrigin[plr], g_fOrigin[id] ) <= DISTANCE && id != plr )            {                if( get_pcvar_num( g_iCvar[1] ) && g_iTeam[plr] != g_iTeam[id] )                    return FMRES_IGNORED;                    set_pev( id, pev_solid, SOLID_NOT );                g_bHasSemiclip[id] = true;            }        }    }     return FMRES_IGNORED;} public fwdPlayerPostThink( plr ){    static id;     for( id = 1 ; id <= g_iMaxPlayers ; id++ )    {        if( g_bHasSemiclip[id] )        {            set_pev( id, pev_solid, SOLID_SLIDEBOX );            g_bHasSemiclip[id] = false;        }    }} public fwdAddToFullPack_Post( es_handle, e, ent, host, hostflags, player, pset ){    if( player )    {        if( g_bSolid[host] && g_bSolid[ent] && get_distance_f( g_fOrigin[host], g_fOrigin[ent] ) <= DISTANCE )        {            if( get_pcvar_num( g_iCvar[1] ) && g_iTeam[host] != g_iTeam[ent] )                return FMRES_IGNORED;                            set_es( es_handle, ES_Solid, SOLID_NOT ); // makes semiclip flawless                        if( get_pcvar_num( g_iCvar[2] ) == 1 )            {                set_es( es_handle, ES_RenderMode, kRenderTransAlpha );                set_es( es_handle, ES_RenderAmt, 85 );            }            else if( get_pcvar_num( g_iCvar[2] ) == 2 )            {                set_es( es_handle, ES_Effects, EF_NODRAW );                set_es( es_handle, ES_Solid, SOLID_NOT );            }        }    }        return FMRES_IGNORED;} // is there a better way to detect changings of g_iCvar[0]?public fwdClientCommand( plr ){    // use the forwards just when needed, for good performance    if( !get_pcvar_num( g_iCvar[0] ) && g_bSemiclipEnabled )    {        unregister_forward( FM_PlayerPreThink, g_iForwardId[0] );        unregister_forward( FM_PlayerPostThink, g_iForwardId[1] );        unregister_forward( FM_AddToFullPack, g_iForwardId[2], 1 );                g_bSemiclipEnabled = false;    }    else if( get_pcvar_num( g_iCvar[0] ) && !g_bSemiclipEnabled )    {        g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" );        g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" );        g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 );                g_bSemiclipEnabled = true;    }}
Last edited by Chemodan on 2013 Jan 28 12:28, edited 1 time in total.

Post Reply

Who is online

Users browsing this forum: No registered users and 49 guests