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

Jak zrobić item znikający celownik.


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

#1 sharkowy

    Lokalna anomalia sejsmiczna o nieustalonej genezie.

  • Przyjaciel

Reputacja: 113
Zaawansowany

  • Postów:1 981
Offline

Napisano 16.04.2011 12:41

W tym tutku pokaże wam jak zrobić item, dzięki któremu mamy szanse na to, że przeciwnikowi zniknie celownik. Zaczynamy:

Pod:
#define ZADANIE_USTAW_SZYBKOSC 832


Dodaj:
#define ZADANIE_POKAZ_CELOWNIK 896


Pod:
new rozbrajajacy;


Dodaj:
new gmsgHideWeapon;


Do public plugin_init

gmsgHideWeapon = get_user_msgid("HideWeapon");



Do public client_connect(id) dodaj:

remove_task(id+ZADANIE_POKAZ_CELOWNIK);


Do public client_disconnect(id) dodaj:

remove_task(id+ZADANIE_POKAZ_CELOWNIK);


Pod stock set_user_clip(id, ammo) dodaj:

public draw_crosshair(id) 
{
set_task(5.0, "hide_crosshair", id+ZADANIE_POKAZ_CELOWNIK)
message_begin(MSG_ONE_UNRELIABLE, gmsgHideWeapon, _, id)
write_byte(1<<6)
message_end()
return PLUGIN_HANDLED;
}
public hide_crosshair(id)
{
id-=ZADANIE_POKAZ_CELOWNIK;
message_begin(MSG_ONE_UNRELIABLE, gmsgHideWeapon, _, id)
write_byte(0)
message_end()
}



Do public Damage(id) dodaj:

	if(informacje_przedmiotu_gracza[attacker][0] == Numer_Itemu && random(5) == 1) // random(5) == 1) znaczy 1/5 szans, mozemy dowolnie zmienic.
draw_crosshair(id);



To by było na tyle, atakowanemu celownik będzie znikał na 5 sekund.


Ciekawostka

Jeżeli chcemy aby celownik znikał na np. 10 sekund to edytujemy
set_task(5.0, "hide_crosshair",
w public hidecrosshair(id) set_task(5.0, zmieniamy na set_task(10.0,

Użytkownik RPK. Shark edytował ten post 26.04.2011 16:43

  • +
  • -
  • 0

#2 sharkowy

    Lokalna anomalia sejsmiczna o nieustalonej genezie.

  • Autor tematu
  • Przyjaciel

Reputacja: 113
Zaawansowany

  • Postów:1 981
Offline

Napisano 26.04.2011 16:45

Fakt zapomniałem o plugin_init ;P Goliath jak zwykle czujny :D poprawiłem.

Dodano 26 kwiecień 2011 - 16:46:

A także polecałbym dodać na koniec hide_crosshair to:

remove_task(id+ZADANIE_POKAZ_CELOWNIK);



Na początku w hide_crosshair jest przecież id-=ZADANIE_POKAZ_CELOWNIK; czyli ma ukryć go.

Użytkownik RPK. Shark edytował ten post 26.04.2011 18:31

  • +
  • -
  • 0




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

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