[URL] https://amxx.pl/topic/61629-spadające-prezenty/
**Spadające prezenty**
na bazie pomysłu: lajtowy13
link: [http://amxx.pl/topic...dajace-
prezenty](http://amxx.pl/topic/61525-spadajace-prezenty)
![[Image: opis.png]](http://amxx.pl/foty/grafikap/opis.png)
Plugin-biblioteka do spawnowania prezentów z dowolną zawartością. Poza
zainstalowaniem tego pluginu musimy stworzyć listę prezentów. Polega to na
tym, że podajemy nazwę oraz funkcję, która się wykona gry gracz podniesie dany
prezent.
Oprócz tego w odpowiednim momencie wywołać funkcję gift_spawn(), wtedy pojawi
się prezent.
![[Image: konfiguracja.png]](http://amxx.pl/foty/grafikap/konfiguracja.png)
![[Image: komendy.png]](http://amxx.pl/foty/grafikap/komendy.png)
> prezenty
Służy do rozmieszczania miejsc, gdzie może pojawić się prezent. Użyj komendy,
wyczyść spawny (9) idź w miejsce gdzie może być prezent i Dodaj (1), żeby
usunąć podejdź do wybranego i Usun (2)
na koniec wyjdź i restart
Jeśli nie ustalono punktów plugin spróbuje sam znaleźć ciekawe miejsca, ale
nie zawsze muszą one być dostępne dla graczy (np. w upadnie ukrytym
pomieszczeniu poza mapą)
![[Image: inneinformacje.png]](http://amxx.pl/foty/grafikap/inneinformacje.png)
configs/prezenty/ ma mieć chmod 777
Dostępne funkcje:
Spoiler
/**
* Dodaj nowy prezent mozliwy do trafienia w paczce
*
* @param szName nazwa wyswietlana po najechaniu mysza
* @param szFunction funkcja wykonywana po zebraniu prezentu
* @param chance liczba od 1 do 10
*/
native Gift:register_gift( const szName[], const szFunction[], chance = 5 );
/**
* Utworz na mapie prezent
* @param gift numer nagrody lub GIFT_RANDOM gdy ma byc losowo
* @param Float:fOrigin[3] Punkt na mapie gdzie ma byc stworzona paczka,
* mozna nie podawac, wtedy wybrane zostanie losowe miejsce
*/
native gift_spawn( Gift:gift = GIFT_RANDOM, Float:... );
/**
* Sprzata mape z prezentow
*/
native gifts_clear_map();
Przykładowa lista prezentów i spawn prezentu 5s po starcie rundy
#include <amxmodx>
#include <amxmisc>
#include <prezenty>
#define PLUGIN "Lista prezentow"
#define VERSION "1.0"
#define AUTHOR "R3X"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_gift("Prezent#1", "Prezent_Numer1");
register_gift("Prezent#2", "Prezent_Numer2");
//Na poczatk rundy
register_event("HLTV", "eventRoundInit", "a", "1=0", "2=0");
}
public eventRoundInit()
{
gifts_clear_map();
set_task(5.0, "taskSpawnGift", 2368);
}
public taskSpawnGift()
{
gift_spawn();
}
public Prezent_Numer1(id)
{
client_print(id, print_chat, "Podniosles prezent nr 1");
}
public Prezent_Numer2(id)
{
client_print(id, print_chat, "Podniosles prezent nr 2");
}
Załączone pliki
* [url=https://amxx.pl/index.php?app=core&module=attach§ion=attach&attach_id=24585 "Pobierz załącznik"]
![[Image: zip.gif]](https://amxx.pl/public/style_extra/mime_types/zip.gif)
Załączniki:
prezenty.zip