35 123
發新話題
打印

本隊原創的插件. 自動加入隊伍.

[Close]

本隊原創的插件. 自動加入隊伍.

因為是自動加隊. 不能拍圖.

原碼不發了.

因為害怕某人把原碼拿走. 改作者名說原創
修改文字說是自己修改

不多說了.

要回復喔.

指令:
ctp_auto_team 1 | 0   //開啟關閉插件
ctp_join_team   // 加入什麼隊伍1 = T     2= CT   0 = 自動



Btw,
現在發插件不會發Sma檔了
原因是害怕某人

By 本隊的Colgate
點解可以冇人回-___-


[ 本帖最後由 CTPs 於 2010-12-15 21:18 編輯 ]
附件: 您所在的用戶組無法下載或查看附件

TOP

改人既插件話自己原創??
你都幾好笑wo

TOP

笑死我喇

TOP

人地不發原碼冇咩問題,個插件作者係佢
至於話"害怕某人"係指邊個?你自己光明正大唔怕講
某人 = Who
神又係你鬼又係你
:o)

TOP

引用:
原帖由 kining2008 於 2010-12-15 22:54 發表
人地不發原碼冇咩問題,個插件作者係佢
至於話"害怕某人"係指邊個?你自己光明正大唔怕講
某人 = Who
神又係你鬼又係你
光明正大講會比版主封post,
叻唔切
同埋佢想講邊個有上開依到既都應該知

[ 本帖最後由 h0ja1i 於 2010-12-16 00:28 編輯 ]

TOP

2樓~ 你有乜野證據先?

TOP

__9仔炸完ser改人個插件

又過黎呢到發?
證據?

cvars:

//自動加入警察指令設定:
tjm_join_team 2
tjm_switch_team 0
tjm_class_ct 5
tjm_block_change 1
//自動加入恐怖分子指令設定:
//tjm_join_team 2
//tjm_switch_team 0
//tjm_class_t 5
//tjm_block_change 1

附件: 您所在的用戶組無法下載或查看附件

TOP

本人FishBall 證明 樓主自動加入隊伍插件 是CTP Colgate所原創插件 ,
由於有Sma在手  插件內含有小部分CTP代碼  如有必要 將發上.inc

TOP

引用:
原帖由 SuPeRHunTeR 於 2010-12-15 21:26 發表
改人既插件話自己原創??
你都幾好笑wo
無證無據就唔好話人地原創既插件係改人地..
假如*無證無據*
我夠可以話你個ser唔係你整
青少年的HunTeR
:o)

TOP

引用:
原帖由 waipun 於 2010-12-16 16:20 發表
又過黎呢到發?
證據?

cvars:

//自動加入警察指令設定:
tjm_join_team 2
tjm_switch_team 0
tjm_class_ct 5
tjm_block_change 1
//自動加入恐怖分子指令設定:
//tjm_join_team 2
//tjm_switch_team 0
//tj ...
呢個插件無sma. 你咁叻搵個sma反黎囉
回青少年的HunTeR
我琴日唔見左幾千蚊. 一定係你偷左. 快d還返黎

唔好以為我好似呀邊個邊個咁.

[ 本帖最後由 CTPs 於 2010-12-16 19:35 編輯 ]

TOP

引用:
原帖由 CTPs 於 2010-12-16 19:31 發表

呢個插件無sma. 你咁叻搵個sma反黎囉
回青少年的HunTeR
我琴日唔見左幾千蚊. 一定係你偷左. 快d還返黎

唔好以為我好似呀邊個邊個咁.
搵到喇
我係唔係好叻?
引用:
#include

enum
{
        TEAM_NONE = 0,
        TEAM_T,
        TEAM_CT,
        TEAM_SPEC,
       
        MAX_TEAMS
};
new const g_cTeamChars[MAX_TEAMS] =
{
        'U',
        'T',
        'C',
        'S'
};
new const g_sTeamNums[MAX_TEAMS][] =
{
        "0",
        "1",
        "2",
        "3"
};
new const g_sClassNums[MAX_TEAMS][] =
{
        "1",
        "2",
        "3",
        "4"
};

