[Ayuda]solo aparesca una vez el mensaje (PickUP)
#1

hola gente bueno les comento, cree el siguiente PickUp:
pawn Код:
new Banco;
Banco = CreatePickup(1212, 1, 860.5668, 2267.2808, -16.4040, 0);
if(pickupid == Banco)//Here is our pickup the pickup1
    {
         SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
     return 1;
    }
pero el problema es que mientras estas sobre el Pickup el mensaje Bienvenido a nuestro Banco. usa /depositar /retirar /saldo se repite una y otra y otra vez hasta el cansancio :S como puedo hacer que ese mensaje salga solo una vez.
Reply
#2

Quote:
Originally Posted by itsfree
Посмотреть сообщение
hola gente bueno les comento, cree el siguiente PickUp:
pawn Код:
new Banco;
Banco = CreatePickup(1212, 1, 860.5668, 2267.2808, -16.4040, 0);
if(pickupid == Banco)//Here is our pickup the pickup1
    {
         SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
     return 1;
    }
pero el problema es que mientras estas sobre el Pickup el mensaje Bienvenido a nuestro Banco. usa /depositar /retirar /saldo se repite una y otra y otra vez hasta el cansancio :S como puedo hacer que ese mensaje salga solo una vez.
Por Que No Usas PlayerToPoint ??
Reply
#3

En donde tienes este codigo?
pawn Код:
if(pickupid == Banco)//Here is our pickup the pickup1
{
     SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
     return 1;
}
Reply
#4

Quote:
Originally Posted by Bu11Sh0t
Посмотреть сообщение
En donde tienes este codigo?
pawn Код:
if(pickupid == Banco)//Here is our pickup the pickup1
{
     SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
     return 1;
}
en OnPlayerPickUpPickup
Reply
#5

Puedes hacer dos cosas.
Usar un GameModeText
o
hacer esto:
pawn Код:
new Showed[MAX_PLAYERS];
//
if(pickupid == Banco)//Here is our pickup the pickup1
{
    if(Showed[playerid] == 0)
    {
        SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
        Showed[playerid] = 1;
        SetTimerEx("Leave", 60000, 0, "i", playerid);//60 segundos = 60000 ms
        return 1;
    }
}
forward Leave(playerid);
public Leave(playerid)
{
    Showed[playerid] = 0;
}
Reply
#6

gracias hay lo pruevo
Reply
#7

yo Te Recomiendo ke utilices Textdraw para los textos de los pichup y con la siguiente manera, ya ke tu manera al esta en la posicion se te haga flood de SendClientMessage o con la manera ke te dio Bu11Sh0t, pero... no te lo recomiendo.

pawn Код:
//OnGameModeInit o FilterScript
SetTimer("pickuptimer", 1000, true);
CreatePickup(1212, 1, 860.5668, 2267.2808, -16.4040, 0);

//Al Final Del GM/FS
forward pickuptimer();
public pickuptimer()
{
    for(new i; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(IsPlayerInRangeOfPoint(i, Rango, x,y,z)) //Posicion y Rango donde Se Ejecutara el mensaje
            {
               //ACA LA FUNCION KE SE EJECUTARA
            }
            else
            {
               //ACA LA FUNCION EJECUTADA SE SALDRA
            }
        }
    }
}
Reply
#8

Quote:
Originally Posted by bytytus
Посмотреть сообщение
yo Te Recomiendo ke utilices Textdraw para los textos de los pichup y con la siguiente manera, ya ke tu manera al esta en la posicion se te haga flood de SendClientMessage o con la manera ke te dio Bu11Sh0t, pero... no te lo recomiendo.

pawn Код:
//OnGameModeInit o FilterScript
SetTimer("pickuptimer", 1000, true);
CreatePickup(1212, 1, 860.5668, 2267.2808, -16.4040, 0);

//Al Final Del GM/FS
forward pickuptimer();
public pickuptimer()
{
    for(new i; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(IsPlayerInRangeOfPoint(i, Rango, x,y,z)) //Posicion y Rango donde Se Ejecutara el mensaje
            {
               //ACA LA FUNCION KE SE EJECUTARA
            }
            else
            {
               //ACA LA FUNCION EJECUTADA SE SALDRA
            }
        }
    }
}
Seria completamente el mismo problema, ya que cada segundo detecta si esta en cierto rango de cierta posiciуn. Es decir, si permanece 1 hora en el rango, 1 hora le estarб enviando ese mensaje. Pero concuerdo contigo, seria mejor utilizar un textdraw o un gametext (como lo dije anteriormente)
Reply
#9

mmm decidн crear un
pawn Код:
Create3DTextLabel("/Depositar\n/Retirar\n/Saldo",Verde,860.5668, 2267.2808, -16.4040,10.0,0);
:S que opinan?
Reply
#10

El problema es el tipo de pickup..
pawn Код:
new Banco;
Banco = CreatePickup(1212, 23, 860.5668, 2267.2808, -16.4040, 0);
if(pickupid == Banco)//Here is our pickup the pickup1
    {
         SendClientMessage(playerid,Verde,"Bienvenido a nuestro Banco. usa /depositar /retirar /saldo");
     return 1;
    }
Cambie el 1 por el 23
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)