pokaze ci jak zrobic item do coda starego przerobionego przez ze mnie stąd http://amxx.pl/topic...k-fala-smierci/
PS. Jak miales tamta wersje i chcesz miec ta to usun wszystko z tamtad i wgraj ta.
No to zaczynamy
Na poczatek dajemy Nazwe przedmiotu i opis przedmiotu np taki
new const nazwy_przedmiotow[][] = {"Brak", "Buty Szturmowego", //1 "Podwojna Kamizelka", //2 "Wzmocniona Kamizelka", //3 "Weteran Noza", //4 "Zaskoczenie Wroga", //5 "Plaszcz Partyzanta", //6 "Morfina", //7 "Noz Komandosa", //8 "Podrecznik Szpiega", //9 "Tajemnica Generala", //10 "Notatki Ninji", //11 "Tajemnica Wojskowa", //12 "AWP Sniper",//13 "Adrenalina",//14 "Tajemnica Rambo",//15 "Wyszkolenie Sanitarne",//16 "Kamizelka NASA",//17 "Wytrenowany Weteran",//18 "Apteczka",//19 "Eliminator Rozrzutu",//20 "Tytanowe Naboje",//21 "Naboje Pulkownika",//22 "Ogranicznik Rozrzutu",//23 "Tarcza SWAT",//24 "Wytrenowany Rekrut",//25 "Pancerz Nomexowy",//26 "Notatki Kapitana",//27 "Modul odrzutowy"//28
Zamieniamy na to
new const nazwy_przedmiotow[][] = {"Brak", "Buty Szturmowego", //1 "Podwojna Kamizelka", //2 "Wzmocniona Kamizelka", //3 "Weteran Noza", //4 "Zaskoczenie Wroga", //5 "Plaszcz Partyzanta", //6 "Morfina", //7 "Noz Komandosa", //8 "Podrecznik Szpiega", //9 "Tajemnica Generala", //10 "Notatki Ninji", //11 "Tajemnica Wojskowa", //12 "AWP Sniper",//13 "Adrenalina",//14 "Tajemnica Rambo",//15 "Wyszkolenie Sanitarne",//16 "Kamizelka NASA",//17 "Wytrenowany Weteran",//18 "Apteczka",//19 "Eliminator Rozrzutu",//20 "Tytanowe Naboje",//21 "Naboje Pulkownika",//22 "Ogranicznik Rozrzutu",//23 "Tarcza SWAT",//24 "Wytrenowany Rekrut",//25 "Pancerz Nomexowy",//26 "Notatki Kapitana",//27 "Modul odrzutowy",//28 "Fala Smierci" //29
potem szukamy opisu
new const opisy_przedmiotow[][] = {"Zabij kogos aby dostac przedmiot", "Cicho biegasz", "Obniza uszkodzenia zadawane graczowi o LW", "Obniza uszkodzenia zadawane graczowi o LW", "Zadajesz wieksze obrazenia nozem", "Gdy trafisz kogos od tylu, obrazenia sa 2 razy wieksze", "Masz LW premii niewidocznosci", "1/LW szans do ponownego odrodzenia sie po smierci", "Natychmiastowe zabicie z Noza", "Masz 1/LW szans na natychmiastowe zabicie z HE. Posiadasz takze ubranie wroga", "Natychmiastowe zabicie granatem HE. Zadajesz LW dodatkowych obrazen", "Mozesz zrobic podwojny skok w powietrzu", "Twoje obrazenia sa zredukowane o 5. Masz 1/LW szans na oslepienie wroga", "Natychmiastowe zabicie z AWP", "Za kazdego Fraga dostajesz 50 zycia", "Za kazdego Fraga dostajesz pelen magazynek oraz +20 hp", "Dostajesz 10 HP co 5 sekund", "Masz 500 pancerza", "Dostajesz +100 HP co runde, wolniej biegasz", "Uzyj, aby uleczyc sie do maksymalnej ilosci HP", //19 "Nie posiadasz rozrzutu broni", "Zadajesz 10 obrazen wiecej", "Zadajesz 20 obrazen wiecej", "Twoj rozrzut jest mniejszy", "Nie dzialaja na ciebie zadne przedmioty", "Dostajesz +50 HP co runde, wolniej biegasz", "Masz 1/LW szans na odbicie pocisku przez pancerz", "Jestes odporny na 3 pociski w kazdej rundzie", "Nacisnij CTRL i SPACE aby uzyc modulu, modul laduje sie co 4 sekundy"
Zamieniamy na to
new const opisy_przedmiotow[][] = {"Zabij kogos aby dostac przedmiot", "Cicho biegasz", "Obniza uszkodzenia zadawane graczowi o LW", "Obniza uszkodzenia zadawane graczowi o LW", "Zadajesz wieksze obrazenia nozem", "Gdy trafisz kogos od tylu, obrazenia sa 2 razy wieksze", "Masz LW premii niewidocznosci", "1/LW szans do ponownego odrodzenia sie po smierci", "Natychmiastowe zabicie z Noza", "Masz 1/LW szans na natychmiastowe zabicie z HE. Posiadasz takze ubranie wroga", "Natychmiastowe zabicie granatem HE. Zadajesz LW dodatkowych obrazen", "Mozesz zrobic podwojny skok w powietrzu", "Twoje obrazenia sa zredukowane o 5. Masz 1/LW szans na oslepienie wroga", "Natychmiastowe zabicie z AWP", "Za kazdego Fraga dostajesz 50 zycia", "Za kazdego Fraga dostajesz pelen magazynek oraz +20 hp", "Dostajesz 10 HP co 5 sekund", "Masz 500 pancerza", "Dostajesz +100 HP co runde, wolniej biegasz", "Uzyj, aby uleczyc sie do maksymalnej ilosci HP", //19 "Nie posiadasz rozrzutu broni", "Zadajesz 10 obrazen wiecej", "Zadajesz 20 obrazen wiecej", "Twoj rozrzut jest mniejszy", "Nie dzialaja na ciebie zadne przedmioty", "Dostajesz +50 HP co runde, wolniej biegasz", "Masz 1/LW szans na odbicie pocisku przez pancerz", "Jestes odporny na 3 pociski w kazdej rundzie", "Nacisnij CTRL i SPACE aby uzyc modulu, modul laduje sie co 4 sekundy", "Po uzyciu na przeciwnikach, zadajesz im 5 obrazen co sec przez 8 sec."
Szukamy
#define ZADANIE_POKAZ_INFORMACJE 672
i nad tym dodajemy to
#define FALA_SMIERCI 7845 #define OBRAZENIA 5 //tu mozesz zmienic wartosc zadawanych obrazen na sec #define CZAS_OBRAZEN 8 //tu mozesz zmienic czas efektu (w sec.) #define ZASIEG 300 //tu mozesz zmienic zasieg fali
potem szukamy to
new ilosc_dynamitow_gracza[33];
pod tym dodajemy to
new ilosc_fal_gracza[33] new czas_obrazen[33]
szukamy
if(ilosc_dynamitow_gracza[id]>0) PolozDynamit(id);
i pod tym dodajemy to
if(ilosc_fal_gracza[id]>0) UzyjFaleSmierci(id);
na sam koniec sma dodajemy to
public UzyjFaleSmierci(id) { if(!ilosc_fal_gracza[id]) { client_print(id, print_center, "Wykorzystales juz wszystkie Fale Smierci!"); return PLUGIN_CONTINUE; } ilosc_fal_gracza[id]--; new iOrigin[3]; get_user_origin(id, iOrigin); message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[0] ); write_coord( iOrigin[1] ); write_coord( iOrigin[2] ); write_coord( iOrigin[0] ); write_coord( iOrigin[1] + ZASIEG ); write_coord( iOrigin[2] + ZASIEG ); write_short( sprite_white ); write_byte( 0 ); write_byte( 0 ); write_byte( 10 ); write_byte( 120 ); write_byte( 255 ); write_byte( 0 ); write_byte( 0 ); write_byte( 255 ); write_byte( 100 ); write_byte( 4 ); message_end(); new i = -1 new Float:fOrigin[3]; IVecFVec(iOrigin, fOrigin) while((i = engfunc(EngFunc_FindEntityInSphere, i, fOrigin, ZASIEG.0)) != 0) { if (pev_valid(i) && is_user_alive(i) && get_user_team(id) != get_user_team(i)){ czas_obrazen[i] = CZAS_OBRAZEN new iData[2] iData[0] = id iData[1] = i set_task(1.0, "FalaSmierci_task", _, iData, 2, "a", CZAS_OBRAZEN) } } return PLUGIN_CONTINUE; } public FalaSmierci_task(iData[]){ if(!is_user_alive(iData[1])) return; Util_Kill(iData[0], iData[1], OBRAZENIA.0) } stock Util_Kill(attacker, victim, Float:damage) { if(damage < pev(victim, pev_health)) { ExecuteHam(Ham_TakeDamage, victim, CSW_HEGRENADE, attacker, damage, DMG_BLAST) } else { ExecuteHamB(Ham_Killed, victim, attacker, 2) } }
w public Odrodzenie(id) szukamy to
if(informacje_przedmiotu_gracza[id][0] == 31) { maksymalne_zdrowie_gracza[id] += 200; }
I pod tym dodajemy to
if(informacje_przedmiotu_gracza[id][0] == XX) //tam gdzie XX to jest numer itemu { ilosc_fal_gracza[id] = 5; //tam gdzie 5 to ile ma dostawac gracz fal na poczatek rundy }
I to na tyle
Tamta stara wersja tez dzialala ale ta wersja jest lepsza i dziala lepiej niż tamta.
Item dziala na 100% sam go testowalem
Użytkownik Ciuchcia:D edytował ten post 08.10.2011 08:33