Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
Jak rozdzielic plugin
Temat rozp.
olek0017
, 03.08.2011 04:18
10 odpowiedzi w tym temacie
#1
Napisano 03.08.2011 04:18
Witam
Mam pytanie. Jak napisać kilka pluginów jako jeden (jak CodMod bądź amxbans) byłbym bardzo wdzięczny jak mi ktoś wytłumaczy i najlepiej pokaże na przykładzie jak to zrobić ( ++ )
a potrzebne mi to jest bo pisze Moda i nie raz muszę wrócić do jakieś funkcji aby coś poprawić dodać i szukać jej po całym .sma (aktualnie ponad 1000 linijek) a tak to otworze jedno .sma i będzie
Mam pytanie. Jak napisać kilka pluginów jako jeden (jak CodMod bądź amxbans) byłbym bardzo wdzięczny jak mi ktoś wytłumaczy i najlepiej pokaże na przykładzie jak to zrobić ( ++ )
a potrzebne mi to jest bo pisze Moda i nie raz muszę wrócić do jakieś funkcji aby coś poprawić dodać i szukać jej po całym .sma (aktualnie ponad 1000 linijek) a tak to otworze jedno .sma i będzie
#2
Napisano 03.08.2011 07:19
Zwykle to jest cześć główna, która udostępnia funkcje (dodaj_klase, dodaj_przedmiot)
Natywy - AMXX.pl: Support AMX Mod X
i informuje o zdarzeniach
Forwardy - AMXX.pl: Support AMX Mod X
Oraz pomniejsze pluginy z dodatkami
ja zwykle używam też tego
Dynamiczne Tablice - AMXX.pl: Support AMX Mod X
ale możesz dać limit dodatków i użyć zwykłych tablic
Nie ma przeszkód by taki układ master-slave zastąpić zestawem wzajemnie potrzebnych sobie pluginów. Te dodatkowe pluginy też mogą udostępniać różne funkcje. Myślę, że dobrym przykładem byłby przedmiot dający jakąś moc oraz inny, który pozwala uniknąć tej mocy. Wtedy taki podrzędny plugin mógłby się pytać reszty czy dany gracz ma zostać uwzględniony czy pominięty podczas użycia tej mocy za pomocą forwardu.
Natywy - AMXX.pl: Support AMX Mod X
i informuje o zdarzeniach
Forwardy - AMXX.pl: Support AMX Mod X
Oraz pomniejsze pluginy z dodatkami
ja zwykle używam też tego
Dynamiczne Tablice - AMXX.pl: Support AMX Mod X
ale możesz dać limit dodatków i użyć zwykłych tablic
Nie ma przeszkód by taki układ master-slave zastąpić zestawem wzajemnie potrzebnych sobie pluginów. Te dodatkowe pluginy też mogą udostępniać różne funkcje. Myślę, że dobrym przykładem byłby przedmiot dający jakąś moc oraz inny, który pozwala uniknąć tej mocy. Wtedy taki podrzędny plugin mógłby się pytać reszty czy dany gracz ma zostać uwzględniony czy pominięty podczas użycia tej mocy za pomocą forwardu.
#3
Napisano 03.08.2011 22:17
kurde chyba ciężko mi to zrozumieć ;]
ale może to przez zmęczenie
może zrobiłbyś zęby to było dostępne dla każdego pluginu po wpisaniu bron
to bym to na pewno zrozumiał bo teraz tak nie do końca
@edit
może się źle wyraziłem
powiedzmy mam 2 pluginy
w jednym jest
register_clcmd("say /bron","LosujBron")
a w drugim jest ten kod co jest wyżej
i jak mam to zrobić aby pierwszy plugin skorzystał z funkcji z drugiego pluginu
mam nadzieje ze zrozumiesz
ale może to przez zmęczenie
może zrobiłbyś zęby to było dostępne dla każdego pluginu po wpisaniu bron
to bym to na pewno zrozumiał bo teraz tak nie do końca
LosujBron(id){
switch(random(17)){
case 0:{
give_item(id,"weapon_scout");
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
case 1:{
give_item(id,"weapon_mac10");
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
}
case 2:{
give_item(id,"weapon_aug");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 3:{
give_item(id,"weapon_ak47");
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
case 4:{
give_item(id,"weapon_sg552");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 5:{
give_item(id,"weapon_m4a1");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 6:{
give_item(id,"weapon_m249");
give_item(id, "ammo_556natobox")
give_item(id, "ammo_556natobox")
give_item(id, "ammo_556natobox")
give_item(id, "ammo_556natobox")
}
case 7:{
give_item(id,"weapon_mp5navy");
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
case 8:{
give_item(id,"weapon_awp");
give_item(id, "ammo_338magnum")
give_item(id, "ammo_338magnum")
give_item(id, "ammo_338magnum")
}
case 9:{
give_item(id,"weapon_famas");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 10:{
give_item(id,"weapon_galil");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 11:{
give_item(id,"weapon_sg550");
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
case 12:{
give_item(id,"weapon_ump45");
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
give_item(id, "ammo_45acp")
}
case 13:{
give_item(id,"weapon_m3");
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
}
case 14:{
give_item(id,"weapon_xm1014");
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
give_item(id, "ammo_buckshot")
}
case 15:{
give_item(id,"weapon_p90");
give_item(id, "ammo_57mm")
give_item(id, "ammo_57mm")
give_item(id, "ammo_57mm")
give_item(id, "ammo_57mm")
}
case 16:{
give_item(id,"weapon_tmp");
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
case 17:{
give_item(id,"weapon_g3sg1");
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
}
}
@edit
może się źle wyraziłem
powiedzmy mam 2 pluginy
w jednym jest
register_clcmd("say /bron","LosujBron")
a w drugim jest ten kod co jest wyżej
i jak mam to zrobić aby pierwszy plugin skorzystał z funkcji z drugiego pluginu
mam nadzieje ze zrozumiesz
Użytkownik olek0017 edytował ten post 04.08.2011 02:03
#4
Napisano 04.08.2011 16:02
może i mógłbym, ale to Twój plugin; w tutorialach i na forum jest dużo przykładów użycia natywów i forwardów, jak zrozumiesz ich działanie sam napiszesz plugin
#5
Napisano 04.08.2011 22:51
no to przynajmniej mnie chodź trochę naprowadź
a ja potem wrzucę kod i powiesz mi czy dobrze
a ja potem wrzucę kod i powiesz mi czy dobrze
#6
Napisano 04.08.2011 23:02
A może includy ?
#include <nazwapluginu.inl>
Użytkownik Muzzi edytował ten post 04.08.2011 23:02
#7
Napisano 05.08.2011 12:50
tyle to ja wiem
nie wiem jak udosptenic funkcje z jednego pluginy do drugiego
Dodano 05 sierpień 2011 - 13:19:
-------------------------------------------------------
tak to powinno wyglądać?
nie wiem jak udosptenic funkcje z jednego pluginy do drugiego
Dodano 05 sierpień 2011 - 13:19:
-------------------------------------------------------
tak to powinno wyglądać?
Załączone pliki
#8
Napisano 05.08.2011 13:40
jak chcesz tam parametry to musisz tutaj
reszta jest dobrze
register_native("Losuj_Bron", "n_LosujBron");dać style =1
register_native("Losuj_Bron", "n_LosujBron", 1);
reszta jest dobrze
#9
Napisano 05.08.2011 16:14
no to teraz tylko forwardy i będzie dobrze:PP
a tak przy okazji wydajniejsze jest kilka pluginów czy jeden
a tak przy okazji wydajniejsze jest kilka pluginów czy jeden
#10
Napisano 05.08.2011 16:48
Myślę że, jak piszesz coś dużego jak bf2, czy cod to miło użyć kilku plików, ale do tworzenia małych pluginów radziłbym operować na 1 pliku tak do 800 linii.
#11
Napisano 05.08.2011 18:41
mój już ma 3 razy tyle :PP
ale dzięki
@ edit
można zamknąć
jak nie będę umiał forwardow to napisze nowy temat
ale dzięki
@ edit
można zamknąć
jak nie będę umiał forwardow to napisze nowy temat
Użytkownik olek0017 edytował ten post 05.08.2011 18:41
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych