Pagrindinis diskusijų puslapis Grand Theft Auto multiplayer Pamokos SA-MP [Pradedantiesiems] Taimeriai.

[Pradedantiesiems] Taimeriai.

Pamokos sa-mp modifikacijai. Serverio kūrimo pamokos, skriptai.
Standartinė Lapkritis 5th, 2009, 4:50 pm
Martin_M Vartotojo avataras
Apsipratęs narys
Apsipratęs narys

Pranešimai: 94
Padėkojo: 0 kartą
Gavo padėkų: 3 kartus
Mano serveris: Neturiu
Atsiliepimai: 0

Taimeriai - tai, kaip žadintuvas. Jūs nustatote laiką, serveris pradeda skaičiuoti atgaline tvarka, ir po Jūsų nustatyto laiko kažkas atsitinka.
Visų pirma, mums reikia susikurti savo callback'ą, kuriame surašysime kas įvyks po mūsų nustatyto laiko. Taigi, skripto viršuje rašome:
forward Taimeris(playerid);

PAAIŠKINIMAS
Taimeris - mūsų taimerio ir callback'o pavadinimas.
() - tarp šių skliaustelių reikia įrašyti kokius parametrus naudosime. Pvz.: playerid,vehicleid ir t.t.

Dabar pačioje skripto apačioje ar kur nors jame, rašome:
public Taimeris(playerid)
{
return 1;
}

Jeigu forward'e įrašėme parametrus, tai tada čia taip pat juos įrašome.

Na štai, dabar šiame callbacke įrašome tai, kas vyks po mūsų nustatyto laiko.
Pavyzdžiui aš darysiu, kad siustų žaidėjui žinutę. Dabar mano callbackas atrodys šitaip:
public Taimeris(playerid)
{
SendClientMessage(playerid,0xFFFFFFFF,"www.GTA-support.lt - pagalba visiems");
return 1;
}

Na štai. Viskas. Dabar mums reikia nustatyti mūsų laiką. Tam naudosime SetTimer.
Jeigu noriu, kad laiką pradėtų skaičiuoti nuo tada, kai žaidėjas prisijungia į serverį, tai po OnGameModeInit aš rašysiu:
SetTimer("Taimeris",7000,true);

PAAIŠKINIMAS
Taimeris - mūsų taimerio pavadinimas.
7000 - laikas, po kurio įvyks tai, ką nustačiau. Laikas rašomas milisekundėmis. 1000 milisekundžių = 1 sekundei. ( 3 sekundės - 3000 ; 1minutė - 60000 ; 1 valanda - 3600000 )
true - kartoti ar ne. Jeigu norime, kad taimerį kartotų, rašome true. Jeigu norime, kad tai įvyktų tik vieną kartą - rašome false.
Na štai. Padariau, kad kai įsijungsiu į serverį po 7sek. man parašys žinutę www.GTA-support.lt - pagalba visiems.
Jeigu norime, kad taimeris įsijungtų parašius komandą, tai tarp komandos įterpkime taimerio nustatymą. Tai turėtų atrodyti panašiai:
if(strcmp("/ijungti",cmdtext,true,8) == 0)
   {
      SendClientMessage(playerid,0xFFFFFFFF,"Taimeris įjungtas. Jis suveiks po 7sek.");
                SetTimer("Taimeris",7000,true);
      return 1;
   }


Sekmės skriptinime! ;]

Reklama

Standartinė Liepa 6th, 2010, 4:35 pm
Mouse Naujokas
Naujokas

Pranešimai: 26
Padėkojo: 0 kartą
Gavo padėkų: 1 kartą
Skype: Tomas_131
Atsiliepimai: -1
Viskas pujkiai gaunasi, bet kaip bandau compiliuoti tai išmeta tokį warning'ą:

C:\DOCUME~1\Tomas\Desktop\LT-FR~1\GAMEMO~1\LT-FR.pwn(358) : warning 235: public function lacks forward declaration (symbol "Taimeris")
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.



Error'o eilutė:

