←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Stary
Jak usunac klase

Locked

Pan BooYaka's Photo Pan BooYaka 24.05.2011

Krótko i na temat.
Jak usunąc klase z menu wybierania, tak żebym jej nie musiał z moda wywalac bo za duzo by z tym bylo zbednej roboty ...
Chodzi o jak najszybsze i jak nawygodniesze wywalenie, najlepiej na tyle, zeby tylko w menu klas go nie pokazywalo, a w modzie zeby był, zebym potem mogl ta klase spowrotem wlaczyc jak cos ...
Quote

  • +
  • -
Rumcajs12's Photo Rumcajs12 24.05.2011

W kodzie sma znajdź linijki odpowiedzialne za klasę i dodaj przed każda 2 slashe (//). Nie znam się na starym cod modzie, ale myślę, że to załatwi sprawę.
Edited by Rumcajs12, 24.05.2011 17:23.
Quote

  • +
  • -
Sm4rT's Photo Sm4rT 24.05.2011

Daj sma to Ci wylacze :)
Quote

Pan BooYaka's Photo Pan BooYaka 24.05.2011

nie chce zebys mi wylaczal tylko zebys pomógł mi to zrobic ...
chce sie nauczyc, a nie dostac na gotowo

W kodzie sma znajdź linijki odpowiedzialne za klasę i dodaj przed każda 2 slashe (//). Nie znam się na starym cod modzie, ale myślę, że to załatwi sprawę.

pod linijka

new const nazwy_klas[][] = {"Brak",

tak ?
ale wtedy musze wywalic zdrowie klasy i pancerz klasy ?
Quote

  • +
  • -
Sm4rT's Photo Sm4rT 24.05.2011

Postaw 2 slashe <//> przed nazwa klasy tu a szybkosci nie musisz usuwac bo klase wylaczasz z menu, ona dalej jest w grze ale nie da sie jej wybrać :)

@EDIT

to ma wygladac tak:



new const nazwy_klas[][] = {"Brak",
"Snajper",
//"TwojaKlasa",


Edited by Sm4rT, 24.05.2011 18:42.
Quote

  • +
  • -
Grzesiek's Photo Grzesiek 24.05.2011

wszystko zależy od tego którą klasę chcesz skasować czy klasę z początku czy z końca (wtedy jest pewność że nic nie popsujesz ) to kasujesz stąd:

enum { NONE = 0, Snajper, Komandos, Strzelec, Obronca, Medyk, Wsparcie, Saper, Demolitions, Rusher, Rambo, Szpieg, Szturmowiec, StrzelecWsparcia, LekkiZolnierz, Rebeliant, Terrorysta, Raportowy, Predator, SWAT, Szeregowy, Sanitariusz, Tradycyjny, Porucznikowy, Morderca, klasadousunięcia};
new const zdrowie_klasy[] = { 0, 120, 140, 110, 120, 110, 100, 100, 110, 100, 130, 70, 140, 125, 100, 125, 70, 100, 200, 120, 100, 100, 150, 100, 150, wartośćdousunięcia};																																																		
new const Float:szybkosc_klasy[] = {0.0, 1.2, 1.35, 0.8, 0.8, 1.0, 1.0, 1.0, 1.0, 1.3 , 1.15, 1.2, 0.9, 0.9, 1.35, 1.2, 1.5, 1.1, 1.4, 1.2, 1.3, 1.0, 1.1, 1.3, 1.1, 1.3, wartośćdousunięcia};
new const pancerz_klasy[] = { 0, 100, 100, 100, 150, 100, 0, 100, 100, 0, 150, 0, 150, 50, 0, 25, 0, 20, 100 ,500, 100, 20, 100, 0, 100, 100, wartość do usunięcia};


w tym przypadku usuwasz ostatnią klasę masz pewność że nie przeskoczą ci wartości hp/pancerza/szybkośći dlatego musisz uważać jeżeli kasujesz jakąś klasę w środku

później usuwasz stąd:

new const nazwy_klas[][] = {"Brak",
	"Snajper",
	"Komandos",
	"Strzelec wyborowy",
	"Obronca",
	"Medyk",																																	
	"Wsparcie ogniowe",
	"Saper",
	"Demolitions",
	"Rusher",
	"Rambo (Klasa Premium)",
	"Szpieg",
	"Szturmowiec",
	"Strzelec Wsparcia",
	"Lekki Zolniez",
	"Rebeliant",
	"Terrorysta",
	"Raportowy",
	"Predator (Klasa Premium)",
	"SWAT",
	"Szeregowy",
	"Sanitariusz",
	"Tradycyjny",
	"Porucznikowy",
	"Morderca (Klasa Premium)",
	"klasadousunięcia"	
}


wydaje mi się że wszystko jasne oczywiście po usunięciu klasy kasujesz przecinek przy klasie przedostatniej (u mnie w mordercy). później stąd:

new const opisy_klas[][] = {"Brak",
	"Dostaje AWP, scout i deagle, 120hp bazowe, 1/3 szansy natychmiastowego zabicia noza, 110% biegu, 100 pancerza",
	"Dostaje Deagle, 140hp bazowe, Natychmiastowe zabicie z noza (prawy przycisk myszy), 135% biegu, 100 pancerza",
	"Dostaje AK i M4A1, 110hp bazowe, 80 % biegu, 100 pancerza",
	"Dostaje M249 (Krowa), 120hp bazowe, 80% biegu, jest odporny na miny, ma wszystkie granaty, 150 pancerza",
	"Dostaje UMP45 i deagla, 110hp bazowe, posiada 4 apteczki, 100 pancerza",
	"Dostaje MP5, 100 hp bazowe, Ma trzy rakiety,ktore po trafieniu przeciwnika zadaja dużo obrazen",
	"Dostaje P90, 100hp bazowe, 100 pancerza, Dostaje 2 miny, gdy ktos w nie wejdzie wybuchaja ma 1/30 szans na zabicie od razu",
	"Dostaje AUG, 110 hp bazowe, 100 pancerza, Ma wszystkie granaty, Dostaje dynamit, który zabiera sporo zycia wszystkim znajdującym się blisko niego",
	"Dostaje szotgana M3 +1 dynamit, 100 hp bazowe, 130% biegu",
	"Dostaje Famasa +5 min, 130 hp bazowe, 120% biegu, za kazde zabojstwo +20 hp oraz pelen magazynek, podwojny skok",
	"Dostaje deagla, 70 hp bazowe, ma ubranie wroga",
	"Dostaje M4 + deagle + he, 140 hp bazowe + 150 kamizelki, wolniej biega",
	"Dostaje G3/SG-1, 125 hp bazowe, ma 1 rakiete",
	"Dostaje galil + p228, 100 hp bazowe, szybciej biega",
	"Dostaje sg552 + 1 mine + 1 HE, 100 hp bazowe",
	"Dostaje elites, 70 hp bazowe, o wiele szybciej biega",
	"Dostaje Gail i elites +1 HE, 100 hp bazowe",
	"Dostaje  awp w ktorym ma 1/2 na natychmiastowe zabicie i m4a1 ,200hp bazowe +2 rakiety",
	"Dostaje mp5 i deagle ,120hp bazowe ,500 armoru ,mniejsz grawitacja i 1 rakiete",
	"Dostaje AK ,fiveseven ,100hp bazowe ,100 armoru +2 dynamity",
	"Dostaje bullpup ,100hp bazowe +smoke i 2 apteczki",
	"Dostaje M4A1 i deagle + wszystkie granaty ,jest szybki 150hp ,110% biegu",
	"Dostaje M249 (Krowa) +2 miny +1HE 100hp, 110% biegu",
	"Dostaje ak+m4a1+deagle 130%biegu posiada 4rakiety",
	"opis klasydousunięcia"
}

również wszystko jasne również przecinek na końcu po usunięciu usuwasz.

jeżeli masz coś takiego w public takedamage:

if(weapon == CSW_FAMAS) // zamiast AWP wpisujemy swoją broń
	{
		if((klasa_gracza[idattacker] == klasadousunięcia && random(8) == 1)) // to będzie np. 1/2 z AWP
			damage = float(health);
	}


to również usuwasz, jeżeli usuwasz klasę premium to jeszcze z

public WybierzKlase_Handle(id, menu, item)

usuwasz:

if(item == klasadousunięcia && !(get_user_flags(id) & ADMIN_LEVEL_H))
	{
		client_print(id, print_chat, "[COD:MW] Nie masz uprawnien aby kozystac z klasy premium.");
		WybierzKlase(id);
		return PLUGIN_CONTINUE;
	}

i jeszcze z public odrodzenie

case klasadousunięcia:
		{
			give_item(id, "weapon_galil");
			give_item(id, "weapon_famas");
			give_item(id, "weapon_hegrenade");
		}
		

kasujesz to wszystko.
i to by było na tyle;) mój sposób jest na usunięcie;p
Edited by Grzesiek, 24.05.2011 19:02.
Quote

  • +
  • -
;(('s Photo ;(( 24.05.2011

coś na odwrót dodawania klasy :D
Quote

  • +
  • -
sharkowy's Photo sharkowy 24.05.2011

new const nazwy_klas[][] = {"Brak",
"Snajper",
//"Klasa do usunięcia",


Potem zablokuj case klasy w public Odrodzenie robiąc to w ten sposób.

		/*case Klasadousuniecia:
{
give_item(id, "weapon_ak47");
}*/


I w opisie klasy dodaj na początku //
Edited by RPK. Shark, 24.05.2011 19:01.
Quote

Pan BooYaka's Photo Pan BooYaka 24.05.2011

dziekuje :)

Dodano 24 maj 2011 - 20:24:
shark a tego nie ruszac ?

enum { NONE = 0, Snajper, Komandos, Strzelec, Obronca, Medyk, Wsparcie, Saper, Demolitions, Rusher, Rambo };
new const zdrowie_klasy[] = { 0, 120, 140, 110, 120, 110, 100, 100, 110, 100, 130};
new const Float:szybkosc_klasy[] = {0.0, 1.2, 1.35, 0.8, 0.8, 1.0, 1.0, 1.0, 1.0, 1.3 , 1.15};
new const pancerz_klasy[] = { 0, 100, 100, 100, 150, 100, 0, 100, 100, 0, 150};

Quote

  • +
  • -
sharkowy's Photo sharkowy 25.05.2011

Nie musisz stąd usuwać.
Quote
Locked