←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

Proste menu z listą serwerów

  • +
  • -
sebul - zdjęcie sebul 05.07.2011

opis
Jak sama nazwa wskazuje, jest to prosty plugin z jednym cvarem (a tak go zrobiłem, w sumie niekoniczny on jest), który tworzy listę serwerów. Po wpisaniu na chacie /server otwiera nam się menu z listą serwerów, gdy wybierzemy jakiś serwer od razu nas z nim zacznie łączyć. Pluginów takich może trochę jest, ale nudziło mi się, do tego starałem się napisać go tak, aby było jak najbardziej przejrzyście i krótko, no i chyba mi to wyszło ;]
Dodaje dwie wersje pluginu, w jednej aby dodać lub usunąć serwer/y trzeba edytować kod w sma według wzoru i przekompilować, natomiast w drugiej (z końcówką v2) wystarczy dodać lub usunąć serwer/y w pliku servers_list.ini. Nie ma żadnych ograniczeń co do ilości serwerów, nie licząc ograniczenia amxxa i ograniczenia jakie zostało dodane w pluginie (64 serwerów), bo nie wiem ile może być opcji w jednym menu, ale w każdym razie na pewno ciężko by było ten limit/ograniczenie osiągnąć. Instalacja standardowa.

UWAGA! 05-01-2014
Aktualizacja komendy connect.


screenshot
lista2.png

cvary
server_show_ip "1" // pokazywać ip serwera? 1 - tak, 0 - nie
download
Załączony plik  server_menu.sma   1,34 KB   645 Ilość pobrań
Załączony plik  server_menu_v2.sma   2,01 KB   1105 Ilość pobrań
Załączony plik  servers_list.ini   182 bajtów   2647 Ilość pobrań
Użytkownik sebul edytował ten post 05.01.2014 17:21
Odpowiedz

  • +
  • -
TomiGun - zdjęcie TomiGun 06.07.2011

Ładny plug. Działa i co najważniejsze to że jest ŁATWY w obsłudze. Thx i Łap +.
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 06.07.2011

Nieźle, ale jak sam napisałeś jest już trochę takich pluginów ^^
Odpowiedz

  • +
  • -
VerShinin - zdjęcie VerShinin 06.07.2011

Ładny i prosty plugin. Według mnie lepszy jest v2, ponieważ trzeba tylko edytować plik .ini ;)
Odpowiedz

radek_b11 - zdjęcie radek_b11 06.07.2011

Czy ten plugin bez problemu przekieruje Steam jak i NonSteam ?
Bo w xredirect był i chyba dalej jest problem z przekierowaniem Steamowców
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.07.2011

Czy ten plugin bez problemu przekieruje Steam jak i NonSteam ?
Bo w xredirect był i chyba dalej jest problem z przekierowaniem Steamowców

A czemu miałby być problem?
A co do xredirect mnie normalnie przekierowuje, a mam steama, wiem bo sam mam u siebie ten plugin.
Odpowiedz

Diablo Mod - zdjęcie Diablo Mod 19.07.2011

genialny plugin ;] szukałem takiego właśnie xD dobry i prosty wielki +
Odpowiedz

pAC - zdjęcie pAC 19.07.2011

taka uproszczona wersja xredirecta , bardzo ładnie :)
Odpowiedz

Fixiu - zdjęcie Fixiu 19.07.2011

Plugin może być ale po co mazałeś to w paincie?

jeżeli widać w sygnaturce że to donald :D haa
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 19.07.2011

Nie mazałem tego w paincie ;]
A zamazane, bo sygnaturka to nie to samo co post, więc obrazek ma zamazane IP serwerów oraz ich początek nazw, które zarazem są linkiem do forum.
Odpowiedz

  • +
  • -
FreaK.? - zdjęcie FreaK.? 19.07.2011

Bardzo przejrzyste :) Wykorzystam to na swoim serwerze gdy będą 2 :) Otrzymujesz plusika :)
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 09.08.2011

W "server_menu_v2.sma" usunąłem jedno niepotrzebne sprawdzanie czy plik istnieje.
Odpowiedz

  • +
  • -
oxys_bsnt - zdjęcie oxys_bsnt 12.11.2011

