Jump to content
Geplaatst:
comment_1142334

Heey GTAers

ik heb weer een vraagje.

ik kom er niet echt uit en kan eigenlijk niet veel over de functie vinden

ik denk dat het te maken heeft met deze functie en denk dat het in deze richting moet:

public SendAllFormattedText(playerid, const str[], define)
{
new tmpbuf[256];
format(tmpbuf, sizeof(tmpbuf), "[%s]" playerid, str, define);
SendClientMessageToAll(0xFFFF00AA, tmpbuf);
}

mar helaas werkt dat niet.

Weet iemand hoe?

en als je weet wil je dan uitleg bij geven ;) om het beter te kunnen begrijpen?

public SendAllFormattedText(playerid, const str[], define)
{
new tmpbuf[256];
format(tmpbuf, sizeof(tmpbuf), str, define);
SendClientMessageToAll(0xFFFF00AA, tmpbuf);
}

dit is de oude

Met vriendelijke groetjes

Nomis

Featured Replies

Geplaatst:
comment_1144457

new Name[256]; >> Gebruik MAX_PLAYERNAME

new String[256]; >> Lol, dit is het enigste dat klopt

GetPlayerName(playerid, String); >> WTF? Dit klopt echt niet.

format(Name, 256, "[%d] %s", GetPlayerID(playerid), String); >> Huh? Wat doe jij hier nou?

SetPlayerName(playerid, string); >> Hij wilt geen naam veranderen!

EDIT: jovu123, ik weet niet waar jij scripten hebt geleert maar dit lijkt wel alsof je van 20 scripts allemaal iets willekeurig hebt uitgehaalt.

Bewerkt: door WackoX

Geplaatst:
comment_1144486

Nahh het is alleen 2/3 maanden geleden dat ik echt bezig ben geweest met scripten.

Moet alleen de callbacks etc weer doornemen.

'k zal alles nog ff op een rijtje zetten

Wat wil je nu precies? Wil je een ID uit een naam krijgen een daarnaar een bericht sturen genaamt tmpbuf?

Bewerkt: door jovu123

Geplaatst:
comment_1144596
new String[256]; >> Lol, dit is het enigste dat klopt

Zelfs deze kan beter, aangezien een regel in de chat maar maximaal 128 karakters kan bevatten :puh:

Ontopic:

