Gta San Andreas MultiPlayer (samp) HUN
Navigation
     
Account
Felhasználónév:

Jelszó:
SúgóSúgó
Regisztráció
Elfelejtettem a jelszót
     
Kép
Szerver
Legyen ennek a weboldalnak saját samp szervere?

Igen
Nem
Szavazás állása
Lezárt szavazások
     
Friss

Utolsó módosítás
2013 máj. 19.
12:17

 

     
Más weblapok
 SA:MP Fórum
SA:MP Wiki
Google

     

PAWN Eszközök
     
Audio plugin

Forrás: Fade, www.sampforum.hu

Üdv.
Ebben a tutorialban leírom hogy hogy kell kezelni Incognito Audio Pluginját.
(Letöltés lap alján)

Akkor nézzük.
Miután letöltötted a plugint csomagold ki a szerver mappádba.
Ha kicsomagoltad, a server.cfg-be írd be a plugint.

Kód:
plugins audio

Linux esetén:

Kód:
plugins audio.so


Hogyha kicsomagoltad láthatsz egy mappát audiopacks néven. Ez tárolja a hanganyagokat.
Azon belül default_pack, és another_pack.

Ezeket hagyd figyelmen kívül nem kellenek.

Hozz létre az audipacksban egy új mappát, mindegy hogy milyen néven.
Vegyük példának a custom nevet!

servermappa/audiopacks/custom

Ide másold be a kívánt zenéket, amiket a szerverre fel akarsz tenni.
Ajánlatos, hogy a nevüket lerövidítsd, mert kezelni nehezebb ha hosszú.

Ha ez megvolt, akkor a szerver mappádban lévo audio.ini fájlt nyisd meg.
itt alapból ezeket találod:

Kód:
; audio.ini
;
; Notes:
; ------
; 1. The section names (text enclosed in brackets) correspond to the
;    folder names in the audiopacks directory.
; 2. The keys (numbers to the left) are the audio IDs, and the values
;    are the file names.
; 3. Remote files must be prefixed with http:// or ftp:// (these do
;    not need to be in your audiopacks directory).
; 4. Audio archives are marked by the key "archive" rather than an
;    audio ID. The values for these are the archive names. See the
;    readme text document in the server package for a list.

[default_pack]
1 = test.wav
2 = example.mp3
3 = track.ogg
4 = file.wma
archive = CR
archive = SCRIPT

[another_pack]
1 = http://www.website.com/example.mp3
2 = ftp://localhost/test.wav
3 = track.ogg
4 = file.wma
archive = AMBIENCE
archive = CUTSCENE


A szögletes zárójelek közé a mappák nevei vannak írva. (amik voltak default_pack, és another_pack)

Hozz létre egy új sort, és szögletes zárójelek közé írd a mappád nevét amit létrehoztál.
Custom példa.

Kód:
[custom]
1 = zene.mp3


a zene.mp3-at nevezd át az egyik zene fájl nevére amit betettél.
Az 1 a hang azonosítója.
Ha egy új zenét akarsz berakni akkor azt ajánlatos csinálod hogy a következo számot írod be és utána a zenét.
Tehát pl van 3 zenéd. Ez így néz ki:

Kód:
[custom]
1 = zene.mp3
2 = hang.mp3
3 = valami.mp3

(nem csak mp3-at lehet lehet wav, wma stb...)

Tehát ha újat akarsz betenni csak ennyit kell:

Kód:
4 = egyhang.mp3


Aztán 5 = stb...

Ha a zenéket betetted akkor ezeket is tedd a végére:

Kód:
archive = AMBIENCE
archive = CUTSCENE


Igazából én se tudom mire jók, de nélkülük nem megy.

Ha ez kész akkor jöhet a pawn-os rész.

Nos akkor eloször is ágyazzuk be a függvénykönyvtárat scriptünkbe/módunkba:

Kód:
#include <audio>


Hozzuk létre a TCP szervert, amin a hangok és a csomagok fognak "utazni":

Kód:
Audio_CreateTCPServer(port); //ide azt a portot írd amin fut a szervered! alap: 7777