Dałbyś radę dorobić do tego aktualną liczbę graczy na serwerze?
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 12.11.2011

Nie, bo to jest proste menu z serwerami ;] I niech tak zostanie, bo teraz doda się te sloty, potem jeszcze coś i na koniec wyjdzie prawie to samo co xredirect, z tym że napisany inaczej i pewnie mniej optymalnie, bo na socketach mało się znam.
Odpowiedz

  • +
  • -
oxys_bsnt - zdjęcie oxys_bsnt 12.11.2011

A masz może jakiś poradniczek jak dodać do czegoś takiego ile na ile jest graczy na serwie?
Odpowiedz

Grz3chu - zdjęcie Grz3chu 17.02.2013

Nie działa mi przekierowanie, jaki moze być tego powód? Wyświetla się całe menu wybieram wyłącza się a nie przekierowuje.
Odpowiedz

BlackDead - zdjęcie BlackDead 03.05.2013

Bardzo fajny plugin i prosty w obsłudze.Łap +
Odpowiedz

  • +
  • -
MaestroFight - zdjęcie MaestroFight 09.11.2013

Działa, ale nie przekierowuje.. pomoc jakaś?
Odpowiedz

  • +
  • -
VipoSek - zdjęcie VipoSek 10.11.2013

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Menu serwerow"
#define VERSION "0.2"
#define AUTHOR "Sebul"


#define SERVERS_FILE "servers_list.ini"
#define MAX_SERVERS 32
#define MAX_CHARACTERS 64

new g_servers[MAX_SERVERS][2][MAX_CHARACTERS];
new g_number_server;
new cvar_pokaz_ip;

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

	register_clcmd("say /server", "show_server");
	register_clcmd("say /servery", "show_server");
	register_clcmd("say /serwery", "show_server");
	register_clcmd("say_team /server", "show_server");

	cvar_pokaz_ip = register_cvar("server_show_ip", "1");

	set_task(4.0, "load_servers");
}

public load_servers() {
	new file_serwers[64];
	get_configsdir(file_serwers, charsmax(file_serwers));
	formatex(file_serwers, charsmax(file_serwers), "%s/%s", file_serwers, SERVERS_FILE);

	g_number_server = 0;

	new fHandle = fopen(file_serwers, "rt");

	if(fHandle) {
		new data_server[128];

		for(new i=0; i<MAX_SERVERS && !feof(fHandle); i++) {
			fgets(fHandle, data_server, charsmax(data_server));

			if(!data_server[0] || data_server[0] == ' ' || data_server[0] == ';') {
				i--;
				continue;
			}

			parse(data_server, g_servers[i][0], MAX_CHARACTERS-1, g_servers[i][1], MAX_CHARACTERS-1);
			g_number_server++;
		}
		fclose(fHandle);
	}
	else
		log_amx("Brak '%s' na serwerze", file_serwers);
}

public show_server(id) {
	new menu = menu_create("Lista serwerow Cs-Oneshot.pl - polacz z:", "show_server_handle");

	new pokaz = get_pcvar_num(cvar_pokaz_ip);
	new formats[256];
	for(new i=0; i<g_number_server; i++) {
		formatex(formats, charsmax(formats), "%s%s%s", g_servers[i][0], pokaz ? " - \y" : "", pokaz ? g_servers[i][1] : "");
		menu_additem(menu, formats);
	}
	menu_setprop(menu, MPROP_BACKNAME, "Wroc");
	menu_setprop(menu, MPROP_NEXTNAME, "Dalej");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjscie");
	menu_display(id, menu);

	return PLUGIN_HANDLED;
}

public show_server_handle(id, menu, item) {
	if(item == MENU_EXIT) {
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	client_cmd(id, "Connect %s", g_servers[item][1]);

	menu_destroy(menu);
	return PLUGIN_HANDLED;
}


Można prosić o aktualizację:  

 

 

Nie mam pojęcia gdzie mam wstawić/podmienić;

"echo ^"Zostales przekierowany^";^"Connect^" ip:port"

W server_menu_v2.sma jest coś takiego:

client_cmd(id, "Connect %s", g_servers[item][1]);

Da rade ktoś pomóc, aby ten plugin przekierowywał? Z góry WIELKIE dzięki :)

Odpowiedz