Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Sprawdzanie liczby klamer w funkcjachBracket Counter by Pavulon 4 amxx.pl


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
24 odpowiedzi w tym temacie

#1 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 14:50

*
Popularny

Bracket Counter by Pavulon 4 amxx.pl

Jest to mały programik napisany w Delphi 7 mający na celu sprawdzenie czy dana funkcja (public lub stock) posiada taką samą liczbę klamer otwierających "{" co zamykających "}". W przypadku gdy liczby te są różne wyświetla stosowną informację w której funkcji klamry się nie zgadzają.

Dołączona grafika


Znane błędy:
Program nie radzi sobie z dyrektywami preprocesora #if constant expression, #elseif, #else, #endif
Ma problemy jeżeli dyrektywy zaczynają się poza funkcjami

Załączone pliki


  • +
  • -
  • 29

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 06.03.2010 15:08

Z pewnością przydatne przy sporym objętościowo kodzie.


PS Myślałem, że to pole tekstowe służy do wpisywania fragmentu kodu xD
  • +
  • -
  • 0

#3 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 06.03.2010 15:08

Jakbyś to zrobił w php'ie i dodał do "dodatki" to by szybko mozna sprawdzać pliki :F

Ale i tak nieźle (brak czasu by przetestować).
  • +
  • -
  • 0

#4 mgr inż. Pavulon

    C35H60Br2N2O4

  • Autor tematu
  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 15:17

Miczu ale zrobienie tego w php by niepotrzebnie obciążało serwer www.
Takie dajmy na to diablo. Ponad 200 kB, ponad 8000 linijek, prawie po 1000 klamerek.
  • +
  • -
  • 0

#5 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 06.03.2010 15:28

Bardzo przydatne narzędzie szczególnie przy diablo! :]
Dzięki :>
  • +
  • -
  • 0

#6 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 06.03.2010 15:50

a gdzie ty w dyrektywach pre procesora masz klamerki :?:
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#7 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 06.03.2010 16:07

Co sie stanie jak zrobie:

#define klamra1 {
#define klamra2 }

if(a>b)
klamra1
a*=2
b/=2
klamra2
else
klamra1
a/=2
b*=2
klamra2

Nie wiem czy to ma cos wspolnego z tym co pavulon wspominał, ale klamer tu nie policzy :F
  • +
  • -
  • 0

#8 mgr inż. Pavulon

    C35H60Br2N2O4

  • Autor tematu
  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 16:16

Miczu z takimi schizami to w ogóle nie bawiłem się ;)

Tu jest przykład gdzie będzie błąd:
public on_damage(id)
{
if(!get_pcvar_num(bulletdamage))
return PLUGIN_HANDLED

new attacker = get_user_attacker(id)
#if defined DAMAGE_RECIEVED

if ( is_user_connected(id) && is_user_connected(attacker) )
{
new damage = read_data(2)

set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(id, g_MsgSync2, "%i^n", damage)
#else
if ( is_user_connected(attacker) )
{
new damage = read_data(2)
#endif
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage)
}
return PLUGIN_CONTINUE
}


Ogólnie są tam 3 klamry otwierające i 2 zamykające, tylko że klamry otwierające 2. i 3. są pomiędzy #if, #else, #endif
  • +
  • -
  • 0

#9 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 06.03.2010 16:19

mozesz to rozwiazac tak jak ja rozwiazalem w swojej wersji problem z komentarzami /* */ czyli robisz zmienna dodatkowa otwarcie i zmieniasz ja na 1 jesli otwierasz komentarz , zerujesz ja gdy zamykasz komentarz no i przy liczeniu klamerek dodajesz warunek czy otwarcie=0 to licz :D

PS
chyba tez sie przezuce na delphi :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#10 mgr inż. Pavulon

    C35H60Br2N2O4

  • Autor tematu
  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 16:24

ehh goq goq, te twoje pomysły...

Ja mam inną koncepcje na rozwiązanie komentarzy itp i do tej pory się ona sprawdza.
  • +
  • -
  • 0

#11 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 06.03.2010 16:31

// - przeskok do nowej lini
/* - czakaj az sie pojawi */
  • +
  • -
  • 0

#12 mgr inż. Pavulon

    C35H60Br2N2O4

  • Autor tematu
  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 17:09

Jest i aktualizacja :cfaniak:

Aktualnie trawi i
#define klamra {
i
#if 
#elseif 
#else
#endif
Przynajmniej na tyle ile sprawdziłem.

Tyle że zaczął mi się mózg lasować i pod koniec nie wiedziałem jak się piszę "break" :bleeee:
  • +
  • -
  • 0

#13 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 06.03.2010 17:25

pav moja koncepcja dotyczyla rozwiazania problemu z dyrektywami :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#14 mgr inż. Pavulon

    C35H60Br2N2O4

  • Autor tematu
  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 06.03.2010 17:37

goq, goq...
chciałbym to zobaczyć jak ci wychodzi... myślisz że wszystko jest takie prościutkie ?
liczba klamerek pomiędzy #if a #elseif musi być taka sama jak pomiędzy #elseif a #else (itd) a ta z kolei musi być równa liczbie klamerek pomiędzy #else a #endif
Na dodatek liczbę tych klamerek należy uwzględnić w klamerkach funkcji itd itd

