Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

[Pytanie/Prośba] Modyfikacja pluginu "X-Kills", czyli podwojny frag za HS


Najlepsza odpowiedź ogieR8, 07.12.2014 21:18

Tutaj masz funkcję, którą testowałem i działała poprawnie :)

if(get_user_team(id) != get_user_team(victim)) {
	if(fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - widzimy"):client_print(id, print_chat, "kill - widzimy")
	if(!fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - NIE widzimy") : client_print(id, print_chat, "kill - NIE widzimy")
}

client_print opisują Ci co się wtedy dzieje, zamień je sobie operacje z statami, np:

if(fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+2):set_user_frags(id, frags+1)
if(!fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+4):set_user_frags(id, frags+3)
Przejdź do postu


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

#1 aha.mp3

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 07.12.2014 12:55

Witajcie. Jako, że nie jestem zbyt zaawansowany w edytowaniu pluginów zwracam się do was z pytaniem jak mogę przerobić ten plugin, aby znajdowało się w nim:

 

Zabicie HS - 2 Fragi

Zabicie Skanem - 3 Fragi

Zabicie Skanem + HS - 4 fragi.

 

SMA wam podrzucam. Jak coś zawsze możecie mi sugerować rozwiązanie. Może w końcu czegoś się nauczę ^D^

Załączone pliki


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#2 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 07.12.2014 18:37


Bullet Damage (Ulepszony, poprawiony, zmiana kolorów, DHUD)

 

W tym pluginie masz cvar: 

Bullet_Damage_ShowWalls
;- 0 : wyłączone (domyślnie)
;- 1 : pokazuj obrażenia przez ścianę .

Powinieneś dać radę wyciągnąć z niego funkcję odpowiadającą za strzały przenikające przez byty (ściany) i jeśli gracz w eventcie DeathMsg spełni ten warunek to dodaj mu te fragi, a jeśli spełni ten i dodatkowo zabije strzałem w głowę - dodam kolejne :)


  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#3 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 07.12.2014 19:12

 


Bullet Damage (Ulepszony, poprawiony, zmiana kolorów, DHUD)

 

W tym pluginie masz cvar: 

Bullet_Damage_ShowWalls
;- 0 : wyłączone (domyślnie)
;- 1 : pokazuj obrażenia przez ścianę .

Powinieneś dać radę wyciągnąć z niego funkcję odpowiadającą za strzały przenikające przez byty (ściany) i jeśli gracz w eventcie DeathMsg spełni ten warunek to dodaj mu te fragi, a jeśli spełni ten i dodatkowo zabije strzałem w głowę - dodam kolejne :)

Zobaczę ten sposób, tymczasem:

 

 

Próbowałem zrobić coś z entem

if(!fm_is_ent_visible(id, victim))

 

Ale coś mi nie idzie... 


Użytkownik MS.Zer0. edytował ten post 07.12.2014 19:20

  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#4 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 07.12.2014 19:48

Pokaż mi cały plugin. Postaram się zaraz to zrobić.


  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#5 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 07.12.2014 20:02

Masz w załączniku :D

 

A to moje aktualne podboje. (No Laugh please)

 

 

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
#include <fakemeta_util>
 
new hs_kills
new wallhskill
 
public plugin_init()
{
register_plugin("X-Kills","1.3","Mini_Midget")
 
register_event("DeathMsg","deathmsg","ae")
 
hs_kills = register_cvar("amx_hskills", "2")
wallhskill = register_cvar("amx_wallhskill", "4")
}
 
public deathmsg(id) 
{     
new id = read_data(1)    
new victim = read_data(2)    
new headshot = read_data(3)   
 
new frags = get_user_frags(id) 
new hsKills = get_pcvar_num(hs_kills) -1
new wallHSkill = get_pcvar_num(wallhskill) -3
 
if (!is_user_alive(id) || !headshot )        
return PLUGIN_CONTINUE         
 
if (get_user_team(id) == get_user_team(victim))         
set_user_frags(id, frags - hsKills)    
else         
set_user_frags(id, frags + hsKills)  
 
if(!fm_is_ent_visible(id, victim) && get_user_team(id) == get_user_team(victim))
set_user_frags(id, frags - wallHSkill)
else
set_user_flags(id, frags + wallHSkill)
return PLUGIN_CONTINUE 
}
 
 
poprawiłem kod, bo dałem stary
 
@EDIT 
 
 
DZIAŁAJĄ MI 4 FRAGI ZA ZABICIE SKANEM W GŁOWĘ. TERAZ TYLKO SAMO ZABICIE PRZEZ ŚCIANĘ ;P 

Użytkownik MS.Zer0. edytował ten post 07.12.2014 20:11

  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#6 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 07.12.2014 21:18   Najlepsza odpowiedź

Tutaj masz funkcję, którą testowałem i działała poprawnie :)

