Counter-Strike GO
[BG-KoKa] Massacre +Weapons/Knife/Gloves/Agents Skins and Ranks
45.144.155.110:27015
de_mirage
Играчи: 8/32
de_mirage
Counter-Strike 1.6
VIP
D Y N A M I C - [RESPAWN]+18 ✪ 45.144.155.72:27015 de_inferno Играчи: 23/32
Counter-Strike 1.6
CS1.BG | DUST2 NOSHTA GARMI [RANKED PLAY] #1 45.144.155.113:27015 de_dust2 Играчи: 30/32
Counter-Strike 1.6
Cs-PlovdiV.com - Aim Attack 93.123.16.4:27022 aim_aztec Играчи: 0/16

Оправяне на бъг при team semiclip на СТ отбора

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от EMOTO2.COM » 07 Фев 2021, 23:53

Здравейте, при старт или рестарт на сървъра в изключително редки случай се получава бъг и САМО Counter-terorist отбора неможе да минава през съотборник. Като се бъгне проблема се решава единствено с нов пълен рестарт на сървъра. Прикачвам кода и ако някой може да редактира така, че да няма повече този бъг ще е супер.
Много моля само, хора който мислят да ми предложат друг код/плугин или изобщо неразбират как да ми помогнат да подминат просто темата!

Код за потвърждение: Избери целия код

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

const MAX_PLAYERS = 32

new g_bAlive

#define MarkUserAlive(%1)    g_bAlive |= 1<<(%1 & 31)
#define ClearUserAlive(%1)    g_bAlive &= ~( 1<<(%1 & 31) )
#define IsAlive(%1)        g_bAlive &  1<<(%1 & 31)

new g_iTeam[MAX_PLAYERS+1]

new const g_szTeams[][] =
{
    "",
    "TERRORIST",
    "CT"
}

enum {
    _T = 1,
    _CT
}

new g_iTeamSemiclip = _T | _CT

public plugin_init()
{
    register_plugin("Team semiclip", "0.0.2", "ConnorMcLeod")

    RegisterHam(Ham_Spawn, "player", "Ham_CBasePlayer_Spawn_Post", 1)
    RegisterHam(Ham_Killed, "player", "Ham_CBasePlayer_Killed_Post", 1)
    
    register_forward(FM_AddToFullPack, "FM_client_AddToFullPack_Post", 1)
    RegisterHam(Ham_Player_PreThink, "player", "Ham_CBasePlayer_PreThink_Post", 1)

    register_concmd("team_semiclip", "ConsoleCommand_TeamSemiclip", ADMIN_CFG)
}

public ConsoleCommand_TeamSemiclip( id , level , cid )
{
    if( cmd_access(id, level, cid, 2) )
    {
        new szArg[2]
        read_argv(1, szArg, charsmax(szArg))
        g_iTeamSemiclip = clamp(str_to_num(szArg), 0, 3)
    }
    return PLUGIN_HANDLED
}

public client_putinserver( id )
{
    ClearUserAlive(id)
}

public client_disconnect( id )
{
    ClearUserAlive(id)
}

public Ham_CBasePlayer_Spawn_Post( id )
{
    if( is_user_alive(id) )
    {
        MarkUserAlive(id)

        const XTRA_OFS_PLAYER = 5
        const m_iTeam = 114
        g_iTeam[id] = get_pdata_int(id, m_iTeam, XTRA_OFS_PLAYER)
    }
    else
    {
        ClearUserAlive(id)
    }
}

public Ham_CBasePlayer_Killed_Post( id )
{
    if( is_user_alive(id) )
    {
        MarkUserAlive(id)
    }
    else
    {
        ClearUserAlive(id)
    }
}

public FM_client_AddToFullPack_Post(es, e, iEnt, id, hostflags, player, pSet)
{
    if(    player
    &&    id != iEnt
    &&    IsAlive(id)
    &&    g_iTeamSemiclip & g_iTeam[id]
    &&    IsAlive(iEnt)
    &&    g_iTeam[id] == g_iTeam[iEnt]
    &&    get_orig_retval()    )
    {
        set_es(es, ES_Solid, SOLID_NOT)
        }
}

public Ham_CBasePlayer_PreThink_Post(id)
{
    if( IsAlive(id) == 0 || !(g_iTeamSemiclip & g_iTeam[id]) )
    {
        return
    }

    new iPlayers[MAX_PLAYERS], iNum, iPlayer
    get_players(iPlayers, iNum, "ae", g_szTeams[g_iTeam[id]])

    for(new i; i<iNum; i++)
    {
        iPlayer = iPlayers[i]
        if( id != iPlayer )
        {
            entity_set_int(iPlayer, EV_INT_solid, SOLID_NOT)
        }
    }
}

public client_PostThink(id)
{
    if( IsAlive(id) == 0 || !(g_iTeamSemiclip & g_iTeam[id]) )
    {
        return
    }

    new iPlayers[MAX_PLAYERS], iNum, iPlayer
    get_players(iPlayers, iNum, "ae", g_szTeams[g_iTeam[id]])

    for(new i; i<iNum; i++)
    {
        iPlayer = iPlayers[i]
        if( id != iPlayer )
        {
            entity_set_int(iPlayer, EV_INT_solid, SOLID_SLIDEBOX)
        }
	}
}
Присъедини се към най-доброто място за игра!
https://emoto2.com/

