←  Poradniki, Łatki oraz Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

JailBreak
[Przyklad] Jak dodać nowa zabawe do JailBr...

  • +
  • -
Cypis' - zdjęcie Cypis' 30.08.2012

Jak w temacie, pokaże jak dodać nową zabawe do jailbreaka by cypis.


#include <amxmodx>
#include <amxmisc>
#include <jailbreak>

#define PLUGIN "Nowa Zabawa"
#define VERSION "1.0"
#define AUTHOR "Cypis"

new id_zabawy;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

id_zabawy = jail_register_game("Wojna na Noze"); //wymagane jest to do rejstracji zabawy
}

/*
setting[0] - zyczenie, jak ustawimy na 1 to ostatni wieznien bedzie mial zyczenie, jak na 2 to nie bedzie mial zyczenia
setting[1] - prowadzacy, jak na 1 ustawimy to nie bedzie mozna prowadzacego
setting[2] - poszukiwany, jak na 1 ustawimy to nie bedzie poszukiwanych
setting[3] - menu broni, jak na 1 ustawiomy to ct nie pojawi sie menu bron i nie beda mogli podnosic broni
setting[4] - zablokowanie podnoszenie dla tt i dropa broni, jak na 1 ustawiomy to tt nie beda mogli podnosic broni i dropowac broni, blokuje automaty z broniami zeby nie bylo mozna znich broni brac
setting[5] - menu broni, jak na 1 to mozna wybrac bron z menu przy uzyciu native jail_set_user_weapons(id)
setting[6] - antykamper, jak na 1 to po 15s zaczyna gracz tracic HP za kampienie
setting[7] - nieskonczone bpammo 1 - tylko tt, 2 - tylko ct, 3 - oba teamy
*/

public OnDayStartPre(day, szInfo[256], szInfo2[512], setting[10], gTimeRound)
{
static szTime[12];
if(day == id_zabawy)
{
format_time(szTime, 11, "%M:%S", gTimeRound-60); //zwraca czas kiedy zabawa sie rozpocznie
formatex(szInfo2, 511, "Zasady:^n%s - Wojna miedzy wiezniami^nOstatni wiezien ma zyczenie", szTime); //ustawia inforamcje na hud
szInfo = "Dzisiaj jest Wojna na Noze"; //ustawia inforamcje na hud

jail_set_prisoners_micro(true, true); //wlaczenie mikrofonu dla TT
jail_set_ct_hit_tt(true); //ct nie moze zabic tt
jail_set_god_ct(true); //ct jest niesmiertelne

setting[0] = 1; //ustawia dane dnia
setting[1] = 1; //ustawia dane dnia
setting[2] = 1; //ustawia dane dnia

setting[4] = 1 //ustawia dane dnia
setting[6] = 1; //ustawia dane dnia
}
}

public OnDayStartPost(day)
{
if(day == id_zabawy)
{
jail_open_cele(); //otworzenie cel po frezztime
jail_set_game_hud(60, "Rozpoczecie zabawy za"); //60 - oznacza ilosc czasu do rozpoczecia zabawy (do wywolania forwardu OnGameHudEnd)
}
}

public OnGameHudEnd()
{
if(jail_get_play_game_id() == id_zabawy)
{
jail_set_prisoners_fight(true, false, true); // wlaczenie walki dla wiezniow
}
}
Odpowiedz

  • +
  • -
Sivron - zdjęcie Sivron 02.09.2012

A jak dodac do tego menu jail_zabawy jakoms zabawe na komende ktora juz sie ma? Da sie?
Odpowiedz

  • +
  • -
Cypis' - zdjęcie Cypis' 02.09.2012

Nie rozumiem pytania
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 02.09.2012

Chce dodać zabawe, którą ma już [raczej] w formie oddzielnego pluginu na komende, więc pyta czy można dodać taką zabawę do twego silnika :D [czy coś ;p].
Odpowiedz

  • +
  • -
l3szcz - zdjęcie l3szcz 02.11.2012

Właśnie.. Jak to dodać?
Odpowiedz

  • +
  • -
Cypis' - zdjęcie Cypis' 02.11.2012

Trzeba napisać plugin "zabawy", a ta zabawa dodaje się automatycznie po wgraniu jej na serwer do menu pod "say /zabawy"
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 26.12.2012

Mam pewne pytanie, nie patrzyłem w kod, ale day to zapewne numer dnia, a id_zabawy to pewnie numer tej zabawy w głównym silniku, to dlaczego jest taki kod?
if(day == id_zabawy)
Skoro według mojego rozumowania jest to bezsensu, tak jakbyś chciał włączać zabawę automatycznie, ale tylko w dany dzień :D. chodzi mi o kod oczywiście w tym publicu: OnDayStartPost(day), bo reszta wydaje się ok.
Może coś stworzę na tego jailbreaka :P
Odpowiedz

  • +
  • -
