Jump to content
Geplaatst:
comment_1734277

Hoi, ik heb een eigen Afk/back command gemaakt, waardoor als je /afk doet, dan word je gefreezed, en krijgen de spelers te zien dat je Afk bent. (Zie over 1 dag screenshots)

Ik wil even Big Boss en Ted80 bedanken voor hun hulp :D Want die hebben me geholpen met wat dingen, je moet het script maar gewoon lezen :)

Screenshots?

Voorzien van screenshots :)

new Text3D:label[MAX_PLAYERS];
new
pname[24],
string[128];

Onder:

public OnPlayerCommandText(playerid, cmdtext[])

   if(strcmp(cmd, "/afk", true) == 0) { // Het commando
   GameTextForPlayer(playerid,"You are now Afk! Type /Back for resume playing!",10000,5); // De tekst die je in beeld krijgt(netzo als announce)
   TogglePlayerControllable(playerid, 0); // Laat de speler bevriezen
   GetPlayerName(playerid, pname, sizeof(pname)); // vraagt de speler naam op
   format(string, sizeof(string), "%s Is Afk now! (/Afk) ",pname); // Zorgt dat iedereen "spelernaam" Is now AFK te zien krijgt
   SendClientMessageToAll(COLOR_RED, string); // Hoort bij hierboven
   label[playerid] = Create3DTextLabel("This player is Afk.",0x008080FF,30.0,40.0,50.0,40.0,0); // Maakt een label aan wat boven je hoofd zweeft met: this player is now Afk!
   Attach3DTextLabelToPlayer(label[playerid], playerid, 0.0, 0.0, 0.7); // Zorgt dat het label aan de speler vastkleeft

return 1;
   }

if(strcmp(cmd, "/back", true) == 0) { // het commando
GameTextForPlayer(playerid,"Welcome back!",5000,5); // de tekst die je in beeld krijgt (netzo als announce)
   TogglePlayerControllable(playerid, 1); // unfreezde de speler
   GetPlayerName(playerid, pname, sizeof(pname)); // vraagt de spelernaam op
   format(string, sizeof(string), "%s is now Back! Good luck with playing! ",pname); // zorgt dat iedereen "spelernaam" is now back te zien krijgt
   SendClientMessageToAll(COLOR_RED, string); // Same als hierboven
   Delete3DTextLabel(label[playerid]); // verwijdert de 3d label
   	return 1;
}

Let op!: De 3D Labels zie je bij jezelf niet!

Let op!: Ik heb het niet helemaal zelf gemaakt. Big Boss en Ted80 hebben me met dingen geholpen.

Hopelijk heb je er wat aan :)

En ja, ik weet dat er al een Afk/back script staat in de Pawno tutorial lijst. Maar deze vind ik net wat uitgebreider, met een 3D label etc.

Screenshots

Screenshot

1: Laat de "announce" tekst zien als je AFK gaat.

10qb0o1.jpg

Screenshot

2: Laat de tekst zien die iedereen in de chat kan lezen als je AFK Gaat.

2afiu5w.jpg

3: Laat het 3D Label zien.

2s7duaa.jpg

4: Laat de "Announce" tekst zien als je /back typt.

2qb97bb.jpg

5: Laat de tekst zien in de chat die iedereen kan lezen als je /Back typt.

2557rti.jpg

Bewerkt: door penait1

Featured Replies

Geplaatst:
comment_1734349

Ik heb even in mijn script gekeken, dit had ik van een tutorial geleert, ben vergeten welke.

Volgens mij heb je de X Y en Z van de drager(player) nodig.

Probeer dit:

new Text3D:label [MAX_PLAYERS];

new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
label[playerid] = Create3DTextLabel("This player is afk",0x008080FF,X, Y, Z+2.0,20.0,1);
Attach3DTextLabelToPlayer(label[playerid],playerid,0,0,1.2);

@ Hieronder, ik had het al geëdit, je keek waarschijnlijk op het verkeerde moment.

Bewerkt: door Gast

Geplaatst:
comment_1734359

new Text3D:label[MAX_PLAYERS];

Verwijder [MAX_PLAYERS] en probeer opnieuw. En ik weet niet precies of dit uitmaakt, maar probeer ook een spatie bij "label" (Text3D: label)

MAX_PLAYERS heb je in dit geval wel nodig; anders is er slechts 1 label beschikbaar dat steeds verschoven wordt tussen alle spelers die op dat moment AFK zijn.

Geplaatst:
comment_1734371

new Text3D:label[MAX_PLAYERS];

Verwijder [MAX_PLAYERS] en probeer opnieuw. En ik weet niet precies of dit uitmaakt, maar probeer ook een spatie bij "label" (Text3D: label)

MAX_PLAYERS heb je in dit geval wel nodig; anders is er slechts 1 label beschikbaar dat steeds verschoven wordt tussen alle spelers die op dat moment AFK zijn.

Yep, bewerkt.

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.