Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Stary

item wybuchający po śmierci + hud pytanie

CoD Stary

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
9 odpowiedzi w tym temacie

#1 Strike

    Życzliwy

  • Użytkownik

Reputacja: 5
Nowy

  • Postów:36
  • Imię:Michal
  • Lokalizacja:Kartuzy
Offline

Napisano 10.10.2011 15:50

Witam. Chciałem dodać do itemu, który wybucha po śmierci tekst, który mówi " Podczas umierania gracz (nick) wybuchł zabijając przy tym (ilość) wrogów " i nie do końca sobie z tym poradziłem. Chciałem by wyglądało to tak: Tekst był na żółto i na środku ( Jest ), wyświetlał się wszystkim po wybuchu ( Nie działa ), 8 sec widnieje tekst ( działa ), Wyświetlanie nick gracza ( Działa ), Wyświetlanie info o ilości zabitych wrogów ( Nie działa ) , gdy zginie 1 wróg by pisało "[...] 1 wroga", gdy zginie więcej lub 0 "[...] (ilosc) wrogów" . No i dalej nie wiem co dopisać by było tak jak chce. Jak na razie mam tak.

Do plugin eksploduj dodałem


	    new name[33];
get_user_name(id, name, 32);

set_hudmessage(255, 255, 0, -1.0, 0.3, 0, 6.0, 8.0);
show_hudmessage(id, "Podczas umierania gracz %s wybuchl zabijajac przy tym x wrogow", name);


Proszę o pomoc . Nie wiem co dalej by działało tak jak chciało
  • +
  • -
  • 0

#2 d0naciak

    Godlike

  • Power User

Reputacja: 1 029
Hero

  • Postów:2 414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 10.10.2011 15:56

show_hudmessage(id, "Podczas umierania gracz %s wybuchl zabijajac przy tym x wrogow", name); 


x wrogów ? O.o
Dodaj jeszcze coś zamiast "name" (nie powiem Ci xD) i zmień x na %s
  • +
  • -
  • 0

#3 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 10.10.2011 15:59

@up
Jeśli to ma być liczba to %d bądź %i
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !


#4 Jak się nazwać

    Wszechmogący

  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 10.10.2011 16:01

@UP nie mądruj bo wprowadzasz kolegę w błąd. Od kiedy %s oznacza liczbę ? Ja zawsze myślałem że liczbę oznaczamy %i lub %d. Co do tego musiałbyś zabijając dodać inną nazwę klasy(coś jak rakieta) i w DeathMsg przechwycić że jeśli klasa ta to x to zmienna licząca zabicia powiększa się o 1. Przy wyświetlaniu tego hudu resetować tą zmienną.

@@ Edit nie @up tylko @up@up ( w trakcie pisania posta radim dodał swój ;P)

Użytkownik Jak się nazwać edytował ten post 10.10.2011 16:01

  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#5 Strike

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:36
  • Imię:Michal
  • Lokalizacja:Kartuzy
Offline

Napisano 10.10.2011 16:11

Jezu !

Wiem ze nie może być x !
Napisałem x bo nie wiedziałem właśnie co tam wpisac i nie wiem co wpisac pa name, i jaki new dodać na początek
  • +
  • -
  • 0

#6 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 10.10.2011 16:18

Same Ci to nie przejdzie, jeszcze musisz dodać warunek o wybuchu etc. Bo na przykład teraz z tego kodu wynika, że cały czas będzie HUD i będzie wyświetlało cały czas. To trzeba było by dodać do eventu KoniecRundy.
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !


#7 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 10.10.2011 16:20

Daj cały kod.
  • +
  • -
  • 0

marwit-0.png


#8 Strike

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:36
  • Imię:Michal
  • Lokalizacja:Kartuzy
Offline

Napisano 10.10.2011 16:21