public Taimeris(playerid)
{

Standartinė Balandis 30th, 2011, 8:30 pm
arnas360 Vartotojo avataras
Apsipratęs narys
Apsipratęs narys

Pranešimai: 112
Padėkojo: 15 kartus
Gavo padėkų: 2 kartus
Skype: Arnas360
Mano serveris: Neturiu
Atsiliepimai: -1
Cia ne erroras cia Warringas
bet tas waringas nieko nedaro
Paveikslėlis

Jai padejau negailek +REP

Standartinė Balandis 30th, 2011, 8:50 pm
Arnold_Effigy Skripteris
Skripteris

Pranešimai: 275
Miestas: Vilkaviškis
Padėkojo: 27 kartus
Gavo padėkų: 8 kartus
Skype: arni_s96
Atsiliepimai: 2

arnas360 rašė:
Cia ne erroras cia Warringas
bet tas waringas nieko nedaro

Beveik laiku atrašiai, liepos 6 2010 - balandžio 30 2011 :DD

Standartinė Balandis 30th, 2011, 9:13 pm
svedas Vartotojo avataras
GTA-support.lt komanda

Pranešimai: 3866
Padėkojo: 36 kartus
Gavo padėkų: 145 kartus
Skype: svedas01
Mano serveris: reallife:7777
Atsiliepimai: 19

Arnold_Effigy rašė:
arnas360 rašė:
Cia ne erroras cia Warringas
bet tas waringas nieko nedaro

Beveik laiku atrašiai, liepos 6 2010 - balandžio 30 2011 :DD



TOPAS ČIA :D

Standartinė Gegužė 1st, 2011, 9:32 pm
Vadim Vartotojo avataras
Naujokas
Naujokas

Pranešimai: 13
Padėkojo: 0 kartą
Gavo padėkų: 2 kartus
Skype: vadimka.lt
Mano serveris: Neturiu
Atsiliepimai: 0
svedas rašė:
Arnold_Effigy rašė:
arnas360 rašė:
Cia ne erroras cia Warringas
bet tas waringas nieko nedaro

Beveik laiku atrašiai, liepos 6 2010 - balandžio 30 2011 :DD



TOPAS ČIA :D


:DDD

Standartinė Gegužė 9th, 2011, 7:08 pm
Los_Santos Apsipratęs narys
Apsipratęs narys

Pranešimai: 153
Padėkojo: 3 kartus
Gavo padėkų: 0 kartą
Skype: daumis03
Mano serveris: 79.98.31.25:7760
Atsiliepimai: 0
ce geras :D tikrai kad rekordas o seip tj gera pamoka daug kur naudosiu
mano manymu daugiausei padedantis zmones:
1. Stuneris
2. Theme
3. Svedas
4. cia gali buti tavo vardas
5. cia gali buti tavo vardas

Standartinė Sausis 17th, 2012, 11:05 pm
Los_Santos Apsipratęs narys
Apsipratęs narys

Pranešimai: 153
Padėkojo: 3 kartus
Gavo padėkų: 0 kartą
Skype: daumis03
Mano serveris: 79.98.31.25:7760
Atsiliepimai: 0
galet padet nepagaunu kaip istaisyt: eroras:
data/init.txt(6) : error 017: undefined symbol "playerid"
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


1 Error.


o eilute:
forward autosave(playerid);
kame saknys?
mano manymu daugiausei padedantis zmones:
1. Stuneris
2. Theme
3. Svedas
4. cia gali buti tavo vardas
5. cia gali buti tavo vardas

Standartinė Sausis 17th, 2012, 11:44 pm
juraska Vartotojo avataras
GTA-support.lt komanda

Pranešimai: 1320
Miestas: Šilalė
Padėkojo: 28 kartus
Gavo padėkų: 44 kartus
Skype: dovydasjuraska
Atsiliepimai: 29

forward autosave(playerid); čia gerai

Standartinė Sausis 18th, 2012, 12:11 am
Los_Santos Apsipratęs narys
Apsipratęs narys

Pranešimai: 153
Padėkojo: 3 kartus
Gavo padėkų: 0 kartą
Skype: daumis03
Mano serveris: 79.98.31.25:7760
Atsiliepimai: 0
Nu bet meta erorus o jei nutrinu ta playerid tj meta kad undefimed playerid kame problema?megimu padaryt timeri kad kas 10 mn issisaugotu pinigai xp zaidejo vieta bet kame problemos?
mano manymu daugiausei padedantis zmones:
1. Stuneris
2. Theme
3. Svedas
4. cia gali buti tavo vardas
5. cia gali buti tavo vardas

Standartinė Sausis 18th, 2012, 4:48 pm
juraska Vartotojo avataras
GTA-support.lt komanda

Pranešimai: 1320
Miestas: Šilalė
Padėkojo: 28 kartus
Gavo padėkų: 44 kartus
Skype: dovydasjuraska
Atsiliepimai: 29

tai musek ne ta eilute davei

Standartinė Sausis 18th, 2012, 7:00 pm
Los_Santos Apsipratęs narys
Apsipratęs narys

Pranešimai: 153
Padėkojo: 3 kartus
Gavo padėkų: 0 kartą
Skype: daumis03
Mano serveris: 79.98.31.25:7760
Atsiliepimai: 0
va ta susitvarkaiu dbr meginu padaryt kad uzkrautu pinigus ir xp kai prisijungi eroru nemeta bet nesaugo
GivePlayerMoney(playerid, dini_Int(file, "pinigai"));
SetPlayerScore(playerid, dini_Int(file, "XP"));
kur klaida?
ir dar galit parasyt eilute kad saugotu zaidejo kord ir jas uzkrautu nes krc pasidariau kaska tj kai nueini iseini raso pozicija=1 o ne kordinates kame problemos?
timeris sukurtas viska:
public autosave(playerid)
{
    new file[128], Float:X, Float:Y, Float:Z;
    format(file,sizeof(file), "Users/%s", PlayerName(playerid));//72 eilute
    dini_IntSet(file, "pinigai", GetPlayerMoney(playerid));
    dini_IntSet(file, "XP", GetPlayerScore(playerid));
    dini_IntSet(file, "pozicija", GetPlayerPos(playerid, X, Y, Z));//75 eilute
   return 1;
}

kdl nesaugo?
mano manymu daugiausei padedantis zmones:
1. Stuneris
2. Theme
3. Svedas
4. cia gali buti tavo vardas
5. cia gali buti tavo vardas

Standartinė Sausis 18th, 2012, 11:20 pm
Gintaras147 Naujokas
Naujokas

Pranešimai: 1
Padėkojo: 0 kartą
Gavo padėkų: 0 kartą
Skype: gintaraz777
Mano serveris: Neturiu
Atsiliepimai: 0
Viskas labai gerai, labai dq

Standartinė Sausis 28th, 2012, 11:52 am
dzionas Naujokas
Naujokas

Pranešimai: 21
Padėkojo: 0 kartą
Gavo padėkų: 0 kartą
Skype: etahamer
Mano serveris: Neturiu
Atsiliepimai: 0
Sveiki bandziau dariti sekti komanda su taimeriu bet neiseina gal kas galetu numesti link ta sekti komanda noriu dariti kaip sarg.lt bet neiseina.

Standartinė Sausis 28th, 2012, 1:11 pm
Inv1s Vartotojo avataras
Apsipratęs narys
Apsipratęs narys

Pranešimai: 246
Miestas: Panevėžys.
Padėkojo: 6 kartus
Gavo padėkų: 4 kartus
Skype: indexx7
Mano serveris: www.las-venturas.lt
Atsiliepimai: 7
dzionas rašė:
Sveiki bandziau dariti sekti komanda su taimeriu bet neiseina gal kas galetu numesti link ta sekti komanda noriu dariti kaip sarg.lt bet neiseina.

Manau, ten reikia naudoti ne vieną taimerį, arba iš viso kitaip daryti.
Kitaip žinomas Invision_White.

Paveikslėlis



  • Reklama

Grįžti į SA-MP

cron