Skocz do zawartości
  • Zarejestruj się
  • 0
Innocent

Problem z ustawieniem max. wartości dla zapełnienia serwera.

Pytanie

Jestem w trakcie pisania tabeli serwerów pod IPS 4.X i mam problem, gdy jest więcej graczy niż slotów np 37/36 to nie widać zabarwienia. Mnie więcej coś takiego

bb5d336917a14079993a22bb0aec8855.png

Aktualny kod który posiadam:

if(is_numeric($serwer['PLAYER_ALL']) && is_numeric($serwer['PLAYER_MAX_ALL']) && $serwer['PLAYER_MAX_ALL'] !=0)
				$infmon['all_percent'] = round($serwer['PLAYER_ALL'] / $serwer['PLAYER_MAX_ALL'] * 100);
			else
				$infmon['all_percent'] = 0;
			$s = 0;
			foreach($serwer as $sd => $b){
					$serwer[$sd]['enabled'] = $srv_info[$sd]['enabled'];
					if($serwer[$sd]['enabled'] == '1') {
						$s++;
						$serwer[$s]['bans'] = $srv_info[$s]['bans'];
						$serwer[$s]['stats'] = $srv_info[$s]['stats'];
						if($serwer[$s]['percent'] < 20 )
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_1;

						if($serwer[$s]['percent'] >= 20 && $serwer[$s]['percent'] < 40)
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_2;

						if($serwer[$s]['percent'] >= 40 && $serwer[$s]['percent'] < 60)
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_3;

						if($serwer[$s]['percent'] >= 60 && $serwer[$s]['percent'] < 80)
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_4;

						if($serwer[$s]['percent'] >= 80 && $serwer[$s]['percent'] < 100)
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_5;

						if($serwer[$s]['percent'] == 100)
							$serwer[$s]['percent_color'] = \IPS\Settings::i()->monitoring_color_6;
						
					}
			}

			if(is_numeric($serwer['PLAYER_ALL']) && is_numeric($serwer['PLAYER_MAX_ALL'])){
				if($infmon['all_percent'] < 20 )
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_1;

				if($infmon['all_percent'] >= 20 && $infmon['all_percent'] < 40)
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_2;

				if($infmon['all_percent'] >= 40 && $infmon['all_percent'] < 60)
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_3;

				if($infmon['all_percent'] >= 60 && $infmon['all_percent'] < 80)
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_4;

				if($infmon['all_percent'] >= 80 && $infmon['all_percent'] < 100)
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_5;

				if($infmon['all_percent'] == 100)
					$infmon['all_percent_color'] = \IPS\Settings::i()->monitoring_color_6;
				
			}

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

5 odpowiedzi na to pytanie

Polecane posty

  • 1

No nie bardzo. bo chociażby to może dać wynik większy niż 100

$infmon['all_percent'] = round($serwer['PLAYER_ALL'] / $serwer['PLAYER_MAX_ALL'] * 100);

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

bo dałeś warunki w stylu:

if($serwer[$s]['percent'] == 100)

czyli maks to 100% jak chcesz więcej to zamień warunek na =>

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
5 godzin temu, Spanner napisał:

bo dałeś warunki w stylu:


if($serwer[$s]['percent'] == 100)

czyli maks to 100% jak chcesz więcej to zamień warunek na =>

Chodzi mi to o aby nie pokazywało np 103% zapełniania, tylko 100%

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
2 godziny temu, Innocent napisał:

Chodzi mi to o aby nie pokazywało np 103% zapełniania, tylko 100%

No to musisz zrobić obliczanie tam gdzie masz zaokrąglanie, że jeśli jest więcej niż 100 to ustaw 100

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
6 godzin temu, Spanner napisał:

No to musisz zrobić obliczanie tam gdzie masz zaokrąglanie, że jeśli jest więcej niż 100 to ustaw 100

Wszędzie jest max 100%

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×

Ważne informacje

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.