Ayuda al mandar un sms

¿Tienes dudas sobre un código? Consúltalas aquí y aprende cómo se solucionan diferentes tipos de errores.

Moderador: Ayudantes

Reglas del Foro
  • A la hora de realizar su pregunta, especifique bien los detalles y tenga buena ortografía, de esa manera el resto de los usuarios podrán entender su pregunta.
  • Recuerde proporcionar el código que le trae problemas y sus respectivos errores utilizando el BBCode [Pawn]Código aquí[/Pawn] en su mensaje.
  • En esta sección, sólo podrás publicar preguntas asociadas a programación en PAWN ("¿Cuál es la diferencia entre new y static?"), más no temas relacionados a pedir códigos ("¿Me pueden pasar el sistema de 'X' servidor?"). (Ir a Pedidos para publicar estos temas).
  • Si tu pregunta es relacionada con un GM publicado en PawnScript, no crees tu pregunta en esta sección, créala en el mismo tema desde donde obtuviste el GameMode.
  • Evita colocar títulos como: "[Pregunta]", "[Duda]", "[Ayuda]", etc. Los títulos deben ser descriptivos.
  • Si la pregunta es respondida, no modifiques el título ni el contenido de los mensajes del tema. Quizás le pueda servir a alguien más en otro momento.
  • Si la pregunta es respondida, el tema será movido a "Preguntas Solucionadas".
  • Si la pregunta no cumple con alguna de las reglas antes mencionadas o con las Normas del foro, el tema será movido a "Preguntas Cerradas" o a la Papelera.
Responder
Jelzen
Mensajes: 135
Registrado: 27 Nov 2018 23:50
Reputación: -2

06 May 2019 15:21

Amigos, porqué cuando alguien manda un mensaje ejemplo: hola que hacemos como te ha ido tenia tiempo sin saber de ti jaja ||| Solo llega Hola que hacemos como te no llega el mensaje completo acá el codigo.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

CMD:sms(playerid, params[])
{
	if(PlayerInfo[playerid][pNumero] > 0)
	{
		if(PlayerInfo[playerid][jDinero] >= 15)
		{
			new numero, mensaje[256], mensaje2[256];
			if(!sscanf(params, "ds", numero, mensaje))
			{
				if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
				EnviarSMS(playerid, numero, mensaje);
				return 1;
			}
			else if(!sscanf(params, "s", mensaje2))
			{
				if(GetPVarInt(playerid, "NumeroSMS") > 0)
				{
					if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
					EnviarSMS(playerid, GetPVarInt(playerid, "NumeroSMS"), mensaje2);
					if(GetSpam(params)) MensajeSpam(playerid,params);
					return 1;
				}
				else if(GetPVarInt(playerid, "NumeroSMS") == 0)
				{
					if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
					SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
					SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
					return 1;
				}
			}
			SendClientMessage(playerid, COLOR_WHITE, "Escribe: {DBED15}/sms número texto{FFFFFF}. Ejemplo: {DBED15}/sms 5999999 Hola.");
		}
		else return SendClientMessage(playerid, COLOR_WHITE, "No tienes suficiente dinero para enviar un SMS, necesitas "#Rojo"$15"#Blanco".");
	}
	else return SendClientMessage(playerid, COLOR_WHITE, "Necesitas un teléfono móvil para poder enviar un sms.");
	return 1;
}
  Cantidad de llaves: Abiertas(11)-Cerradas(11) | Lineas Totales: 37
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

stock EnviarSMS(playerid, numero, text[256])
{
    new anio, mes, dia;
    new pName[32];
    new hora, minuto, segundo;
    getdate(anio, mes, dia);
    gettime(hora, minuto, segundo);
    GetPlayerName(playerid, pName, 32);
    if(PlayerInfo[playerid][pNumero] == numero) return SendClientMessage(playerid, COLOR_WHITE, "No puedes autoenvitarte un SMS.");
    foreach(Player, i)
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][pNumero] == numero && numero != 0)
        {
            if(TelefonoEstado[i] == 1)
            {
                SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
                SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
                return 1;
            }
            SendClientMessageFormatted(i, COLOR_SMS, "((SMS de %s [%d])): %s",pName,PlayerInfo[playerid][pNumero], text);
            SendClientMessage(playerid, COLOR_SMS, "Mensaje enviado con éxito.");
            if(GetSpam(text)) MensajeSpam(playerid,text);
            GameTextForPlayer(playerid, "~r~-15$", 5000, 1);
            if(GetPVarInt(playerid, "NumeroSMS") == 0 || GetPVarInt(playerid, "NumeroSMS") != numero)
            {
                SetPVarInt(playerid, "NumeroSMS", numero);
                SendClientMessageFormatted(playerid, COLOR_WHITE, "Para volver a enviar otro mensaje al número "#Celeste"%d {FFFFFF}simplemente usa "#Amarillo1"/sms mensaje{FFFFFF}.",numero);
            }
            PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
            QuitarDinero(playerid, -15);
            return 1;
        }
    }
    SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
    SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
    return 1;
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 37
El tiempo de dios es perfecto <3

