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

Przerobienie pluginu


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

#1 Roughster

    Profesjonalista

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 03.02.2020 20:07

Witam. Jest możliwość, żeby przerobić plugin tak, że gracz wpisuje np /dzwieki i wyłącza mu dany plugin, który dodaje różne dźwięki przy zabiciu?

Jeśli tak, to mógłby go ktoś dla mnie przerobić?

.sma podsyłam w załączniku

Załączone pliki


  • +
  • -
  • 0

#2 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 05.02.2020 12:59

nie testowalem tego, ale moze zadziala.

/dzwieki wlacza lub wylacza dzwieki.

 

Krótki opis jak robic takie rzeczy: po prostu każde wywołanie funkcji (client_cmd) która odtwarza dźwięk zamieniasz na funkcje playSound, reszta dzieje sie sama.

 

Jak nie zadziała to napisz oraz załącz potrzebne dźwięki, żebym mógł to przetestować u siebie

Załączone pliki


  • +
  • -
  • 1

#3 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 05.02.2020 18:48

Jestem na steam i działa jak najbardziej :)

 

Mógłbyś jeszcze dodać mi do tego pluginu takie coś?:

 

IsbyKgn.png

 

[DZWIEKI] w kolorze czerwonym i Wylaczyles Dzwieki. w kolorze zielonym.


  • +
  • -
  • 0

#4 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 05.02.2020 19:21

zamien sobie na dole funckje client_print na Colorchat

 

Więcej poczytasz tu: https://amxx.pl/doku.../f348/colorchat


  • +
  • -
  • 1

#5 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 05.02.2020 19:23

Dodatkowo z tego co zauważyłem to na CS 1.6 v43 od CsSetti z protektorem nie działają w ogóle te dźwięki, żeby działały to tylko i wyłącznie trzeba usunąć protektor czy jest jakieś obejście?

 

a na steamie na początku słychać, a po wylaczeniu i wlaczeniu już nie.

Jaka jest tego przyczyna?

 

Jeśli chodzi o kolory już ogarnąłem :)


Użytkownik Roughster edytował ten post 05.02.2020 19:42

  • +
  • -
  • 0

#6 Mixtaz

    Zaawansowany

  • Użytkownik

Reputacja: 21
Życzliwy

  • Postów:76
  • Steam:steam
  • Imię:Jędrzej
  • Lokalizacja:%s
Offline

Napisano 12.08.2020 07:53

CsSetti z protektorem nie działają w ogóle te dźwięki, żeby działały to tylko i wyłącznie trzeba usunąć protektor czy jest jakieś obejście?

 

Problem jest w tym:

client_cmd(0, "spk %s", nazwa_dzwieku);

Dźwięk odtworzy się za pośrednictwem konsoli, co w przypadku cssetti odpada, ponieważ jest to blokowane.

 

Nie jest to idealne rozwiązanie, ale zamiast linijki powyżej można zastosować:

emit_sound( id, CHAN_AUTO, nazwa_dzwieku, VOL_NORM, ATTN_NORM, 0, PITCH_NORM );

Z tym, że wtedy źródłem emitowanego dźwięku jest byt(id). Więc np. ktoś z drugiego końca mapy tego nie usłyszy. Można dać pętelke, aby każdy wytworzył ten dźwięk, lecz będzie się on dublował i przy dużej ilości graczy może nie być to przyjemne.


Użytkownik Mixtaz edytował ten post 12.08.2020 07:55

  • +
  • -
  • 0

:nuke:  Mój serwer Zombie Biohazard/Deathmatch  :nuke:
:cwaniak:


#7 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 12.08.2020 11:18

Emit_sound, kiedy przyjmie w argument indexu "0", odtworzy dźwięk dla wszystkich graczy:

Spoiler

 

Dlatego też jeśli client_cmd nie działa (w co wątpię, ale jakaś szansa jest), proponuję użyć tego w ten sposób:

emit_sound(0, CHAN_AUTO, nazwa_dzwieku, VOL_NORM, ATTN_NONE, 0, PITCH_NORM);

Jakby nie działało, to pokombinowałbym z channelem.


  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#8 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 12.08.2020 12:09

A co jeśli chciałbym to przerobić w taki sposób, żeby tylko dany gracz widział i słyszał z możliwością on/off?

Jakby to wtedy wyglądało?


  • +
  • -
  • 0

#9 Mixtaz

    Zaawansowany

  • Użytkownik

Reputacja: 21
Życzliwy

  • Postów:76
  • Steam:steam
  • Imię:Jędrzej
  • Lokalizacja:%s
Offline

Napisano 12.08.2020 13:51

Emit_sound, kiedy przyjmie w argument indexu "0", odtworzy dźwięk dla wszystkich graczy:

 

TAK SIE DA??

 

przecież 0 (serwer/world) to nie byt taki jak gracz czy jakiś tam inny ent, gdzie sie niby ma dźwięk odtworzyć?

 

pozdrawiam


  • +
  • -
  • 0

:nuke:  Mój serwer Zombie Biohazard/Deathmatch  :nuke:
:cwaniak:


#10 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 12.08.2020 15:18

 

Emit_sound, kiedy przyjmie w argument indexu "0", odtworzy dźwięk dla wszystkich graczy:

 

TAK SIE DA??

 

przecież 0 (serwer/world) to nie byt taki jak gracz czy jakiś tam inny ent, gdzie sie niby ma dźwięk odtworzyć?

 

pozdrawiam

 

	if (params[1] == 0)
	{
		for (int i = 1; i <= gpGlobals->maxClients ; ++i)
		{
			CPlayer* pPlayer = GET_PLAYER_POINTER_I(i);

			if (pPlayer->ingame)
				EMIT_SOUND_DYN2(pPlayer->pEdict, channel, szSample, vol, att, flags, pitch);
		}
	} else {
		edict_t* pEdict = TypeConversion.id_to_edict(params[1]);

		if (!FNullEnt(pEdict))
			EMIT_SOUND_DYN2(pEdict, channel, szSample, vol, att, flags, pitch);
	}

W skrócie, jeśli param[1] (id) == 0, stwórz pętlę dla każdego gracza i odtwórz kolejno na każdym z nich. Jeśli parametr jest różny od 0, wykona się na podanym id.

 

Co do pytania wyżej, trzeba by zrobić swoją pętlę, tak się domyślam.


Użytkownik Wicked. edytował ten post 12.08.2020 15:19

  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.





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

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