/* Script generated by Pawn Studio */
#include <amxmodx>
#include <amxmisc>
#include <diablo_nowe.inc> /*Plik z ktorego sa wczytywane natywy i forwardy*/
#define PLUGIN "Poradnik"
#define AUTHOR "Onyke"
#define VERSION "1.0"
new bool:bKlasa[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
diablo_register_class("Nazwa klasy",120,"Opis",FLAG_ALL, "Frakcja")
/*
* Nazwa klasy - tutaj podajemy nazwe klasy
* 120 - Ilosc bazowego HP
* Opis - Tutaj podajemy opis klasy, jesli nie chcesz miec opisu to zostawiasz puste cudzyslowia
* FLAG_ALL - Tutaj mozemy ustawic klase zeby byla premium. np ADMIN_LEVEL_H, jesli chcesz zeby klasa byla dostepna dla kazdego to zostawiasz FLAG_ALL
* Frakcja - Do jakiej frakcji ma nalezec klasa
*
* Jesli chcesz zrobic klase np bez opisu, frakcji oraz nie ma byc ona premium to mozesz dodac krotsza linijke, ktora wyglada tak:
* diablo_register_class("Nazwa Klasy",HP)
* Jesli chcesz zrobic klase bez opisu, premium i bez frakcji to linijka ma wygladac np tak:
* diablo_register_class("Nazwa Klasy",HP,"",ADMIN_LEVEL_H)
*/
}
public diablo_class_enabled(id){
/* Wykonuje sie po wybraniu klasy.
* Tutaj ustawiamy rozne zmienne oraz obowiazkowo ustawiamy bKlasa na true */
bKlasa[id] = true;
}
public diablo_class_disabled(id){
/* Wykonuje sie po zmienieniu klasy oraz rozlaczeniu z serwerem
* Tutaj zerujemy rozne zmienne oraz obowiazkowo ustawiamy bKlasa na false */
bKlasa[id] = false;
}
public diablo_clean_data(id){
/*Czyszczenie wewnetrznych zmiennych klasy
* Wykonuje sie przy starcie rundy, rozlaczeniu z serwerem, smierci oraz przy zmienieniu klasy*/
diablo_reset_grav(id) /*Resetujemy grawitacje*/
diablo_render_cancel(id) /*Resetujemy render. Mozemy tez zrobic to tak:
* diablo_set_user_render(id,.render = kRenderTransAlpha,.amount = 255)
* Czyli ustawic na standardowa wartosc 255*/
diablo_reset_speed(id) /*Resetujemy predkosc*/
}
public diablo_set_data(id){
/*Ustawianie wewnetrznych zmiennych klasy
* Wykonuje sie po wybraniu klasy oraz przy spawnie*/
diablo_set_user_grav(id,0.60); /*Ustawiamy grawitacje. 0.60 wynosi 480 poniewaz 60 procent z 800 (standardowa grawitacja) to wlasnie 480*/
diablo_set_user_render(id,.render = kRenderTransAlpha,.amount = 31) /*Ustawiamy render na 31*/
diablo_add_speed(id,24.00) /*Dodajemy 24 PKT Speeda*/
}
public diablo_death(iKiller,killerClass,iVictim,victimClass){
/*Wykonuje sie co kazde zabojstwo
* iKiller - ID zabojcty
* killerClass - Klasa zabojcy[*]
* iVictim - ID ofiary
* victimClass - Klasa ofiary[*]
* [*] - 0 to brak klasy, oraz o ile dobrze zauwazylem to klasa pierwsza w plugins-diablomod.ini bedzie miala 1, druga 2 itp
* */
if(get_user_team(iVictim) != get_user_team(iKiller)){ /*Sprawdzenie czy ofiara i zabojca sa w innych druzynach*/
if(bKlasa[iKiller]){ /*Sprawdzenie czy mamy klase*/
diablo_add_hp(iKiller,10) /*Odnowienie 10 HP*/
}
}
}
public diablo_damage_class_do(iVictim,iAttacker,&Float:fDamage){
/*Wykonuje sie gdy ZADAJEMY obrazenia
* iVictim - ID ofiary
* iAttacker - ID atakujacego (nasze)
* &Float:fDamage - obrazenia
* */
if(get_user_team(iVictim) != get_user_team(iAttacker)){ /*Sprawdzenie czy ofiara i atakujacy sa w innych druzynach*/
fDamage += 10.0 /*Zadajemy dodatkowe 10 DMG*/
}
}
public diablo_damage_class_taken(iVictim,iAttacker,&Float:fDamage){
/*Wykonuje sie gdy OTRZYMUJEMY obrazenia
* iVictim - ID ofiary (nasze)
* iAttacker - ID atakujacego
* &Float:fDamage - obrazenia
* */
if(get_user_team(iVictim) != get_user_team(iAttacker)){/*Sprawdzenie czy ofiara i atakujacy sa w innych druzynach*/
fDamage -= 10.0 /*Redukujemy 10 DMG (otrzymujemy obrazenia o 10 mniejsze)*/
}
}
public Float:diablo_cast_time(id,Float:standardTime){
/*Tutaj ustawiamy czas ladowania na nozu
* standardTime jest to podstawowy czas ladowania na nozu ktory standardowo wynosi: 5.0-(float(getUserInt( id ))/30.0)*/
return standardTime * 2.0;
/*W tym przypadku czas ladowania bedzie 2x wiekszy niz standardowy. Mozemy tez ustawic konkretny czas ladowania robiac tak:
* return 3.0
* Wtedy czas ladowania bedzie wynosil 3 sekundy*/
}
public diablo_call_cast(id){
/*Wykona sie po zaladowaniu przez nas noza. Tutaj dajemy bonusy za zaladowanie*/
diablo_add_hp( id , 100 ); /*Odnowienie 100 HP*/
show_hudmessage(id, "Zregenerowales sobie 100 HP") /*Informacja w HUD*/
}