AFK system

Započeo #leivyz, Oktobar 07, 2021, 19:52:45 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Pozdravko, zelim da vam pokazem kako sto jednostavnije da napravite 'AFK system' na vasem serveru!
Smatram da vam ovo moze biti od neke pomoci


Potrebni includovi za ovaj sistem:
[pawn]#include a_samp[/pawn]

Zatim je potrebno da dodate New:

[pawn]new AFK[MAX_PLAYERS];
new Float:OldHealth;[/pawn]

Gledajte da napravite ispod nekih vasih #define-ova!
Zatim dodajte sledecu Public funkciju OnPlayerText:


[pawn]public OnPlayerText(playerid, text[])
{
    if(AFK[playerid] ==1)
    {
        SendClientMessage(playerid,BOJA_CRVENA,"Vi ste AFK, ne mozete da razgovarate s ostalima!");
        return 0;
}
    return 1;
}[/pawn]

[pawn]    if(AFK[playerid] ==1)[/pawn]

Ovo sto vidite to vam je da ukoliko igrac pokusa da napise poruku a prethodno je ukucao /afk
Kada ste to uradili dodajte sledecu i zadnju Public funkciju OnPlayerCommandText:


[pawn]public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/afk", cmdtext, true, 10) == 0)
    {
        if(AFK[playerid] == 1)
        {
        return SendClientMessage(playerid,BOJA_CRVENA,"Vi ste vec AFK");
        }
        new string[128];
        new PNAME[MAX_PLAYER_NAME];
        new vehicleid;
        vehicleid = GetPlayerVehicleID(playerid);
        AFK[playerid] = 1;
        SetPlayerHealth(playerid,999999999);
        SetVehicleHealth(vehicleid,9999999999);
        GetPlayerHealth(playerid,OldHealth);
        GetVehicleHealth(vehicleid,OldHealth);
        SendClientMessage(playerid,BOJA_CRVENA,"Uspesno ste postavili vas status u AFK!");
        GetPlayerName(playerid, PNAME, MAX_PLAYERS);
        format(string, sizeof(string), "%s je postavio status u AFK", PNAME);
        SendClientMessageToAll(BOJA_PLAVA,string);
        TogglePlayerControllable(playerid,0);
        return 1;
    }

    if (strcmp("/back", cmdtext, true, 10) == 0)
    {
        if(AFK[playerid] == 0)
        {
        return SendClientMessage(playerid,BOJA_CRVENA,"Nisi stavio svoj status AFK, ne mozes ovo!");
        }
        new string[128];
        new PNAME[MAX_PLAYER_NAME];
        AFK[playerid] = 0;
        new vehicleid;
        vehicleid = GetPlayerVehicleID(playerid);
        SetPlayerHealth(playerid,OldHealth);
        SetVehicleHealth(vehicleid,OldHealth);
        SendClientMessage(playerid,BOJA_ZELENA,"Uspesno ste promenili vas status, vratili ste se za tastaturu!");
        GetPlayerName(playerid, PNAME, MAX_PLAYERS);
        format(string, sizeof(string), "%s se uspesno vratio/la za tastaturu!", PNAME);
        SendClientMessageToAll(BOJA_NARANDZASTA,string);
        TogglePlayerControllable(playerid,1);
        return 1;
    }
    return 0;
}[/pawn]

Ovo mozete da iskoristite kao FilterScriptu ukoliko vam nije jasno kako treba da se ubaci!
Naravno AFK system moze ne 100 nacina da se napravi, ja sam odlucio da to prezentujem ovako!

Da se samo nadovezem, Boje vi pravite i definisete kako vi zelite! Posto vidim da sam ostavio boje a nisam define za njih napisao!  :-X

Citat: Stevanovic.pwn poslato Oktobar 07, 2021, 20:01:50 POSLE PODNE
Da se samo nadovezem, Boje vi pravite i definisete kako vi zelite! Posto vidim da sam ostavio boje a nisam define za njih napisao!  :-X