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

Źle działa losowanieNie działa prawidłowo


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 Scoti

    Życzliwy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 06.07.2011 23:39

Witam. Na moim serwerze Easy Block zrobiłem block jeżeli na którego się ustawie losowany jest jeden z 6-ciu dzwięków (muzyka). Jednak gdy się ustawie wszystkie 6 dzwięków zaczyna grać na raz, a chcę aby tylko 1 z tych 6 zaczoł grać i za każdym razem inny, wykożystałem do tego funkcje random.

ActionMuzyka(id) 
{		
	new losowanie = random_num(1, 6);
	
		switch(losowanie)
		{
			case 1: 
			{
			client_cmd(0, "spk %s", muzyka_muzyka1);
			}
			
			case 2:
			{
			client_cmd(0, "spk %s", muzyka_muzyka2);
			}
			
			case 3:
			{
			client_cmd(0, "spk %s", muzyka_muzyka3);
			}
			
			case 4:
			{
			client_cmd(0, "spk %s", muzyka_muzyka4);
			}
			
			case 5:
			{
			client_cmd(0, "spk %s", muzyka_muzyka5);
			}
			
			case 6:
			{
			client_cmd(0, "spk %s", muzyka_muzyka6);
			}
		}
}

Nie mam pojęcia co tu jest źle, proszę o poprawienie kodu lub napisanie nowego. Błędów przy kompilacji nie ma, lecz w grze zaczyna grać wszystkie sześć utworów na raz. Dam plusa.
  • +
  • -
  • 0

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 07.07.2011 00:13

ActionMuzyka(id)
to wskazuje, że wywołujesz funkcje na wszystkich graczach osobno, a potem i tak puszczasz muzykę wszystkim
client_cmd(0,

musisz zdecydować: jedno wywołanie i 0 albo wiele i id
  • +
  • -
  • 0

#3 Scoti

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 07.07.2011 06:45

Inne funkcje mają albo id albo id, ent, co ja mam wstawić?

Piszesz, że puszczam muzykę wszystkim, a chcę tylko jednemu graczowi, który ustanie na ten block. Mam zamiast:

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

Użyć:

client_cmd(1, "spk %s", muzyka_muzyka1);

czy najlepiej

emit_sound(id, CHAN_STATIC, g_sound_muzyka1, 1.0, ATTN_NORM, 0, PITCH_NORM);

*g_sound_muzyka1 będzie działać tak samo


Edycja z godziny 08:06:

Gdy zrobiłem:

ActionMuzyka()

Znikneły 2 warningi ale w grze nadal jest tak samo, nie lusują się utwory tylko wszystkie zaczynają grać na raz.

Użytkownik Scoti edytował ten post 07.07.2011 07:10

  • +
  • -
  • 0

#4 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Online

Napisano 07.07.2011 08:24

może po każdej piosence dodaj return PLUGIN_CONTINUE; ?
  • +
  • -
  • 0

#5 Scoti

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 07.07.2011 08:56

Nic nie dało, ale nawet warning się utworzył w klamrze.
  • +
  • -
  • 0

#6 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 07.07.2011 10:37

Inne funkcje mają albo id albo id, ent, co ja mam wstawić?

Piszesz, że puszczam muzykę wszystkim, a chcę tylko jednemu graczowi, który ustanie na ten block. Mam zamiast:

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

Użyć:

client_cmd(1, "spk %s", muzyka_muzyka1);

czy najlepiej

emit_sound(id, CHAN_STATIC, g_sound_muzyka1, 1.0, ATTN_NORM, 0, PITCH_NORM);

*g_sound_muzyka1 będzie działać tak samo

Skoro jednemu, to po prostu zamień "client_cmd(0," na "client_cmd(id,".

Edycja z godziny 08:06:

Gdy zrobiłem:

ActionMuzyka()

Znikneły 2 warningi ale w grze nadal jest tak samo, nie lusują się utwory tylko wszystkie zaczynają grać na raz.

bo dalej odtwarzasz każdemu te dźwięki.

może po każdej piosence dodaj return PLUGIN_CONTINUE; ?

Jak nie wiesz, to nie mieszaj...
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#7 Scoti

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 07.07.2011 11:09

sebul, dałem id więc jak pisałeś odtwarza tylko mi, ale nadal nie losuje muzyki tylko odtwarza wszystkie na raz i każda wchodzi na siebie, jak zrobić żeby losowało tylko jedną z sześciu?
  • +
  • -
  • 0

#8 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 07.07.2011 11:44

Pokaż tablicę "muzyka_muzyka1", itd. jak im przypisujesz dane dźwięki.
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#9 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 07.07.2011 12:24

sama funkcja ActionMuzyka() jest porządku, więc błąd leży w jej wywołaniu; dopóki nie pokażesz więcej kodu nic nie poradzimy
  • +
  • -
  • 0

#10 Scoti

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 07.07.2011 16:02

To są define z muzyki:

#define muzyka_melanz				"sound/nazwasieci/melanz.mp3"
#define muzyka_muzyka1				"sound/nazwasieci/muzyka1.mp3"
#define muzyka_muzyka2				"sound/nazwasieci/muzyka2.wav"
#define muzyka_muzyka3				"sound/nazwasieci/muzyka3.wav"
#define muzyka_muzyka4				"sound/nazwasieci/muzyka4.mp3"
#define muzyka_muzyka5				"sound/nazwasieci/muzyka5.wav"
#define muzyka_muzyka6				"sound/nazwasieci/muzyka6.mp3"
#define muzyka_bron				"sound/nazwasieci/bron.wav"

  • +
  • -
  • 0




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

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