Аватар
Just
Извън линия
Потребител
Потребител
Мнения: 427
Регистриран на: 23 Дек 2016, 19:10
Местоположение: http://cs-ultragaming.info
Се отблагодари: 5 пъти
Получена благодарност: 34 пъти
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от Just » 07 Фев 2021, 23:59

Ползвай по добре този модул.
resemiclip_2_3_9.rar
(88.5 KiB) Свалено 97 пъти
resemiclip_2_3_9.rar
(88.5 KiB) Свалено 97 пъти
Изображение


NEW CS 1.6 SERVERS IP: 45.144.155.176:27015

Изображение

Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от EMOTO2.COM » 08 Фев 2021, 01:58

В падащото меню нямаше по-огромен текст от това което съм написъл, явно и на теб ти трябват очила или по-голям диоптър?
Нежелая да ползвам никакви други кодове или модули който иска и има желание нека помогне ако няма такива ще си карам както до сега...
+ това което си дал е 24 пъти по-голям кода от плугина който съм дал да се редактира :devil:
Присъедини се към най-доброто място за игра!
https://emoto2.com/

Аватар
ChrisBenoit
Извън линия
Потребител
Потребител
Мнения: 67
Регистриран на: 30 Яну 2021, 19:37
Се отблагодари: 19 пъти
Получена благодарност: 1 път
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от ChrisBenoit » 08 Фев 2021, 11:54

Незнам защо искаш този код да използваш но аз ще ти предложа това: Semiclip + AIm Info Аз го използвам и нямам такива проблеми.Просто си махаш AIm Info-то и си готов.
Enjoy Highserv.eu Servers
Dust2Only IP: 93.123.18.21:27016
BaseBuilder IP: 93.123.18.21:27017
Forum: www.highserv.eu/forum/

Аватар
m0ney
Извън линия
Потребител
Потребител
Мнения: 285
Регистриран на: 13 Апр 2020, 11:36
Се отблагодари: 83 пъти
Получена благодарност: 39 пъти
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от m0ney » 08 Фев 2021, 13:59

Дърт плъгин за дърт амх.. не знам какво очакваш!

Пробвай този на същия автор но по-нова версия + добавена команда /invis да маха всички от отбора ти.

Код за потвърждение: Избери целия код

#define SHOW_NAMES_WHEN_AIM
// #define ENABLE_SHOTS_DAMAGE

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

#define VERSION "0.1.0"
#define PLUGIN "Team SemiClip"

#define MAX_PLAYERS 32

#define get_player_team(%0)    get_pdata_int(%0,114)

#define GROUP_OP_NAND    1

#if defined SHOW_NAMES_WHEN_AIM
    new HamHook:PreThink, HamHook:PreThinkP
#endif

#if defined ENABLE_SHOTS_DAMAGE
    new HamHook:PostThink, HamHook:PostThinkP
#endif

new g_iCurrentPlayer
new g_bSeePlayers[MAX_PLAYERS+1], bool:g_bIsPlayerNearCurrentPlayer[MAX_PLAYERS+1]

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, "ConnorMcLeod")

    register_clcmd("say /invis", "ClCmd_Invis", PLUGIN_CONTINUE)
    register_clcmd("say_team /invis", "ClCmd_Invis", PLUGIN_HANDLED)

    RegisterHam(Ham_Spawn, "player", "CBasePlayer_Spawn_Post", true)
    RegisterHam(Ham_Killed, "player", "CBasePlayer_Killed_Post", true)

    register_forward(FM_AddToFullPack, "client_AddToFullPack", 0)
    register_forward(FM_AddToFullPack, "client_AddToFullPack_P", 1)

    register_forward(FM_CmdStart, "client_CmdStart_P", 1)

    #if defined SHOW_NAMES_WHEN_AIM
        DisableHamForward( PreThink = RegisterHam(Ham_Player_PreThink, "player", "CBasePlayer_PreThink", 0) )
        DisableHamForward( PreThinkP = RegisterHam(Ham_Player_PreThink, "player", "CBasePlayer_PreThink_P", 1) )
    #endif

    #if defined ENABLE_SHOTS_DAMAGE
        DisableHamForward( PostThink = RegisterHam(Ham_Player_PostThink, "player", "CBasePlayer_PostThink", 0) )
        DisableHamForward( PostThinkP = RegisterHam(Ham_Player_PostThink, "player", "CBasePlayer_PostThink_P", 1) )
    #endif
}

public client_putinserver(id) 
{
    g_bSeePlayers[id] = true
}

public ClCmd_Invis(id, RETURN_TYPE)
{
    g_bSeePlayers[id] = !g_bSeePlayers[id]
    client_print(id, print_chat, " ** Teamates Visibility is now %s.", g_bSeePlayers[id] ? "On" : "Off")
    return RETURN_TYPE
}