Lehet úgy is, hogy ha nem tudod a portját a szerverednek, vagy megváltoztattad:

Kód:
new port = GetServerVarAsInt("port"); //lekérdezzük a szerver portját, és a port változóban tároljuk
Audio_CreateTCPServer(port); //Létrehozzuk a TCP szervert


Ezután beállítjuk a csomagot.

Kód:
Audio_SetPack("custom", true); //ha igazra állítod (true) akkor a pack küldheto a játékosoknak, ha hamis (false) akkor nem!

A custom helyére a te mappád neve kerül.

Most pedig el kell küldenünk a csomagot a játékosnak ha csatlakozik.

Kód:
public Audio_OnClientConnect(playerid)
{
Audio_TransferPack(playerid); //elküldjük a játékosnak a csomagot
}


Ez a függvény csak annak hívódik meg akinek van kliens oldali hang pluginja.
Ha játék közben állítódik be egy csomag akkor a következot kell tenni:

Kód:
public Audio_OnSetPack(audiopack[])
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
Audio_TransferPack(i); //mindenkinek elküldi
}
return 1;
}


Ez mindenkinek elküldi HA a csomagot beállította a szerver.
A beállításról ennyit most jöjjön a lejátszás.

Lejátszásnál lehetoségünk van változót használni a tároláshoz, amit majd a hang megállításánál kell használnunk.
Hozzunk létre egy tömböt ami minden játékosnak külön elemet ad.

Kód:
new hang[MAX_PLAYERS];


És ezután amikor szeretnénk, lejátsszuk a hangot a játékosunknak:

Kód:
Hang[playerid] = Audio_Play(playerid,1); //csak a megadott játékosnak játsza le (playerid)


Az 1-es szám a hang azonosítója amit az audio.ini -be adtunk meg. (az 1 = hang.mp3 például)
Ennek a függvénynek több paramétere is van még, loopolás (ha meg áll a zene akkor újrakezdi automatikusan), szüneteltetés, lemixelés (<- én sem tudom mit értenek ez alatt...)

Ha meg szeretnénk állítani a hangot, akkor az Audio_Stop függvényt kell alkalmaznunk.

Kód:
Audio_Stop(playerid,Hang[playerid]); //csak a megadott játékosnak állítja meg (playerid)

Itt viszont nem az audio.ini -s azonosítót kell megadni hanem amit lejátszásnál használtunk. (Hang[playerid])

Az alapfokú kezelés ennyi, a középfokról is ejtek egykét szót.
Van még lehetoség a hangok cifrázására például háttéreffekt, 3D pozíció a hangnak (csak a hatósugarán belül lehet hallani), effektek, és még sok más.

Ennyi lenne a tutorial remélem értheto.

Összes függvény + letöltés:
http://forum.sa-mp.com/index.php?topic=106960.0

FONTOS: Hogy halld a zenéket a kliens oldali plugint fel kell tenned.

 

7 hozzászólás
Idézet
2011.08.08. 18:53
Jazz

Van ilyen [FS] amivel zenét lehet játszani a serveren úgy hogy mindenki hallja....

Idézet
2011.05.01. 21:48
Marci

Bocsi megvan OnFliterScriptInit, vagy OnGameModeInit, rájötem kösz mindent!

Idézet
2011.05.01. 21:45
Marci

Nekem anyi problémám lene hogy ezeket a fügvényeket hova tegyem:

Audio_CreateTCPServer(port);
Audio_SetPack("zene", true);

Mert az elsőre hibát hoz ki, mutatom:

szerver\gamemodes\cod5tdm.pwn(29) : error 021: symbol already defined: "Audio_CreateTCPServer"
szerver\gamemodes\cod5tdm.pwn(29) : error 021: szimbólum már definiált: "Audio_CreateTCPServer"

Na ijenkor mivan!!!

Kéne a segítség, a töbi az megy!!

Idézet
2011.04.25. 12:01
Csaba

nekem is az lene a problémám ,hogy hogy lehet meg csinálni azt hogy ha pl be irja vki hogy /startradio hogy szoljon a Shoutcast os rádio googleba rá kerestem egy leirást találtam de nem mükszik elinditom ki irja hogy elinditotad a rádiot de nem szol... hellp pls

