No funciona mi public.
#1

Hola, no me funciona mi simple public? WHY?
pawn Код:
public Sonidito(playerid)
{
   if(PlayerToPoint(2.0,playerid,1217.3802,-1693.1292,19.7344))
   {
      PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
   }
   return 1;
}
Gracias.
Reply
#2

Para que tenes esa public ? es por un timer ?
Reply
#3

Tengo un textdraw pero no lo puedo poner en el codigo del textdraw porque loopea y ese sonido se vuelve una ametralladora de soniditos.El cod de td.
pawn Код:
public EnTd(playerid)
{
    if(PlayerToPoint(2.0,playerid,1217.3802,-1693.1292,19.7344))
    {
        TextDrawShowForPlayer(playerid,Textdraw2[playerid]);
        Ttextdraw[playerid] = SetTimerEx("Parado", 100, 0,"d",playerid); // el timer que haria que el sonidito se lupee
        return 1;
    }
    else
    {
        TextDrawHideForPlayer(playerid,Textdraw2[playerid]);
        Ttextdraw[playerid] = SetTimerEx("Parado", 100, 0,"d",playerid);
        return 1;
    }
}
Y por eso trate de ponerlo afuera de ese public. (Quiero que aga el sonidito cuando aparece el td)
Reply
#4

te faltу
pawn Код:
forward Sonidito(playerid);
arriba de todo, y en OnGameModeInit()
pawn Код:
SetTimer("Sonidito", 0500, true);
Eso si es para que se active cuando el jugador estй en el punto, si no es para eso olvida el timer.
Reply
#5

El forward ya lo tenia, y bueno, puse el timer (aunque todavia noc xq tenia que ponerlo ya que no quiero que loopee) y sigue sin funcionar. Aclaro: es un fs.
Reply
#6

pawn Код:
new bool:soniditoplay;

public Sonidito(playerid)
{
   if(PlayerToPoint(2.0,playerid,1217.3802,-1693.1292,19.7344))
   {
        if(soniditoplay == false)
        {
            PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
            soniditoplay = true;
        }
    }
   else
    {
        soniditoplay = false;
    }
   return 1;
}
Reply
#7

No me anduvo, debe ser un prob mio. El codigo es muy bueno, nunca se me ubiera ocurrido =) , voy a probar poniendo este codigo en el script en ves de ponerlo en el fs, capas se arregla. Ah , y GRACIAS!
Reply
#8

Ok, de nada.
Reply
#9

Prueba asн:

pawn Код:
new bool:soniditoplay;

public Sonidito(playerid)
{
   if(PlayerToPoint(2.0,playerid,1217.3802,-1693.1292,19.7344))
   {
        if(soniditoplay == false)
        {
            PlayerPlaySound(playerid, 1052, 1217.3802,-1693.1292,19.7344);
            soniditoplay = true;
        }
    }
   else
    {
        soniditoplay = false;
    }
   return 1;
}
Reply
#10

Si estas llamando a la funcion sonidito desde otro script que no sea el mismo donde la funcion esta declarada, aparte de agregarle el forward correspondiente y hacer la funcion public, para llamarlo tenes que usar: CallRemoteFunction( "Sonidito", "i", playerid );

Con eso llamarias a una funcion publica que esta fuera del script en el que ejecutas este codigo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)