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
 

Ogen Dogen - zdjęcie

Ogen Dogen

Rejestracja: 07.01.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 02.09.2023 20:02
*****

#741897 2 Pytania

Napisane przez Ogen Dogen w 14.08.2017 12:29

 

1. Nie możesz, bo cała tablica musi być tego samego typu. Za to możesz konwertować tekst na liczbę - https://amxx.pl/doku...1372/str-to-num
2. Obliczanie procentów to czysta matematyka ;)

new procenty = (liczbaPodlozonychBomb / liczbaWymaganychBomb) * 100; // bez ułamków
new Float:procenty = floatmul(floatdiv(float(liczbaPodlozonychBomb), float(liczbaWymaganychBomb)), 100); // z ułamkami (pamiętaj aby sformatować na wyjściu w celu uniknięcia okresu np. 1/3)
+ ograniczenie
if (missionProgress[id] < 100) missionProgress[id]++;
else // koniec misji

Po zastosowaniu Twojego kodu mam błędy:
 
error 033: array must be indexed (variable "missionData")
warning 204: symbol is assigned a value that is never used: "text"
//
if (missionSelected[id] >= 0)
{
	new procent = (missionProgress[id] / missionData[missionSelected[id]][3]) * 100;
		
	set_hudmessage(0, 255, 0, 0.80, -1.0, 0, 0.0, 1.0)
	ShowSyncHudMsg(id, gSyncHudObj, "[Postep: %i%%]", procent)
}

format(vaultData, 255, "%i", number)
nvault_get(gVault, vaultKey, vaultData, 255)

Formatujesz vaultData, a potem i tak jest to nadpisywane przez nvault_get(). Kombinuj dalej ;)

Ps. Przy wczytywaniu ciągu znaków do zmiennych musisz zarezerwować komórkę na terminator ciągu znaków (stringa) - zwiększ wielkość tablic przy deklaracji o +1.


Nie rozumiem. Mógłbyś trochę jaśniej ? :D

 

 

1. Z tego co widzę to missionData ma 3 wymiary, a ty używasz tylko 2.

2. Jeżeli spodziewasz się, że twój string będzie miał rozmiar n to zadeklaruj jego rozmiar n+1, bo potrzebujesz jeszcze przechować tzw. null terminator. Symbol, dzięki któremu wiadomo gdzie się kończy tekst - https://en.wikipedia...rminated_string


  • +
  • -
  • 1


#741888 2 Pytania

Napisane przez Ogen Dogen w 13.08.2017 21:28

1. Nie możesz, bo cała tablica musi być tego samego typu. Za to możesz konwertować tekst na liczbę - https://amxx.pl/doku...1372/str-to-num

2. Obliczanie procentów to czysta matematyka ;)

new procenty = (liczbaPodlozonychBomb / liczbaWymaganychBomb) * 100; // bez ułamków
new Float:procenty = floatmul(floatdiv(float(liczbaPodlozonychBomb), float(liczbaWymaganychBomb)), 100); // z ułamkami (pamiętaj aby sformatować na wyjściu w celu uniknięcia okresu np. 1/3)

+ ograniczenie

if (missionProgress[id] < 100) missionProgress[id]++;
else // koniec misji

  • +
  • -
  • 1


#741177 Wczytyanie danych z bazy "na raz"

Napisane przez Ogen Dogen w 16.07.2017 14:40

Jak możesz to podaj strukturę tych tabel, ale wydaje mi się że zwykły JOIN wystarczy.


  • +
  • -
  • 1


#740736 Asysty

Napisane przez Ogen Dogen w 04.07.2017 18:24

Nie polecam tego pluginu, bo koliduje z AMXBans'em i znikają flagi. Przynajmniej u mnie był taki problem ;)

Lepiej wgrać normalne z wyświetlaniem wiadomości na HUD.


  • +
  • -
  • 1


#740429 jak napisać żeby było napis /test

Napisane przez Ogen Dogen w 21.06.2017 16:08

W plugin_init()

register_clcmd("say /menu", "cmdMenuHandler");

Niżej

public cmdMenuHandler(id)
{
  // gracz wpisał /menu, obsłuż zdarzenie
}

Jeśli chodzi o tworzenie menu to jest cały tutorial - https://amxx.pl/topi...tworzenie-menu/


  • +
  • -
  • 1


#740302 Jak przekonwertować baze z ipb 3.4 na 4.1

Napisane przez Ogen Dogen w 17.06.2017 14:09

 

Jeżeli masz licencję to wystarczy zrobić upgrade całego forum i samo ci automatycznie przekonwertuje bazę. Sam robiłem upgrade i wszystko przeszło bezboleśnie. Tylko nie zapomnij zrobić wcześniej backup ;)

Przed upgrade upewnij się czy spełniasz wymagania (php 5.6+, memory_limit 128M i inne potrzebne moduły) https://invisioncomm...eady-for-ips-4/

 

robiłem tym upgradem ale posty mi znikają, użytkownicy zostają i tak za każdym razem nie wiem czemu

Chyba, że da się osobno jakoś te posty przenieść?

 

Konwertuje ci tylko część bazy i na koniec całego procesu pisze, że wszystko jest w porządku ? Raczej nie możliwe, ten skrypt do upgradowania jest dosyć inteligentny i wyłapuje dużo rzeczy. No chyba, że używasz nulled'a to ci niewiele pomogę ;>

