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
 

Gasior - zdjęcie

Gasior

Rejestracja: 22.01.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 02.01.2021 13:40
-----

Moje posty

W temacie: [SZUKAM] Menu z wyborem /nozy na daną flage.

02.12.2016 02:53

No okej, masz menu.
 
Gdzie niby nadanie graczowi modelu noża?

#include <amxmodx>
#include <amxmisc>
#include <ColorChat>
#include <engine> 

#define MAX_PLAYERS    32
#define MENUITEM_DISABLED    (1<<26)

#define PLUGIN "Nowe Menu nozy - flagi"
#define VERSION "1.0"
#define AUTHOR "Swajt"

new g_Menu
new knife_model[ MAX_PLAYERS + 1 ];

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);

	g_Menu = register_menuid("Knife Mod")
	register_menucmd(g_Menu, 1023, "knifemenu")
	
	register_clcmd("say /noze", "display_knife");
	
	register_event("CurWeapon","CurWeapon","be","1=1");
}

public plugin_precache() { 
	
	precache_model("models/v_1.mdl")
	precache_model("models/v_2.mdl")
	precache_model("models/v_3.mdl")
	precache_model("models/v_4.mdl")
	precache_model("models/v_5.mdl")
	precache_model("models/v_6.mdl") 
	precache_model("models/v_7.mdl")
	precache_model("models/v_8.mdl")
} 

public display_knife(id) {
	new menuBody[512]
	add(menuBody, 511, "\rWybierz Model Noza\w^n^n")
	add(menuBody, 511, "\y1. \wBayonet \yFade \r(Admin)", ADMIN_LEVEL_H)
	add(menuBody, 511, "\y2. \wKarambit \yTiger Tooth \r(VIP)", ADMIN_LEVEL_H)
	add(menuBody, 511, "\y4. \wBayonet \yMarbel Fade")
	add(menuBody, 511, "\y4. \wFlip \yUltraViolet")
	add(menuBody, 511, "\y5. \wStun \yKnifes")
	add(menuBody, 511, "\y6. \wMagma \yBlade")
	add(menuBody, 511, "\y7. \wWooden \yHammer")
	add(menuBody, 511, "\y8. \wGold \yKnife")
	add(menuBody, 511, "\r0. Wyjscie^n")
	
	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<6 | 1<<9 )
	show_menu(id, keys, menuBody, -1, "Menu z Nozami")
}

public knifemenu(id, key) {	
	switch(key) 	
	{
		case 0: {
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Bayonet Fade^x01."); 
			SetKnife(id , 0)
		}
		case 1: {
			SetKnife(id , 1)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Karambit Tiger Tooth^x01.");
		}
		case 2: {
			SetKnife(id , 2)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Bayonet Marbel Fade^x01.");
		}
		case 3: {
			SetKnife(id , 3)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Flip UltraViolet^x01.");
		}
		case 4: {
			SetKnife(id , 4)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Stun Knifes^x01.");
		}
		case 5: {
			SetKnife(id , 5)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Magma Blade^x01.");
		case 6: {
			SetKnife(id , 6)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Wooden Hammer^x01.");
		}
		case 7: {
			SetKnife(id , 7)
			ColorChat(id, GREEN, "** ^x01Wybrales model:^x04 Gold Knife^x01.");
		}
	}

	return PLUGIN_CONTINUE;
}
public SetKnife(id , Knife) {
	knife_model[id] = Knife
	
	new Weapon = get_user_weapon(id) 
	if ( Weapon != CSW_KNIFE )
		return PLUGIN_HANDLED
	
	new vModel[56]
	
	switch(Knife)
	{
		case 0:format(vModel,55,"models/v_1.mdl")
		case 1:format(vModel,55,"models/v_2.mdl")
		case 2:format(vModel,55,"models/v_3.mdl")
		case 3:format(vModel,55,"models/v_4.mdl")
		case 4:format(vModel,55,"models/v_5.mdl")
		case 5:format(vModel,55,"models/v_6.mdl")
		case 6:format(vModel,55,"models/v_7.mdl") 
		case 7:format(vModel,55,"models/v_8.mdl")
	}
	
	entity_set_string(id, EV_SZ_viewmodel, vModel)
	
	return PLUGIN_HANDLED; 
}

public CurWeapon(id)
	{
	
	SetKnife(id, knife_model[id])   
	
	return PLUGIN_HANDLED   
}  
}

W temacie: Plugin odgrywajacy muzyke podczas rundy

29.11.2016 13:46

Możesz użyć tego - https://forums.allie...t=11671?t=11671, konfiguracja dość prosta a i nie musisz pobierać muzyki przy wejściu.

 

Raczej nie ma pluginu który tak odtwarza muzykę cały czas, bo i po co? Nie każdy przecież chce słuchać cały czas.

W temacie: Reason Kicker

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.

W temacie: Menu vipa po odliczeniu mp_freezetime

28.11.2016 14:56

Linijka 21.

 

Nie no, jak mam Ci powiedzieć, skoro nie załączyłeś kodu.

W temacie: Model dla TT i CT na vipie

28.11.2016 14:34

Podrzuć sma i zerknę.