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

[ROZWIĄZANE] Kolejny problem


Najlepsza odpowiedź Misiu., 23.03.2021 14:09

Spróbuj zamienić 

fTraceLine = register_forward(FM_TraceLine, "TraceLine");

na

fTraceLine = register_forward(FM_TraceLine, "TraceLine", 1);
Przejdź do postu


  • Zamknięty Temat jest zamknięty
4 odpowiedzi w tym temacie

#1 chomikk11

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:17
  • GG:
  • Imię:Marcin
Offline

Napisano 23.03.2021 13:45

Witam, posiadam oto te życzenia wszystko cacy gra tylko jak biore pojedynek only hs po paru sekundach wywala serwer powód niżej, dodam że w logach nic nie ma odnośnie tego, oczywiście kto pomoże ma +

FATAL ERROR (shutting down): IndexOfEdict: bad entity
/home/servers/bin/games/CS_1.6.sh: line 72: 31369 Segmentation fault      LD_LIBRARY_PATH=".:bin" start-stop-daemon --start --chuid $USER:$GROUP -m --pidfile $PID_FILE --chdir $USER_DIR/$BIN_DIR --exec $USER_DIR/$BIN_DIR/$BIN_NAME -- $GAME_PARAMS
Blad wysylania zrzutu konsoli: blad autoryzacji

wersja itd

  Metamod-r version 1.3.0.128 Copyright (c) 2016-2018 ReHLDS Team (rebuild of original Metamod by Will Day and Jussi Kivilinna)
   Metamod-r comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'.
   This is free software, and you are welcome to redistribute it
   under certain conditions; type `meta gpl' for details.
   
Metamod-r v1.3.0.128, API (5:13)
Metamod-r build: 17:47:48 Aug 24 2018
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/0cf2f70

   AMX Mod X version 1.9.0.5271 Copyright (c) 2004-2015 AMX Mod X Development Team 
   AMX Mod X comes with ABSOLUTELY NO WARRANTY; for details type `amxx gpl'.
   This is free software and you are welcome to redistribute it under 
   certain conditions; type 'amxx gpl' for details.
  
[ReAuthCheck] Version: 0.1.6 Linux 'Counter-Strike 1.6'
[ReAuthCheck] Success: Configuration executed.
[ReAuthCheck] Success: Build ReHLDS version defined Linux '2517'
[WHB] Version: 1.5.697 Linux (Usage SSE 4.1)
[WHB] Success: Build ReHLDS version defined Linux '2517'
[WHB] Success: Configuration executed.

Sma życzeń:

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <colorchat>
#include <jailbreak>
#include <nvault>

native get_user_jbpack(id);
native set_user_jbpack(id, ile);

#define PLUGIN "Jail Zyczenia"
#define VERSION "1.0.14b"
#define AUTHOR "Cypis"

#define TASK_KONIECPOJEDYNKU 867

/////////// Pojedynek ///////////
new bronie_pojedynek, rzuc, pojedynek[2], kandydaci_pojedynek[2], obstawki[2], kogo_obstawia[33], ile_obstawia[33], czas_do_pojedynku, czas_do_konca_pojedynku, kosy=false, wybral_zyczenie;
new HamHook:fHamKill, HamHook:fHamDamage, HamHook:fHamTrace, HamHook:fHamWeapon[31], fDropGranade, fDotykKnife, fTraceLine;
new Float:LROrigin[3];
/////////// Pojedynek ///////////
new const maxAmmo[31] = {0,52,0,90,1,31,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,31,90,120,90,2,35,90,90,0,100};
new id_wlasne, id_bezruch, id_freeday, id_duszek, id_rambomod, id_pojedynek, id_szlugi;
new blood, blood2;
new bool:celownik, typ_pojedynku;
new g_iHud;
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_forward(FM_CmdStart,"CmdStart");
	
	id_wlasne = jail_register_wish("Wlasne zyczenie");
	id_bezruch = jail_register_wish("Bezruch");
	id_freeday = jail_register_wish("FreeDay");
	id_duszek = jail_register_wish("Duszek");
	id_rambomod = jail_register_wish("RamboMod");
	id_pojedynek  = jail_register_wish("Pojedynek");
	id_szlugi = jail_register_wish("+15 Szlugow");
	register_forward(92, "EntityThink", 1);
	register_clcmd("zaklad_IleObstawic", "cmd_WpisalIleObstawic");
	register_clcmd("drop", "ZakazDrop");
	g_iHud = CreateHudSyncObj();

	RegisterHam(Ham_Touch, "weaponbox", "WeaponTouch");
	
	//register_clcmd("say /mywish", "cmd_Pokazilezyczen")
}
public plugin_precache()
{
	blood = precache_model("sprites/blood.spr");
	blood2 = precache_model("sprites/bloodspray.spr");
	
	precache_model("models/w_throw.mdl");
	//precache_model("models/v_shawins_pknife.mdl");
	
	precache_sound("jb_cypis/rambomode.wav");
	//precache_sound("jb_cypis/pojedynek.wav");
	precache_sound("jb_donaciak/pojedynek_fix.wav");
	precache_sound("jb_donaciak/pojedynek2_fix.wav");
	precache_sound("jb_donaciak/dodupy_fix.wav");
	precache_sound("jb_donaciak/niewstan_fix.wav");
	precache_sound("jbnews/dual.mp3");
	
}

public EntityThink(ent) {
	new bool:zyczenie

	if(!pev_valid(ent) || !zyczenie) return 1;
	
	new id = pev(ent, 18);
	
	if(id != pojedynek[0] && id != pojedynek[1]) return 1;
	
	new model[32]; pev(ent, 3, model, 31);
	
	set_pev(ent, 78, 19);
	set_pev(ent, 40, 125.0);
	set_pev(ent, 77, 4);
	set_pev(ent, 134, id == pojedynek[1] ? { 0.0, 0.0, 255.0 } : { 255.0, 0.0, 0.0 });
	return 4;
}