// Old Style Menus
stock const FIRST_JOIN_MSG[] =                "#Team_Select";
stock const FIRST_JOIN_MSG_SPEC[] =        "#Team_Select_Spect";
stock const INGAME_JOIN_MSG[] =                "#IG_Team_Select";
stock const INGAME_JOIN_MSG_SPEC[] =        "#IG_Team_Select_Spect";
const iMaxLen = sizeof(INGAME_JOIN_MSG_SPEC);

// New VGUI Menus
stock const VGUI_JOIN_TEAM_NUM =                2;

new g_iTeam[33];
new g_iPlayers[MAX_TEAMS];

new tjm_join_team;
new tjm_switch_team;
new tjm_class[MAX_TEAMS];
new tjm_block_change;

public plugin_init()
{
        register_plugin("Team Join Management", "0.3", "Exolent");
        register_event("TeamInfo", "event_TeamInfo", "a");
        register_message(get_user_msgid("ShowMenu"), "message_ShowMenu");
        register_message(get_user_msgid("VGUIMenu"), "message_VGUIMenu");
        tjm_join_team = register_cvar("tjm_join_team", "1");
        tjm_switch_team = register_cvar("tjm_switch_team", "1");
        tjm_class[TEAM_T] = register_cvar("tjm_class_t", "2");
        tjm_class[TEAM_CT] = register_cvar("tjm_class_ct", "4");
        tjm_block_change = register_cvar("tjm_block_change", "1");
}

public plugin_cfg()
{
        set_cvar_num("mp_limitteams", 32);
        set_cvar_num("sv_restart", 1);
}

public client_disconnect(id)
{
        remove_task(id);
}

public event_TeamInfo()
{
        new id = read_data(1);
        new sTeam[32], iTeam;
        read_data(2, sTeam, sizeof(sTeam) - 1);
        for(new i = 0; i < MAX_TEAMS; i++)
        {
                if(g_cTeamChars == sTeam[0])
                {
                        iTeam = i;
                        break;
                }
        }
       
        if(g_iTeam[id] != iTeam)
        {
                g_iPlayers[g_iTeam[id]]--;
                g_iTeam[id] = iTeam;
                g_iPlayers[iTeam]++;
        }
}

public message_ShowMenu(iMsgid, iDest, id)
{
        static sMenuCode[iMaxLen];
        get_msg_arg_string(4, sMenuCode, sizeof(sMenuCode) - 1);
        if(equal(sMenuCode, FIRST_JOIN_MSG) || equal(sMenuCode, FIRST_JOIN_MSG_SPEC))
        {
                if(should_autojoin(id))
                {
                        set_autojoin_task(id, iMsgid);
                        return PLUGIN_HANDLED;
                }
        }
        else if(equal(sMenuCode, INGAME_JOIN_MSG) || equal(sMenuCode, INGAME_JOIN_MSG_SPEC))
        {
                if(should_autoswitch(id))
                {
                        set_autoswitch_task(id, iMsgid);
                        return PLUGIN_HANDLED;
                }
                else if(get_pcvar_num(tjm_block_change))
                {
                        return PLUGIN_HANDLED;
                }
        }
        return PLUGIN_CONTINUE;
}

public message_VGUIMenu(iMsgid, iDest, id)
{
        if(get_msg_arg_int(1) != VGUI_JOIN_TEAM_NUM)
        {
                return PLUGIN_CONTINUE;
        }
       
        if(should_autojoin(id))
        {
                set_autojoin_task(id, iMsgid);
                return PLUGIN_HANDLED;
        }
        else if(should_autoswitch(id))
        {
                set_autoswitch_task(id, iMsgid);
                return PLUGIN_HANDLED;
        }
        else if((TEAM_NONE < g_iTeam[id] < TEAM_SPEC) && get_pcvar_num(tjm_block_change))
        {
                return PLUGIN_HANDLED;
        }
        return PLUGIN_CONTINUE;
}

public task_Autojoin(iParam[], id)
{
        new iTeam = get_new_team(get_pcvar_num(tjm_join_team));
        if(iTeam != -1)
        {
                handle_join(id, iParam[0], iTeam);
        }
}

