VOICE PLUGIN
Salut, acesta este un plugin care va permite sa adaugati un voice chat in SA-MP, este complet luat din rusia (www.pawno-info.ru).
Description:The plugin will allow Pawn-developers to create voice systems on their servers.
Descriere:
Pluginul va permite dezvoltatorilor de pawn să creeze sisteme de voce pe serverele lor.
Download:
https://github.com/CyberMor/sampvoice
Key Features:
The player's microphone is monitored by the server
Receiving incoming voice packets
Sending voice packets is controlled by Pawn-mod
Caracteristici cheie:
Microfonul jucătorului este monitorizat de server
Primirea pachetelor vocale primite
Trimiterea pachetelor de voce este controlată de pawno
UN EXEMPLU SIMPLU
#include <a_samp>
#include <voice>
#undef MAX_PLAYERS
#define MAX_PLAYERS 100
// PRESSED(keys)
#define PRESSED(%0) \
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
// RELEASED(keys)
#define RELEASED(%0) \
(((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
// Apăsați pe Y
if(PRESSED(KEY_YES)) StartVoice(playerid);
// Lăsați-l pe Y
if(RELEASED(KEY_YES)) StopVoice(playerid);
//
return 1;
}
public OnPlayerVoice(playerid, BitStream:bs)
{
// Adăugați text deasupra capului jucătorului vorbitor
SetPlayerChatBubble(playerid, "Speaker", COLOR_WHITE, 10.00, 1000);
// Obțineți poziția jucătorului vorbitor
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(playerid == i) continue;
if(!IsPlayerConnected(i)) continue;
//Trimiteți un pachet de voce tuturor jucătorilor pe o rază de 10 metri
if(IsPlayerInRangeOfPoint(i, 10.00, pos[0], pos[1], pos[2])) {
SendVoice(i, bs); // Trimiterea unui pachet de voce
}
}
return 1;
}