public ZakazDrop(id){
	if(bronie_pojedynek == CSW_DEAGLE && rzuc == 1) pev(id, pev_origin, LROrigin);

	if(jail_get_user_block(id) && rzuc == 0)
		return PLUGIN_HANDLED;
	return PLUGIN_CONTINUE;
}
public OnRemoveData(day)
{
	set_task(0.1, "task_RemoveData", 666);
}

public task_RemoveData() {
	/////////// Pojedynek ///////////						
	if(pojedynek[0] || pojedynek[1])
	{
		pojedynek[0] = 0;
		pojedynek[1] = 0;
	}
	wybral_zyczenie=false
	remove_task()
	remove_task(333);
	remove_task(TASK_KONIECPOJEDYNKU);
	bronie_pojedynek = 0;
	rzuc = 0;
	kosy=false;
	celownik=false;
	typ_pojedynku = 0;
	kandydaci_pojedynek[0] = 0;
	kandydaci_pojedynek[1] = 0;
	obstawki[0] = 0;
	obstawki[1] = 0;
	RegisterHams(false);
	/////////// Pojedynek ///////////
}
public OnLastPrisonerShowWish(id)
{
	ColorChat(0, GREEN, "[JailBreak]^x01 Wiezien ma^x03 30 sekund^x01 na wybranie zyczenia!")
	client_print(0, print_center, "Ostatni wiezien ma zyczenie!")
	//set_task(30.0, "KoniecCzasuWybranie")
}
public OnLastPrisonerTakeWish(id, zyczenie)
{
	wybral_zyczenie=true;
	if(zyczenie == id_wlasne)
	{
		client_cmd(0, "spk buttons/bell1.wav")
		DodajZyczenie(id)
		
		
	}
	else if(zyczenie == id_bezruch)
	{
		strip_user_weapons(id);
		give_item(id, "weapon_knife");
		give_item(id, "weapon_deagle")
		cs_set_user_bpammo(id, CSW_DEAGLE, maxAmmo[CSW_DEAGLE]);
		
		jail_set_ct_hit_tt(true);
		
		for(new i=1; i<=32; i++)
		{
			if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
				continue;
		
			strip_user_weapons(i);
			give_item(i, "weapon_knife");
			jail_set_user_speed(i, 0.1);
		}
		DodajZyczenie(id)
		set_task(40.0, "KoniecCzasu")
	}
	else if(zyczenie == id_freeday)
	{
		if(jail_get_days() == PIATEK ||  jail_get_days() == SOBOTA) //w tych dniach nie mozna wziść fd
			return JAIL_HANDLED;
		
		user_kill(id);
		jail_set_prisoner_free(id);	
		DodajZyczenie(id)
	}
	else if(zyczenie == id_duszek)
	{
		if(jail_get_days() == PIATEK || jail_get_days() == SOBOTA) //w tych dniach nie mozna wziść duszka
			return JAIL_HANDLED;
			
		user_kill(id);
		jail_set_prisoner_ghost(id);
		DodajZyczenie(id)
	}
	else if(zyczenie == id_rambomod)
	{
		client_cmd(0, "spk jb_cypis/rambomode.wav");
		set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0);
		show_hudmessage(0, "RamboMod aktywny!");
		
		set_user_health(id, 1500);
		
		strip_user_weapons(id);
		give_item(id, "weapon_knife");
		give_item(id, "weapon_awp");
		give_item(id, "weapon_m249");
		cs_set_user_bpammo(id, CSW_M249, maxAmmo[CSW_M249]);
		DodajZyczenie(id)
	}
	else if(zyczenie == id_pojedynek)
	{
		pojedynek[0]= id;
		WybierzPojedynekMenu(id)
		DodajZyczenie(id)
	} else if(zyczenie == id_szlugi) {
		user_kill(id);
		set_user_jbpack(id, get_user_jbpack(id) + 15);
		DodajZyczenie(id)
	}
	return JAIL_CONTINUE;
}
public WybierzPojedynekMenu(id)
{
	new menu = menu_create("Pojedynek na:", "Menu1_Handler");
	menu_additem(menu, "Rzut bronia \r[NOWOSC]");
	menu_additem(menu, "Pistolety");
	menu_additem(menu, "Reszta broni");
	menu_additem(menu, "Granaty odlamkowe");
	menu_additem(menu, "Piesci");
	menu_additem(menu, "Noze");	
	menu_additem(menu, "RPG");
	menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
	menu_display(id, menu);
}
public Menu1_Handler(id, menu, item)
{
	new name[33]
	get_user_name(id, name, 32)
	switch(item)
	{
		case 0: {
			new menu = menu_create("Wybierz rzut:", "Menu1_Handler_Rzucaj");
			menu_additem(menu, "Rzut Deaglem");
			menu_setprop(menu, MPROP_EXITNAME, "Wroc");
			menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
			menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
			menu_display(id, menu);
		}	
		case 1:
		{
			new menu = menu_create("Pistolety:", "Menu1_Handler_Pistolety");
			menu_additem(menu, "Glock");
			menu_additem(menu, "Usp");
			menu_additem(menu, "P228");
			menu_additem(menu, "Fiveseven");
			menu_additem(menu, "Elite");
			menu_additem(menu, "Deagle");
			menu_setprop(menu, MPROP_EXITNAME, "Wroc");
			menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
			menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
			menu_display(id, menu);
		}
		case 2:
		{
			new menu = menu_create("Reszta broni:", "Menu_Handler_ResztaBroni");
			menu_additem(menu, "M3");
			menu_additem(menu, "XM1014");
			menu_additem(menu, "MP5-Navy");
			menu_additem(menu, "TMP");
			menu_additem(menu, "P90");
			menu_additem(menu, "MAC10");
			menu_additem(menu, "UMP");
			menu_additem(menu, "Galil");
			menu_additem(menu, "Famas");
			menu_additem(menu, "AK47");
			menu_additem(menu, "M4A1");
			menu_additem(menu, "SG552");
			menu_additem(menu, "AUG");
			menu_additem(menu, "Scout");
			menu_additem(menu, "AWP");
			menu_setprop(menu, MPROP_EXITNAME, "Wroc");
			menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
			menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
			menu_display(id, menu);
		}
		case 3:
		{
			kandydaci_pojedynek[0] = id;
			bronie_pojedynek = CSW_HEGRENADE;
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Granaty odlamkowe", name)
			MenuPojedynek(id);	
		}
		case 4:
		{
			kandydaci_pojedynek[0] = id;
			bronie_pojedynek = CSW_KNIFE;
			kosy=true;	
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Piesci", name)
			MenuTypPojedynku(id);
		}
		case 5:
		{
			kandydaci_pojedynek[0] = id;
			bronie_pojedynek = CSW_KNIFE;
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Noze", name)
			MenuPojedynek(id);
		}
		case 6:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_G3SG1
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 RPG", name)
			MenuTypPojedynku(id);
			
		}
	}
	
}