Cypis' - zdjęcie Cypis' 27.12.2012

Dlatego tak zrobiłem bo nie chciałem robić 4 forwardów a 2
OnDayStartPost - w tym wypadku wywołuje się zaraz po rozpoczęciu rundy, ale też wywołuje się po rozpoczęciu zabawy przez natwy jail_game_play(numer)
zmienna day - zwraca numer dnia, ale też może zwrócić numer rozpoczętej zabawy
Wiec taki zapis jak ja zrobiłem jest całkowicie poprawny

PS
Jeżeli chciałbyś żeby ta zabawa była w jakiś określony dzień to robisz tak:

if(day == id_zabawy || day == WTOREK)
w tym wypadku zabawa odpali sie automatycznie we wtorek lub z menu /zabawy

PS2

Wartość zwracana z jail_register_game jest zawsze wiekrza od 8 i jest unikalna, dlatego nie ingeruje z "dniami"
Użytkownik Cypis' edytował ten post 27.12.2012 01:11
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 27.12.2012

Dobra to wszystko tłumaczy, okej dzięki.
Odpowiedz

9dedex9 - zdjęcie 9dedex9 27.01.2013

A jakbym chciał zrobić taką zabawę:
Wojna na granaty?
To gdzie co mam dopisać?

#include <amxmodx>
#include <amxmisc>
#include <jailbreak>

#define PLUGIN "Wojna na granaty"
#define VERSION "1.0"
#define AUTHOR "Cypis"

new id_zabawy;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

id_zabawy = jail_register_game("Wojna na granaty");

/*
setting[0]
setting[1]
setting[1]
setting[1]
setting[1]
setting[1]
setting[1]
*/

public OnDayStartPre(day, szInfo[256], szInfo2[512], setting[10], gTimeRound)
{
static szTime[12];
if(day == id_zabawy)
{
format_time(szTime, 11, "%M:%S", gTimeRound-60);
formatex(szInfo2, 511, "Zasady:^n%s - Wojna miedzy wiezniami^nOstatni wiezien ma zyczenie", szTime); //ustawia inforamcje na hud
szInfo = "Dzisiaj jest Wojna na granaty";

jail_set_prisoners_micro(true, true);
jail_set_ct_hit_tt(true); //ct nie moze zabic tt
jail_set_god_ct(true); //ct jest niesmiertelne

}
}

public OnDayStartPost(day)
{
if(day == id_zabawy)
{
jail_open_cele();
jail_set_game_hud(30, "Rozpoczecie zabawy za");
}
}

public OnGameHudEnd()
{
if(jail_get_play_game_id() == id_zabawy)
{
jail_set_prisoners_fight(true, false, true);
}
}


Użytkownik 9dedex9 edytował ten post 27.01.2013 01:02
Odpowiedz

  • +
  • -
Lebak - zdjęcie Lebak 30.04.2013

cypis wiem .że tak pużno zrobił byś sklep ?

Odpowiedz

  • +
  • -
Ten?yy? - zdjęcie Ten?yy? 17.04.2014

A jak dać komuś np. 1 hp :)?

Odpowiedz

  • +
  • -
Vesper1996 - zdjęcie Vesper1996 17.04.2014

        set_user_health(i, 1);

Odpowiedz

Mortadela - zdjęcie Mortadela 30.05.2014

@up

 

Gdzie mam dopisać by było 1hp i jak ustawić by tylko TT ?

Odpowiedz

  • +
  • -
Pain.Akatsuki - zdjęcie Pain.Akatsuki 27.02.2015

Jak ustawić by można było zabić kogoś HeadShot'em? :D

Odpowiedz

  • +
  • -
Ken U DZ - zdjęcie Ken U DZ 03.07.2015

Odpowie mi ktoś co mam dopisać aby dać tarcze taktyczną do zabawy tylko dla tt ??

Odpowiedz

FaRciu - zdjęcie FaRciu 03.07.2015

Odpowie mi ktoś co mam dopisać aby dać tarcze taktyczną do zabawy tylko dla tt ??

Jeżeli posiadasz jb Cypisa to nie ma możliwości dodania tarczy
ponieważ autor zablokował taką możliwość :)

Odpowiedz

  • +
  • -
Mrufka. - zdjęcie Mrufka. 20.07.2015

Jak nie ma możliwości dodania tarczy? ...

 

Jeżeli autor zablokował taką możliwość to chyba logiczne jest to, że można także odblokować?

 

Z tego co wiem to 3/4 Jaili ( W tym mój ) mają odblokowane tarcze na silniku cypisa...

Odpowiedz

  • +
  • -
wierzadzl - zdjęcie wierzadzl 06.03.2018

Co wpisać w ID Zabawy

Odpowiedz