Idézet
2010.12.26. 19:22
Zeli

hali

én azt szeretném kérdezni hogy ez a dolog működne-e online rádióval hogy a listen.mp3 át rakom be? pl a Rádió1 winamp ba való listenjét berakom és a szerveren beírom /radio-on és elkezd szólni a Rádió1 ??

Idézet
2010.11.08. 15:13
maarkmaki

 2x írd be a parancsot amivel lejátszod
Vagy várj hogy betöltse

Idézet
2010.11.03. 16:13
lambo96

Hali megcsináltam ezt de amikor felmegyek a szerverre nem játsza le a zenét :S 

Ötletek?

     
Nézettség
Indulás: 2010-02-26
     
PAWN/Szkriptek
     
Tutorialok
     
Óra
     
Chat
Kérlek, felesleges dolgokat ne írj a chatbe!
Név:

Üzenet:
:)) :) :@ :? :(( :o :D ;) 8o 8p 8) 8| :( :'( ;D :$
     

Dryvit, hõszigetelés! Vállaljuk családi házak, nyaralók és egyéb épületek homlokzati szigetelését! 0630/583-3168 Hívjon!    *****    A legfrissebb hírek a Super Mario világából és a legteljesebb adatbázis a Mario játékokról.Folyamatosan bõvülõ tartalom.    *****    Gigágá! Márton napján is gyertek a Mesetárba! Nemcsak libát, de kacsát is kaptok! Játsszatok velünk!    *****    A Nintendo a Nintendo Music-kal megint valami kiváló dolgot hozott létre! Alaposan nagyító alá vettem, az eredmény itt.    *****    Leanderek, Parfümök, Olajok, és Szépségápolási termékek! Használd a LEVI10 kupont és kapj 10% kedvezményt!Megnyitottunk    *****    Megjelent a Nintendo saját gyártású órája, a Nintendo Sound Clock Alarmo! Ha kíváncsi vagy, mit tud, itt olvashatsz róla    *****    Megnyílt a webáruházunk! Parfümök, Szépségápolási termékek, Olajok mind egy helyen! Nyitási akciók, siess mert limitált!    *****    Az általam legjobbnak vélt sportanimék listája itt olvasható. Top 10 Sportanime az Anime Odyssey-n!    *****    Pont ITT Pont MOST! Pont NEKED! Már fejlesztés alatt is szebbnél szebb képek! Ha gondolod gyere less be!    *****    Megnyílt a webáruházunk! NYITÁSI AKCIÓK! Tusfürdõ+Fogkrém+Sampon+Izzadásgátló+multifunkcionális balzsam most csak 4.490!    *****    Új mese a Mesetárban! Téged is vár, gyere bátran!    *****    Veterán anime rajongók egyik kedvence a Vadmacska kommandó. Retrospektív cikket olvashatsz róla az Anime Odyssey blogban    *****    Parfümök, Olajok, Párologtatók mind egy weboldalon! Siess mert nyitási AKCIÓNK nem sokáig tart! Nagy kedvezmények várnak    *****    Dryvit, hõszigetelés! Vállaljuk családi házak, nyaralók és egyéb épületek homlokzati szigetelését! 0630/583-3168 Hívjon!    *****    Aki érdeklõdik a horoszkópja után, az nem kíváncsi, hanem intelligens. Rendeld meg most és én segítek az értelmezésben!    *****    A Múzsa, egy gruppi élményei a színfalak mögött + napi agymenések és bölcseletek    *****    KARATE OKTATÁS *** kicsiknek és nagyoknak *** Budapest I. II. XII.kerületekben +36 70 779-55-77    *****    Augusztus 26-án Kutyák Világnapja! Gyertek a Mesetárba, és ünnepeljétek kutyás színezõkkel! Vau-vau!    *****    A horoszkóp elemzésed utáni érdeklõdés, nem kíváncsiság hanem intelligencia. Rendeld meg és nem fogod megbánni. Katt!!!    *****    Cikksorozatba kezdtem a PlayStation történelmérõl. Miért indult nehezen a Sony karrierje a konzoliparban?