←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Menu dla ostatnich 2 graczy.

Zablokowany

  • +
  • -
v139 - zdjęcie v139 21.01.2014

Witam, chciałbym stworzyc menu, które pojawiłoby się tylko 2 ostatnim graczom na rundzie (1ct i 1t)

Moje pytanie brzmi: "Jak je zrobić?"

Jeszcze raz wytłumaczę co mam na myśli - chcę aby menu pojawiło się ostatnim 2 graczom, kiedy zostanie tylko 1 z Ct i 1 z T.

Odpowiedz

  • +
  • -
Mister Silenzo - zdjęcie Mister Silenzo 21.01.2014

Przy każdym zabójstwie sprawdzasz ilość graczy register_event i używasz DeathMsg(tam sprawdzasz), jeżeli po sprawdzeniu okaże się, że na mapie zostało tylko dwóch graczy, pobierasz ich id i odpalasz funkcję tylko dla nich, przynajmniej ja bym tak zrobił xD.
Odpowiedz

  • +
  • -
v139 - zdjęcie v139 22.01.2014

A mógłbyś mi pokazać skrypt napisany po "twojemu" ?

Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 25.01.2014

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "speedkill"

new g_MaxPlayers;

public plugin_init(){
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_event("DeathMsg", "DeathMsg", "a");
}

public plugin_cfg(){
	g_MaxPlayers = get_maxplayers();
}

public DeathMsg(){
	if(GetAlivePlayers(1) == 1 && GetAlivePlayers(2) == 1){
		for(new i = 1; i <= g_MaxPlayers; i++){
			if(is_user_alive(i)){
				ShowPlayerMenu(i);
			}
		}
	}
}

public ShowPlayerMenu(id){
	new g_Menu = menu_create("Widzisz to menu?", "MenuChoose");
	
	menu_additem(g_Menu, "Tak");
	menu_additem(g_Menu, "Nie");
	
	menu_setprop(g_Menu, MPROP_EXITNAME, "Wyjscie");
	menu_display(id, g_Menu);
}

public MenuChoose(id, g_Menu, g_Item){
	if(g_Item == MENU_EXIT){
		menu_destroy(g_Menu);
		return PLUGIN_HANDLED;
	}
	switch(g_Item){
		case 0:{
			client_print(id, 3, "Milo, ze widzisz menu... :)");
		}
		
		case 1:{
			client_print(id, 3, "Szkoda... :(");
		}
	}
	menu_destroy(g_Menu);
	return PLUGIN_HANDLED;
}

stock GetAlivePlayers(g_Team){
	new g_Players;
	
	for(new i = 1; i <= g_MaxPlayers; i++){
		if(is_user_alive(i) && get_user_team(i) == g_Team){
			g_Players++;
		}
	}
	return g_Players;
}
Odpowiedz

  • +
  • -
v139 - zdjęcie v139 02.02.2014

Wszystko pięknie śmiga. + dla Ciebie

Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.02.2014

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany