Dodanie klasy zombie na flagę
Mountan.
19.08.2012
Chciałbyś zrobić klasę Premium ?
Nie wiesz jak ?
No to zaczynamy
Otwieramy .SMA jakiejś klasy
Krok 1
Dodajemy:
Krok 2
Po kodzie:
Dajemy:
Krok 3
Zamieniamy:
na:
Krok 4
Na końcu kodu dodajemy:
Całość powinna wyglądać tak:
Nie wiesz jak ?
No to zaczynamy
Otwieramy .SMA jakiejś klasy
Krok 1
Dodajemy:
#include <zombieplague>
Krok 2
Po kodzie:
new const zclass_name[] = { "Zombie amxx" }
new const zclass_info[] = { "Premium" }
new const zclass_model[] = { "premium" }
new const zclass_clawmodel[] = { "premium.mdl" }
const zclass_health = 2100
const zclass_speed = 190
const Float:zclass_gravity = 1.0
const Float:zclass_knockback = 1.0
Dajemy:
new zombie
Krok 3
Zamieniamy:
zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
na:
zombie = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
Krok 4
Na końcu kodu dodajemy:
public zp_user_infected_pre(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
if (zp_get_user_next_class(id) == zombie)
{
zp_set_user_zombie_class(id, 0)
client_print(id, print_center, "Ta klasa jest premium")
}
}
}
Całość powinna wyglądać tak:
#include <amxmodx>
#include <fakemeta>
#include <zombieplague>
new const zclass_name[] = { "Zombie amxx" }
new const zclass_info[] = { "Premium" }
new const zclass_model[] = { "premium" }
new const zclass_clawmodel[] = { "premium.mdl" }
const zclass_health = 2100
const zclass_speed = 190
const Float:zclass_gravity = 1.0
const Float:zclass_knockback = 1.0
new zombie
public plugin_precache()
{
register_plugin("klasa premum", "1.0", "Mountan.")
zombie = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
}
public zp_user_infected_pre(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
if (zp_get_user_next_class(id) == zombie)
{
zp_set_user_zombie_class(id, 0)
client_print(id, print_center, "Ta klasa jest premium")
}
}
}
TheRock
19.08.2012
ric0
19.08.2012
TheRock. te dwa sposoby sie bardzo dużo różnią . i ten jest chyba łatwiejszy ale to nie znaczy że jest lepszy. więc chyba nie zaszkodzi jak będą dwa inne.
ELOS
19.08.2012
Że mnie ? chłopczyku ani mnie ani TheRock nic nie zżera. Nie będę powodował kłótni na tym forum bo i tak szanuje osoby które coś tutaj udostępniają... Twój sposób może i jest łatwiejszy lecz w przypadku dużej ilości klas premium będzie się powtarzał. Na dodatek nie wyjaśniłeś graczom jak można dodać klasę premium ZM w przypadku głównego silnika klas zombie.
Albo jestem ślepy albo ktoś tutaj kombinuje oO
Nie żebym coś mówił ale skąd tam fakemeta? nie ma napisane aby dodać na dodatek nie wiem co tutaj wykorzystuje fakemete -.-
Nie rozumiem tylko czemu w taki sposób zamykamy menu graczowi i go nie przywracamy ;/
Albo jestem ślepy albo ktoś tutaj kombinuje oO
a tutajKrok 1
Dodajemy:
#include <zombieplague>
#include <amxmodx>
#include <fakemeta>
#include <zombieplague>
Nie żebym coś mówił ale skąd tam fakemeta? nie ma napisane aby dodać na dodatek nie wiem co tutaj wykorzystuje fakemete -.-
public zp_user_infected_pre(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
if (zp_get_user_next_class(id) == zombie)
{
zp_set_user_zombie_class(id, 0)
client_print(id, print_center, "Ta klasa jest premium")
}
}
}
Nie rozumiem tylko czemu w taki sposób zamykamy menu graczowi i go nie przywracamy ;/
Mountan.
19.08.2012
No bo poco przywracać menu po wyborze ?
I czytaj uważnie, że ta "zazdrość" tyczy się użytkownika "TheRock"
Już poprawiam kod
Nie mogę edytować ;/
Admin zamień
na
I czytaj uważnie, że ta "zazdrość" tyczy się użytkownika "TheRock"
Już poprawiam kod
Nie mogę edytować ;/
Admin zamień
#include <amxmodx> #include <fakemeta> #include <zombieplague>
na
#include <amxmodx> #include <amxmisc> #include <zombieplague>
ELOS
19.08.2012
To i tak nic nie zmienia że tamten post był spam postem. Nie wnosił nic do tematu.
Po co przywracać menu po wyborze? Otóż nie przy wyborze tylko w funkcji która z powrotem zmienia ci klasę na podstawową osobiście mogę ci powiedzieć że gracze nie przepadają klikać kilka razy menu klas aby wybrać w końcu klasę.
Po co przywracać menu po wyborze? Otóż nie przy wyborze tylko w funkcji która z powrotem zmienia ci klasę na podstawową osobiście mogę ci powiedzieć że gracze nie przepadają klikać kilka razy menu klas aby wybrać w końcu klasę.
Na 5tyk
19.08.2012
Mi to się zdaje, że po wybraniu tej klasy dostajemy ją na 1 rundę, a w następnej już nie mamy.
Robiłem to podobnie i działało mi tak jak opisałem wyżej.
Robiłem to podobnie i działało mi tak jak opisałem wyżej.
ELOS
19.08.2012
Zdaje mi się że działa na wszystkie rundy ponieważ jak przypisze już id klasy nie powinno być z tym problemu. Jedyny problem jest z tym że po prostu gracz może nie zobaczyć napisu że jest to klasa premium i dopiero zorientuje się w następnej rundzie jak każe mu wybrać na nowo klasę..
Mountan.
19.08.2012
Aaa sorry wiem o co chodzi, postaram się zaraz to poprawić.
Wystarczy dodać
Wystarczy dodać
return PLUGIN_HANDLED; }na końcu funkcji
ELOS
19.08.2012
Chyba nadal nie rozumiesz ;/ w tym wypadku trzeba ponownie wyświetli menu zombie klas ponieważ po wyborze automatycznie zamyka menu w tym wypadku masz zrobione że klasę wybiera lecz od razu ustawia na klasę podstawową.
ELOS
20.08.2012
W tym przypadku nie wiem czy jest natyw czy nie lecz najlepszą opcją jest użycie natywu.
Mountan.
20.08.2012
ELOS, jestem początkującym i nie do końca potrafię tworzyć natywy,
pisałem ten poradnik sam wraz z kodem, a że u mnie na serwerze 1 raz po wyborze klasa zadziała, więc wrzuciłem tutaj.
pisałem ten poradnik sam wraz z kodem, a że u mnie na serwerze 1 raz po wyborze klasa zadziała, więc wrzuciłem tutaj.
Misiaczek ;c
20.08.2012
nie lepiej to tak rozwiązac?
Użytkownik MisieQ edytował ten post 20.08.2012 14:24
Użytkownik MisieQ edytował ten post 20.08.2012 14:24
Mountan.
20.08.2012
Trochę namieszałeś, u Ciebie modeli nie można zmienić, wystarczyło edytować mój plik dodając
P.S.
Ty napisałeś pod 5.0 nie pod 4.3
return ZP_CLASS_AVAILABLE else return ZP_CLASS_NOT_AVAILABLE } return ZP_CLASS_AVAILABLE }
P.S.
Ty napisałeś pod 5.0 nie pod 4.3




