Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Mladen Smiljan poslato Januar 15, 2012, 13:38:39 POSLE PODNE

Naslov: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 13:38:39 POSLE PODNE
Skripta koju koristim: >>Moj mod<<
Detaljan opis problema: Ovako na serveru bih zelio  napraviti Tutorial  nakon registracije! Ali ima jedan problem neznam raditit s Timereima Pa ko bi mi netko mogao pomoci jedan dio..
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: LuKsA poslato Januar 15, 2012, 13:47:46 POSLE PODNE
Sta tocno neznas raditi s timerima? Objasni pa ti pomognemo :)
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 14:17:40 POSLE PODNE
Kako aktivirati taj timer I kako napraviti timer Da Nakon 5 - 10 sekundi prenosi na slijedeci tut
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 14:43:56 POSLE PODNE
Citat: Mladen Smiljan poslato Januar 15, 2012, 14:17:40 POSLE PODNE
Kako aktivirati taj timer I kako napraviti timer Da Nakon 5 - 10 sekundi prenosi na slijedeci tut
Napravis timer od jedne sekunde. I stavis u public na tu neku varijablu ++ znaci da dodje na nju po jedan. I onda napravis ispitivanje
if(tavarijabla == 10)//Kada je na 10
{
//TO odradi
}
else if(tavarijabla == 20)//Kada je na 20 znaci proslo je 10 sekundi od one prosle
{
//To odradi
}

Inace mozes koristiti global timer. I onda samo stavis ispitivanje da li tavarijabla >= 1 i dodajes na nju
To je sada nesto iz glave ako hoces mogu ti i primer uraditi
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Billie Joe Armstrong poslato Januar 15, 2012, 14:54:08 POSLE PODNE
Gagi , mislim da bi bilo bolje da se napravi varijabla za MAX_PLAYERS zato što će ta varijabla svima biti ista onda.
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 14:55:06 POSLE PODNE
Citat: Get busy living or Get busy dying poslato Januar 15, 2012, 14:54:08 POSLE PODNE
Gagi , mislim da bi bilo bolje da se napravi varijabla za MAX_PLAYERS zato što će ta varijabla svima biti ista onda.
Da "tavarijabla" to je samo bio primer sta da  pise nisam stavljao sve to se odnosilo da on upise taj deo.


EDIT:
Evo i neki tut koji ti mozda moze pomoci: http://balkan-samp.com/forum/index.php?topic=29567.0
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 17:07:01 POSLE PODNE
HAHA jos uvjek ne kuzim...
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Billie Joe Armstrong poslato Januar 15, 2012, 17:09:03 POSLE PODNE
Kako ne kužiš , imaš tutorial sve dano i ne znaš ni to iskopirati?
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 17:12:50 POSLE PODNE
Citat: Mladen Smiljan poslato Januar 15, 2012, 17:07:01 POSLE PODNE
HAHA jos uvjek ne kuzim...
Evo primer.
Na vrh skripter new Intro[MAX_PLAYERS];
Stavis pod OnGameModeInit
SetTimer("Intro",1000,true);//Ako imas vec neki timer koji koristis global ubaci u njega ovo ti nece trebati onda
I onda uradis
    forward Intro();
    public Intro()
    {
    foreach(Player,i)
    {
    if(Intro[i] >= 1)//Provera da li je pokrenut
    {
    Intro[i]++;//Dodaje na njega
    if(Intro[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    //Prvi deo
    }
    if(Intro[i] == 10)
    {
    //Drugi deo nakon 8 sekundi
    }
    .... na kraju Intro[i] = 0;//Sa tim da zavrsi tut da nebi pokrenuo
    }
    }
    }

I samo onda u registraciju Intro[playerid] = 1;
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 17:15:05 POSLE PODNE
Citat: [TL:RP]Mr.Gagi poslato Januar 15, 2012, 17:12:50 POSLE PODNE
Citat: Mladen Smiljan poslato Januar 15, 2012, 17:07:01 POSLE PODNE
HAHA jos uvjek ne kuzim...
Evo primer.
Na vrh skripter new Intro[MAX_PLAYERS];
Stavis pod OnGameModeInit
SetTimer("Intro",1000,true);//Ako imas vec neki timer koji koristis global ubaci u njega ovo ti nece trebati onda
I onda uradis
    forward Intro();
    public Intro()
    {
    foreach(Player,i)
    {
    if(Intro[i] >= 1)//Provera da li je pokrenut
    {
    Intro[i]++;//Dodaje na njega
    if(Intro[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    //Prvi deo
    }
    if(Intro[i] == 10)
    {
    //Drugi deo nakon 8 sekundi
    }
    .... na kraju Intro[i] = 0;//Sa tim da zavrsi tut da nebi pokrenuo
    }
    }
    }

I samo onda u registraciju Intro[playerid] = 1;

E hvala sad cu to isporbati!

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

Citat: Get busy living or Get busy dying poslato Januar 15, 2012, 17:09:03 POSLE PODNE
Kako ne kužiš , imaš tutorial sve dano i ne znaš ni to iskopirati?

Nije sve u Copy Paste.. Treba i nesto nauciti
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 17:26:45 POSLE PODNE
Nest Sam zajebo ili?

public Intro(playerid)
    {
    foreach(Player,i)
    {
    if(Intro[i] >= 1)//Provera da li je pokrenut
    {
    Intro[i]++;//Dodaje na njega
    if(Intro[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    SendClientMessage(playerid, BJELA, "Tutorial 1");
    }
    if(Intro[i] == 10)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 2");
    }
    if(Intro[i] == 20)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 3");
    }
Intro[i] = 0;//Sa tim da zavrsi tut da nebi pokrenuo
    }
    }
    }


C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(82) : error 021: symbol already defined: "Intro"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(542) : error 021: symbol already defined: "Intro"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(544) : error 054: unmatched closing brace ("}")
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(711) : warning 203: symbol is never used: "foreach"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 19:11:36 POSLE PODNE
public Intro(playerid)
    {
    foreach(Player,i)
    {
    if(Intro[i] >= 1)//Provera da li je pokrenut
    {
    Intro[i]++;//Dodaje na njega
    if(Intro[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    SendClientMessage(playerid, BJELA, "Tutorial 1");
    }
    if(Intro[i] == 10)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 2");
    }
    if(Intro[i] == 20)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 3");
Intro[i] = 0;//tako zavrsava tut
    }

    }
    }
    }

