Skocz do zawartości

Czytelny Kod


Muzzik
# CSH External VIP Project

Masz dosyć problemów z czynnikiem zaufania w CS2 lub notorycznymi banami?

Sprawdź CSH External VIP Project.


Więcej informacji  

Rekomendowane odpowiedzi

Tu podam pare podpowiedzi jak utrzymac kod w ladnym porzadku.

 

Klamry zawsze na wysokosci funkcji:

 

public event_curweapon (id) 
{
        if (zmienna==1)
        {
                for(new i=0;i<33;i++)
                {
                        
                }
        }
}
Pomijamy klamry gdy jest tylko 1 linia kodu:

 

public event_curweapon (id) 
{
        if (zmienna==1)
                for(new i=0;i<33;i++)
                        while(get_user_health(i)<img src='http://www.cshacked.pl/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' /> client_print(i,print_chat,"a")
                                else client_print(i,print_chat,"b")
                        }
}
Przy 1. if i for mozna stosowac jeszcze klamry bo ulatwia to troche utrzymaniu kodu. Ale przy ostatnich pozbywamy sie ich, a z powod, ze kod jest krotki to dajemy go zaraz za if'em.

 

Elementu kodu ktore nie potrzebuja ustalonej kolejnosci ustawiamy tematycznie:

 

register_touch("throwing_knife", "player",              "touchKnife")
register_touch("throwing_knife", "worldspawn",          "touchWorld")
register_touch("throwing_knife", "func_wall",           "touchWorld")
register_touch("throwing_knife", "func_door",           "touchWorld")
register_touch("throwing_knife", "func_door_rotating",  "touchWorld")
register_touch("throwing_knife", "func_wall_toggle",    "touchWorld")
register_touch("throwing_knife", "func_breakable",      "touchWorld")
register_cvar("diablo_knife","20")
register_cvar("diablo_knife_speed","1000")
Lub wedlug typu funkcji:

 

 

        g_msg_bartime = get_user_msgid("BarTime")
        g_msg_clcorpse = get_user_msgid("ClCorpse")
        g_msg_screenfade = get_user_msgid("ScreenFade")
        g_msg_statusicon = get_user_msgid("StatusIcon")
        
        register_cvar("diablo_sql_host","localhost",FCVAR_PROTECTED)
        register_cvar("diablo_sql_user","root",FCVAR_PROTECTED)
        register_cvar("diablo_sql_pass","root",FCVAR_PROTECTED)
        register_cvar("diablo_sql_database","dbmod",FCVAR_PROTECTED)

        register_event("CurWeapon","CurWeapon","be") 
        register_event("Damage", "Damage", "b", "2!0")  
        register_event("DeathMsg","DeathMsg","ade") 
        register_event("ResetHUD", "ResetHUD", "abe")
        
        register_logevent("RoundStart", 2, "0=World triggered", "1=Round_Start")
        register_logevent("award_plant", 3, "2=Planted_The_Bomb");      
        
        register_clcmd("say /Pomoc","helpme") 
        register_clcmd("say /Klasa","changerace")
        register_clcmd("say /speed","speed")
==================================================

 

Nazewnictwo - stosujemy zawsze takie nazwy cvarow, zmiennych i funkcji by mozna sie domyslic do czego sluza bez ogladania kodu np. id - gracz (jesli kozystamy rownoczesnie z id kilku graczy to mozemy nazwac (sry ale przyzwyczailem sie do ang. w pawnie) KillerID (kid), victimID (vid)).

 

Zmienne globalne z przedrostkiem g_ (moze sam tego zbytnio nie stosuje, ale to ulatwia czytanie kodu!).

 

Nazwy funkcji (np. wzgledem eventa) moga byc dowolne, ale piszemy tak by wiadomo bylo co chcemy by sie w niej dzialo.

 

===================================================

 

Uzywamy stalych (i eNUM'ow)

#define TOTAL_RACES   4 
#define TOTAL_CLASSES 3
Szczegolnie gdy w wielu miejsciach musi byc ta sama liczba lub gdy odpowiada im konkretna wlasciwosc (np. MOVETYPE_FLY zamiast 5 - eNUM).

 

===================================================

 

Uzywamy komentarzy, szczegolnie gdy dana czesc kodu sprawiala nam problemy lub jest szczegolnie wazna!

 

 

 

 

PS. Kod jest nie kompletny i wyrwany z 'kontekstu', prosze tylko zwracac uwage na uklad kodu.

 

 

Źródło amxx.pl

Zapraszam na mojego twittera:

@Muzzikx

Odnośnik do komentarza

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Regulamin. Polityka prywatności