Skocz do zawartości
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek

plx211

Użytkownik
  • Zawartość

    40
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    2

plx211 wygrał w ostatnim dniu 21 Styczeń

plx211 ma najbardziej lubianą zawartość!

Reputacja

33 Nowicjusz

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Hi, You're probably must create new particles from existings (their are in particles folder in package with this plugin), After this you must add new particles to plugin config file. This link https://developer.valvesoftware.com/wiki/Particle_System_Overview can be useful for you Good luck 😉
  2. nowy post bo edycja mi sie bugguje na fonie, usun == getteam w ostatniej petli, to wyswietlisz wszystkim
  3. zrobiłeś to najgorzej jak można było, po za tym odrazu trzeba było wstawić kod 🙂 nie jest to najlespze rozwiazanie, ale sproboj tego (nie testowane): public void UpdateMenu() { if (!(active && g_chicken)) { return; } ArrayList sorted = new ArrayList(2); Menu menu = new Menu(EmptyHandler); menu.SetTitle("ADEPT -> Chicken Hunt"); menu.ExitButton = false; for (int i = 1; i < sizeof(KilledChicken); ++i) { if (IsValidClient(i) && GetClientTeam(i) == CS_TEAM_TT) { int index = sorted.Push(KilledChicken[i]); sorted.Set(index, i, 1); } } SortADTArray(sorted, Sort_Descending, Sort_Integer); for (int i = 0; i < sorted.Length; ++i) { char buffer[65]; Format(buffer, sizeof(buffer), "-> %N zabił %d kurczaków", sorted.Get(i, 1), sorted.Get(i, 0)); menu.AddItem("", buffer, ITEMDRAW_DISABLED); } for (int i = 1; i < MaxClients; ++i) { if (IsValidClient(i) && GetClientTeam(i) == CS_TEAM_TT) { menu.Display(i, 20); } } }
  4. Nie napisałem tutaj że dla złożoności czasowej istnieje jeszcze coś takiego jak stała przez która mnożymy, jak widać na zdjęciu ta stała jest mniejsza dla inserta: Ale maszyna vm mocno zwiększa tą stałą, więc natywny quick sort zdecydowanie szybciej będzie działał nawet dla mniejszych przypadków. W sumie może zrobie testy pod wieczór, zobaczymy jak to w praktyce wypada 🙂 p.s. Trzeba pamiętać że pisząc samemu, zwiększamy szanse na błąd. A sourcemod korzysta (prawdopodobnie, na to wskazuje nazwa funkcji qsort) z quick sorta zaimplementowanego w biblioteke standardową języka C, który jest napewnno zoptymalizowany. p.s. 2 Dla tych co nie wiedzą 1E-07 s = 1*10^-7 s = 0,0000001 s = 0,0001 ms = 0,1 μs p.s. 3 Szacun za mashe, dobra bajka 😄
  5. https://sm.alliedmods.net/new-api/sorting/SortIntegers to algorytm quick sort ( https://github.com/alliedmodders/sourcemod/blob/master/core/logic/smn_sorting.cpp#L119 ), będzie on wydajniejszy niż ręcznie napisany insert sort zaproponowany przez @mastah7991 ze względu na to że jest zaimplementowany w sourcemodzie, a nie obliczany na maszynie virtualnej (source)pawna. Złożoność czasowa dla insert sort wynosi n^2 natomiast dla quick nlog(n) oraz pesymistyczne n^2, czyli w najgorszym wypadku będzie tak szybkie jak inseration sort. Dla tablicy 64 elementowej: 64^2 = 4096 64 * log(64) = ~180
  6. stock bool isLucky(int chance) { return !GetRandomInt(0, chance); } if (isLucky(3)) { // Szansa na wykonanie tego wynosi 1/3 } if (isLucky(100)) { // Szansa na wykonanie tego wynosi 1/100 } else { // Szansa na wykonanie tego wynosi 99/100 } Ciezko bylo wymyslic nazwe dla funkcji :)
  7. zacznijmy od tego co to za server? Dedyk? Vps? (jeśli tak to jaka wirtualizacja) Hosting dla serverów? oraz gdzie 🙂
  8. program do wizualizacij przestrzeni n-wymiarowych w przestrzeni 3-wymiarowej wraz z mozliwoscia robienia obrotow wzgledem danych wymiarow (patrz animacje tesseraktu) projekt mozna napisac ladnie w c++ i opengl (proponuje zamiast ogl uzyc vulkan).
  9. @MAGNET https://pl.m.wikipedia.org/wiki/Rust_(język_programowania) p.s. fatalnie sie oznacza osoby na telefonie (xiaomi redmi 5 plus w firefoxie)
  10. Bezpieczny język programowania o silnym statycznym typowaniu z garbage collector na poziomie kompilacji
  11. Cookie_Mutation = RegClientCookie("MuteGO_Mutation", "Mute players without mutation", CookieAccess_Protected); Cookie_Rude = RegClientCookie("MuteGO_Mutation", "Mute players considered as rude", CookieAccess_Protected); dla rude chyba powinna byc inna nazwa ciasteczka? :)
  12. @Yamakashi to juz lepiej usunac ten case, bedzie to wydajniejsze 🙂 @Weak. fVelocity [0] *= -10.0; fVelocity[1] *= -10. 0; zmniejsz (matematycznie bardziej bedzie okreslenie zwieksz) sobie te wartosci, aby zmniejszyc odrzut. nie wiem czy czasami wyl odrzutu nie spowoduje tego ze plugin bedzie bezuzyteczny
  13. Wstęp Poradnik pisany na podstawie https://wiki.alliedmods.net/Building_SourceMod Ładnie jest tam to opisane, ale korzystając tylko z tamtego artykułu nie udało mi się skompilować, musiałem szukać rozwiązań w internecie, z stąd ten poradnik 🙂 Dla tych co chcą kompilować na Windowsie zostaje jedynie powyższy artykuł. Cały proces przeprowadziłem na Antergosie x64 (Arch) Instalacja bibliotek oraz kompilatora Arch: sudo pacman -S git python clang gcc-multilib lib32-glibc lib32-libstdc++5 lib32-zlib Debian/Ubuntu: sudo apt-get install clang sudo apt-get install lib32stdc++-4.8-dev sudo apt-get install lib32z1 lib32z1-dev sudo apt-get install libc6-dev-i386 libc6-i386 Przygotowanie AMBuild Wpierw pobieramy najnowszy ambuild z repozytorium: git clone --recursive https://github.com/alliedmodders/ambuild.git Następnie przechodzimy do folderu z kodem: cd ambuild Instalujemy sudo python setup.py install Wracamy do katalogu wyżej: cd .. Kompilacja Tak samo jak w przypadku ambuild najpierw pobieramy najnowszy kod z repozytorium (--recursive jest tutaj bardzo ważne aby zassało nam biblioteki zależne takie jak amtl): git clone --recursive https://github.com/alliedmodders/sourcemod.git Pobieramy SDK które potrzebne są do interakcji sourcemod'a z srcds danego moda: source sourcemod/tools/checkout-deps.sh Przechodzimy do katalogu z kodem: cd sourcemod Tworzymy nowy folder do zbudowania sourcemod'a oraz przechodzimy do niego: mkdir build cd build Teraz konfigurujemy proces budowania: CC=clang CXX=clang++ python ../configure.py Wreszcie odpalamy kompilacje 🙂 : ambuild Skompilowany sourcemod pojawi się w folderze package w naszym folderze do budowania Dodatkowe informacje configure.py posiada wiele przydatnych parametrów, pełną listę wraz z opisem uzyskamy wpisując: python configure.py --help Jeśli chcemy skompilować kod przy pomocy innego kompilatora wystarczy że w procesie konfiguracji ustawimy go, np. dla g++: CC=gcc CXX=g++ python ../configure.py Istnieje jednak możliwość że będziemy musieli wtedy edytować kod, bądź dodać dodatkowe flagi kompilacji, sourcemod oficjalnie jest kompilowany na clang'u
  14. @fabko skrzynki i klucze w gui to screen overlay czy cos innego?
×