if(get_user_team(id) != get_user_team(victim)) {
	if(fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - widzimy"):client_print(id, print_chat, "kill - widzimy")
	if(!fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - NIE widzimy") : client_print(id, print_chat, "kill - NIE widzimy")
}

client_print opisują Ci co się wtedy dzieje, zamień je sobie operacje z statami, np:

if(fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+2):set_user_frags(id, frags+1)
if(!fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+4):set_user_frags(id, frags+3)

  • +
  • -
  • 1
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#7 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 07.12.2014 21:42

To przetestuję jutro. ;) Dzięki za pomoc jak coś :)


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#8 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 08.12.2014 10:43

 

Tutaj masz funkcję, którą testowałem i działała poprawnie :)

if(get_user_team(id) != get_user_team(victim)) {
	if(fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - widzimy"):client_print(id, print_chat, "kill - widzimy")
	if(!fm_is_ent_visible(id, victim)) hs?client_print(id, print_chat, "hs - NIE widzimy") : client_print(id, print_chat, "kill - NIE widzimy")
}

client_print opisują Ci co się wtedy dzieje, zamień je sobie operacje z statami, np:

if(fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+2):set_user_frags(id, frags+1)
if(!fm_is_ent_visible(id, victim)) hs?set_user_frags(id, frags+4):set_user_frags(id, frags+3)

 

4-krotny frag za skan + HS działa i twoim i moim sposobem. ;) Tak samo podwójny. 

 

To teraz tylko się pomęczyć z normalnym skanem i wszyscy będą Happy. ^D^ 


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#9 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 08.12.2014 15:47

Zapewniam, że działało u mnie na serwerze, testowałem najpierw na PodBOT'ach 2.5, a później z kumplem :) Wiadomości wypisywało względem warunków zabicia, z jednym małym minusem funkcji fm_is_ent_visible.. nie ważne czy zabiłem przez ściane czy normalnie, jeśli połowę człowieka widziałem, to aktywowała się funkcja tak, jakby to byłoby normalne (widzialny = bez skana), ale to w tej funkcji normalne.

 

Symulacja:

siwe tło - ściana
białe tło - przestrzeń 'pusta'

czerwona kropka - śmiertelny strzał
 

http://scr.hu/1bo3/ll733

 

1. bez skana

2. bez skana (visible średnio się nadaję do tego rozwiązania, ponieważ widzimy byt, jednakże według Twoich założeń w pluginie powinno zaliczyć to do skana)

3. skan

 

 


  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#10 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 08.12.2014 17:18

Zapewniam, że działało u mnie na serwerze, testowałem najpierw na PodBOT'ach 2.5, a później z kumplem :) Wiadomości wypisywało względem warunków zabicia, z jednym małym minusem funkcji fm_is_ent_visible.. nie ważne czy zabiłem przez ściane czy normalnie, jeśli połowę człowieka widziałem, to aktywowała się funkcja tak, jakby to byłoby normalne (widzialny = bez skana), ale to w tej funkcji normalne.

 

Symulacja:

siwe tło - ściana
białe tło - przestrzeń 'pusta'

czerwona kropka - śmiertelny strzał
 

http://scr.hu/1bo3/ll733

 

1. bez skana

2. bez skana (visible średnio się nadaję do tego rozwiązania, ponieważ widzimy byt, jednakże według Twoich założeń w pluginie powinno zaliczyć to do skana)

3. skan

 

 

Dokładnie tak liczy. Tylko nie umiem zrobić tej funkcji tak, aby działał sam skan bez HS. Reszta działa poprawnie


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#11 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 08.12.2014 20:10

hs?gdy_walnie_hs:gdy_nie_walnie_hs..

 

if(hs) gdy_walnie_hs
else gdy_nie_walnie_hs

 

Podałem Ci to już.

 

No i jeden z tych warunków musisz umieścić, jeśli gracz nie widzi ent'a, to chyba wiadome.


  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#12 psilocybe

    Toasty!

  • Power User

Reputacja: 246
Wszechwidzący

  • Postów:524
  • Steam:steam
  • Imię:Filip
  • Lokalizacja:PL
Offline

Napisano 08.12.2014 20:58

fm_is_ent_visible ?

 

Zalicza skany gdy ich nie ma w wielu przypadkach, sprawdź sobie jego zawodne działanie.

 

W pluginie Toasty Walls jest to bardziej dopracowane, wyciągnij sobie co potrzebujesz albo dopisz czego Ci tam brakuje.


  • +
  • -
  • 0

Dołączona grafika

Dołączona grafika


#13 aha.mp3

    Diablo Mody i te sprawy ;3

  • Autor tematu
  • Użytkownik

Reputacja: 126
Zaawansowany

  • Postów:354
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 09.12.2014 12:05

Skończyłem. Wszystko działa poprawnie. Miałem problem i problemu nie ma. Dzięki wielkie

ogieR-

Użytkownik MS.Zer0. edytował ten post 09.12.2014 12:05

  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png





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

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