public task_Autoswitch(iParam[], id)
{
        new iTeam = get_switch_team(id);
        if(iTeam != -1)
        {
                handle_join(id, iParam[0], iTeam);
        }
}

stock handle_join(id, iMsgid, iTeam)
{
        new iMsgBlock = get_msg_block(iMsgid);
        set_msg_block(iMsgid, BLOCK_SET);
       
        engclient_cmd(id, "jointeam", g_sTeamNums[iTeam]);
       
        new iClass = get_team_class(iTeam);
        if(1 <= iClass <= 4)
        {
                engclient_cmd(id, "joinclass", g_sClassNums[iClass - 1]);
        }
        set_msg_block(iMsgid, iMsgBlock);
}

stock get_new_team(iCvar)
{
        switch(iCvar)
        {
                case 1:
                {
                        return TEAM_T;
                }
                case 2:
                {
                        return TEAM_CT;
                }
                case 3:
                {
                        return TEAM_SPEC;
                }
                case 4:
                {
                        new iTCount = g_iPlayers[TEAM_T];
                        new iCTCount = g_iPlayers[TEAM_CT];
                        if(iTCount < iCTCount)
                        {
                                return TEAM_T;
                        }
                        else if(iTCount > iCTCount)
                        {
                                return TEAM_CT;
                        }
                        else
                        {
                                return random_num(TEAM_T, TEAM_CT);
                        }
                }
        }
        return -1;
}

stock get_switch_team(id)
{
        new iTeam;
       
        new iTCount = g_iPlayers[TEAM_T];
        new iCTCount = g_iPlayers[TEAM_CT];
        switch(g_iTeam[id])
        {
                case TEAM_T: iTCount--;
                case TEAM_CT: iCTCount--;
        }
        if(iTCount < iCTCount)
        {
                iTeam = TEAM_T;
        }
        else if(iTCount > iCTCount)
        {
                iTeam = TEAM_CT;
        }
        else
        {
                iTeam = random_num(TEAM_T, TEAM_CT);
        }
       
        if(iTeam != g_iTeam[id])
        {
                return iTeam;
        }
       
        return -1;
}

stock get_team_class(iTeam)
{
        new iClass;
        if(TEAM_NONE < iTeam < TEAM_SPEC)
        {
                iClass = get_pcvar_num(tjm_class[iTeam]);
                if(iClass < 1 || iClass > 4)
                {
                        iClass = random_num(1, 4);
                }
        }
        return iClass;
}

stock set_autojoin_task(id, iMsgid)
{
        new iParam[2];
        iParam[0] = iMsgid;
        set_task(0.1, "task_Autojoin", id, iParam, sizeof(iParam));
}

stock set_autoswitch_task(id, iMsgid)
{
        new iParam[2];
        iParam[0] = iMsgid;
        set_task(0.1, "task_Autoswitch", id, iParam, sizeof(iParam));
}

stock bool:should_autojoin(id)
{
        return ((5 > get_pcvar_num(tjm_join_team) > 0) && is_user_connected(id) && !(TEAM_NONE < g_iTeam[id] < TEAM_SPEC) && !task_exists(id));
}

stock bool:should_autoswitch(id)
{
        return (get_pcvar_num(tjm_switch_team) && is_user_connected(id) && (TEAM_NONE < g_iTeam[id] < TEAM_SPEC) && !task_exists(id));
}

TOP

引用:
原帖由 借粟一燒._. 於 2010-12-16 19:46 發表
搵到喇
我係唔係好叻?
GOOD~!! 叻仔. 不過完全唔同

TOP

大家唔使懷疑佢啦...我有睇過佢插件既內容.完全唔同...

TOP

引用:
原帖由 CTPs 於 2010-12-16 19:51 發表

GOOD~!! 叻仔. 不過完全唔同
我都覺得個插件係你原創嘅-,-

不過嗰個插件真係有SMA.0.

TOP

o,原來個插件真係佢原創既 ,我仲以為佢改晒人地D指令呀,內容做ctp...。

TOP

 35 123
發新話題