public CBasePlayer_Spawn_Post( id )
{
    if( is_user_alive(id) )
    {
        set_pev(id, pev_groupinfo, get_player_team(id))
    }
}

public CBasePlayer_Killed_Post( id )
{
    set_pev(id, pev_groupinfo, 0)
}

public client_CmdStart_P( id )
{
    static shouldsee, enabled
    if( ( shouldsee = is_user_alive(id) ) )
    {
        engfunc(EngFunc_SetGroupMask, 1, GROUP_OP_NAND)
        set_pev(id, pev_groupinfo, get_player_team(id))
        shouldsee *= g_bSeePlayers[id]
    }
    if( enabled != shouldsee )
    {
        if( !enabled )
        {
            enabled = true
            #if defined SHOW_NAMES_WHEN_AIM
                EnableHamForward( PreThink )
                EnableHamForward( PreThinkP )
            #endif
            #if defined ENABLE_SHOTS_DAMAGE
                EnableHamForward( PostThink )
                EnableHamForward( PostThinkP )
            #endif
        }
        else
        {
            enabled = false
            #if defined SHOW_NAMES_WHEN_AIM
                DisableHamForward( PreThink )
                DisableHamForward( PreThinkP )
            #endif
            #if defined ENABLE_SHOTS_DAMAGE
                DisableHamForward( PostThink )
                DisableHamForward( PostThinkP )
            #endif
        }
    }
}

public client_AddToFullPack(es, e, ent, id, hostflags, player, pSet)
{
    if( player && g_iCurrentPlayer != id && is_user_alive(id) )
    {
        g_iCurrentPlayer = id

        static invis
        if( g_bSeePlayers[id] )
        {
            invis = false
            set_pev(id, pev_groupinfo, 0)
            static team
            static players[32], num, plr
            team = get_player_team(id)
            num = find_sphere_class(id, "player", 512.0, players, sizeof(players))
            arrayset(g_bIsPlayerNearCurrentPlayer, false, sizeof(g_bIsPlayerNearCurrentPlayer))
            for(--num; num>=0; num--)
            {
                plr = players[num]
                g_bIsPlayerNearCurrentPlayer[ plr ] = team == get_player_team(plr)
            }
        }
        else
        {
            if( !invis )
            {
                arrayset(g_bIsPlayerNearCurrentPlayer, false, sizeof(g_bIsPlayerNearCurrentPlayer))
                invis = true
            }
            set_pev(id, pev_groupinfo, 3 - get_player_team(id))
        }
    }
}

public client_AddToFullPack_P(es, e, ent, id, hostflags, player)
{
    if( !g_iCurrentPlayer || !is_user_alive(id) )
    {
        return
    }

    if( !player || g_iCurrentPlayer != id )
    {
        set_pev(g_iCurrentPlayer, pev_groupinfo, get_player_team(g_iCurrentPlayer))
        g_iCurrentPlayer = 0
        return
    }

    if( g_bSeePlayers[id] && g_bIsPlayerNearCurrentPlayer[ent] )
    {
        set_es(es, ES_Solid, SOLID_NOT)

        set_es(es, ES_RenderMode, kRenderTransColor) 
        set_es(es, ES_RenderAmt, floatround(entity_range(id, ent)*0.5))
    }
}

#if defined SHOW_NAMES_WHEN_AIM
    public CBasePlayer_PreThink(id)
    {
        set_pev(id, pev_groupinfo, 0)
    }

    public CBasePlayer_PreThink_P(id)
    {
        set_pev(id, pev_groupinfo, get_player_team(id))
    }
#endif

#if defined ENABLE_SHOTS_DAMAGE
    public CBasePlayer_PostThink(id)
    {
        set_pev(id, pev_groupinfo, 0)
    }

    public CBasePlayer_PostThink_P(id)
    {
        set_pev(id, pev_groupinfo, get_player_team(id))
    }
#endif 
Изображение
Изображение

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1296 пъти
Обратна връзка:

Оправяне на бъг при team semiclip на СТ отбора

Мнение от OciXCrom » 08 Фев 2021, 14:04

EMOTO2.COM написа: 08 Фев 2021, 01:58 В падащото меню нямаше по-огромен текст от това което съм написъл, явно и на теб ти трябват очила или по-голям диоптър?
Нежелая да ползвам никакви други кодове или модули който иска и има желание нека помогне ако няма такива ще си карам както до сега...
+ това което си дал е 24 пъти по-голям кода от плугина който съм дал да се редактира :devil:
Мога да направя код с 1 ред който ще крашне сървъра моментално. :)
Големината на кода не играе никаква роля в работата му.

Аватар
zolfeca
Извън линия
Администратор
Администратор
Мнения: 417
Регистриран на: 10 Окт 2016, 23:48
Се отблагодари: 24 пъти
Получена благодарност: 92 пъти

Оправяне на бъг при team semiclip на СТ отбора

Мнение от zolfeca » 08 Фев 2021, 14:18

RE-Semiclip-a, който Just е предложил е възможно най-добрия вариант. Недей да говориш глупости. Търсиш помощ - помага ти се и пак си недоволен.

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: Semrush [Bot] и 2 госта