Nawet teoretycznie nie masz racji bo to niewiele ma wspólnego z komentarzami...
  • +
  • -
  • 0

#15 Fixxor

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:12
  • Lokalizacja:Częstochowa
Offline

Napisano 08.05.2010 15:33

Fajny programik pomocny na pewno bardzo, ale nie miałem jeszcze okazji z nim się spotkać na pewno z niego skorzystam jak będę miał problem
  • +
  • -
  • 0
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl
CsMods.pl & Amxx.pl

#16 ZixI

    Zaawansowany

  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:86
  • Imię:Dominik
  • Lokalizacja:Kęty
Offline

Napisano 24.10.2010 17:24

Właśnie go użyłem i się przydał.
Plusik ;)
  • +
  • -
  • 0

Dołączona grafika


#17 Sniper Elite

    Master

  • Power User

Reputacja: 175
Profesjonalista

  • Postów:981
  • GG:
  • Imię:Konrad
  • Lokalizacja:Skryptolandia
Offline

Napisano 27.05.2012 09:08

dobre pół godziny się męczyłem.
użyłem programu i załatwione w 1 min.
+
  • +
  • -
  • 0

Kontakt:

Steam: CSnajper

GG: 4394855

 

Na steam i GG pomagam wyłącznie odpłatnie.


#18 GT Team

    Ten lepszy xD

  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 21.06.2014 20:50

public plugin_precache "{": 2 = 2 :"}"
public plugin_natives "{": 1 = 1 :"}"
public plugin_init "{": 1 = 1 :"}"
public loadcvars "{": 2 = 2 :"}"
public client_disconnect "{": 1 = 1 :"}"
public fwaddtofullpack "{": 9 = 9 :"}"
ERROR -> public client_postthink "{": 9 <> 8 :"}"
public cmdmenuturrets "{": 4 = 4 :"}"
public cmdmenuturretscb "{": 2 = 2 :"}"
public cmdmenuturretsh "{": 5 = 5 :"}"
public menubuyturret "{": 2 = 2 :"}"
public menubuyturretcb "{": 1 = 1 :"}"
public menubuyturreth "{": 2 = 2 :"}"
public menubuyturret2h "{": 5 = 5 :"}"
public createmoveeffectturret "{": 3 = 3 :"}"
public menuturret "{": 1 = 1 :"}"
public menuturretcb "{": 5 = 5 :"}"
public menuturreth "{": 9 = 9 :"}"
public menuconfirmdelete "{": 1 = 1 :"}"
public menuconfirmdeleteh "{": 2 = 2 :"}"
public menumoveturret "{": 1 = 1 :"}"
public menumoveturreth "{": 6 = 6 :"}"
public deleteturret "{": 1 = 1 :"}"
public menuupgradeturret "{": 1 = 1 :"}"
public menuupgradeturretcb "{": 1 = 1 :"}"
public menuupgradeturreth "{": 4 = 4 :"}"
public menuupgradeturretpost "{": 4 = 4 :"}"
public menuupgradeturretupgrading "{": 1 = 1 :"}"
public menuupgradeturretupgradingcb "{": 1 = 1 :"}"
public menuupgradeturretupgradingh "{": 1 = 1 :"}"
public createturretranger "{": 1 = 1 :"}"
public deleteturretranger "{": 1 = 1 :"}"
public createturret "{": 6 = 6 :"}"
public createturretfinishinfo "{": 1 = 1 :"}"
public turretthink "{": 34 = 34 :"}"
stock turretturntotarget "{": 3 = 3 :"}"
public turretgetclosestmonster "{": 3 = 3 :"}"
public loadsound "{": 3 = 3 :"}"
public loadturretsconfig "{": 18 = 18 :"}"
stock createshell "{": 3 = 3 :"}"
stock get_origin_from_dist_player "{": 2 = 2 :"}"
public changealarmvalue "{": 2 = 2 :"}"
public createammobar "{": 1 = 1 :"}"
public changeammobarscale "{": 1 = 1 :"}"
public changeammobar "{": 20 = 20 :"}"
public removeammobar "{": 2 = 2 :"}"
public td_is_turret "{": 1 = 1 :"}"
public td_is_ranger "{": 1 = 1 :"}"
public td_is_ammobar "{": 2 = 2 :"}"
public td_is_turret_on_server "{": 1 = 1 :"}"
public td_is_ranger_exists "{": 1 = 1 :"}"

Nie wszystkie funkcje posiadają prawidłową liczbę klamer !!
 

Boże, dzięki :*


Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 


#19 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 22.06.2014 00:16

Jak się nie używa wcięć w kodzie poprawnie i do tego używa się beznadziejnego edytora to się takie błędy pojawiają... i się ich szuka godzinami...
  • +
  • -
  • 0

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#20 GT Team

    Ten lepszy xD

  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 22.06.2014 00:52

taak ? To proszę wytłumacz mi w czym źle kod napisałem :)

 

Pomóż cudotwórcy xD


Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych