Jump to content

ID in je naam?


Recommended Posts

Geplaatst:

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

Geplaatst:

new Name[256];
new String[256];
GetPlayerName(playerid, String);
format(Name, 256, "[%d] %s", GetPlayerID(playerid), String);
SetPlayerName(playerid, string);

Geen flauw idee of dit kan werken.

Geplaatst: (bewerkt)

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: (bewerkt)

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: (bewerkt)
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: (bewerkt)
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:

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: (bewerkt)
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:
(...)

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:
(...)

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:

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:
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: (bewerkt)

// 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: (bewerkt)
// 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...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...