Automatsko ime servera

5,608
pregleda
27
postova
Bajricc
4
Made Man
26. Feb. 2018.
E ovako ja sam odlucio da vam pokazem komandu da se mjenja ime servera svakih 5 sekundi ili koliko stavite u vasem tajmeru
Pa da krenemo:
new Mjenjajime = 0;

Takode bi bilo dobro da stavimo tj moramo stavit
#define SCM          SendClientMessage
#define ZELENA 					0x33AA33AA

pod OnGPlayerConnect dodamo jedan tajmer:
public OnPlayerConnect(playerid)
{
      SetTimer("Srwime,5000,true);
      return 1;
}

Sada idemo da stavimo public i forward za Srwime(da se mjenja ime kad se ukljuci cmd)
forward Srwime();
public Srwime()
{
      if(Mjenjajime == 1)
      {
              new var = random(5); // izaberete broj koliko ocete da se mjenja puta kasnije cete vidjeti zasto
              switch (var)
              {
                          case 0:SendRconCommand("hostname PRVO IME");
                          case 1:SendRconCommand("hostname DRUGO IME");
                          case 2:SendRconCommand("hostname TRECE IME");
                          case 3:SendRconCommand("hostname CETVRTO IME");
                          case 4:SendRconCommand("hostname PETO IME"); // ZBOG TOGA SMO STAVILI GORE (5)
                }
        }
          return 1;
}

Stavimo i da tajmer killuje tj da ga ne poziva na svakom konektu
public OnGameModeExit()
{
            KillTimer(Srwime);
            return 1;
}
CMD:mjenjajime(playerid, params[])
{
        if(PlayerInfo == 1 || IsPlayerAdmin(playerid)) // ILI KOJI HOCETE NIVO ADMINA DA VAM TO MOZE RADIT
        {
                Mjenjajime = 1; // 1 je ukljuceno
                SCM(playerid, ZELENA,"Ukljucili ste mjenjanje imena servera svakih 5 sekundi");
          }
          else
          {
                Mjenjajime = 0; // 0 je iskljuceno
                SCM(playerid, ZELENA,"Iskljucio si mjenjanje imena");
          }
          else return SCM(playerid, ZELENA,"NemaÅ¡ autorizaciju");
          return 1;
}

Ako sam sta zaboravio slobodno recite da dodam, ovo je jednostavno za napravit
Dowla
5
Underboss
26. Feb. 2018.
Ne znam ko bi ovo koristio al et pohvale za trud 😄
_EdwiN_
5
Underboss
26. Feb. 2018.
Pohvale za trud 😉
NemanjaGakovo
4
Shot Caller
26. Feb. 2018.
Pohvale za trud 🙂
Inace mogao si staviti da se pali i gasi samo jednom komandom, a ne sa dve.
StefanSkripter
4
Enforcer
26. Feb. 2018.
Vrh 😎
Ivan_Ino
5
Kingpin
26. Feb. 2018.
Oke je, ali se može puno lakse i dinamicnije odraditi, time da ne moras svaki put povecavati random kada dodas novo ime i slicno, također nemoj stvarati toliko timera bezveze kada se svaki igrac spoji, jedan timer je dovoljan, također KillTimer(Srwime); ti nece raditi, (undefined symbol Srwime)

nesto tipa ovako:

#include
#include

new changeHostname = false; // boolean varijabla, ne integer, single bit
new hostnames[] = {
    {"PRVO IME"},
    {"DRUGO IME"},
    {"TRECE IME"},
    {"CETVRTO IME"},
    {"PETO IME"},
    {"I TAKO DALJE"}
};

public OnGameModeInit()
{
    // Dodajemo timer pod server init, ne igracev, ovako ces imati milion timera lol
    SetTimer("ServerHostname", 5000, true);
    return 1;
}

forward ServerHostname();
public ServerHostname()
{
    if (changeHostname) {
        new rand = random(sizeof(hostnames));
        new command;

        format (command, sizeof command, "hostname %s", hostnames);
        SendRconCommand(command);
    }
    return 1;
}

CMD:mjenjajime(playerid, arg[])
{
    if (!IsPlayerAdmin(playerid)) return 0; // I ostale provjere ovdje
    changeHostname = !changeHostname;
    return 1;
}


P.S. ovo sam pisao na MAC-u, tako da nemam compiler da testiram, ali ovako nesto bi trebalo raditi i biti puno jednostavnije
Bajricc
4
Made Man
27. Feb. 2018.
dowla wrote on February 26, 2018, 8:52 pm:
Ne znam ko bi ovo koristio al et pohvale za trud 😄

Hvala
_EdwiN_ wrote on February 26, 2018, 8:52 pm:
Pohvale za trud 😉

Hvala
#Nemanja wrote on February 26, 2018, 9:16 pm:
Pohvale za trud 🙂
Inace mogao si staviti da se pali i gasi samo jednom komandom, a ne sa dve.

To je lako za napravit
Steffaâ„¢ wrote on February 26, 2018, 9:21 pm:
Vrh 😎

Hvalq
Ino42O wrote on February 26, 2018, 10:09 pm:
Oke je, ali se može puno lakse i dinamicnije odraditi, time da ne moras svaki put povecavati random kada dodas novo ime i slicno, također nemoj stvarati toliko timera bezveze kada se svaki igrac spoji, jedan timer je dovoljan, također KillTimer(Srwime); ti nece raditi, (undefined symbol Srwime)

nesto tipa ovako:

#include
#include

new changeHostname = false; // boolean varijabla, ne integer, single bit
new hostnames[] = {
    {"PRVO IME"},
    {"DRUGO IME"},
    {"TRECE IME"},
    {"CETVRTO IME"},
    {"PETO IME"},
    {"I TAKO DALJE"}
};

public OnGameModeInit()
{
    // Dodajemo timer pod server init, ne igracev, ovako ces imati milion timera lol
    SetTimer("ServerHostname", 5000, true);
    return 1;
}

forward ServerHostname();
public ServerHostname()
{
    if (changeHostname) {
        new rand = random(sizeof(hostnames));
        new command;

        format (command, sizeof command, "hostname %s", hostnames);
        SendRconCommand(command);
    }
    return 1;
}

CMD:mjenjajime(playerid, arg[])
{
    if (!IsPlayerAdmin(playerid)) return 0; // I ostale provjere ovdje
    changeHostname = !changeHostname;
    return 1;
}


P.S. ovo sam pisao na MAC-u, tako da nemam compiler da testiram, ali ovako nesto bi trebalo raditi i biti puno jednostavnije

Ok hvala ti inace ovo je prvi put da sam mesto odradio
Belic
4
Made Man
1. Mar. 2018.
Pohvale za trud  😉
Bajricc
4
Made Man
1. Mar. 2018.
Belic wrote on March 1, 2018, 8:56 am:
Pohvale za trud  😉

Hvala
Muma Rascall
6
Forum Don
11. Mar. 2018.
Ino je sve objasnio, nije potrebno kada se igrač konektuje jer kada bi bilo 100 igrača ne bi mogao primjetiti koliko brzinom bi se mijenjalo jer SendRconCommand("hostname naziv"); je za globalno znači svima mijenja hostname. 🙂
Bajricc
4
Made Man
11. Mar. 2018.
Muma187_ wrote on March 11, 2018, 9:34 am:
Ino je sve objasnio, nije potrebno kada se igrač konektuje jer kada bi bilo 100 igrača ne bi mogao primjetiti koliko brzinom bi se mijenjalo jer SendRconCommand("hostname naziv"); je za globalno znači svima mijenja hostname. 🙂

Znam skonto sam Hvala ti
Ademii
4
Made Man
11. Mar. 2018.
SetTimer("Srwime,5000,true); zar ne treba SetTimer("Srwime",5000,true);
tonimacak518
4
Enforcer
13. Mar. 2018.
Ima malih gresaka u kodu ali dobro je
Bajricc
4
Made Man
13. Mar. 2018.
Nacho wrote on March 11, 2018, 10:36 pm:
SetTimer("Srwime,5000,true); zar ne treba SetTimer("Srwime",5000,true);

Slucajno
TONY x wrote on March 13, 2018, 7:24 am:
Ima malih gresaka u kodu ali dobro je

Tenk
Lumax
4
Enforcer
6. Apr. 2018.
gj

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha