Klasa Sentry Gunner
Bloody_
27.02.2012
Nazwa klasy: Sentry Gunner
Opis: Raz na runde moze postawic Sentry Guna (stawianie klawisz E)
Bronie: M4A1, DEAGLE
Kodu trochę ściągłem z tego pluginu: http://amxx.pl/topic...killstreak-134/
oraz tego: http://amxx.pl/topic...perk-airstrike/
zycie_sentry "2500.0" // ile ma miec hp sentry gun
usun_sentry "1" // "1" usówa sentry w nowej rundzie a "0" nie
codclass_sentrygunner.amxx wrzucamy do: addons / amxmodx / plugins
codclass_sentrygunner.sma wrzucamy do: addons / amxmodx / scripting
Załączone pliki
maniek2614
27.02.2012
Opisz dokładniej co to jest i jak to działa, wrzuć jakieś screeny/video.
' Reload 27.02.2012
Jest to SentryGun (działko) z pluginu KillStreak .
Nawet w opisie masz napisane.
Nawet w opisie masz napisane.
maniek2614
28.02.2012
Skąd ja mam wiedzieć za co odpowiedzialne są fragmenty kodu których użył?Kodu trochę ściągłem z tego pluginu: http://amxx.pl/topic...killstreak-134/
oraz tego: http://amxx.pl/topic...perk-airstrike/
Z jego opisu wynika ,że zrobił klasę inżynier z innym modelem działka i jego szybszym stawianiem.
Z obu pluginów z których korzystał do napisania tej klasy nie korzystałem i nie wiem jak to działa.
Użytkownik maniek2614 edytował ten post 28.02.2012 21:01
heroes
28.02.2012
Możesz poprawić taki bug, że nawet jak będziemy próbowali stawiać działko np na respie to jest ok komunikat, że nie wolno ale tracimy działko i trzeba czekać do next rundy.
Play 4FuN
01.03.2012
Jak naprawić:
1) znajdź "public CreateSentry(id)"
2) znajdź linijkę "client_print(id, print_chat, "Jestes zbyt blisko BS'A");" dopisz pod nią "ilosc[id] = 1;"
3) znajdź linijkę "client_print(id, print_chat, "Jestes zbyt blisko Respa");" dopisz pod nią "ilosc[id] = 1;"
caly etytowany public powinien wyglądać tak:
wersja naprawiona i wersja perk w załaczniku
1) znajdź "public CreateSentry(id)"
2) znajdź linijkę "client_print(id, print_chat, "Jestes zbyt blisko BS'A");" dopisz pod nią "ilosc[id] = 1;"
3) znajdź linijkę "client_print(id, print_chat, "Jestes zbyt blisko Respa");" dopisz pod nią "ilosc[id] = 1;"
caly etytowany public powinien wyglądać tak:
public CreateSentry(id)
{
if(!(entity_get_int(id, EV_INT_flags) & FL_ONGROUND))
return;
new entlist[3];
if(find_sphere_class(id, "func_bomb_target", 650.0, entlist, 2))
{
client_print(id, print_chat, "Jestes zbyt blisko BS'A");
ilosc[id] = 1;
return;
}
if(find_sphere_class(id, "func_buyzone", 650.0, entlist, 2))
{
client_print(id, print_chat, "Jestes zbyt blisko Respa");
ilosc[id] = 1;
return;
}
new num, players[32], Float:Origin[3];
get_players(players, num, "gh");
for(new a = 0; a < num; a++)
{
new i = players[a];
if(get_user_team(id) != get_user_team(i))
client_cmd(i, "spk sound/mw/sentrygun_enemy.wav");
else
client_cmd(i, "spk sound/mw/sentrygun_friend.wav");
}
print_info(id, "Sentry Gun");
entity_get_vector(id, EV_VEC_origin, Origin);
Origin[2] += 45.0;
new health[12], ent = create_entity("func_breakable");
get_cvar_string("zycie_sentry",health, charsmax(health));
DispatchKeyValue(ent, "health", health);
DispatchKeyValue(ent, "material", "6");
entity_set_string(ent, EV_SZ_classname, "sentryG");
entity_set_model(ent, "models/sentrygun_mw2.mdl");
entity_set_float(ent, EV_FL_takedamage, DAMAGE_YES);
entity_set_size(ent, Float:{-16.0, -16.0, 0.0}, Float:{16.0, 16.0, 48.0});
entity_set_origin(ent, Origin);
entity_set_int(ent, EV_INT_solid, SOLID_SLIDEBOX);
entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
entity_set_int(ent, EV_INT_iuser2, id);
entity_set_vector(ent, EV_VEC_angles, Float:{0.0, 0.0, 0.0});
entity_set_byte(ent, EV_BYTE_controller2, 127);
entity_set_float(ent, EV_FL_nextthink, get_gametime()+1.0);
sentrys[id] = false;
emit_sound(ent, CHAN_ITEM, "mw/plant.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
}
wersja naprawiona i wersja perk w załaczniku
Załączone pliki
Bloody_
13.03.2012
Możesz poprawić taki bug, że nawet jak będziemy próbowali stawiać działko np na respie to jest ok komunikat, że nie wolno ale tracimy działko i trzeba czekać do next rundy. otóż się da play 4fun ci napisał
sekio 27.03.2012
Przydało by się wykonać żeby nie mozna było go stawiać w ciasnych pomieszczeniach ale to już dla kogoś dobrego zadanie
ChadaWGW2 03.04.2012
przecież jest już taka klasa co zrobił DarkGL i to o wiele lepsza:)
To moze daj linka skorzystam:)
0x. 08.04.2012
Klasa prezentuje się dobrze, nie wiem tylko dlaczego ona znalazła się tutaj dzień po publikacji mojego serwera, a właśnie tam była ta klasa, zapewne przypadek - pozdrawiam, 0x.