←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Stary
Problem z zamieniamniem itemami

Zablokowany

  • +
  • -
Ciuchcia:D - zdjęcie Ciuchcia:D 06.07.2011

Witam mam otoz problem, chcialem sam zrobic funkcje /zamien z pomoca nowego coda [CoD Nowy] Wymiana perkami. - AMXX.pl: Support AMX Mod X

Zrobilem takie cos ale skomplikowalo sie bez problem, wgralem to na serwer i wpisuje /wymien i pokazuje menu, wciskam na gracza i pisze ze itemy zostaly wymienione, ale patrze i mam ten sam item jaki mialem




new bool:dostal_przedmiot[33];
new oddaj_id[33];

public ZamienPerk(id)
{
	new menu = menu_create("Zamien sie perkiem", "ZamienPerk_Handle");
	new cb = menu_makecallback("OddajPerk_Callback");
	for(new i=0, n=0; i<=32; i++)
	{
		if(!is_user_connected(i))
			continue;
		oddaj_id[n++] = i;
		new nazwa_gracza[64];
		get_user_name(i, nazwa_gracza, 63)
		menu_additem(menu, nazwa_gracza, "0", 0, cb);
	}
	menu_display(id, menu);
}

public cod_perk_changed(id)
	dostal_przedmiot[id] = false;

public ZamienPerk_Handle(id, menu, item)
{
	if(!is_user_connected(oddaj_id[item])){
		client_print(id, print_chat, "Nie odnaleziono zadanego gracza.");
		return PLUGIN_CONTINUE;
	}
	
	if(dostal_przedmiot[oddaj_id[item]]){
		client_print(id, print_chat, "Wybrany gracz musi poczekac 1 runde.");
		return PLUGIN_CONTINUE;
	}
	
	if(dostal_przedmiot[id]){
		client_print(id, print_chat, "Musisz poczekac 1 runde.");
		return PLUGIN_CONTINUE;
	}
	
	if(!informacje_przedmiotu_gracza[id][0]){
		client_print(id, print_chat, "Wybrany gracz nie mam zadnego perka.");
		return PLUGIN_CONTINUE;
	}
	
	if(!informacje_przedmiotu_gracza[id][0]){
		client_print(id, print_chat, "Nie masz zadnego perka.");
		return PLUGIN_CONTINUE;
	}

	new nazwa_menu[128], nick[64];
	
	get_user_name(id, nick, charsmax(nick))
	formatex(nazwa_menu, charsmax(nazwa_menu), "Wymien sie perkiem z %s:", nick)
	
	new menu2 = menu_create(nazwa_menu, "menu_wymien");

	menu_additem(menu2, "Tak", nick);
	menu_addblank(menu2, 0)
	menu_additem(menu2, "Nie", nick);
	
	menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
	menu_display(oddaj_id[item], menu2);
	return PLUGIN_CONTINUE;
}

public menu_wymien(id, menu, item)
{
	if(item == MENU_EXIT)
	{
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}
	new access, callback, data[64];
	menu_item_getinfo(menu, item, access, data, charsmax(data), _, _, callback);
	new id2 = get_user_index(data) 
	
	switch(item)
	{
		case 0: 
		{ 
			dostal_przedmiot[id2] = true;
			dostal_przedmiot[id] = true;
					
			new nazwa_dajacego[64];
			
			get_user_name(id, nazwa_dajacego, charsmax(nazwa_dajacego))
					
			client_print(id, print_chat, "Wymieniles sie perkiem z %s.", data);
			client_print(id2, print_chat, "Wymieniles sie perkiem z %s.", nazwa_dajacego)
		}
		case 1: client_print(id2, print_chat, "Wybrany gracz nie zgodzil sie na wymiane perka.")
	}
	return PLUGIN_CONTINUE;
}

public OddajPerk_Callback(id, menu, item)
{
	if(oddaj_id[item] == id )
		return ITEM_DISABLED;
	return ITEM_ENABLED;
}

Jak ktos to poprawi dostanie +++
Odpowiedz

  • +
  • -
TheZioMeK - zdjęcie TheZioMeK 06.07.2011

A jemu coś się zmienia? Tzn perk
Odpowiedz

  • +
  • -
Jak się nazwać - zdjęcie Jak się nazwać 06.07.2011

Ciekawe gdzie tam masz funkcje zamiany itemów?
Odpowiedz

  • +
  • -
Ciuchcia:D - zdjęcie Ciuchcia:D 09.07.2011

Nie jemu tez sie nie zamienia, jak umiesz to zrobic weno zrob.


I co zrobi ktos ??????? Prosilbym bo to jest dla mnie wazne
Użytkownik Ciuchcia:D edytował ten post 09.07.2011 13:42
Odpowiedz
Zablokowany