Antony Rodriguez
Aprendiz
Aprendiz
Mensajes: 297
Registrado: 17 Feb 2018 12:03
Reputación: 2

07 May 2019 19:36

Jelzen escribió:
06 May 2019 15:21
Amigos, porqué cuando alguien manda un mensaje ejemplo: hola que hacemos como te ha ido tenia tiempo sin saber de ti jaja ||| Solo llega Hola que hacemos como te no llega el mensaje completo acá el codigo.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

CMD:sms(playerid, params[])
{
	if(PlayerInfo[playerid][pNumero] > 0)
	{
		if(PlayerInfo[playerid][jDinero] >= 15)
		{
			new numero, mensaje[256], mensaje2[256];
			if(!sscanf(params, "ds", numero, mensaje))
			{
				if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
				EnviarSMS(playerid, numero, mensaje);
				return 1;
			}
			else if(!sscanf(params, "s", mensaje2))
			{
				if(GetPVarInt(playerid, "NumeroSMS") > 0)
				{
					if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
					EnviarSMS(playerid, GetPVarInt(playerid, "NumeroSMS"), mensaje2);
					if(GetSpam(params)) MensajeSpam(playerid,params);
					return 1;
				}
				else if(GetPVarInt(playerid, "NumeroSMS") == 0)
				{
					if(Jail[playerid] > 0 || PlayerInfo[playerid][pTiempoJailS] > 0) return SendClientMessage(playerid, COLOR_WHITE, "Te quitaron el teléfono antes de entrar a la celda.");
					SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
					SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
					return 1;
				}
			}
			SendClientMessage(playerid, COLOR_WHITE, "Escribe: {DBED15}/sms número texto{FFFFFF}. Ejemplo: {DBED15}/sms 5999999 Hola.");
		}
		else return SendClientMessage(playerid, COLOR_WHITE, "No tienes suficiente dinero para enviar un SMS, necesitas "#Rojo"$15"#Blanco".");
	}
	else return SendClientMessage(playerid, COLOR_WHITE, "Necesitas un teléfono móvil para poder enviar un sms.");
	return 1;
}
  Cantidad de llaves: Abiertas(11)-Cerradas(11) | Lineas Totales: 37
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

stock EnviarSMS(playerid, numero, text[256])
{
    new anio, mes, dia;
    new pName[32];
    new hora, minuto, segundo;
    getdate(anio, mes, dia);
    gettime(hora, minuto, segundo);
    GetPlayerName(playerid, pName, 32);
    if(PlayerInfo[playerid][pNumero] == numero) return SendClientMessage(playerid, COLOR_WHITE, "No puedes autoenvitarte un SMS.");
    foreach(Player, i)
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][pNumero] == numero && numero != 0)
        {
            if(TelefonoEstado[i] == 1)
            {
                SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
                SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
                return 1;
            }
            SendClientMessageFormatted(i, COLOR_SMS, "((SMS de %s [%d])): %s",pName,PlayerInfo[playerid][pNumero], text);
            SendClientMessage(playerid, COLOR_SMS, "Mensaje enviado con éxito.");
            if(GetSpam(text)) MensajeSpam(playerid,text);
            GameTextForPlayer(playerid, "~r~-15$", 5000, 1);
            if(GetPVarInt(playerid, "NumeroSMS") == 0 || GetPVarInt(playerid, "NumeroSMS") != numero)
            {
                SetPVarInt(playerid, "NumeroSMS", numero);
                SendClientMessageFormatted(playerid, COLOR_WHITE, "Para volver a enviar otro mensaje al número "#Celeste"%d {FFFFFF}simplemente usa "#Amarillo1"/sms mensaje{FFFFFF}.",numero);
            }
            PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
            QuitarDinero(playerid, -15);
            return 1;
        }
    }
    SendClientMessage(playerid, COLOR_WHITE, "El mensaje "#Rojo"no se pudo entregar{FFFFFF}, comprueba que el número sea el correcto.");
    SendClientMessage(playerid, COLOR_WHITE, "Si el número está bien, probablemente el teléfono esté apagado.");
    return 1;
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 37
Cuando un mensaje no se envia completo es por qué el parametro qué detecta el mensaje queda muy corto como new mensaje[250]; Solo enviara 250 caracteres, trata de aumentarlo a 350 y dime qué resultados te dio
Después de tirar la toalla, Dije qué no volveria a pawn, Unos meses después volvi para aprender y enseñar, Dando riendas con un nuevo proyecto.
Avatar de Usuario
R O D R I
Aprendiz
Aprendiz
Mensajes: 8
Registrado: 04 May 2019 19:51
Ubicación: Montevideo
Reputación: 0

09 May 2019 14:18

Probé lo que Antony puso y anduvo lo más bien -happy
R O D R I

Responder