public SendAllFormattedText(playerid, const str[], define)
{
new tmpbuf[128], tmpbuf2[128];
new PlayerName[MAX_PLAYER_NAME];
format(tmpbuf, sizeof(tmpbuf), str, define);
GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
format(tmpbuf2, sizeof(tmpbuf2), "%s [%d]:  %s, PlayerName, playerid, tmpbuf);
SendClientMessageToAll(0xFFFF00AA, tmpbuf2);
}

Nu krijg je bij elk zo'n bericht de naam en id van de speler ervoor.

Ik weet zelf niet echt waarvoor je dit wil gebruiken :{

Bewerkt: door =>Sandra<=

Geplaatst:
  • Auteur
comment_1144722
new String[256]; >> Lol, dit is het enigste dat klopt

Zelfs deze kan beter, aangezien een regel in de chat maar maximaal 128 karakters kan bevatten :puh:

Ontopic:

public SendAllFormattedText(playerid, const str[], define)
{
new tmpbuf[128], tmpbuf2[128];
new PlayerName[MAX_PLAYER_NAME];
format(tmpbuf, sizeof(tmpbuf), str, define);
GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
format(tmpbuf2, sizeof(tmpbuf2), "%s [%d]:  %s", PlayerName, playerid, tmpbuf);
SendClientMessageToAll(0xFFFF00AA, tmpbuf2);
}

Nu krijg je bij elk zo'n bericht de naam en id van de speler ervoor.

Ik weet zelf niet echt waarvoor je dit wil gebruiken :{

hey bedankt voor het helpen.

maar als ik nu gewoon iets typ dan zie ik het id nog niet staan?

btw je bent hier een " vergeten

format(tmpbuf2, sizeof(tmpbuf2), "%s [%d]: %s", PlayerName, playerid, tmpbuf);

Bewerkt: door Nomis3

Geplaatst:
comment_1144781

Oh, je wilt gewoon bij elk chat-bericht het id bij zijn/haar naam?

Zo ja? Dan heb je die SendAllFormattedText helemaal niet nodig. Dat kan gewoon bij OnPlayerText

public OnPlayerText(playerid, text[])
{
new string[128], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
format(string, sizeof(string), "%s [ID: %d]: %s", PlayerName, ID, text);
SendClientMessageToAll(0xFFFFFFAA, string);
return 0;
}

Geplaatst:
  • Auteur
comment_1144788
Oh, je wilt gewoon bij elk chat-bericht het id bij zijn/haar naam?

Zo ja? Dan heb je die SendAllFormattedText helemaal niet nodig. Dat kan gewoon bij OnPlayerText

public OnPlayerText(playerid, text[])
{
new string[128], PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
format(string, sizeof(string), "%s [ID: %d]: %s", PlayerName, ID, text);
SendClientMessageToAll(0xFFFFFFAA, string);
return 0;
}

ja het werkt.

bedankt!

ik ben nieuw dus ik weet nog niet alles

alleen is het ook mogelijk om de naam kleur zoals bij tab?

playerid 0 = oranje

playerid 1 = paars

enz

Bewerkt: door Nomis3

Geplaatst:
comment_1145111
(...)

ik ben nieuw dus ik weet nog niet alles

alleen is het ook mogelijk om de naam kleur zoals bij tab?

playerid 0 = oranje

playerid 1 = paars

enz

Je kan per team een kleur geven, of iedere speler een standaart kleur. Maar als jij het via playerid wil doen kan je het zo doen:

public OnPlayerSpawn(playerid)
{
SetPlayerColor(0, COLOR_ORANGE);
SetPlayerColor(1, COLOR_PURPLE);
SetPlayerColor(2, COLOR_.....);
SetPlayerColor(3, COLOR_.....);
SetPlayerColor(4, COLOR_.....);
SetPlayerColor(5, COLOR_.....);
}
//.............enzovoort..............

Geplaatst:
  • Auteur
comment_1145243
(...)

ik ben nieuw dus ik weet nog niet alles

alleen is het ook mogelijk om de naam kleur zoals bij tab?

playerid 0 = oranje

playerid 1 = paars

enz

Je kan per team een kleur geven, of iedere speler een standaart kleur. Maar als jij het via playerid wil doen kan je het zo doen:

public OnPlayerSpawn(playerid)
{
SetPlayerColor(0, COLOR_ORANGE);
SetPlayerColor(1, COLOR_PURPLE);
SetPlayerColor(2, COLOR_.....);
SetPlayerColor(3, COLOR_.....);
SetPlayerColor(4, COLOR_.....);
SetPlayerColor(5, COLOR_.....);
}
//.............enzovoort..............

Maar de kleur is wel goed alleen.

als ik nu in de chat iets typ krijgt iedereen de naam wit

en de text wit

Geplaatst:
comment_1145393

Bij mijn weten is dat niet haalbaar, omdat de chat maar één kleur per regel ondersteunt (de naam en de chattekst zie ik nu even afzonderlijk). Je kan dus wel de kleur van de speler overnemen (lijkt mij, niet zeker), maar je kan niet het ID een aparte kleur geven.

Geplaatst:
comment_1145396
Bij mijn weten is dat niet haalbaar, omdat de chat maar één kleur per regel ondersteunt (de naam en de chattekst zie ik nu even afzonderlijk). Je kan dus wel de kleur van de speler overnemen (lijkt mij, niet zeker), maar je kan niet het ID een aparte kleur geven.
Op mijn manier geef je elke speler zo zo'n eigen kleur. Text kleur is denk ik wel mogelijk alleen dan moet je denk ik bij alles wat wordt getypt SendClientMessage gebruiken. Als het al mogelijk is.
Geplaatst:
comment_1145408

// Dit is je id in je naam:

public OnPlayerConnect(playerid)

{

new string[256];

new playername[MAX_PLAYER_NAME];

GetPlayerName(playerid, playername, sizeof(playername));

format(string, sizeof(string), "%s[%d]", playername, playerid);

SetPlayerName(playerid, string);

return 1;

}

Bewerkt: door WackoX

Geplaatst:
comment_1145594
// Dit is je id in je naam:

public OnPlayerConnect(playerid)

{

new string[256];

new playername[MAX_PLAYER_NAME];

GetPlayerName(playerid, playername, sizeof(playername));

format(string, sizeof(string), "%s[%d]", playername, playerid);

SetPlayerName(playerid, string);

return 1;

}

Het probleem is dan, dat een speler dan maar maximaal 19 letters/tekens in zijn/haar naam kan hebben.

Edit: En bovendien, als je een account systeem hebt, krijg je een probleem met de files omdat die meestal worden opgeslagen als naamvanspeler.txt

Bewerkt: door =>Sandra<=

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.