Encontrei uma filterscript na qual cria progress bar, porém queria que ele duplicasse pra eu pegar as posições correta pra montar um sistema.
Se alguém saber uma FS que tenha opção de duplicar, ficaria grato.
Estou tentando adicionar sampvoice ao meu servidor. Depois de fazer algumas mudanças no código original, compilei e não recebi nenhum erro, mas quando tento utilizar o plugin no servidor, o microfone é acionado, mas o nome do jogador no canto esquerdo da tela e o microfone acima do personagem não aparecem e nenhum som é reproduzido.
Gostaria de saber se cometi algum erro nas modificações que fiz.
Código original:
Código:
#include <sampvoice>
new SV_GSTREAM:gstream = SV_NULL;
new SV_LSTREAM:lstream[MAX_PLAYERS] = { SV_NULL, ... };
/*
The public OnPlayerActivationKeyPress and OnPlayerActivationKeyRelease
are needed in order to redirect the player's audio traffic to the
corresponding streams when the corresponding keys are pressed.
*/
public SV_VOID:OnPlayerActivationKeyPress(SV_UINT:playerid, SV_UINT:keyid)
{
// Attach player to local stream as speaker if 'B' key is pressed
if (keyid == 0x42 && lstream[playerid]) SvAttachSpeakerToStream(lstream[playerid], playerid);
// Attach the player to the global stream as a speaker if the 'Z' key is pressed
if (keyid == 0x5A && gstream) SvAttachSpeakerToStream(gstream, playerid);
}
public SV_VOID:OnPlayerActivationKeyRelease(SV_UINT:playerid, SV_UINT:keyid)
{
// Detach the player from the local stream if the 'B' key is released
if (keyid == 0x42 && lstream[playerid]) SvDetachSpeakerFromStream(lstream[playerid], playerid);
// Detach the player from the global stream if the 'Z' key is released
if (keyid == 0x5A && gstream) SvDetachSpeakerFromStream(gstream, playerid);
}
public OnPlayerConnect(playerid)
{
// Checking for plugin availability
if (SvGetVersion(playerid) == SV_NULL)
{
SendClientMessage(playerid, -1, "Could not find plugin sampvoice.");
}
// Checking for a microphone
else if (SvHasMicro(playerid) == SV_FALSE)
{
SendClientMessage(playerid, -1, "The microphone could not be found.");
}
// Create a local stream with an audibility distance of 40.0, an unlimited number of listeners
// and the name 'Local' (the name 'Local' will be displayed in red in the players' speakerlist)
else if (lstream[playerid] = SvCreateDLStreamAtPlayer(40.0, SV_INFINITY, playerid, 0xff0000ff, "Local"))
{
SendClientMessage(playerid, -1, "Press Z to talk to global chat and B to talk to local chat.");
// Attach the player to the global stream as a listener
if (gstream) SvAttachListenerToStream(gstream, playerid);
// Assign microphone activation keys to the player
SvAddKey(playerid, 0x42);
SvAddKey(playerid, 0x5A);
}
}
public OnPlayerDisconnect(playerid, reason)
{
// Removing the player's local stream after disconnecting
if (lstream[playerid])
{
SvDeleteStream(lstream[playerid]);
lstream[playerid] = SV_NULL;
}
}
public OnGameModeInit()
{
// Uncomment the line to enable debug mode
// SvDebug(SV_TRUE);
public OnGameModeExit()
{
if (gstream) SvDeleteStream(gstream);
}
Exemplo do código modificado:
Código:
#include <sampvoice>
new SV_LSTREAM:lstream[MAX_PLAYERS] = { SV_NULL, ... };
/*
The public OnPlayerActivationKeyPress and OnPlayerActivationKeyRelease
are needed in order to redirect the player's audio traffic to the
corresponding streams when the corresponding keys are pressed.
*/
public SV_VOID:OnPlayerActivationKeyPress(SV_UINT:playerid, SV_UINT:keyid)
{
// Attach player to local stream as speaker if 'B' key is pressed
if (keyid == 0x42 && lstream[playerid]) SvAttachSpeakerToStream(lstream[playerid], playerid);
}
public SV_VOID:OnPlayerActivationKeyRelease(SV_UINT:playerid, SV_UINT:keyid)
{
// Detach the player from the local stream if the 'B' key is released
if (keyid == 0x42 && lstream[playerid]) SvDetachSpeakerFromStream(lstream[playerid], playerid);
}
public OnPlayerSpawn(playerid)
{
// Checking for plugin availability
if (SvGetVersion(playerid) == SV_NULL)
{
SendClientMessage(playerid, -1, "Could not find plugin sampvoice.");
}
// Checking for a microphone
else if (SvHasMicro(playerid) == SV_FALSE)
{
SendClientMessage(playerid, -1, "The microphone could not be found.");
}
// Create a local stream with an audibility distance of 40.0, an unlimited number of listeners
// and the name 'Local' (the name 'Local' will be displayed in red in the players' speakerlist)
else
{
lstream[playerid] = SvCreateDLStreamAtPlayer(40.0, SV_INFINITY, playerid, 0xff0000ff, "Local");
SendClientMessage(playerid, -1, "Press B to talk to local chat.");
// Assign microphone activation keys to the player
SvAddKey(playerid, 0x42);
}
}
public OnPlayerDisconnect(playerid, reason)
{
// Removing the player's local stream after disconnecting
if (lstream[playerid])
{
SvDeleteStream(lstream[playerid]);
lstream[playerid] = SV_NULL;
}
}
public OnGameModeInit()
{
// Uncomment the line to enable debug mode
// SvDebug(SV_TRUE);
}
Criei esse sistema de fome e sede atravez de tu tutorial ja que os fs de criaçao de texdraw nenhum funciono no meu gm queria dabe como troca o texto da imagem abaixo por um icone de um hamburguer e uma taça de bebida no lugar do texto
MELHOR SERVE RP,SE VOCÊ ESTA A PROCURA DE UM SERVE FULL RP VOCÊ ENCONTROU
.....................................................................
DISCORD DO SERVER : https://discord.gg/KYmrYkstWc
Qual Função devo usar para colocar a rotação do player onde ele spawna
por exemplo uso o SetPlayerPos para colocar o player em uma posição mais ele fica de costas como faço pra ele spawnar de frente pra onde quero ?
Galera fiz um attach pra por na minha gm porem ela so ta attachando quando esta na moto se decer da moto o atach some oque pode ser isso? Samp androide