Jump to content

- Advertisement -
Photo

[CS16-Scripting]Compilarea cu conditii


  • Please log in to reply
No replies to this topic

#1
Bogdan ;

Bogdan ;

    Fost Resource Team

  • Retired
  • 4341 posts
  • 386 topics
  • Joined 14-March 13
  • Country: Country Flag

Compilarea cu conditii permite includerea respectiv excluderea unor functii din sursa in functie de conditiile puse

Exemplu:

#if CONDITIE
SECTIUNE

#endif
Conditia se situeaza intre
#if si #endif

Conditie definita:

#define ARATA_COMUNITATEA 1

#define COMUNITATE CS16Gaming



#if ARATA_COMUNITATEA

client_print(0, print_chat, "Tutorial facut pentru comunitatea %s!", COMUNITATE)

#else

client_print(0, print_chat, "Viziteaza www.cs16.ro/forum")

#endif

Unde 0  -  trimite mesajul catre toti jucatorii.

SECTIUNE : respectivele client_print

#else - schimbarea la a 2 comanda

 

Un alt exemplu despre compilarea cu conditii:

#define ONLY_ADMIN 

public comanda( id )
{
    #if defined ONLY_ADMIN
        if( get_user_flags( id ) & ADMIN_KICK )
        {
            //executa comanda
        }
    #else
	//executa comanda
    #endif
} 

Cum va functiona ?

  • #if defined verifica daca ONLY_ADMIN este definit( prin #define )
  • daca este va verifica daca are un acces de admin, daca da executa comanda
  • altfel, executa comanda, oricine are acces
  • #endif inchide structura

#directiva este o directiva de preprocesare si nu o functie.

Daca aveti intrebari sau probleme legate de aceasta functie nu ezitati sa lasati reply.


Edited by Artick, 18 September 2014 - 05:10 PM.
Update

  • Laurrica likes this




2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users