Prvo tako stavi tako.
Onda vec ti je jednom definisano tako promeni ovo intro[... sve u nesto drugo mozes TutorialTime[....
error 054: unmatched closing brace ("}") - verovatno imas visak zagrada mozda
A ovo za foreach sta si ti definisao za njega. Koristi include
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 19:41:04 POSLE PODNE
Citat: [TL:RP]Mr.Gagi poslato Januar 15, 2012, 19:11:36 POSLE PODNE
public Intro(playerid)
    {
    foreach(Player,i)
    {
    if(Intro[i] >= 1)//Provera da li je pokrenut
    {
    Intro[i]++;//Dodaje na njega
    if(Intro[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    SendClientMessage(playerid, BJELA, "Tutorial 1");
    }
    if(Intro[i] == 10)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 2");
    }
    if(Intro[i] == 20)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 3");
Intro[i] = 0;//tako zavrsava tut
    }

    }
    }
    }

Prvo tako stavi tako.
Onda vec ti je jednom definisano tako promeni ovo intro[... sve u nesto drugo mozes TutorialTime[....
error 054: unmatched closing brace ("}") - verovatno imas visak zagrada mozda
A ovo za foreach sta si ti definisao za njega. Koristi include

I dalje nece....

Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 19:45:32 POSLE PODNE
SetTimer("IntroVreme",1000,true);

forward IntroVreme();
public IntroVreme()//Tu neide playerid
    {
    foreach(Player,i)
    {
    if(TutorialTime[i] >= 1)//Provera da li je pokrenut
    {
    TutorialTime[i]++;//Dodaje na njega
    if(TutorialTime[i] == 2)//Ako je na 2 ispod radi sledece....
    {
    SendClientMessage(playerid, BJELA, "Tutorial 1");
    }
    if(TutorialTime[i] == 10)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 2");
    }
    if(TutorialTime[i] == 20)
    {
    SendClientMessage(playerid, BJELA, "Tutorial 3");
TutorialTime[i] = 0;//tako zavrsava tut
    }

    }
    }
    }

   new TutorialTime[MAX_PLAYERS];//Definicija
   TutorialTime[playerid] = 1;//Kod registracije

Verovatno je problem bio sto sam za timer stavio Intro i za ovo Intro[...
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 15, 2012, 19:59:29 POSLE PODNE
Evo ima nekih errora:

C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(552) : error 017: undefined symbol "playerid"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(556) : error 017: undefined symbol "playerid"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(560) : error 017: undefined symbol "playerid"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mr.Gagi poslato Januar 15, 2012, 20:42:39 POSLE PODNE
Citat: Mladen Smiljan poslato Januar 15, 2012, 19:59:29 POSLE PODNE
Evo ima nekih errora:

C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(552) : error 017: undefined symbol "playerid"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(556) : error 017: undefined symbol "playerid"
C:\Users\Smiljan\Desktop\Serveri\HardCore RolePlay\gamemodes\HardCore.pwn(560) : error 017: undefined symbol "playerid"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.

SendClientMessage(playerid, BJELA, "Tutorial 3");
U SCM ne stavljas playerid
nego i
To stavi kod svih tu u tutu kod svih SCM-ova tu
Naslov: Odg: [Pomoc] Tutorial nakon Registracije
Poruka od: Mladen Smiljan poslato Januar 16, 2012, 16:07:03 POSLE PODNE
Hvala
Radii
I usput sam naucio kako koristiti timere i sve Hvala