public Menu1_Handler_Rzucaj(id, menu, item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		WybierzPojedynekMenu(id)
		return;
	}
	new name[33]
	get_user_name(id, name, 32)
	switch(item)
	{
		case 0:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_DEAGLE
			rzuc = 1
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 rzut deaglem", name)
			MenuPojedynek(id);
			
		}
	}
}

public Menu1_Handler_Pistolety(id, menu, item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		WybierzPojedynekMenu(id)
		return;
	}
	new name[33]
	get_user_name(id, name, 32)
	switch(item)
	{
		case 0:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_GLOCK18
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 GLOCK18", name)
			MenuTypPojedynku(id);
			
		}
		case 1:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_USP
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 USP", name)
			MenuTypPojedynku(id);
			
		}
		case 2:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_P228
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 P228", name)
			MenuTypPojedynku(id);
			
		}
		case 3:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_FIVESEVEN
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Fiveseven", name)
			MenuTypPojedynku(id);
			
		}
		case 4:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_ELITE
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Elite", name)
			MenuTypPojedynku(id);
			
		}
		case 5:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_DEAGLE
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Deagle", name)
			MenuTypPojedynku(id);
			
		}
	}
}
public Menu_Handler_ResztaBroni(id, menu, item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		WybierzPojedynekMenu(id)
		return;
	}
	new name[33]
	get_user_name(id, name, 32)
	switch(item)
	{
		case 0:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_M3
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 M3", name)
			MenuTypPojedynku(id);
			
		}
		case 1:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_XM1014
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 XM1014", name)
			MenuTypPojedynku(id);
			
		}
		case 2:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_MP5NAVY
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Mp3Navy", name)
			MenuTypPojedynku(id);
			
		}
		case 3:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_TMP
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Tmp", name)
			MenuTypPojedynku(id);
			
		}
		case 4:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_P90
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 P90", name)
			MenuTypPojedynku(id);
			
		}
		case 5:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_MAC10
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Mac-10", name)
			MenuTypPojedynku(id);
			
		}
		case 6:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_UMP45
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Ump 45", name)
			MenuTypPojedynku(id);
			
		}
		case 7:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_GALIL
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Galil", name)
			MenuTypPojedynku(id);
			
		}
		case 8:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_FAMAS
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Famas", name)
			MenuTypPojedynku(id);
			
		}
		case 9:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_AK47
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Ak47", name)
			MenuTypPojedynku(id);
			
		}
		case 10:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_M4A1
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 M4a1", name)
			MenuTypPojedynku(id);
			
		}
		case 11:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_SG552
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 SG552", name)
			MenuTypPojedynku(id);
			
		}
		case 12:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_AUG
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 AUG", name)
			MenuTypPojedynku(id);
			
		}
		case 13:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_SCOUT
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 Scout", name)
			ZoomZapytanie(id);
			
		}
		case 14:
		{
			kandydaci_pojedynek[0]=id
			bronie_pojedynek = CSW_AWP
			ColorChat(0, GREEN, "[Pojedynek]^x03 %s^x01 wybral pojedynek na^x03 AWP", name)
			ZoomZapytanie(id);
			
		}
	
	}
}
public ZoomZapytanie(id)
{
	new menu = menu_create("Opcje:", "Zoom_Handler")
	menu_additem(menu, "Bez celownika")
	menu_additem(menu, "Z celownikiem")
	menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
	menu_display(id, menu)
}

public Zoom_Handler(id, menu, item)
{
	if(item==0)
	{
		celownik=true;
		ColorChat(0, GREEN, "[Pojedynek]^x01 Opcja:^x03 Bez celownika")
		MenuTypPojedynku(id)
	}
	else
	{
		ColorChat(0, GREEN, "[Pojedynek]^x01 Opcja:^x03 Z celownikiem")
		celownik=false;
		MenuTypPojedynku(id)
	}
}

public MenuTypPojedynku(id) {
	new iMenu = menu_create("Wybierz rodzaj pojedynku: ", "TypPojedynku_Handler");
	
	menu_additem(iMenu, "Zwykly pojedynek \y[zabijanie na zwyklych zasadach]");
	menu_additem(iMenu, "Only HeadShoty \y[mozna zabic tylko przez HeadShota]");
	menu_additem(iMenu, "1shot1kill \y[jeden strzal zabija]");
	
	menu_setprop(iMenu, MPROP_EXIT, MEXIT_NEVER);
	menu_display(id, iMenu);
}

public TypPojedynku_Handler(id, iMenu, iItem) {
	new iTyp;
	
	if(iItem == MENU_EXIT) {
		iTyp = 0;
	} else {
		iTyp = iItem;
	}
	
	switch(iTyp) {
		case 0: ColorChat(0, GREEN, "[Pojedynek]^x01 Rodzaj pojedynku:^x03 Zwykly");
		case 1: ColorChat(0, GREEN, "[Pojedynek]^x01 Rodzaj pojedynku:^x03 Only HeadShoty");
		case 2: ColorChat(0, GREEN, "[Pojedynek]^x01 Rodzaj pojedynku:^x03 1shot1kill");
	}
	
	typ_pojedynku = iTyp;
	MenuPojedynek(id);
	
	menu_destroy(iMenu);
}
	
