Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Reason KickerNie ma powodów kick


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 maro095

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Patryk
Offline

Napisano 29.11.2016 13:30

Witam bardzo serdecznie. Wgrałem dziś Reason Kicker czyli powody kicków. Wszystko wgrane jest poprawnie, ale jedyne z czym mam problem to cvary. 

Wiem, że ma to mniej więcej wyglądać tak:

 

amx_kick_r1 "spect"
amx_kick_r2 "afk"
amx_kick_r3 "ping"
amx_kick_r4 "ogarnij sie"
amx_kick_r5 "przeklinasz"
amx_kick_r6 "obrazasz"
amx_kick_r7 "zmien nick"

 

Tylko pytanie gdzie mam to wkleić? W jakim pliku? I w jakim dokładnie miejscu? Ja wkleiłem to do amxx.cfg na samym końcu, ale nie działa.

Próbowałem również w pliku sm'a pluginu to wklejać i również nic.

Gdzie dokładnie wkleić wyżej wypisane powodu? Proszę o opisanie dokładnego miejsca i linijki. 

Z góry dziękuje! :)


  • +
  • -
  • 0

#2 Gasior

    Zaawansowany

  • Użytkownik

Reputacja: 9
Nowy

  • Postów:105
  • Imię:Maciek
  • Lokalizacja:Lublin
Offline

Napisano 29.11.2016 13:41

Nie wiem jakiego pluginu używasz, normalnie szłoby to do amxx.cfg jakoże to cvar.

 

Ewentualnie używam tego pluginu

/* Script generated by Pawn Studio */

#include <amxmodx>

#define MAX_POWODOW 20

new const strona[] = "http://ProjektSpark.pl";

new const tag[] = "[ReasonKicker]";

new g_kogo[33];
new last[33][128];

new Array: powody;

public plugin_cfg() {
	powody = ArrayCreate(256, 1);
	
	new plik[128]; get_localinfo("amxx_configsdir", plik, charsmax(plik));
	format(plik, charsmax(plik), "%s/powody_kickow.ini", plik);
	
	if(!file_exists(plik))
		set_fail_state("Brak pliku z powodami.");
	
	new fp = fopen(plik, "r");
	new i = 0, tresc[128];
	while(!feof(fp) && i < MAX_POWODOW) {
		fgets(fp, tresc, charsmax(tresc)); trim(tresc);
		
		if(tresc[0] == ';' || tresc[0] == '^0') continue;
		
		ArrayPushString(powody, tresc);
		i++;
	}
	fclose(fp);
}

public plugin_init() {
	register_plugin("Reason Kicker", "1.2", "byCZEK");
	
	register_clcmd("amx_kickmenu", "cmdKickMenu");
	register_clcmd("amx_custom",   "cmdWlasnyPowod");
}

public cmdKickMenu(id) {
	if(get_user_flags(id) & ADMIN_KICK) {
		MenuKickow(id);
	}
	
	return PLUGIN_HANDLED;
}	

public cmdWlasnyPowod(id) {
	new s[128]; read_args(s, 127);
	remove_quotes(s);
	
	copy(last[id], 127, s);
	
	Kick(id, s);
	
	return PLUGIN_HANDLED;
}

public MenuKickow(id) {
	new players[32], name[33], temp[2][128], num, pl;
	get_players(players, num);
	
	new m = menu_create("Lista Graczy", "MenuKickow_");
	
	for(new i = 0; i < num; i++) {
		pl = players[i];
		
		get_user_name(pl, name, 32);
		num_to_str(pl, temp[0], 2);
		formatex(temp[1], 127, "%s%s", name, (get_user_flags(pl) & ADMIN_KICK) ? "\r *" : "");
		menu_additem(m, temp[1], temp[0], _, menu_makecallback("MenuKickow_c"));   
	}
	
	menu_display(id, m);
}

public MenuKickow_(id, menu, item) {
	if(item == MENU_EXIT) {
		menu_destroy(menu);
		
		return PLUGIN_CONTINUE;
	}
	
	new data[6], iName[64], access, callback;
	
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
	
	g_kogo[id] = str_to_num(data);
	MenuPowodow(id);
	
	return PLUGIN_CONTINUE;
}

public MenuKickow_c(id, menu, item) {
	new data[6], iName[64], access, callback;
	
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
	
	new pl = str_to_num(data);
	
	if(get_user_flags(pl) & ADMIN_IMMUNITY || pl == id)
		return ITEM_DISABLED;
	
	return ITEM_ENABLED;
}

public MenuPowodow(id) {
	new m = menu_create("Powody", "MenuPowodow_");
	new p[128];
	
	for(new i = 0; i < ArraySize(powody); i++) {
		ArrayGetString(powody, i, p, charsmax(p));
		menu_additem(m, p);
	}
	
	menu_addblank(m, 0);
	menu_additem(m, "Wlasny powod");
	
	if(last[id][0] != '^0') {
		new temp[140]; formatex(temp, 139, "/y  %s", last[id]);
		menu_additem(m, temp);
	}
	
	menu_display(id, m);
}

public MenuPowodow_(id, menu, item) {
	if(item == MENU_EXIT || !g_kogo[id]) {
		menu_destroy(menu);
		
		return PLUGIN_CONTINUE;
	}
	
	new m = ArraySize(powody);
	
	if(item == m) client_cmd(id, "messagemode amx_custom");
	else if(item == m+1) Kick(id, last[id]);
		else {
		new p[128]; ArrayGetString(powody, item, p, charsmax(p));
		Kick(id, p);
	}
	
	return PLUGIN_CONTINUE;
}

public Kick(id, const powod[]) {
	if(!g_kogo[id]) {
		client_print(id, print_chat, "%s Nie ma wszystkich danych", tag);
		return;
	}
	
	new bool: show = (get_cvar_num("amx_show_activity") == 2) ? true : false;
	new pl = g_kogo[id];
	new name[2][33];
	
	get_user_name(id, name[0], 32);
	get_user_name(pl, name[1], 32);
	
	set_hudmessage(0, 255, 0, 0.05, 0.35, 0, 6.0, 5.0, 0.5, 0.15, 7);
	show_hudmessage(0, "Gracz o nicku %s ^nZostal wywalony przez %s ^nPowod: %s", name[1], show ? name[0] : "admina", powod);
	
	console_print(pl, "%s ==========================================", tag);
	console_print(pl, "%s Zostales wykopany przez %s", tag, show ? name[0] : "admina");
	console_print(pl, "%s Powod: ^"%s^"", tag, powod);
	console_print(pl, "%s Jezeli uwazasz, ze kick byl bezpodstawny zglos to na %s", tag, strona);
	console_print(pl, "%s ==========================================", tag);
	
	server_cmd("kick #%d ^"%s^"", get_user_userid(pl), powod);
}

Tylko edytuj kod na górze i dodajesz plik powody_kickow.ini w configs i tam po prostu robisz listę powodów.


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych