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

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4006 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

Sveiki, taigi norėčiau jūsų paklausti gal kas turite paprasta AFK sistemą kuri būtų nedidelė zona bet, kad būdamas toje zonoje gautum pinigus į banko sąskaita kiek žinau šitas scriptas yra tikrai nedidelis bet nemoku dar pasidarytu, o kitur nerandu tai jeigu pasidalinsite tokia paprasta afk sistema kurios taimeris būtų 1 min duoda pinigus na viska galima koreguoti būčiau labai dėkingas ačiū.

(redaguota)
forward playerTimer();
public playerTimer(playerid){ //timeris kuris pasileidžia kiekvieną sekundę
    if(playerDB[playerid][afk] == true){
         new Float:x,Float:y,Float:z;  
         GetPlayerPos(playerid, x, y ,z);  
         if(IsPlayerInRangeOfPoint(playerid, 20.0, x,y,z){ //x,y,z nuo gang zonos vidurio
            GivePlayerMoney(playerid, 99999999);
         }
      }

    }
}

pasidaryk kaip reikia ir užbaik kodą, padariau pagrindus visus.

kodo netikrinau

Redaguota , nario Dr.Arnas
forward playerTimer();
public playerTimer(playerid){ //timeris kuris pasileidžia kiekvieną sekundę
    if(playerDB[playerid][afk] == true){
         new Float:x,Float:y,Float:z;  
         GetPlayerPos(playerid, x, y ,z);  
         if(IsPlayerInRangeOfPoint(playerid, 20.0, x,y,z){ //x,y,z nuo gang zonos vidurio
            GivePlayerMoney(playerid, 99999999);
         }
      }

    }
}

pasidaryk kaip reikia ir užbaik kodą, padariau pagrindus visus.

kodo netikrinau

 

Žinok nelabai kažkaip pavyksta nežinau arba nemoku dar ko nors arba nežinau...

(redaguota)

Parsisiųsk šitą .inc: http://forum.sa-mp.com/showthread.php?t=490436 Tame include yra labai naudingų callback'ų AFK sistemai.

Jeigu nežinai kur kelti, tai pawno/include

 

Tada savo pawn lape kur nors viršuje tarp include:

#include <callbacks> // arba kaip pavadinai tą .inc failą

Tada irgi kur nors viršuje:

new IsPlayerAfk[MAX_PLAYERS],
AfkMoney[MAX_PLAYERS];

Tada kur nors gale po visais public:

public OnPlayerPause(playerid) // Kai žaidėjas paspaudžia "ESC" mygtuką
{
      IsPlayerAfk[playerid] = true;
      AfkMoney[playerid] = SetTimerEx("DuodamSaibu", 60*1000, true, "i", playerid); // 1min. timeris
      return 1;
}
 
public OnPlayerResume(playerid, time) // Kai žaidėjas grįžta į žaidimą
{
    IsPlayerAfk[playerid] = false;
    KillTimer(AfkMoney[playerid]); // "Nužudome" timerį
    SendClientMessage(playerid, -1, "Grįžote iš AFK!");
    return 1;
}
 
forward DuodamSaibu(playerid);
public DuodamSaibu(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z) // Tikrinam ar žaidėjas yra AFK zonoje ar pnš. (koordinates nusistatyk pats)
    {
    GivePlayerMoney(playerid, GetPlayerMoney(playerid)+/*pinigu suma*/);
    return 1;
    }
  
    return 1;
}

Manau gan aiškiai viską išdėsčiau >.< Jeigu bus kokia klaida, rašyk, bet viską nuosekliai susidėliok į vietas.

Redaguota , nario Sippan // Lukas
(redaguota)
new timer;

public OnPlayerUpdate(playerid)
{
    if(IsPlayerInArea(playerid, -2021.484375,61.5234375,-1918.9453125,237.3046875)) //SF stotis
    {
        timer = SetTimerEx("AFK", 60000, true, "u", playerid)
    }
    else if(!IsPlayerInArea(playerid, -2021.484375,61.5234375,-1918.9453125,237.3046875)) //SF stotis
    {
        KillTimer(timer);
    }
    return 1;
}