public KoniecCzasu() ColorChat(0, GREEN, "[JailBreak]^x01 40 sekund minelo, ct moze wpisac killa!")
public KoniecCzasuWybranie() if(!wybral_zyczenie) ColorChat(0, GREEN, "[JailBreak]^x01 30 sekund minelo, ct moze zabic wieznia!")
/////////// Pojedynek ///////////
public MenuPojedynek(id)
{
	new menu = menu_create("Pojedynek Z:", "Handel_Pojedynek");
	for(new i=1; i<=32; i++)
	{
		if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
			continue;
		new name[64];
		get_user_name(i, name, 63);
		menu_additem(menu, name);
	}
	menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu);
}

public Handel_Pojedynek(id, menu, item)
{
	if(kandydaci_pojedynek[0] != id || kandydaci_pojedynek[1] || !is_user_alive(id))
		return;
	
	if(item == MENU_EXIT)
	{
		menu_display(id, menu);
		return;
	}
	
	new acces, callback, data[3], szName2[64];
	menu_item_getinfo(menu, item, acces, data, 2, szName2, 63, callback);
	
	new kandydat = get_user_index(szName2);
	if(!is_user_alive(kandydat)) {
		MenuPojedynek(id);
		return;
	}
	
	kandydaci_pojedynek[1] = kandydat;
	RegisterHams(true);
	
	ZacznijObstawianie();
}

ZacznijObstawianie() {
	new iMenu, szName[2][32];
	
	get_user_name(kandydaci_pojedynek[0], szName[0], 31);
	get_user_name(kandydaci_pojedynek[1], szName[1], 31);
	
	show_menu(kandydaci_pojedynek[0], 1023, " ", 1);
	show_menu(kandydaci_pojedynek[1], 1023, " ", 1);
	
	obstawki[0] = obstawki[1] = 0;
	
	iMenu = menu_create("Kogo chcesz obstawic?^nWybieraj rozwaznie, gdyz wyboru nie da sie cofnac!", "Obstawianie_Handler");
	
	menu_additem(iMenu, szName[0]);
	menu_additem(iMenu, szName[1]);
	
	menu_setprop(iMenu, MPROP_EXITNAME, "\rRezygnuj z obstawiania");
	
	for(new i = 1; i < 33; i++) {
		kogo_obstawia[i] = -1;
		ile_obstawia[i] = 0;
		
		if(!is_user_connected(i) || is_user_hltv(i) || kandydaci_pojedynek[0] == i || kandydaci_pojedynek[1] == i) {
			continue;
		}
		
		menu_display(i, iMenu);
		ColorChat(i, GREEN, "***Zaklady***^x01 Posiadasz^x04 %d szlug(i/ow)", get_user_jbpack(i));
		ColorChat(i, GREEN, "***Zaklady***^x01 Posiadasz^x04 %d szlug(i/ow)", get_user_jbpack(i));
	}
	
	czas_do_pojedynku = 12;
	set_task(1.0, "OdliczajObstawianie", 333, _, _, "b");
}

public Obstawianie_Handler(id, iMenu, iItem) {
	if(0 <= iItem <= 1) {
		kogo_obstawia[id] = iItem;
		ile_obstawia[id] = 0;
		
		new szNick[32]; get_user_name(kandydaci_pojedynek[iItem], szNick, 31);
		
		ColorChat(id, GREEN, "***Zaklady***^x01 Wybrales^x03 %s", szNick);
		ColorChat(id, GREEN, "***Zaklady***^x01 Wpisz teraz, ile szlugow zamierzasz postawic. Maksymalnie mozna postawic^x03 300 szlugow!");
		
		client_cmd(id, "messagemode zaklad_IleObstawic");
	}
}

public cmd_WpisalIleObstawic(id) {
	new szIleObstawia[32], iIleObstawia, iTarget = kogo_obstawia[id];
	
	read_argv(1, szIleObstawia, 31);
	iIleObstawia = str_to_num(szIleObstawia);
	
	if(iTarget == -1 || czas_do_pojedynku <= 0) {
		ColorChat(id, GREEN, "***Zaklady***^x01 Nie zdazyles!");
	}  else {
		new iIloscSzlugow = get_user_jbpack(id);
		
		if(iIloscSzlugow <= 0) {
			ColorChat(id, GREEN, "***Zaklady***^x01 Nie posiadasz zadnych szlugow!");
		} else {
			if(iIleObstawia <= 0) {
				ColorChat(id, GREEN, "***Zaklady***^x01 Niepoprawna ilosc!");
				client_cmd(id, "messagemode zaklad_IleObstawic");
			} else {
				new szNick[2][32];
				
				if(iIloscSzlugow < iIleObstawia) {
					iIleObstawia = iIloscSzlugow;
				}
				
				if(iIleObstawia > 300) {
					iIleObstawia = 300;
				}
				
				obstawki[iTarget] += iIleObstawia;
				ile_obstawia[id] = iIleObstawia;
				
				get_user_name(id, szNick[0], 31);
				get_user_name(kandydaci_pojedynek[iTarget], szNick[1], 31);
				
				ColorChat(0, GREEN, "***Zaklady***^x03 %s^x01 postawil na^x03 %s^x04 %d szlug(i/ow)!", szNick[0], szNick[1], iIleObstawia);
			}
		}
	}
	
	return PLUGIN_HANDLED;
}	
		
public OdliczajObstawianie() {
	if(czas_do_pojedynku <= 0) {
		ClearSyncHud(0, g_iHud);
		PojedynekStart();
		remove_task(333);
		return PLUGIN_CONTINUE;
	}
	if(czas_do_pojedynku == 1) client_cmd(0, "mp3 play sound/jbnews/dual.mp3");
	new szLiczba[8], szName[2][32];
	
	get_user_name(kandydaci_pojedynek[0], szName[0], 31);
	get_user_name(kandydaci_pojedynek[1], szName[1], 31);
	
	set_hudmessage(255, 0, 0, -1.0, 0.15, 2, 0.02, 1.0, 0.01, 0.2, 2);
	ShowSyncHudMsg(0, g_iHud, "%s (%d szlugow) vs %s (%d szlugow)^nKoniec obstawiania za %d!", szName[0], obstawki[0], szName[1], obstawki[1], czas_do_pojedynku);
	
	if(czas_do_pojedynku <= 10) {
		num_to_word(czas_do_pojedynku , szLiczba, 7);
		client_cmd(0, "spk ^"vox/%s^"", szLiczba);
	}
	
	czas_do_pojedynku --;
	
	return PLUGIN_CONTINUE;
}

RozdajObstawioneSzlugi(iZwyciezca) {
	new iTarget ,Float:fSuma = float(obstawki[0]+obstawki[1]), iNagroda;
	for(new i = 1; i < 33; i++) {
		if(!is_user_connected(i) || is_user_hltv(i) || kandydaci_pojedynek[0] == i || kandydaci_pojedynek[1] == i) {
			continue;
		}
		
		iTarget = kogo_obstawia[i];
		
		if(iTarget == iZwyciezca && ile_obstawia[i] > 0) {
			iNagroda = floatround(fSuma * (float(ile_obstawia[i]) / float(obstawki[iTarget])));
			
			ColorChat(i, GREEN, "***Zaklady***^x01 BRAWO! Udalo Ci sie wygrac^x04 %d szlug(i/ow)", iNagroda);
			set_user_jbpack(i, get_user_jbpack(i) + iNagroda);
		}
		
		
		//kogo_obstawia[i] = -1;
	}
	
	iNagroda = floatround(0.05 * fSuma);
	ColorChat(pojedynek[iZwyciezca], GREEN, "***Zaklady***^x01 BRAWO! Za wygrana dostajesz^x04 %d szlug(i/ow)!", iNagroda);
	set_user_jbpack(pojedynek[iZwyciezca], get_user_jbpack(pojedynek[iZwyciezca]) + iNagroda);
}
	
PojedynekStart() {
	pojedynek[0] = kandydaci_pojedynek[0];
	pojedynek[1] = kandydaci_pojedynek[1];
	
	new szName[2][32];
	get_user_name(pojedynek[0], szName[0], 31);
	get_user_name(pojedynek[1], szName[1], 31);
	
	if(bronie_pojedynek == CSW_DEAGLE && rzuc == 1){
	czas_do_konca_pojedynku = 60;
	} else {
	czas_do_konca_pojedynku = 120
	}
	remove_task(TASK_KONIECPOJEDYNKU);
	set_task(1.0, "task_OdliczajKoniecPojedynku", TASK_KONIECPOJEDYNKU, _, _, "b");
	
	new iTarget, iIloscSzlugow, iIleObstawia, Float:fSuma = float(obstawki[0]+obstawki[1]);
	for(new i = 1; i < 33; i++) {
		if(!is_user_connected(i) || is_user_hltv(i) || kandydaci_pojedynek[0] == i || kandydaci_pojedynek[1] == i || ile_obstawia[i] <= 0) {
			continue;
		}
		
		iTarget = kogo_obstawia[i];
		
		if(iTarget != -1) {
			iIloscSzlugow = get_user_jbpack(i);
			iIleObstawia = ile_obstawia[i];
			
			if(iIloscSzlugow < iIleObstawia) {
				iIleObstawia = ile_obstawia[i] = iIloscSzlugow;
				
				ColorChat(i, GREEN, "***Zaklady***^x01 Braklo Ci troche szlugow, postawiono wiec ostatecznie^x04 %d szlug(i/ow)", iIleObstawia);
			}
			
			set_user_jbpack(i, iIloscSzlugow - iIleObstawia);
			ColorChat(i, GREEN, "***Zaklady***^x01 Jezeli wygra^x03 %s^x01, zgarniesz^x04 %d szlug(i/ow)", szName[iTarget], floatround(fSuma * (float(iIleObstawia) / float(obstawki[iTarget]))));
		}
		
	}
	
	ColorChat(0, GREEN, "^x04***Pojedynek***^x03 %s^x01 walczy z^x03 %s", szName[0], szName[1]);
	client_print(0, print_center, "%s vs %s", szName[0], szName[1]);
	
	ColorChat(pojedynek[0], GREEN, "***Zaklady***^x01 Jezeli wygrasz, zgarniesz^x04 %d szlug(i/ow)", floatround(0.05 * float(obstawki[0]+obstawki[1])));
	ColorChat(pojedynek[1], GREEN, "***Zaklady***^x01 Jezeli wygrasz, zgarniesz^x04 %d szlug(i/ow)", floatround(0.05 * float(obstawki[0]+obstawki[1])));
	
	new iEnt;
	
	while((iEnt = fm_find_ent_by_class(iEnt, "grenade"))) {
		if(pev_valid(iEnt)) {
			fm_remove_entity(iEnt);
		}
	}
	
	new iDualStart = random_num(0, 1)
	switch(iDualStart)
	{
		case 0:client_cmd(0, "spk sound/jb_donaciak/pojedynek_fix.wav");
		case 1:client_cmd(0, "spk sound/jb_donaciak/pojedynek2_fix.wav");
	}
	
	set_user_rendering(pojedynek[0], kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 10);
	set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);
	
	jail_set_user_block(pojedynek[0], true)
	jail_set_user_block(pojedynek[1], true);
	
	set_user_health(pojedynek[0], 100);
	set_user_health(pojedynek[1], 100);
	
	strip_user_weapons(pojedynek[0]);
	strip_user_weapons(pojedynek[1]);
	
	if(bronie_pojedynek == CSW_G3SG1)
	{
		server_cmd("jail_add_rpg %d", pojedynek[0]);
		server_cmd("jail_add_rpg %d", pojedynek[1]);
		celownik=true;
		return;
	}
	
	new weapon_name[24];

	get_weaponname(bronie_pojedynek, weapon_name, 23);
	
	new ent = give_item(pojedynek[0], weapon_name);
	new ent2 = give_item(pojedynek[1], weapon_name);
	
	if(bronie_pojedynek == CSW_KNIFE)
	{
		if(kosy)
		{
			//set_pev(id, pev_viewmodel2, "models/v_shawins_pknife.mdl");
			//set_pev(id, pev_weaponmodel2, "models/p_knife.mdl");
			
			//set_pev(pojedynek[1], pev_viewmodel2, "models/v_shawins_pknife.mdl");
			//set_pev(pojedynek[1], pev_weaponmodel2, "models/p_knife.mdl");
			set_pev(pojedynek[0], pev_viewmodel2, "models/v_knife.mdl");
			set_pev(pojedynek[0], pev_weaponmodel2, "models/p_knife.mdl");
			
			set_pev(pojedynek[1], pev_viewmodel2, "models/v_knife.mdl");
			set_pev(pojedynek[1], pev_weaponmodel2, "models/p_knife.mdl");
			cs_set_user_armor(pojedynek[0], 0, CS_ARMOR_NONE)
			cs_set_user_armor(pojedynek[1], 0, CS_ARMOR_NONE)
			return;
			
			
		}
			
	}
	if(rzuc == 1)
	{
	cs_set_weapon_ammo(ent, 0);
	cs_set_weapon_ammo(ent2, 0);
	}
	
	if(bronie_pojedynek != CSW_HEGRENADE && rzuc == 0)
	{
		cs_set_weapon_ammo(ent, 1);
		cs_set_weapon_ammo(ent2, 1);
	}
}

public task_OdliczajKoniecPojedynku(iTaskId) {
	if(!is_user_alive(pojedynek[0]) || !is_user_alive(pojedynek[1])) {
		remove_task(TASK_KONIECPOJEDYNKU);
		return PLUGIN_CONTINUE;
	}

	czas_do_konca_pojedynku --;

	switch(czas_do_konca_pojedynku) {
		case 0: {
			for(new i = 1; i < 33; i++) {
				if(!is_user_connected(i) || is_user_hltv(i) || pojedynek[0] == i || pojedynek[1] == i || ile_obstawia[i] <= 0) {
					continue;
				}
				
				set_user_jbpack(i, get_user_jbpack(i) + ile_obstawia[i]);
				ile_obstawia[i] = 0;
				kogo_obstawia[i] = -1;

			}

			user_silentkill(pojedynek[0]);
			user_silentkill(pojedynek[1]);

			ColorChat(0, GREEN, "***Zaklady***^x01 Czas minal! Wszystkie szlugi z zakladow zostaly zwrocone.");
		}

		case 1..10: {
			new szLiczba[8];

			num_to_word(czas_do_konca_pojedynku , szLiczba, 7);
			client_cmd(0, "spk ^"vox/%s^"", szLiczba);
		}
	}
	
	set_hudmessage(0, 255, 0, -1.0, 0.15, 2, 0.02, 1.0, 0.01, 0.2, 2);
	if(bronie_pojedynek == CSW_DEAGLE && rzuc == 1){
	ShowSyncHudMsg(0, g_iHud, "Trwa pojedynek: rzut bronia^nZakonczenie za %d!", czas_do_konca_pojedynku);
	} else {
	ShowSyncHudMsg(0, g_iHud, "Trwa pojedynek: %s^nZakonczenie za %d!", (typ_pojedynku == 0) ? "Zwykly" : (typ_pojedynku == 1) ? "Only HS" : "1shot1kill", czas_do_konca_pojedynku);
	}

	return PLUGIN_CONTINUE;
}

public TakeDamage(id, ent, attacker, Float:damage, damagebits)
	return vTracerAttack(id, attacker, ent);

public TraceAttack(id, attacker, Float:damage, Float:direction[3], tracehandle, damagebits)
	return vTracerAttack(id, attacker, -1);

vTracerAttack(id, attacker, ent)
{
	if(!pojedynek[0] || !is_user_connected(id) || id == attacker)
		return HAM_IGNORED;
	
	if((kandydaci_pojedynek[0] == id || kandydaci_pojedynek[1] == id) && czas_do_pojedynku > 0) {
		return HAM_SUPERCEDE;
	}
	
	if(pojedynek[0] == id && pojedynek[1] != attacker)
		return HAM_SUPERCEDE;
		
	if(pojedynek[0] == attacker && pojedynek[1] != id)
		return HAM_SUPERCEDE;	

	if(is_user_connected(attacker)) {/*
		if(typ_pojedynku == 1 && get_pdata_int(id, 75, 5) != HIT_HEAD) {
			return HAM_SUPERCEDE;
		}
		*/
		if(typ_pojedynku == 2) {
			SetHamParamFloat(4, 999.0);
			return HAM_HANDLED;
		}
		
		if(bronie_pojedynek == CSW_KNIFE && ent != -1 && !kosy)
		{
			if(ent == attacker)
				return HAM_SUPERCEDE;
	
			new Float:ViewAngle[3], iOrigin[3];
			for(new i=0; i<3; i++) 
				ViewAngle[i] = random_float(-50.0, 50.0);
	
			get_user_origin(id, iOrigin);
			message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
			write_byte(TE_BLOODSPRITE);
			write_coord(iOrigin[0]);
			write_coord(iOrigin[1]);
			write_coord(iOrigin[2]);
			write_short(blood2);
			write_short(blood);
			write_byte(229);
			write_byte(25);
			message_end();
				
			set_pev(id, pev_punchangle, ViewAngle);
			SetHamParamEntity(2, attacker);
			return HAM_IGNORED;
		}
	}
	
	return HAM_IGNORED;
}


public TraceLine(Float:StartPos[3],Float:EndPos[3], SkipMonsters, id, Trace)
{
	if(!is_user_alive(id))
		return FMRES_IGNORED;

	if(typ_pojedynku != 1)
		return FMRES_IGNORED;

	new Hited = get_tr2(Trace, TR_pHit);
	new HitGroup = (1 << get_tr2(Trace, TR_iHitgroup));
 
	if(!is_user_alive(Hited))
		return FMRES_IGNORED;
 
	if(!(HitGroup & (1 << 1)))
	{
		set_tr2(Trace, TR_flFraction, 1.0);
		return FMRES_SUPERCEDE;
	}
	return FMRES_IGNORED;
}

