1/x z kilku broni (łatwiejszy sposób)
KariiO
26.11.2011
Poradnik dotyczy tylko klas ale każdy kto ma minimum wiedzy o nowym codzie powinien z łatwością dostosować poradnik do perku.
A więc zaczynamy:
do tablic dodaj(pierwszą tablice możesz mieć):
jeżeli w plugin_init nie masz to dodaj:
TakeDamage powinien wyglądać tak:
Jeżeli pojawi się jakiś problem to dajcie znać, to tyle
Użytkownik KariiO edytował ten post 14.12.2011 17:03
A więc zaczynamy:
do tablic dodaj(pierwszą tablice możesz mieć):
new ma_klase[33] new oneonone[33][31]
jeżeli w plugin_init nie masz to dodaj:
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
TakeDamage powinien wyglądać tak:
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_klase[idattacker]) return HAM_IGNORED; if(!(damagebits & (1<<1))) return HAM_IGNORED; new hp_ofiary = get_user_health(this) new bron_atakujacego = get_user_weapon(idattacker) if (oneonone[idattacker][bron_atakujacego] > 0) { if (random_num(1,oneonone[idattacker][bron_atakujacego]) == 1) cod_inflict_damage(idattacker, this, float(hp_ofiary), 0.0, idinflictor, damagebits); } return HAM_IGNORED; }
public cod_class_enabled(id) { oneonone[id][CSW_AWP] = 2 oneonone[id][CSW_M4A1] = 4 ma_klase[id] = 1; return COD_CONTINUE; }ustawiam gościowi 1/2 z AWP i 1/4 z M4A1.(to tylko przykład za AWP i M4A1 możecie wpisać inne bronie)
public cod_class_disabled(id) { ma_klase[id] = 0; oneonone[id][CSW_AWP] = 0 oneonone[id][CSW_M4A1] = 0 }tutaj to zerujemy ponieważ zmienia klasę.
Jeżeli pojawi się jakiś problem to dajcie znać, to tyle
Użytkownik KariiO edytował ten post 14.12.2011 17:03
Na 5tyk
12.12.2011
public cod_class_disabled(id)
{
ma_klase[id] = 0;
oneonone[id][CSW_AWP] = 2
oneonone[id][CSW_M4A1] = 4
}
PO co dajesz moc jak zmieniasz klase?
I jaką mamy dodać biblioteke?
#include <hamsandwich>
KariiO
14.12.2011
Racja mój błąd, kopiowałem i zapomniałem zmienić.public cod_class_disabled(id)
{
ma_klase[id] = 0;
oneonone[id][CSW_AWP] = 2
oneonone[id][CSW_M4A1] = 4
}
PO co dajesz moc jak zmieniasz klase?
I jaką mamy dodać biblioteke?#include <hamsandwich>
Co do ham to chyba logiczne bo:
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
Myślałem że takiego czego już nie trzeba tłumaczyć ale widocznie myliłem się, nie dodałem również dlatego że wzorowałem się na klasie ściągniętej z poradnika i tam po prostu był już ham.
_nothing_ 31.12.2011
Mnie się wydaję, że ten sposób jest łatwiejszy :
Dałem tutaj przykładowe 3 bronie " XM1014, MAC10 oraz M3 " od teraz klasa ma z każdej broni 1/5 na natychmiastowe zabicie .
#include <amxmodx> #include <amxmisc> #include <codmod> #include <hamsandwich> #include <cstrike> new const nazwa[] = "test"; new const opis[] = "test"; new const bronie = (1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_M3); new const zdrowie = 0; new const kondycja = 0; new const inteligencja = 0; new const wytrzymalosc = 0; new ma_klase[33]; public plugin_init() { register_plugin(nazwa, "1.0", "amxx.pl"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ"); } public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; } public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){ if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 5) != 1 ) return HAM_IGNORED; cs_set_user_armor(this, 0, CS_ARMOR_NONE); SetHamParamFloat(4, float(get_user_health(this) + 1)); return HAM_HANDLED; }
Dałem tutaj przykładowe 3 bronie " XM1014, MAC10 oraz M3 " od teraz klasa ma z każdej broni 1/5 na natychmiastowe zabicie .
Turvzak
31.12.2011
Ale mi chodzi żeby np. było 1/1 z awp a z reszty już nie .
Czy ktoś może wysłać przykładowy plik z klasą.
Czy ktoś może wysłać przykładowy plik z klasą.
Artemis
04.02.2012
Witam, jestem nowy i trochę ogarniam, ale nie wiem jak zrobić do tego 1/2 z HE
podam plik .sma do klasy i prosiłbym o dodanie z HE 1/2 oraz prosiłbym o wyjaśnienie jak to zrobić ponieważ chcę się nauczyć
opis klasy macie w .sma, przy okazji powiedzcie czy wszystko pozostałe jest dobrze zrobione ^ ^
Przy okazji prosiłbym również o kod, jak dodać do klasy +x hp i pełny magazynek za zabójstwo ( nie do tej klasy )
Pozdrawiam i z góry dziękuję za odp.
podam plik .sma do klasy i prosiłbym o dodanie z HE 1/2 oraz prosiłbym o wyjaśnienie jak to zrobić ponieważ chcę się nauczyć
opis klasy macie w .sma, przy okazji powiedzcie czy wszystko pozostałe jest dobrze zrobione ^ ^
Przy okazji prosiłbym również o kod, jak dodać do klasy +x hp i pełny magazynek za zabójstwo ( nie do tej klasy )
Pozdrawiam i z góry dziękuję za odp.
Załączone pliki
d0naciak
04.02.2012
zeby dzialalo nahe trzeba zamienic w public TakeDamage
na
if(!(damagebits & (1<<1)))
return HAM_IGNORED;
na
if(!(damagebits & (1<<24)))
return HAM_IGNORED;
Artemis
04.02.2012
zrobiłem, tak jak kolega napisał wyżej, ale teraz nie mam 1/1 z AWP ....
Artemis
04.02.2012
właśnie tamten poradnik pokazuje, jak zrobić 1/x albo z HE albo z broni, nie ma pokazane jak zrobić z 1 broni i z HE naraz.
Jakbyś mógł podać jakikolwiek przykład na podstawie tamtego poradnika:
1/2 z HE, 1/1 z AWP i 1/5 z usp naraz ( wtedy wiedziałbym dokładniej jak to zrobić )
oczywiście + za linka oraz jak podasz ww przykład dostaniesz kolejnego plusa
Pozdrawiam
Jakbyś mógł podać jakikolwiek przykład na podstawie tamtego poradnika:
1/2 z HE, 1/1 z AWP i 1/5 z usp naraz ( wtedy wiedziałbym dokładniej jak to zrobić )
oczywiście + za linka oraz jak podasz ww przykład dostaniesz kolejnego plusa
Pozdrawiam
HeLLoOo
30.03.2012
Czy możesz wysłać przykładowy plik z klasą ???
Łap:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
#include <cstrike>
new const nazwa[] = "Test";
new const opis[] = "Test";
new const bronie = (1<<CSW_M4A1)|(1<<CSW_AWP)|(1<<CSW_DEAGLE);
new const zdrowie = 20;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 50;
new ma_klase[33];
new oneonone[33][31]
public plugin_init()
{
register_plugin(nazwa, "1.0", "HeadShot");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}
public cod_class_enabled(id)
{
oneonone[id][CSW_AWP] = 1
oneonone[id][CSW_M4A1] = 4
ma_klase[id] = 1;
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = 0;
oneonone[id][CSW_M4A1] = 0
oneonone[id][CSW_AWP] = 0
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
if(!(damagebits & (1<<1)))
return HAM_IGNORED;
new hp_ofiary = get_user_health(this)
new bron_atakujacego = get_user_weapon(idattacker)
if (oneonone[idattacker][bron_atakujacego] > 0)
{
if (random_num(1,oneonone[idattacker][bron_atakujacego]) == 1) cod_inflict_damage(idattacker, this,
float(hp_ofiary), 0.0, idinflictor, damagebits);
}
return HAM_IGNORED;
}
Klasa ma 1/1 z AWP i 1/4 z M4A1.
Użytkownik HeLLoOo edytował ten post 30.03.2012 06:47
shoote 07.04.2012
a dałby ktoś wzór z klasą premium jakąś? Np. M4 1/10, HE 1/3, AWP 1/2 i jest na flage "E"
Dziękować
Dziękować
MlodYxdddd
02.07.2012
Kto da kawalek tego co mam w moim sma wklecic chodzi mi ze ma 1/4 z m4a1