Ayuda con mensajes automaticos
#1

Soy demasiado nuevo en esto del pawno y estoy aprendiendo mientras edito un gamemode.
Bueno, el tema es que puse unos mensajes automaticos (el codigo) en el mismo gamemode y no en un filterscript, supongo que da lo mismo jeje. al compilar me da este error:

(300) : error 001: expected token: ";", but found "}"

asн esta esa parte del cуdigo:

Код:
public GlobalAnnouncement(playerid)
{
   switch (Msg)
{
       case 0:
      {
      SendClientMessage(playerid, COLOR_RED, "їNecesitas sacar un vehiculo? Utiliza el comando /cars");
      }
       case 1:
      {
        SendClientMessage(playerid, COLOR_RED, "Si ves a alguien haciendo algo usa /report y no acuses por el chat");
      }
       case 2:
      {
      SendClientMessage(playerid, COLOR_RED, "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre");
      }
       case 3:
      {
      SendClientMessage(playerid, COLOR_RED, "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar");
      }
       case 4:
      {
        SendClientMessage(playerid, COLOR_RED, "Lee /reglas y enterate de lo que esta prohibido en el servidor")
(300) }

}
   return 1;

}
Talvйs sea simple pero la verdad es que se muy poco, espero que puedan ayudarme chicos.
Saludos
Reply
#2

SendClientMessage(playerid, COLOR_RED, "Lee /reglas y enterate de lo que esta prohibido en el servidor"); aсade lo que estб en rojo ahн
Reply
#3

Muchнsimas gracias
Reply
#4

esto estarнa mejor.
saludos.

pawn Код:
//esto mandara mensajes randon (aleatorios)

// colocar en OnGameModeInit con un bucle, o en OnPlayerConnect o OnPlayerSpawn
SetTimerEx("GlobalAnnouncement", 1*60000, true, "i", playerid); //se ejecutara cada 1 ninuto

static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
   SendClientMessage(playerid, -1, mensajes[random(sizeof(mensajes))]);
}

o tambiйn asн:

pawn Код:
//esto mandara mensajes en escala (segъn la ubicaciуn del del mensaje en el new)

// colocar en OnGameModeInit con un bucle, o en OnPlayerConnect o OnPlayerSpawn
SetTimerEx("GlobalAnnouncement", 1*60000, true, "i", playerid); //se ejecutara cada 1 ninuto

static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessage(playerid, -1, mensajes[++contando]);
}

RECOMENDADO:

pawn Код:
//esto mandara mensajes randon (aleatorios)

// colocar en OnGameModeInit
SetTimer("GlobalAnnouncement", 1*60000, true); //se ejecutara cada 1 ninuto

static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement();
public GlobalAnnouncement(){
   SendClientMessageToAll(-1, mensajes[random(sizeof(mensajes))]);
}

o tambiйn asн:

pawn Код:
//esto mandara mensajes en escala ( segun la ubicacion del del mensaje en el new)

// colocar en OnGameModeInit con un bucleo, o en OnPlayerConnect oOnPlayerSpawn
SetTimer("GlobalAnnouncement", 1*60000, true); //se ejecutara cada 1 ninuto

static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement();
public GlobalAnnouncement(){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessageToAll(-1, mensajes[++contando]);
}
Reply
#5

Quote:
Originally Posted by OTACON
Посмотреть сообщение
esto estarнa mejor.
saludos.


pawn Код:
static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
   SendClientMessage(playerid, -1, mensajes[random(sizeof(mensajes))]);
}
o tambiйn asн:

pawn Код:
static const mensajes[][]={
    { "їNecesitas sacar un vehiculo? Utiliza el comando /cars" },
    { "Si ves a alguien haciendo algo usa /report y no acuses por el chat" },
    { "Recuerda visitar nuestra pagina web para estar al tanto de lo que ocurre" },
    { "Puedes comprar armas en los Ammu Nation. Estan marcados con un signo de arma en tu radar" },
    { "Lee /reglas y enterate de lo que esta prohibido en el servidor" }
};

forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessage(playerid, -1, mensajes[++contando]);
}
Amigo usй ambos cуdigos y me dieron errores, de todas formas gracias

Por cierto, si me pudieran ayudar ahora con esto; es que solo 1 de los mensajes sale a la luz xD, o sea solo un mensaje es visible, esto se modifica en OnGameModeInit en donde tengo esto:

Код:
{
	    Msg = 0;
   SetTimer("GlobalAnnouncement",10000,true);
	}
En donde dice "Msg = 0;" el 0 es el mensaje que se muestra (el cuбl seria el /cars) y solo ese mensaje ъnicamente. No se como poner para que se muestren mбs.. si alguien sabe estaria de nuevo agradecido y muy apenado.
Reply
#6

Mira, no te compliques mбs.

https://sampwiki.blast.hk/wiki/Random lee eso, es el uso 'random' que se puede aplicar a muchas cosas. Eso te facilita y te ahorra muchos problemas.

pawn Код:
new RandomMensajes[][] =
{
   
    {"Soy un mensaje random, :) :)"},
    {"Yo soy otro mensaje random :3"},
    {"Quй idiotas los mensajes de arriba :picard:"}
};
Y los hacemos funcionar con un timer de, por ejemplo, 10 segъndos.

pawn Код:
//OnGameModeInit
SetTimer("MensajesAuto",10000,true);
Y a la funciуn luego la definimos.

pawn Код:
forward MensajesAuto(playerid);
public MensajesAuto(playerid)
{
    new rand = random(sizeof(RandomMensajes));
    SendClientMessage(playerid,-1,RandomMensajes[rand]);

}
Reply
#7

Otacon, tu cуdigo esta mal.

pawn Код:
forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessage(playerid, -1, mensajes[++contando]);
}
Esa parte.

Por cierto, que bien que hayas aprendido a usar arrays. Hace unos dias aun usabas switch.
Reply
#8

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Otacon, tu cуdigo esta mal.

pawn Код:
forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessage(playerid, -1, mensajes[++contando]);
}
Esa parte.

Por cierto, que bien que hayas aprendido a usar arrays. Hace unos dias aun usabas switch.
no queria postear pero, influye mucho en el juego usar arrays o switch?
Reply
#9

Depende de cuan cargado este el servidor (maquina) donde se hostee el servidor (exe). Pero, en este tipo de casos, se debe usar arrays.
Reply
#10

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Otacon, tu cуdigo esta mal.

pawn Код:
forward GlobalAnnouncement(playerid);
public GlobalAnnouncement(playerid){
    static contando;
    if(contando >= sizeof(mensajes) ) contando=0;
    SendClientMessage(playerid, -1, mensajes[++contando]);
}
Esa parte.

Por cierto, que bien que hayas aprendido a usar arrays. Hace unos dias aun usabas switch.
que esta mal?, yo no le veo el error.
lo se de hace mucho, segъn las ganas que tenga utilizo la forma que quiera para ayudar.

si vas a decir que esta mal, di el error tambiйn... que es eso que haces de un pre-comentario del problema... dios.!.

PD: por que no se te muestre la forma de programar eso no significa que no se sepa.
PD2: si estas atento a mi, estate atento con mas atenciуn.
PD3: http://pastebin.com/u/OtaconEvil
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)