public SmiercGraczaPost(id, attacker, shouldgib)
{	
	if(!is_user_connected(id))
		return HAM_IGNORED;
	
	if(id == pojedynek[1]) {
		new iRandomSound = random_num(0,1)
		switch(iRandomSound)
		{
			case 0:client_cmd(0, "spk sound/jb_donaciak/dodupy_fix.wav")
			case 1:client_cmd(0, "spk sound/jb_donaciak/niewstan_fix.wav")
		}
		
		jail_set_user_block(id, false);
		
		client_print(0, print_center, "Losowanie przeciwnika...")
		set_task(2.0, "SzukajPrzeciwnika")
		
		RozdajObstawioneSzlugi(0);
	}
	
	if(id == pojedynek[0]) {
		RozdajObstawioneSzlugi(1);
	}
		
	
	if(kandydaci_pojedynek[1] == id) {
		client_print(0, print_center, "Losowanie przeciwnika...")
		set_task(2.0, "SzukajPrzeciwnika");
	}

	return HAM_IGNORED;
}

public WeaponAttack(ent)
{
	new id = get_pdata_cbase(ent, 41, 4);
	if(pojedynek[0] == id || pojedynek[1] == id)
	{
		if(bronie_pojedynek == CSW_KNIFE && !kosy)
			StworzKnife(id);
		else if(bronie_pojedynek != CSW_KNIFE && rzuc == 0)
			cs_set_user_bpammo(id, bronie_pojedynek, 1);
		else if(rzuc == 1)
			cs_set_user_bpammo(id, bronie_pojedynek, 0);
	}
}		

public client_disconnect(id)
{
	if(pojedynek[1] == id && czas_do_pojedynku <= 0) {
		RozdajObstawioneSzlugi(0);
		
		client_print(0, print_center, "Losowanie przeciwnika...");
		set_task(2.0, "SzukajPrzeciwnika");
	}
	
	if(pojedynek[0] == id && czas_do_pojedynku <= 0) {
		RozdajObstawioneSzlugi(1);
	}
	
	
	if(kandydaci_pojedynek[1] == id && czas_do_pojedynku > 0) {
		client_print(0, print_center, "Losowanie przeciwnika...");
		set_task(2.0, "SzukajPrzeciwnika");
	}
		
}

public SzukajPrzeciwnika()
{
	kandydaci_pojedynek[1] = RandomPlayer(2);
	if(!kandydaci_pojedynek[1])
		return;
	
	remove_task(333);
	remove_task(TASK_KONIECPOJEDYNKU);
	ZacznijObstawianie();
}
/*
	if(is_user_alive(pojedynek[0]))
		set_user_health(pojedynek[0], 100);
		
	set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);	
		
	jail_set_user_block(pojedynek[1], true);
	set_user_health(pojedynek[1], 100);
	strip_user_weapons(pojedynek[1]);
		
	new weapon_name[24]
	get_weaponname(bronie_pojedynek, weapon_name, 23);	
	new ent = give_item(pojedynek[1], weapon_name);
	
	if(bronie_pojedynek == CSW_G3SG1)
	{
		server_cmd("jail_add_rpg %d", pojedynek[1]);
		celownik=true;
		return;
	}
	
	if(bronie_pojedynek == CSW_KNIFE)
	{
		if(kosy)
		{
			set_pev(pojedynek[1], pev_viewmodel2, "models/v_knife.mdl");
			set_pev(pojedynek[1], pev_weaponmodel2, "models/p_knife.mdl");
			return;
			
		}
		else if(!kosy)
		{
			set_pev(pojedynek[1], pev_viewmodel2, "models/v_knife.mdl");
			set_pev(pojedynek[1], pev_weaponmodel2, "models/p_knife.mdl");
			return;
			
		}
			
	}
	
	if(bronie_pojedynek != CSW_HEGRENADE)
		cs_set_weapon_ammo(ent, 1);
}*/

public RegisterHams(bool:wartosc)
{
	if(wartosc)
	{
		if(fHamKill)
			EnableHamForward(fHamKill);
		else
			fHamKill = RegisterHam(Ham_Killed, "player", "SmiercGraczaPost", 1);
		
		if(fHamDamage)
			EnableHamForward(fHamDamage);
		else
			fHamDamage = RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
			
		if(fHamTrace)
			EnableHamForward(fHamTrace);
		else
			fHamTrace = RegisterHam(Ham_TraceAttack, "player", "TraceAttack");
			

		if(!fTraceLine) {
			fTraceLine = register_forward(FM_TraceLine, "TraceLine");
		}
		
		if(bronie_pojedynek != CSW_HEGRENADE)
		{
			if(fHamWeapon[bronie_pojedynek])
				EnableHamForward(fHamWeapon[bronie_pojedynek]);
			else
			{
				new WeaponName[24];
				get_weaponname(bronie_pojedynek, WeaponName, 23);
				fHamWeapon[bronie_pojedynek] = RegisterHam(Ham_Weapon_PrimaryAttack, WeaponName, "WeaponAttack", 1);
			}
		}
		
		if(bronie_pojedynek == CSW_HEGRENADE && !fDropGranade)
			fDropGranade = register_forward(FM_SetModel, "SetModel", 1);
		
		if(bronie_pojedynek == CSW_KNIFE && !fDotykKnife)
			fDotykKnife = register_forward(FM_Touch, "TouchKnife");
	}
	else
	{
		if(fHamKill)
			DisableHamForward(fHamKill);
			
		if(fHamDamage)
			DisableHamForward(fHamDamage);
			
		if(fHamTrace)
			DisableHamForward(fHamTrace);	
			
		
		if(fTraceLine) {
			unregister_forward(FM_Touch, fTraceLine);
		}
		
		if(fHamWeapon[bronie_pojedynek])
			DisableHamForward(fHamWeapon[bronie_pojedynek]);
			
		if(fDropGranade)
		{
			unregister_forward(FM_SetModel, fDropGranade, 1);
			fDropGranade = 0;
		}
			
		if(fDotykKnife)
		{
			unregister_forward(FM_Touch, fDotykKnife);
			fDotykKnife = 0;
		}
		
	}
}
/////////// Pojedynek ///////////
public CmdStart(id, uc_handle, seed)
{
if(!is_user_connected(id) || !is_user_alive(id))
return PLUGIN_CONTINUE;

if(celownik)
set_uc(uc_handle, UC_Buttons, get_uc(uc_handle, UC_Buttons) & ~IN_ATTACK2);

return PLUGIN_CONTINUE;
}

