Korisne skripte i kodovi

Započeo Correlli, Mart 10, 2010, 20:26:26 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Mene zanima nesto, ako je Login/Register system dosta star, i jako zeza ?
Mislim nekad ga pokaze kad treba login nekad ne, valja li ga menjati ?

[quote author=[OG]SteXi.ılllı. link=topic=4245.msg206818#msg206818 date=1309816847]
Mene zanima nesto, ako je Login/Register system dosta star, i jako zeza ?
Mislim nekad ga pokaze kad treba login nekad ne, valja li ga menjati ?

[/quote]

Valja :D
//

Ok, hvala posto koristim faction-game EDIT a to je Edit Balkan-Undergrounda(prvog) pa je login star vise od 1 godine :S

[quote author=[OG]SteXi.ılllı. link=topic=4245.msg206818#msg206818 date=1309816847]
Mene zanima nesto, ako je Login/Register system dosta star, i jako zeza ?
Mislim nekad ga pokaze kad treba login nekad ne, valja li ga menjati ?

[/quote]

Pogrešna tema. Vjerojatno ti je problem do ovoga: http://wiki.sa-mp.com/wiki/TogglePlayerSpectating

BTW: Evo jedne macro funkcije kojom možete napraviti kompaktibilnost sa YCMD & ZCMD


/*
    [H]265 - MACRO CODE
*/
#define YCMD:%1(%0) \
                    H265:%1(%0) // KOMAKTIBILNA FUNKCIJA ( H265 )

#define CMD:%1(%0)\
                 H265:%1(%0,_h_e_l_p_ ) if ( _h_e_l_p_ ) return 0; else

#define COMMAND%0(%1) \
                           CMD%0(%1)


ZAŠTO? - Zato da se nemorate mučiti ako ćete prebacivati iz ZCMD-a u YCMD možete ostaviti samo includajte YCMD a maknite ZCMD iz include-a
Poslednja Izmena: Jul 05, 2011, 00:12:40 PRE PODNE od [H]265
Kristijan Stipić

@ [H] 265, gde ovo dodam?

IsPlayerFreeFalling(playerid)
{
     if(GetPlayerAnimationIndex(playerid))
     {
        new
             animlib[32],
             animname[32];
        GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32);
        GivePlayerWeapon(playerid, 46, 1);
    }
    return true;
}

Na kraj skripte.

koristiš npr.


if(IsPlayerFreeFalling(playerid))
{
     // ako pada s neba
}
else if(!IsPlayerFreeFalling(playerid))
{
    // ako ne pada s neba
}


TakoÄ'er možeÅ¡ staviti u jedan lokalni timer npr. ovako:

if(IsPlayerFreeFalling(i))
{
     // ako pada s neba
}
else if(!IsPlayerFreeFalling(i))
{
    // ako ne pada s neba
}


Ako je ishod točan ( true ) igrač će dobiti padobran. A ako nije uskriptaj šta hoćeš :)
Kristijan Stipić

Evo jednog macroa da si olakšate posao:

// Dodati novu varijablu negdje na početku skripte
new
fMsg[128];

// Macro
#define SFM(%0,%1,%2,%3) format(fMsg, 128, %2, %3); SendClientMessage(%0, %1, fMsg)


Primjer:

public OnPlayerConnect(playerid) {
       SFM(playerid, COLOR_RED, "Dobrodosao na server, %!", GetName(playerid));
       return 1;
}
Poslednja Izmena: Jul 17, 2011, 22:50:13 POSLE PODNE od Goose

Last nick: Paradox

ouuu very nice, ti si paraox?

evo i za SendClientMessageToAll
Kod (System32) [Izaberi]
// Dodati novu varijablu negdje na početku skripte
new
fMsg[128];
        k

// Macro
#define SFM(%0,%1,%2,%3) format(fMsg, 128, %2, %3); SendClientMessageToAll(%1, fMsg)

Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Citat: System32 poslato Jul 17, 2011, 22:48:34 POSLE PODNE
ouuu very nice, ti si paraox?

Da, jesam. :D

Citat: System32 poslato Jul 17, 2011, 22:48:34 POSLE PODNE
evo i za SendClientMessageToAll
Kod (System32) [Izaberi]
// Dodati novu varijablu negdje na početku skripte
new
fMsg[128];
        k