forward AFK(playerid);
public AFK(playerid)
{
    GivePlayerMoney(playerid, 1000);
}

stock IsPlayerInArea(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
{
    new Float:X, Float:Y, Float:Z;

    GetPlayerPos(playerid, X, Y, Z);
    if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY) {
        return 1;
    }
    return 0;
}

Netestavau, todėl nežinau ar veiks.

Redaguota , nario ...........
forward playerTimer();
public playerTimer(playerid){ //timeris kuris pasileidžia kiekvieną sekundę
    if(playerDB[playerid][afk] == true){
         new Float:x,Float:y,Float:z;  
         GetPlayerPos(playerid, x, y ,z);  
         if(IsPlayerInRangeOfPoint(playerid, 20.0, x,y,z){ //x,y,z nuo gang zonos vidurio
            GivePlayerMoney(playerid, 99999999);
         }
      }

    }
}

pasidaryk kaip reikia ir užbaik kodą, padariau pagrindus visus.

kodo netikrinau

 

didesnio šūdo nematęs

Guess who's back

(redaguota)

Parsisiųsk šitą .inc: http://forum.sa-mp.com/showthread.php?t=490436 Tame include yra labai naudingų callback'ų AFK sistemai.

Jeigu nežinai kur kelti, tai pawno/include

 

Tada savo pawn lape kur nors viršuje tarp include:

#include <callbacks> // arba kaip pavadinai tą .inc failą

Tada irgi kur nors viršuje:

new IsPlayerAfk[MAX_PLAYERS],
AfkMoney[MAX_PLAYERS];

Tada kur nors gale po visais public:

public OnPlayerPause(playerid) // Kai žaidėjas paspaudžia "ESC" mygtuką
{
      IsPlayerAfk[playerid] = true;
      AfkMoney[playerid] = SetTimerEx("DuodamSaibu", 60*1000, true, "i", playerid); // 1min. timeris
      return 1;
}
 
public OnPlayerResume(playerid, time) // Kai žaidėjas grįžta į žaidimą
{
    IsPlayerAfk[playerid] = false;
    KillTimer(AfkMoney[playerid]); // "Nužudome" timerį
    SendClientMessage(playerid, -1, "Grįžote iš AFK!");
    return 1;
}
 
forward DuodamSaibu(playerid);
public DuodamSaibu(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z) // Tikrinam ar žaidėjas yra AFK zonoje ar pnš. (koordinates nusistatyk pats)
    {
    GivePlayerMoney(playerid, GetPlayerMoney(playerid)+/*pinigu suma*/);
    return 1;
    }
  
    return 1;
}

Manau gan aiškiai viską išdėsčiau >.< Jeigu bus kokia klaida, rašyk, bet viską nuosekliai susidėliok į vietas.

Turiu klausimą dėl to include, tipo tą pastebin parsisųsti ir konvertuoti tik galūnę į .inc?

Redaguota , nario `e'Xtreme

taip

Ir tada gaunu tokius errorus

C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(450) : warning 235: public function lacks forward declaration (symbol "OnPlayerWeaponShot")
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(456) : error 017: undefined symbol "BULLET_HIT_TYPE_PLAYER"
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(641) : error 017: undefined symbol "NetStats_PacketLossPercent"
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(817) : error 025: function heading differs from prototype
(redaguota)

 

Ir tada gaunu tokius errorus

C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(450) : warning 235: public function lacks forward declaration (symbol "OnPlayerWeaponShot")
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(456) : error 017: undefined symbol "BULLET_HIT_TYPE_PLAYER"
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(641) : error 017: undefined symbol "NetStats_PacketLossPercent"
C:\Users\----\Desktop\TEST\pawno\include\callbacks.inc(817) : error 025: function heading differs from prototype

 

 

Hmm, kažkas pas tave pačiame kode blogai bus arba kažkurios funkcijos maišo esančioms includėj, dunno >.<

Redaguota , nario Sippan // Lukas

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4006 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ą...