public WeaponTouch(iEnt, iWorld) {
        if(!pev_valid(iEnt) || bronie_pojedynek != CSW_DEAGLE || rzuc == 0) return;
 
        static szModel[32], szName[32], id;
        pev(iEnt, pev_model, szModel, 31);
        pev(iWorld, pev_classname, szName, 31);
 
        if(!equali(szModel, "models/w_deagle.mdl") || !equal(szName, "worldspawn") || !(1 <= (id = pev(iEnt, pev_owner)) <= 32)) return;
 
        if(pojedynek[0] == id || pojedynek[1] == id) {
		new name[33];
		get_user_name(id, name, 32);
                static Float:vecOrigin[3];
                pev(iEnt, pev_origin, vecOrigin);
 
                give_item(id, "weapon_knife");
                ColorChat(0, GREEN, "^x04%s ^x01rzucil bron na odleglosc ^x04%.2f ^x01m.", name, get_distance_f(LROrigin, vecOrigin) * 0.0254);
        }
}

public SetModel(ent, model[])
{

	if(!pev_valid(ent)) 
		return FMRES_IGNORED;

	if(!equali(model, "models/w_hegrenade.mdl")) 
		return FMRES_IGNORED;

	new id = pev(ent, pev_owner);
	if(pojedynek[0] == id || pojedynek[1] == id)
		cs_set_user_bpammo(id, CSW_HEGRENADE, 2);
		
	return FMRES_IGNORED;
}

public TouchKnife(ent, id)
{
	if(!pev_valid(ent))
		return FMRES_IGNORED
	
	new class[32];
	pev(ent, pev_classname, class, 31);

	if(!equal(class, "throw_knife"))
		return FMRES_IGNORED;
		
	if((0 < id <= MAX) && is_user_alive(id))
	{
		new attacker = pev(ent, pev_owner);
		ExecuteHamB(Ham_TakeDamage, id, ent, attacker, 30.0, DMG_BULLET);
	}
	engfunc(EngFunc_RemoveEntity, ent);
	return FMRES_IGNORED;
}

public StworzKnife(id)
{
	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"));
	new Float:vAngles[3], Float:nVelocity[3], Float:vOriginf[3], vOrigin[3];
		
	set_pev(ent, pev_owner, id);
	set_pev(ent, pev_classname, "throw_knife");
	engfunc(EngFunc_SetModel, ent, "models/w_throw.mdl");
	set_pev(ent, pev_gravity, 0.25);	
	
	get_user_origin(id, vOrigin, 1);
	IVecFVec(vOrigin, vOriginf);
	set_pev(ent, pev_origin,vOriginf);
	
	static Float:player_angles[3];
	pev(id, pev_angles, player_angles);
	player_angles[2] = 0.0;
	set_pev(ent, pev_angles, player_angles);
	
	pev(id, pev_v_angle, vAngles);
	set_pev(ent, pev_v_angle, vAngles);
	
	pev(id, pev_view_ofs, vAngles);
	set_pev(ent, pev_view_ofs, vAngles);

	set_pev(ent, pev_movetype, MOVETYPE_TOSS);
	set_pev(ent, pev_solid, 2);
	
	velocity_by_aim(id, 700, nVelocity);	
	set_pev(ent, pev_velocity, nVelocity);
	
	set_pev(ent, pev_effects, pev(ent, pev_effects) & ~EF_NODRAW);
	set_pev(ent, pev_sequence, 0);
	set_pev(ent, pev_framerate, 1.0);
}
public DodajZyczenie(id)
{
	if(get_playersnum()>5)
	{
	
	new g_iVault = nvault_open("ZapisZyczen")
	new Nick[33]; get_user_name(id, Nick, 32)
	new IloscZyczen[32];
	nvault_get(g_iVault, Nick, IloscZyczen, 31)
	if(!nvault_get(g_iVault, Nick, IloscZyczen, 31))
	{
		/*new szDane[32];
		parse(IloscZyczen, szDane, 31);
		IloscZyczen[id] = str_to_num(szDane);
		IloscZyczen[id]++
		new dane[256]; formatex(dane, 255, "%d", IloscZyczen[id])
		nvault_set(g_iVault ,Nick, dane);

		nvault_close(g_iVault)
		return;*/
		IloscZyczen[id]=0
	}
	new szDane[32];
	parse(IloscZyczen, szDane, 31);
	IloscZyczen[id] = str_to_num(szDane);
	IloscZyczen[id]++
	new dane[256]; formatex(dane, 255, "%d", IloscZyczen[id])
	nvault_set(g_iVault ,Nick, dane);
	nvault_close(g_iVault)
	}
	
}


 

Załączony plik  jail_zyczenia_v2.sma   35,81 KB  24 Ilość pobrań
  jail_zyczenia_v2.amxx


Użytkownik chomikk11 edytował ten post 23.03.2021 13:48

  • +
  • -
  • 0

#2 P3neR

    Zaawansowany

  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:80
  • Imię:Dawid
  • Lokalizacja:Zalesie
Offline

Napisano 23.03.2021 13:52

A dopisywaleś debug do pluginu ? Wpisz może wyłapiesz linijke w której jest bląd 


  • +
  • -
  • 0

#3 Misiu.

    Kochanek DarkGL

  • Power User

Reputacja: 174
Profesjonalista

  • Postów:539
  • GG:
  • Steam:steam
  • Imię:Adrian
  • Lokalizacja:Zgorzelec
Offline

Napisano 23.03.2021 14:09   Najlepsza odpowiedź

Spróbuj zamienić 

fTraceLine = register_forward(FM_TraceLine, "TraceLine");

na

fTraceLine = register_forward(FM_TraceLine, "TraceLine", 1);

  • +
  • -
  • 1

PoGrywamy.pl - Pograj Razem Z Nami

 

Tatusiek serwerów:

[ONLY DD2 #2] 1shot2kill.pl

[ONLY DD2] PoGrywamy.pl

Przyjmuje płatne zlecenia!


#4 chomikk11

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:17
  • GG:
  • Imię:Marcin
Offline

Napisano 23.03.2021 15:31

dzięki misiu za pomoc, do zamknięcia


  • +
  • -
  • 0

#5 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 24.03.2021 06:53

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
  • +
  • -
  • 0




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

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