Perdarykit Pluginą.

Š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
iNew
O taip. Jis jau surinko 50 žinučių!
Posts: 84
Joined: 2016 Jun 20 15:54
Skype: dilanidzee
Location: Kaunas

Perdarykit Pluginą.

Post by iNew »

/* AMX Mod X
* Auto Join on Connect
*
* (c) Copyright 2007 by VEN
*
* This file is provided as is (no warranties)
*
* DESCRIPTION
* Plugin allow to players automatically join team/team&class on connect.
*
* CVARS
* ajc_team (0: OFF, N: team index, 5: auto team, default: 5) - controls team join
* ajc_class (0: OFF, N: class index, 5: auto class, default: 5) - controls class join
* ajc_imm (0: OFF, 1: ON, default: 1) - don't affect on immuned players (ON/OFF)
*
* CREDITS
* Major__ - inquiry
*/

#include <amxmodx>

#define PLUGIN_NAME "Auto Join on Connect"
#define PLUGIN_VERSION "0.1"
#define PLUGIN_AUTHOR "VEN"

#define IMMUNITY_ACCESS_LEVEL ADMIN_IMMUNITY

#define AUTO_TEAM_JOIN_DELAY 0.1

#define TEAM_SELECT_VGUI_MENU_ID 2

new g_pcvar_team
new g_pcvar_class
new g_pcvar_imm

public plugin_init() {
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)

register_message(get_user_msgid("ShowMenu"), "message_show_menu")
register_message(get_user_msgid("VGUIMenu"), "message_vgui_menu")

g_pcvar_team = register_cvar("ajc_team", "5")
g_pcvar_class = register_cvar("ajc_class", "5")
g_pcvar_imm = register_cvar("ajc_imm", "1")
}

public message_show_menu(msgid, dest, id) {
if (!should_autojoin(id))
return PLUGIN_CONTINUE

static team_select[] = "#Team_Select"
static menu_text_code[sizeof team_select]
get_msg_arg_string(4, menu_text_code, sizeof menu_text_code - 1)
if (!equal(menu_text_code, team_select))
return PLUGIN_CONTINUE

set_force_team_join_task(id, msgid)

return PLUGIN_HANDLED
}

public message_vgui_menu(msgid, dest, id) {
if (get_msg_arg_int(1) != TEAM_SELECT_VGUI_MENU_ID || !should_autojoin(id))
return PLUGIN_CONTINUE

set_force_team_join_task(id, msgid)

return PLUGIN_HANDLED
}

bool:should_autojoin(id) {
return (get_pcvar_num(g_pcvar_team) && !get_user_team(id) && !task_exists(id) && (!get_pcvar_num(g_pcvar_imm) || !(get_user_flags(id) & IMMUNITY_ACCESS_LEVEL)))
}

set_force_team_join_task(id, menu_msgid) {
static param_menu_msgid[2]
param_menu_msgid[0] = menu_msgid
set_task(AUTO_TEAM_JOIN_DELAY, "task_force_team_join", id, param_menu_msgid, sizeof param_menu_msgid)
}

public task_force_team_join(menu_msgid[], id) {
if (get_user_team(id))
return

static team[2], class[2]
get_pcvar_string(g_pcvar_team, team, sizeof team - 1)
get_pcvar_string(g_pcvar_class, class, sizeof class - 1)
force_team_join(id, menu_msgid[0], team, class)
}

stock force_team_join(id, menu_msgid, /* const */ team[] = "5", /* const */ class[] = "0") {
static jointeam[] = "jointeam"
if (class[0] == '0') {
engclient_cmd(id, jointeam, team)
return
}

static msg_block, joinclass[] = "joinclass"
msg_block = get_msg_block(menu_msgid)
set_msg_block(menu_msgid, BLOCK_SET)
engclient_cmd(id, jointeam, team)
engclient_cmd(id, joinclass, class)
set_msg_block(menu_msgid, msg_block)
}
Padarykit, kad tik sąvininkas galėtu rinktis komandą.

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

Re: Perdarykit Pluginą.

Post by laimiukas3 »

o tai seimininkas koki ACCESS_LEVEL turi ? koki flaga
Image
Image
Image

iNew
O taip. Jis jau surinko 50 žinučių!
Posts: 84
Joined: 2016 Jun 20 15:54
Skype: dilanidzee
Location: Kaunas

Re: Perdarykit Pluginą.

Post by iNew »

o - Naudotojo nustatytas Lygis C
Daryk, kad ant šito būtu.

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

Re: Perdarykit Pluginą.

Post by laimiukas3 »

iNew wrote:o - Naudotojo nustatytas Lygis C
Daryk, kad ant šito būtu.
ADMIN_ALL //Everyone
ADMIN_IMMUNITY //Flag "a", immunity
ADMIN_RESERVATION //Flag "b", reservation
ADMIN_KICK //Flag "c", kick
ADMIN_BAN //Flag "d", ban
ADMIN_SLAY //Flag "e", slay
ADMIN_MAP //Flag "f", map change
ADMIN_CVAR //Flag "g", cvar change
ADMIN_CFG //Flag "h", config execution
ADMIN_CHAT //Flag "i", chat
ADMIN_VOTE //Flag "j", vote
ADMIN_PASSWORD //Flag "k", sv_password
ADMIN_RCON //Flag "l", rcon access
ADMIN_LEVEL_A //Flag "m", custom
ADMIN_LEVEL_B //Flag "n", custom
ADMIN_LEVEL_C //Flag "o", custom
ADMIN_LEVEL_D //Flag "p", custom
ADMIN_LEVEL_E //Flag "q", custom
ADMIN_LEVEL_F //Flag "r", custom
ADMIN_LEVEL_G //Flag "s", custom
ADMIN_LEVEL_H //Flag "t", custom
ADMIN_MENU //Flag "u", menus
ADMIN_ADMIN //Flag "y", default admin
ADMIN_USER //Flag "z", default user
Image
Image
Image

iNew
O taip. Jis jau surinko 50 žinučių!
Posts: 84
Joined: 2016 Jun 20 15:54
Skype: dilanidzee
Location: Kaunas

Re: Perdarykit Pluginą.

Post by iNew »

Žiauriai dėkui už šitą ! Žiauriai daug padėjai ! ŽIAURIAI DAUG! +Karma
Last edited by iNew on 2016 Jun 24 17:22, edited 1 time in total.

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests