Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4461 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

(redaguota)

Sveiki, man iškilo tokia problema, kad kai įkeliu afk sistemą į serverį (iš kito gm), tai ji neveikia, bet nežinau kodėl, pasižiurėkit patys...

P.S viską gerai sucompilina bet kai stoviu vienoj vietoj nieko neišmeta jokiu dialogų nei afk režimų...

 

Viršuje dedu:

new PLAYERTIMER[ MAX_PLAYERS ];
forward GLOBALPLAYERTIMER( playerid123 );
new Text3D:AFKLABELIS[MAX_PLAYERS];
new bool:AFKMODE[ MAX_PLAYERS ];
new COUNTAFKTIME[ MAX_PLAYERS ];
new AFKKINTAMASIS[ MAX_PLAYERS ];

Po

public OnPlayerConnect(playerid)

Dedu

PLAYERTIMER[ playerid ] = SetTimerEx( "GLOBALPLAYERTIMER",1000,true,"i",playerid );

Po

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

Dedu:

if( dialogid == 107 )
{
if( response )
{
ShowPlayerDialog(playerid,107,DIALOG_STYLE_MSGBOX,"AFK","Tęsti žaidimą?","Ne","Taip");
}
else
{
   COUNTAFKTIME[ playerid ] = 0;
   AFKKINTAMASIS[ playerid ] = 0;
   Delete3DTextLabel(AFKLABELIS[playerid]);
   AFKMODE[ playerid ] = false;
   KillTimer( Zaidimas[ playerid ] );
   Zaidimas[ playerid ] = SetTimerEx("zaidimas",60000,true,"d",playerid );
}
return 1;
}

Po

public OnPlayerDisconnect(playerid, reason)

Dedu

Delete3DTextLabel( AFKLABELIS[ playerid ] );

Po

public OnPlayerText(playerid, text[])

Dedu

if( AFKMODE[ playerid ] == true )
{
SendClientMessage( playerid, COLOR_RED,"* Jūs AFK!");
return 0;
}

Po

public OnPlayerCommandReceived( playerid, cmdtext[] )

Dedu

if( AFKMODE[ playerid ] == true )
{
SendClientMessage( playerid, COLOR_RED,"* Jūs AFK!");
return 0;
}

Po

public OnPlayerDeath(playerid, killerid, reason)

Dedu

if( AFKMODE[ playerid ] == true )
{
AFKMODE[ playerid ] = false;
AFKKINTAMASIS[ playerid ] = 0;
   Delete3DTextLabel(AFKLABELIS[playerid]);
   }

Po

public zaidimas( playerid )

Dedu

if( AFKMODE[ playerid ] == true )
{
   COUNTAFKTIME[ playerid ] ++;
   
   format( STRINGASSA[ playerid ], 15,"AFK %d min",COUNTAFKTIME[ playerid ] );
   Update3DTextLabelText(AFKLABELIS[ playerid ],COLOR_GREEN,STRINGASSA[ playerid ]);
}

Po

stock Clear( playerid )

Dedu

COUNTAFKTIME[ playerid ] = 0;
AFKMODE[ playerid ] = false;
AFKKINTAMASIS[ playerid ] = 0;

Po

public GLOBALPLAYERTIMER( playerid123 )

Dedu

     if( IsPlayerInAnyVehicle( playerid123 ) )
{
if( !IsVehicleMoving( GetPlayerVehicleID(playerid123) ) )
  {
   if( AFKMODE[ playerid123 ] == false )
   {
    AFKKINTAMASIS[ playerid123 ] ++;
     }
    }
    else
    {
       if( AFKMODE[ playerid123 ] == false )
     {
       if( AFKKINTAMASIS[ playerid123 ] > 0 )
       {
    AFKKINTAMASIS[ playerid123 ] = 0;
     }
    }
    }
     }
    else
    {
     if( !IsPlayerMoving( playerid123 ) )
     {
     if( AFKMODE[ playerid123 ] == false )
     {
     AFKKINTAMASIS[ playerid123 ] ++;
       }
          }
            else
            {
              if( AFKMODE[ playerid123 ] == false )
         {
          if( AFKKINTAMASIS[ playerid123 ] > 0 )
          {
     AFKKINTAMASIS[ playerid123 ] = 0;
    }
}
         }
         }
         if( AFKKINTAMASIS[ playerid123 ] == 60 )
    {
      AFKKINTAMASIS[ playerid123 ] = 0;
     AFKMODE[ playerid123 ] = true;
     Delete3DTextLabel(AFKLABELIS[playerid123]);
     AFKLABELIS[ playerid123 ] = Create3DTextLabel("AFK", COLOR_GREEN, 30.0, 40.0, 50.0, 20.0, 0);
Attach3DTextLabelToPlayer(AFKLABELIS[playerid123], playerid123, 0.0, 0.0, 0.35);
KillTimer( Zaidimas[ playerid123 ] );
ShowPlayerDialog(playerid123,107,DIALOG_STYLE_MSGBOX,"AFK","Tęsti žaidimą?","Ne","Taip");
       }
       /*
       if( AFKMODE[ playerid123 ] == true )
        {
             if( IsPlayerInAnyVehicle( playerid123 ) )
{
if( IsVehicleMoving( GetPlayerVehicleID(playerid123) ) )
  {
       AFKMODE[ playerid123 ] = false;
       Delete3DTextLabel(AFKLABELIS[playerid123]);
  }
  }
  else
  {
       if( IsPlayerMoving( playerid123 ) )
  {
                     AFKMODE[ playerid123 ] = false;
       Delete3DTextLabel(AFKLABELIS[playerid123]);
      }
  }
  }*/

Dar stockus uždedu:

stock IsPlayerMoving(playerid)
{
    GetPlayerVelocity(playerid, Velocity[ playerid ][0], Velocity[ playerid ][1],Velocity[ playerid ][2]);
    if(Velocity[ playerid ][0] == 0 && Velocity[ playerid ][1] == 0 && Velocity[ playerid ][2] == 0) return 0;
    return 1;
}
stock IsVehicleMoving(vehicleid)
{
    GetVehicleVelocity(vehicleid, Velocity[ vehicleid ][0], Velocity[ vehicleid ][1], Velocity[ vehicleid ][2]);
    if(Velocity[ vehicleid ][0] == 0 && Velocity[ vehicleid ][1] == 0 && Velocity[ vehicleid ][2] == 0) return 0;
    return 1;
}

Padėjusiems tikrai atsilyginsiu +Rep :)

Redaguota , nario Anton'imo

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4461 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...