Eh tak szczerze to mało z tego rozumiem bo jestem zielony :)
Miałem nadzieje, że ktoś po prostu za mnie dokończy moje wypociny z hudu. Do momentu wyświetlenia nicku danego gracza to umiałem dalej leże :(

Cały public

public Eksploduj(id)
{
new name[33];
get_user_name(id, name, 32);
new Float:fOrigin[3], iOrigin[3];
entity_get_vector( id, EV_VEC_origin, fOrigin);
iOrigin[0] = floatround(fOrigin[0]);
iOrigin[1] = floatround(fOrigin[1]);
iOrigin[2] = floatround(fOrigin[2]);
message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
write_byte(TE_EXPLOSION);
write_coord(iOrigin[0]);
write_coord(iOrigin[1]);
write_coord(iOrigin[2]);
write_short(sprite_blast);
write_byte(32);
write_byte(20);
write_byte(0);
message_end();

message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
write_byte( TE_BEAMCYLINDER );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] );
write_coord( iOrigin[2] );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] + 300 );
write_coord( iOrigin[2] + 300 );
write_short( sprite_white );
write_byte( 0 ); // startframe
write_byte( 0 ); // framerate
write_byte( 10 ); // life
write_byte( 10 ); // width
write_byte( 255 ); // noise
write_byte( 255 ); // r, g, b
write_byte( 100 );// r, g, b
write_byte( 100 ); // r, g, b
write_byte( 128 ); // brightness
write_byte( 8 ); // speed
message_end();
set_hudmessage(255, 255, 0, -1.0, 0.3, 0, 6.0, 8.0);
show_hudmessage(id, "Podczas umierania gracz %s wybuchl zabijajac przy tym x wrogow", name);

new entlist[33];
new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
for (new i=0; i < numfound; i++)
{
new pid = entlist[i];

if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
continue;
ExecuteHam(Ham_TakeDamage, pid, 0, id, 100.0+float(inteligencja_gracza[id]) , 1); //ta linijka odpowiada za obrazenia, aktualnie zadaje 100dmg +int.
}
return PLUGIN_CONTINUE;
}


I tak jak mowiłem. Z nickiem sobie poradziłem i położeniem tekstu dalej nie umiem.

Użytkownik Strike edytował ten post 10.10.2011 16:23

  • +
  • -
  • 0

#9 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 10.10.2011 16:45

Try

public Eksploduj(id)
{
new Float:fOrigin[3], iOrigin[3];
entity_get_vector( id, EV_VEC_origin, fOrigin);
iOrigin[0] = floatround(fOrigin[0]);
iOrigin[1] = floatround(fOrigin[1]);
iOrigin[2] = floatround(fOrigin[2]);
message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
write_byte(TE_EXPLOSION);
write_coord(iOrigin[0]);
write_coord(iOrigin[1]);
write_coord(iOrigin[2]);
write_short(sprite_blast);
write_byte(32);
write_byte(20);
write_byte(0);
message_end();

message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
write_byte( TE_BEAMCYLINDER );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] );
write_coord( iOrigin[2] );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] + 300 );
write_coord( iOrigin[2] + 300 );
write_short( sprite_white );
write_byte( 0 ); // startframe
write_byte( 0 ); // framerate
write_byte( 10 ); // life
write_byte( 10 ); // width
write_byte( 255 ); // noise
write_byte( 255 ); // r, g, b
write_byte( 100 );// r, g, b
write_byte( 100 ); // r, g, b
write_byte( 128 ); // brightness
write_byte( 8 ); // speed
message_end();

new entlist[33];
new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);

new iDeadPlayers = 0;

for (new i=0; i < numfound; i++)
{
new pid = entlist[i];

if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
continue;

ExecuteHam(Ham_TakeDamage, pid, 0, id, 100.0+float(inteligencja_gracza[id]) , 1); //ta linijka odpowiada za obrazenia, aktualnie zadaje 100dmg +int.

if(100.0+float(inteligencja_gracza[id]) >= float(get_user_health(pid)))
iDeadPlayers++
}

new name[33];
get_user_name(id, name, 32);

set_hudmessage(255, 255, 0, -1.0, 0.3, 0, 6.0, 8.0);
show_hudmessage(0, "Podczas umierania gracz %s wybuchl zabijajac przy tym %i wrogow", name, iDeadPlayers);

return PLUGIN_CONTINUE;
}

Użytkownik MarWit edytował ten post 10.10.2011 16:45

  • +
  • -
  • 1

marwit-0.png


#10 Strike

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:36
  • Imię:Michal
  • Lokalizacja:Kartuzy
Offline

Napisano 10.10.2011 17:22

Hud wyświetla się na zółto tak jak chciałem, miejsce jest git, wyświetla się tyle czasu ile chce, no ale hud nie wyswietla się co każdy wybuch tylko co 2 . W jednej rundzie wybuchne to pisze w drugiej nie w trzeciej pisze i tak ciągle. ..
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: CoD Stary

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych