SendClientMessage ne salje poruku

Započeo Qiyamet
6. Maj 2022. Zaključano
723
pregleda
8
postova
ElkaIsBack
3
Hustler
6. Maj 2022.
Opis problema: napravio sam stock za slanje poruke rcon adminu, medjutim cim je poruka malo duza uopste se ne posalje. ( a u slucaju da klasicnim putem formatiram string i saljem poruku, posalje se bez problema, a iste je duzine ).
Dio skripte :
stock SendClientMessageToRCON(message[])  {
            new string;
            for (new i = 0; i < MAX_PLAYERS; i++ )  {
              if( IsPlayerConnected(i) )  {
                  if( IsPlayerAdmin(i) )  {
                    format(string, sizeof(string), ""color_yellow"*** ( RCON Chat ) "color_gray"%s"color_yellow".", message);
                    SendClientMessage(i, -1, string);
                  }
              }
            }
            return 1;
        }

Slika/Video://
neshallon
5
Kingpin
6. Maj 2022.
256  😄
ElkaIsBack
3
Hustler
6. Maj 2022.
neshallon wrote on May 6, 2022, 1:08 pm:
256  😁

i na 512 i 1024 isti problem
FunnyGamingDay - FGD
6
OG Legend
6. Maj 2022.
Nema smisla davati toliki size stringu, jer chat message je max 128 karaktera. Ako je poruka veća od 128 karaktera, onda se neće ni poslati.

Former SA:MP server developer

ElkaIsBack
3
Hustler
6. Maj 2022.
Vasic wrote on May 6, 2022, 1:23 pm:
Nema smisla davati toliki size stringu, jer chat message je max 128 karaktera. Ako je poruka veća od 128 karaktera, onda se neće ni poslati.

Pokusao sam i sa 128 velicinom, meni je problem sto ako poruku saljem bez ovog stocka, samo sa stringom i formatiranjem tog stringa, poruka se posalje. Ista takva poruka koju saljem sa ovim stockom se nece poslat. Desave mi se taj problem i sa Error porukom ( stockom ) koji sam napravio na istom principu. Izludjuje me vec 3 dana ne znam kako da rijesim to.
stock SendErrorMessage(playerid, message[])	{
new string;
format(string, sizeof(string), ""color_error"( Error ) "color_white"%s"color_gray", "color_gray"%s"color_gray".", PlayerNameFromID(playerid), message);
SendClientMessage(playerid, -1, string);
return 1;
}
ivan221
5
Made Man
🔥7
6. Maj 2022.
Vasic wrote on May 6, 2022, 1:23 pm:
Nema smisla davati toliki size stringu, jer chat message je max 128 karaktera. Ako je poruka veća od 128 karaktera, onda se neće ni poslati.
Input je 128, output je 144+1(null)
NegativeIQ
5
Kingpin
6. Maj 2022.
SendClientMessage funkcija nece poslati poruku ukoliko je string veci od 144 karaktera - https://open.mp/docs/scripting/functions/SendClientMessage

Direktan odgovor na tvoj problem je da stavis string da je 144.

Takodje, embeded boje u samp-u funkcionisu tako sto koristis RRGGBB boju u hexadecimalnom zapisu gde svaki hexadecimalni karakter je jedan karakter u stringu, i to se ubacuje izmedju {} zagrada. Znaci 2 zagrade i 6 karaktera hexadecimalnog zapisa = 8 karaktera svaki put kad iskoristis jednu boju.
U slucaju sa
""color_yellow"*** ( RCON Chat ) "color_gray"%s"color_yellow"."
Pre nego sto ubacis text u format imas color_yellow (8 karaktera) , rcon chat kao text (17 karaktera) , i color gray (8 karaktera). Znaci 33 karaktera si potrosio jos pre nego sto si ubacio message. I nakon toga imas jos 8 karaktera boje i jedan karakter koji je tacka znaci jos 9 sto je ukupno 42 bez message. Tako da si trecinu poruke iskoristio samo na formatiranje.
ElkaIsBack
3
Hustler
6. Maj 2022.
Deleted User wrote on May 6, 2022, 4:21 pm:
SendClientMessage funkcija nece poslati poruku ukoliko je string veci od 144 karaktera - https://open.mp/docs/scripting/functions/SendClientMessage

Direktan odgovor na tvoj problem je da stavis string da je 144.

Takodje, embeded boje u samp-u funkcionisu tako sto koristis RRGGBB boju u hexadecimalnom zapisu gde svaki hexadecimalni karakter je jedan karakter u stringu, i to se ubacuje izmedju {} zagrada. Znaci 2 zagrade i 6 karaktera hexadecimalnog zapisa = 8 karaktera svaki put kad iskoristis jednu boju.
U slucaju sa
""color_yellow"*** ( RCON Chat ) "color_gray"%s"color_yellow"."
Pre nego sto ubacis text u format imas color_yellow (8 karaktera) , rcon chat kao text (17 karaktera) , i color gray (8 karaktera). Znaci 33 karaktera si potrosio jos pre nego sto si ubacio message. I nakon toga imas jos 8 karaktera boje i jedan karakter koji je tacka znaci jos 9 sto je ukupno 42 bez message. Tako da si trecinu poruke iskoristio samo na formatiranje.

Konacno neko ko razumije srz problema, hvala ti brate. Fixo si mi problem. Lock cu temu

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha