Portal SAMP
[Ajuda] Sistema de aproximaçao de som - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Sistema de aproximaçao de som (/showthread.php?tid=1530)



Sistema de aproximaçao de som - WeebSide - 15/08/2021

Boa noite galera, estou tentando fazer um sistema de som automotivo  tipo se eu liguei o som no meu carro por onde eu passar os player que estiver a um raio de 20.0 escuta a musica tentei usar o  IsPlayerInRangeOfPoint mas so funciona quando eu ligo o som do lado do player queria que ligace automatio so de chega perto da outra pessoa, auguem tem uma base ou pode me orientar como fazer isso?


RE: Sistema de aproximaçao de som - xbruno1000x - 15/08/2021

Código:
new AreaSom = CreateDynamicCircle(Float:x, Float:y, Float:size, worldid = -1, interiorid = -1, playerid = -1);
AttachDynamicAreaToVehicle(AreaSom, vehicleid, Float:offsetx = 0.0, Float:offsety = 0.0, Float:offsetz = 0.0);

public OnPlayerEnterDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        PlayAudioStreamForPlayer(playerid, "LINK AQUI");
    }
}

public OnPlayerLeaveDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        StopAudioStreamForPlayer(playerid);
    }
}

Só precisa adaptar certinho ao seu código.

Obs: é impossível colocar a música no mesmo minuto para todos os players que entrarem na área, a música sempre começará do ínicio.


RE: Sistema de aproximaçao de som - WeebSide - 16/08/2021

(15/08/2021 21:58)xbruno1000x Escreveu:
Código:
new AreaSom = CreateDynamicCircle(Float:x, Float:y, Float:size, worldid = -1, interiorid = -1, playerid = -1);
AttachDynamicAreaToVehicle(AreaSom, vehicleid, Float:offsetx = 0.0, Float:offsety = 0.0, Float:offsetz = 0.0);

public OnPlayerEnterDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        PlayAudioStreamForPlayer(playerid, "LINK AQUI");
    }
}

public OnPlayerLeaveDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        StopAudioStreamForPlayer(playerid);
    }
}

Só precisa adaptar certinho ao seu código.

Obs: é impossível colocar a música no mesmo minuto para todos os players que entrarem na área, a música sempre começará do ínicio.

Precisa alguma call especifica para o CreateDynamicCicle? Ou include? Deu erro 
Código:
Erro 017: undefined symbol "worldid"
Com certesa vai dar no interiorid tbm


RE: Sistema de aproximaçao de som - xbruno1000x - 17/08/2021

(16/08/2021 20:49)WeebSide Escreveu:
(15/08/2021 21:58)xbruno1000x Escreveu:
Código:
new AreaSom = CreateDynamicCircle(Float:x, Float:y, Float:size, worldid = -1, interiorid = -1, playerid = -1);
AttachDynamicAreaToVehicle(AreaSom, vehicleid, Float:offsetx = 0.0, Float:offsety = 0.0, Float:offsetz = 0.0);

public OnPlayerEnterDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        PlayAudioStreamForPlayer(playerid, "LINK AQUI");
    }
}

public OnPlayerLeaveDynamicArea(playerid, areaid)
{
    if(areaid == AreaSom)
    {
        StopAudioStreamForPlayer(playerid);
    }
}

Só precisa adaptar certinho ao seu código.

Obs: é impossível colocar a música no mesmo minuto para todos os players que entrarem na área, a música sempre começará do ínicio.

Precisa alguma call especifica para o CreateDynamicCicle? Ou include? Deu erro 
Código:
Erro 017: undefined symbol "worldid"
Com certesa vai dar no interiorid tbm

Não é pra usar worldid, é pra substituir o parâmetro pelo número.

Exemplo:
Código:
CreateDynamicCircle(0.0, 0.0, 10.0, -1, -1, -1);



RE: Sistema de aproximaçao de som - WeebSide - 19/08/2021

Vlw atençao mas infelismente nao conssegui na pratica,
Ele nao deu erro mas nao tocou a radio que eu coloquei