GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Anthony Wolf le 01 Mars 2009, 09:34:18
-
Bonjour,
Donc, quand je fait sa :
PlayPlayerSound(playerid, 1187, 1764.9407,-2392.4565,22.7496 ( id son au hasard, il peut être faux car j'ai enlevé le script en attendant de savoir comment corrigé )
dans public OnPlayerRequestClass(playerid, classid)
au choix du personnage, la musique se lance bien, mais, lorsque le personnage spawn, la musique, elle, continue d'être joué.
Donc a la longue, on a toute la musique pendant le jeu et c'est gavant...
et aussi, sur SA-MP, le mode écrit est Unkown, c'est aussi génant...
Merci de vos réponse
++
Wolf
-
Salut,
ajoute un PlayPlayerSound avec un soundid invalide dans la callback OnPlayerRequestSpawn
++Sim++
-
Salut,
Pour faire arreter la musique met ca:
PlayerPlaySound(playerid, 1184, 0.0, 0.0, 0.0);
dans OnPlayerSpawn
++
nikko
-
ok merci, moi je pensait que dans OnPlaySpawn, il fallai mettre
PlayPlayerSound( 0, position de spawn )
-
non la musique arreté = 1184 ;)
++
nikko
-
Salut,
puisque la position ne semble pas être gérée dans cette version, il n'y a pas besoin d'en mettre une particulière, tu peut aussi bien mettre 0.0, 0.0, 0.0 à toutes les fois que tu utilise CETTE fonction
++Sim++
-
Vos solution hélas ne fonctionnent pas mais, j'ai trouvé la solution
dans :
OnPlayerSpawn
il faut mettre :
PlayerPlaySound(playerid, 1186, 0, 0, -100);
Sinon, le problème qui persiste, c'est sa :
HostName: *** [FR]- DM CITY ***
Address: 127.0.0.1:7777
Players: 1 / 32
Ping: 1
Mode: Unknown
Map: San Andreas
Comment mettre un nom de mode ?
-
Salut,
pour l'adresse ip, tu dois mettre ton adresse INTERNET, pas ton adresse LOCALE (127.0.0.1)
la fonction est: SetGameModeText(...)
++Sim++
-
Je met local car sinon, je vois pas le serveur, même si les autres le voyent
-
Salut,
mais si ton but était qu'on aille voir ton bug, tu aurais dû mettre ton ip internet...
pour ton truc de musique, je te dirais de le placer dans OnPlayerRequestSpawn (qui est appelé quand le joueur qui choisi son perso fais shift (je crois))
++Sim++
-
OnPlayerSpawn = quand le joueur spawn
Donc : - Choix = Musique
- Spawn = plus de musique
- F4 et /kill = pas de musique
- Retour au choix
- Choix = Musique
- Spawn = plus de musique
ect..........
au faite SetGameMode ( je l'écrit comme sa car je l'ai pas sous les yeux ), tu le mets ou ?
-
au faite SetGameMode ( je l'écrit comme sa car je l'ai pas sous les yeux ), tu le mets ou ?
Dans OnGameModInit
++
nikko
-
ok merci :)
-
Salut,
anthony, j'ai la conviction que tu devrais aller faire un tour sur LE WIKI (http://wiki.sa-mp.com/wiki/Main_Page)
plus précisément:
http://wiki.sa-mp.com/wiki/OnPlayerRequestSpawn (http://wiki.sa-mp.com/wiki/OnPlayerRequestSpawn)
http://wiki.sa-mp.com/wiki/OnPlayerSpawn (http://wiki.sa-mp.com/wiki/OnPlayerSpawn)
ainsi, tu comprendra peut-être que OnPlayerSpawn est appelée chaque fois qu'un joueur "spawn", soit :
- lorsqu'il meurt
- lorsque la fonction SpawnPlayer est appliqué sur lui
- après avoir avoir choisi sa classe
- ...
alors que OnPlayerRequestSpawn est appelée quand le joueur quitte la sélection des personnage, donc cette callback est réellement plus approprié à ton utilisation, si tu veut rester comme cela, c'est ton affaire....
++Sim++
-
Malheureusement, encore une fois, les callbacks ne fonctionnent pas comme on le voudrait, si on met en route la musique dans OnPlayerRequestSpawn, elle n'est pas jouée du tout, ni à la connexion, ni au respawn.
Pour que ça fonctionne comme tu veux voici la solution (testée par mes soins) :
Dans OnPlayerConnect : Mise en route de la musique
Dans OnPlayerSpawn : Arrêt de la musique
Dans OnPlayerDeath : Mise route de la musique
NB : pour arrêter la musique, il suffit de jouer la musique suivante.
PlayPlayerSound(playerid, 1187, 0.0, 0.0, 0.0); // Joue la musique (ou le son)
PlayPlayerSound(playerid, 1187+1, 0.0, 0.0, 0.0); // Arrête la musique (ou le son qui boucle)
Edit : Avec ma solution, lorsque le joueur meurt, même si il ne fait pas F4, la musique est jouée pendant quelques secondes. je n'ai pas trouvé d'autres solutions.
++
Syg
-
non, je vous dit, cette solution marche, je fais /kill, je n'ai aps la musique