[TuT] Y_CMD's vs ZCMD

Započeo Slay, Jun 09, 2011, 17:31:07 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Y_COMMANDS TUTORIAL



Eto ne bi puno pisao niti filozofirao ali bi htio samo da kažem moje mišljenje i par korisnih savjeta što se tiče y_cmd's -a i ZCMD - a
Vidim veći dio foruma sada koristi ZCMD što je super gledajući da prije pol godine svi još bili na strcmp-u svako pitanje pitali su i postali komande u strcmp-u dok sada vidim prevladao je ZCMD.

Htio bi reći da je po mome mišljenju ZCMD u usporedbi sa Y_CMD - om ČISTA NULA!
Ima nekoliko razloga:


  • Brzina, YCMD je brži od ZCMD-a
  • YCMD ima PUNO viÅ¡e mogućnosti od bilo kojeg procesora komandi ( bar ja nisam vidio neki koji ima viÅ¡e mogućnosti )

Da preÄ'emo na usporedu, napravit ću neke komande u ZCMD-u i u YCMD-u razlika nije uopće velika samo Å¡to YCMD ima viÅ¡e mogućnosti:


/*
   KOMANDA ZCMD /givemoney [id] [money]
*/

COMMAND:givemoney(playerid,params[])
{
     new
         id,
         money;
     if(sscanf(params,"ud",id,money)) return ERROR_PORUKA([5]);
     else if(id == INVALID_PLAYER_ID) return ERROR_PORUKA([2]);
     else
     {
           GivePlayerMoney(playerid, money);
     }
     return true;
}



A ovako bi to izgledalo sa YCMD-om


/*
     YCMD KOMANDA /givemoney [id] [money]
*/

YCMD:givemoney(playerid,params[],help)
{
      new
          id,
          money;
      if(help)
      {
            SCM(playerid, BOJA_PLAVA, "[ >> ] Komanda /givemoney služi za dodavanje novaca nekom igraču!");
      }
      else
      {
           if(sscanf(params,"ud",id,money)) return ERROR_PORUKA([5]);
           else if(id == INVALID_PLAYER_ID) return ERROR_PORUKA([2]);
           else
           {
                GiveMoney(playerid, money);
           }
      }
      return true;
}



Objašnjenje help parametra:


  • help parametar služi za koriÅ¡tenje pomoći igrača npr. ako napravite komandu /commands igrač može pročitati na /help commands ono Å¡to ste vi napisali ispod if(help) blocka! Ako nećete to koristiti onda morate na vrh komande staviti #pragma unused help > isto tako i za params ili playerid ako se neće koristiti u komandi.

Još jednu bitnu stvar ću napomenuti:

ZCMD:

COMMAND:cc(playerid,params[]) return cmd_clearchat(playerid,params); // drugim imenom komande se poziva već postojeća > zcmd način

YCMD:

Command_AddAltNamed("clearchat", "cc"); // YCMD način

LINK DO Y_COMMAND's : http://forum.sa-mp.com/showthread.php?t=169029




Moj izbor je YCMD, sada je na vama da odlučite prelaženje sa ZCMD na YCMD je jednostavno samo morate malo vremena odvojiti ;)
Poslednja Izmena: April 17, 2012, 14:40:00 POSLE PODNE od joXy_
Kristijan Stipić

lijepo je to ali ZCMD je puno jednostavniji mislim nes ti sto imas u YCMD stavis onu funkciju ERROR_MESAGE to isto kao i SCM :S
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 √

Definitivno YCMD zato sto je ipak to Yless uradio a on zna sta radi!


A i ZCMD je dobar upocetku mi se cini da je bio brzi od YCMD?

Dobra tutorial. :)

Citat: _eXtreme_ poslato Jun 09, 2011, 18:36:08 POSLE PODNE
A i ZCMD je dobar upocetku mi se cini da je bio brzi od YCMD?

I još je brži, ali sa manje komandi. YCMD je brži od ZCMD-a u slučaju kad ima puno komandi.

Last nick: Paradox

Citat: Paradox poslato Jun 09, 2011, 18:47:13 POSLE PODNE
I još je brži, ali sa manje komandi. YCMD je brži od ZCMD-a u slučaju kad ima puno komandi.

Točno, a mislim da svatko tko drži ili radi RP mode sigurno će imati preko 250/300 komandi.

Citat: [AG] System32 poslato Jun 09, 2011, 17:56:42 POSLE PODNE
lijepo je to ali ZCMD je puno jednostavniji mislim nes ti sto imas u YCMD stavis onu funkciju ERROR_MESAGE to isto kao i SCM :S

ERROR_PORUKA > NIJE isto kao i SCM, SCM je samo skraćenica od SendClientMessage. ERROR_PORUKA je moja funkcija kojom si kratim muke. npr.

Ako je

ERROR_PORUKA[5] onda će pisati - KORISTI: 'komdanda' [paramtertri].
ERROR_PORUKA[2] onda će pisati - [SERVER]: Igrač sa tim ID-em nije online na serveru.
itd itd.

Citat: _eXtreme_ poslato Jun 09, 2011, 18:36:08 POSLE PODNE
A i ZCMD je dobar upocetku mi se cini da je bio brzi od YCMD?

ZCMD je još uvijek dobar ali zašto kad YCMD ima puno više mogućnosti. npr. update komandi BEZ restarta servera


Kristijan Stipić

...Neno...

Nije los ni ZCMD a ni YCMD,ali i sam si rekao da YCMD ima vise mogucnosti sto mi se veoma svidja.. ;)

YCMD jeste bolji i brži ali takoÄ'er iziskuje dodatno učenje i vježbanje. Za sada ostajem na ZCMD, ali abd sljedeći mod koji budem radio prelazim na YCMD.

Naravno savjet novim skripterima, koji tek počinju da odmah krenu od YCMD.



Citat: Mario Velickovski poslato Jun 18, 2011, 17:09:19 POSLE PODNE
koji je brzi? YCMD ili ZCMD?

Ako imaš puno komandi u skripti YCMD je brži, kod manje komandi je ZCMD nešto malo brži ali to je skoro pa zanemarivo...
Ali pošto tu prevladavaju RPG serveri/skripte a one imaju preko 300+ komandi znači u tom slučaju je brži YCMD od ZCMD-a
Kristijan Stipić

a dali mora da se koristi to help ?

Citat: [IF] mariomako poslato Jun 19, 2011, 15:59:35 POSLE PODNE
a dali mora da se koristi to help ?

Ne moraš. Samo onda u svakoj komandi dodaj:

#pragma unused help

Last nick: Paradox

Ma vi se sad mozete jebat, al meni je najbolji strcmp  ;D ;D

Citat: JuustyGe poslato Jun 19, 2011, 18:47:22 POSLE PODNE
Ma vi se sad mozete jebat, al meni je najbolji strcmp  ;D ;D
ma ti neznas sta valja, vi se mucite sa strcmp dok napravite komandu recimo /givegun oko 1 sat a j a sa ZCMD i sscanf za 5 minuta ;)
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 Jun 19, 2011, 19:02:31 POSLE PODNE
Citat: JuustyGe poslato Jun 19, 2011, 18:47:22 POSLE PODNE
Ma vi se sad mozete jebat, al meni je najbolji strcmp  ;D ;D
ma ti neznas sta valja, vi se mucite sa strcmp dok napravite komandu recimo /givegun oko 1 sat a j a sa ZCMD i sscanf za 5 minuta ;)

Ma ja se salim, nego kad sam ja ucio bio je samo strcmp, i tad sam pravio te komande, a sad mi ih mrsko pretvarat u zcmd  :P ;D