Ja szedłem według tego poradnika i nie miałem żadnego problemu - https://invisioncomm...rted/upgrading/

Po zakończeniu konwersji bazy poczekaj na dokończenie przebudowy reszty elementów strony lub uruchom ręcznie z panelu.


  • +
  • -
  • 1


#740086 Zapis zmiennych true/false do nvault

Napisane przez Ogen Dogen w 05.06.2017 16:49

Zapisuj jedynki i zera.


  • +
  • -
  • 1


#739963 Wyrażenie regularne - jak skonstruować?

Napisane przez Ogen Dogen w 30.05.2017 17:41


Jak pozbyć się tego żeby zostało tylko to co wewnątrz?

 


(1 grupa to wartość, której szukasz)

  • +
  • -
  • 1


#739951 Wyrażenie regularne - jak skonstruować?

Napisane przez Ogen Dogen w 29.05.2017 21:14

Regex nie nadaje się do HTML'a, może co najwyżej do nieskomplikowanych, statycznych stron. Polecam wątek - https://stackoverflo...-contained-tags

Jeżeli już tak bardzo się uparłeś to spróbuj takiego wzorca: (1 grupa to wartość, której szukasz)

>(.*)<\/span>

  • +
  • -
  • 1


#739942 [KOSZ] Problem z Plugin

Napisane przez Ogen Dogen w 29.05.2017 14:03

To nie wina tego pluginu tylko konfiguracji dproto.

Spróbuj wgrać inną wersję, bo niektóre nadmiernie wyrzucają lub ustaw kick jako karę.

# FakePlayers_BanTime (minutes)
# Dproto will ban IP spamming fakeplayers for time (in minutes) specified in this variable
#   use 0 for permanent ban
#   use negative vaules to disable ban (fake players will only be kicked)
FakePlayers_BanTime = -1

Ostatecznie możesz wyłączyć ochronę, ale nie jest to zalecane.

# ========================================================
# 		ATTACKS SUPRESSION
# ========================================================

# FakePlayers_AntiReconnect (0/1)
# Enables detection of fakeplayers that reconnects quickly (every < 10 seconds)
# before fake players checks have completed.
# This check will work only if FakePlayers_ClientValidationCheck and
# FakePlayers_ConnectInitiationCheck are enabled.
#   Default is 1 (ON).
FakePlayers_AntiReconnect = 0

  • +
  • -
  • 1


#739920 Spadek fps

Napisane przez Ogen Dogen w 28.05.2017 11:13

Takie skoki są normalne. Jeżeli nie zauważasz gołym okiem spadków płynności gry to nie masz się czy martwić.


  • +
  • -
  • 1


#737133 Włam na amxbans

Napisane przez Ogen Dogen w 05.03.2017 17:14

Twój hosting WWW powinien blokować wszystkie zewnętrzne połączenia do bazy danych, oprócz localhosta i adresów serwerów gier. Ktoś mógł zdobyć dane do twojej bazy i sobie ręcznie dodać.

Jeżeli nie masz takiej opcji w panelu to napisz do supportu z taką prośbą, jeżeli i to nie pomoże to polecam zmienić firmę ;)


  • +
  • -
  • 1


#735200 Zablokowanie opcji w menu od x graczy

Napisane przez Ogen Dogen w 27.01.2017 11:33

Może tak ?

public showmenu(id)
{
	new menu = menu_create("Moje menu", "menu_handler");
	new cb = menu_makecallback("menu_callback");
	menu_additem(menu, "Opcja 1");
	menu_additem(menu, "Opcja 2");
	menu_additem(menu, "Opcja 3");
	menu_display(id, menu, 0);
}

public menu_handler(id, menu, item)
{
	if (item == MENU_EXIT) return PLUGIN_HANDLED;
	switch(item)
	{
		// obsluga menu
	}
}

public menu_callback(id, menu, item)
{
	if (item == 0 && get_team_players(1) > 5) return ITEM_DISABLED;
	return ITEM_ENABLED;
}

stock get_team_players(team)
{
	new counter = 0;
	for (new i=0; i<33; i++) if (is_user_connected(i) && get_user_team(i) == team) counter++;
	return counter;
}

  • +
  • -
  • 1


#734734 Podstawowe pluginy AMXX

Napisane przez Ogen Dogen w 17.01.2017 13:17

No ok ale czy jest jakis plugin ktory musi byc wlaczony aby te dwa wyzej dzialaly?

Nie, ale to będzie goły serwer.


  • +
  • -
  • 1


#734336 Jak zacząłeś swoją przygodę z programowaniem?

Napisane przez Ogen Dogen w 05.01.2017 13:45

W wieku 16 lat natrafiłem na kurs Pascala dla zupełnie zielonych.

Było w nim wszystko tak dokładnie wytłumaczone, że nie musiałem się wspierać innymi źródłami.

Szybko napisałem swój pierwszy programik, który robił coś pożytecznego - mianowicie kalkulator do Tibii, obliczający ile mamy HP i many na danym poziomie profesji :D

Wtedy to było dla mnie takie osiągnięcie jakbym drugiego Windowsa napisał, to mnie zmotywowało do dalszej nauki Pascala, później C++, pluginy AMXX itd.


  • +
  • -
  • 2