// Macro
#define SFM(%0,%1,%2,%3) format(fMsg, 128, %2, %3); SendClientMessageToAll(%1, fMsg)


Malo si zeznuo macro. Ide ovako:

#define SFMTA(%0,%1,%2) format(fMsg, 128, %1, %2); SendClientMessageToAll(%0, fMsg)
Poslednja Izmena: Jul 17, 2011, 22:55:43 POSLE PODNE od Goose

Last nick: Paradox

Citat: Goose poslato Jul 17, 2011, 22:55:19 POSLE PODNE
Citat: System32 poslato Jul 17, 2011, 22:48:34 POSLE PODNE
ouuu very nice, ti si paraox?

Da, jesam. :D

Citat: System32 poslato Jul 17, 2011, 22:48:34 POSLE PODNE
evo i za SendClientMessageToAll
Kod (System32) [Izaberi]
// Dodati novu varijablu negdje na početku skripte
new
fMsg[128];
        k

// Macro
#define SFM(%0,%1,%2,%3) format(fMsg, 128, %2, %3); SendClientMessageToAll(%1, fMsg)


Malo si zeznuo macro. Ide ovako:

#define SFMTA(%0,%1,%2) format(fMsg, 128, %1, %2); SendClientMessageToAll(%0, fMsg)

kako? Pa jel prvi parametar playerid a toga u SendClientMessageToAll nema
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Citat: System32 poslato Jul 17, 2011, 23:03:28 POSLE PODNE
kako? Pa jel prvi parametar playerid a toga u SendClientMessageToAll nema

Da, ali ti imaš tu 4 argumenta u macru. A treba ih samo 3.

BTW, usporedi svoj i moj macro pa ćeš uočit razlike. :)

Last nick: Paradox

Citat: Goose poslato Jul 17, 2011, 23:21:01 POSLE PODNE
Citat: System32 poslato Jul 17, 2011, 23:03:28 POSLE PODNE
kako? Pa jel prvi parametar playerid a toga u SendClientMessageToAll nema

Da, ali ti imaš tu 4 argumenta u macru. A treba ih samo 3.

BTW, usporedi svoj i moj macro pa ćeš uočit razlike. :)
a jebiga, zajebo se, svakom se omakne ;)
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Mario ta funkcija odnosno macro vec postoji u ovoj temi.

@Paradox & System32

1. Parametar definicije '%' će moći imati samo jedan argument? - Imaš moj tutorial o optional argumentima.
2. Nije baš dobro to raditi sa macro funkcijom jer se ne smije returnati
3. Da se nemora dodavati 'new' na skripti evo načina:
4. Već postoji moja formatEx funkcija u ovom topicu ali nema optional argument i bolje bi bilo napraviti normalno to nego sa macro funkcijom


#define SFM(%0,%1,%2) \
do \
{ \
new \
      string[128]; \
format(string, sizeof string, %1, %2); \
SendClientMessage(%0, string, %2); \
   } \
  while(FALSE)


Ali kao Å¡to sam rekao nije dobro jer stane samo jedna definicija u parametar i ne smije se returnati funkcija.

5. Ako znaš raditi sa macro funkcijama znaš i sam da macro u PAWNCC komapjleru se ponaša ovako

#define SCM(%0,%1,%2) format(string, sizeof string, %1, %2); SendClientMessage(%0,%1,string)

Ispisuje ovako:

format(string, sizeof string, [], len); SendClientMessage(playerid,{hex},[]) < OFC - izbaciti će puno errora

Poslednja Izmena: Jul 17, 2011, 23:47:02 POSLE PODNE od [H]265
Kristijan Stipić

Citat: _Stranger poslato Jul 17, 2011, 23:31:42 POSLE PODNE
Mario ta funkcija odnosno macro vec postoji u ovoj temi.

Sorry, ali nisam ju našao.

@H265

Pogrješio si u tome da može imati samo jedan argumenat, može ih imati koliko želiš (karikirano).

Evo ti jedan primjer:

public OnPlayerSpawn(playerid) {
new
Name[MAX_PLAYER_NAME] = "Goose",
Age = 15,
Origin[9] = "Hrvatske";

SFM(playerid, 0xFF0000AA, "Dobrodošao na server, %s! Ti imaš %i godina. Dolaziš iz %s.", Name, Age, Origin);
    return 1;
}


I tim primjer dokazujem da možeš imati više argumenata.

Last nick: Paradox