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
 

jadamciwszystko - zdjęcie

jadamciwszystko

Rejestracja: 25.01.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 05.01.2013 09:50
-----

#361001 Nowa statystyka Regeneracja Hp

Napisane przez jadamciwszystko w 09.02.2012 11:35

klasie się jej nie dodaje bo pomyślałem sobie że tak szybciej.
  • +
  • -
  • 1


#360856 Nie widać klas.

Napisane przez jadamciwszystko w 08.02.2012 21:44

spróbuj tak:
public cod_class_disabled(id)
{
set_user_footsteps(id, 0);
ma_klase[id] = false;
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
                
}

  • +
  • -
  • 1


#359886 Nowa statystyka Regeneracja Hp

Napisane przez jadamciwszystko w 07.02.2012 09:55

to wiem, ale jak to liczyć?
ja myślę że tak: 100.0*(ilość punktów ile damy, np: 50)/100.0=50 czyli wychodzi na to że za 100 dmg dostaniemy 50hp
  • +
  • -
  • 1


#359701 Nowa statystyka Regeneracja Hp

Napisane przez jadamciwszystko w 06.02.2012 20:36

szczerze to nie umiem przeliczać tego właśnie, ale wydaje mi się że jesli damy 100 punktów to za 100dmg będzie 100hp
dobrze by było jakby ktoś to ładnie wytłumaczył.
  • +
  • -
  • 1


#359353 Nowa statystyka Regeneracja Hp

Napisane przez jadamciwszystko w 06.02.2012 20:04

Siemka, zamieszczam wam kod który pozwoli na regeneracje hp za obrażenia zadane z broni.
Jeśli są jakieś problemy, lub jakaś literka przeoczona w kodzie proszę pisać.

do modułów należy dodać:
#include <codmod>
Pod:
#define ZADANIE_USTAW_SZYBKOSC 832
dodajemy:
#define DMG_BULLET (1<<1)
Pod:
kondycja_gracza[33],
dodajmy:
regeneracjap_gracza[33];
do plugin_init na końcu:
RegisterHam(Ham_TakeDamage, "player", "Regeneracja", 1);
do public usunumiejetnosc po:
kondycja_gracza[id] = 0;
dodajemy:
regeneracjap_gracza[id] = 0;
w public przydzielpunkty pod:
new kondycja[60];
dodajemy:
new regeneracjap[60];
w tej samej funkcji pod:
format(kondycja, charsmax(kondycja), "Kondycja: \r%i \y(Zwieksza tempo chodu)", PobierzKondycje(id, 1, 1, 1));
dodajemy:
format(regeneracjap, charsmax(regeneracjap), "Regeneracja: \r[%i - 50] \y(Zwieksza regeneracje hp)", regeneracjap_gracza[id]);
w tej samej funkcji pod:
menu_additem(menu, kondycja);
dodajemy:
menu_additem(menu, regeneracjap);
Szukamy:
case 3:
		{	
			if(kondycja_gracza[id] < 100)
			{
				kondycja_gracza[id]++;
				punkty_gracza[id]--;
			}
			else
				client_print(id, print_chat, "[COD:MW] Maksymalny poziom kondycji osiagniety");
		}
pod tym dodajemy:
case 4:  
		{	
			if(regeneracjap_gracza[id] < 50)
			{
				regeneracjap_gracza[id]++;
				punkty_gracza[id]--;
			}
			else
				client_print(id, print_chat, "[COD:MW] Maksymalny poziom regeneracji osiagniety");
		}
w public resetujpunkty pod:
kondycja_gracza[id] = 0;
dodajemy:
regeneracjap_gracza[id] = 0;
w public zapiszdane zamieniamy to:
format(vaultdata, charsmax(vaultdata),"#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
na to:
format(vaultdata, charsmax(vaultdata),"#%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], regeneracjap_gracza[id]);
w public wczytajdane szukamy:
new danegracza[6][32];
zamieniamy na:
new danegracza[7][32];
szukamy:
danegracza[6], 31
po tym dodajemy:
, danegracza[7], 31
pod tym:
kondycja_gracza[id] = str_to_num(danegracza[5]);
dodajemy:
regeneracjap_gracza[id] = str_to_num(danegracza[6]);
zamieniamy:
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
na to:
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-regeneracjap_gracza[id];
w public sprawdzpoziom dwa razy dodajemy po:
-kondycja_gracza[id]
to:
-regeneracjap_gracza[id]
na koncu .sma dodajemy:
public Regeneracja(this, idinflictor, idattacker, Float:damage, damagebits)
{
	if(!is_user_alive(idattacker))
		return HAM_IGNORED;
		
	
	new Float:maksymalne_zdrowie = 100.0 + cod_get_user_health(idattacker);
	new Float:nowe_zdrowie = damage * (regeneracjap_gracza[idattacker]/100.0) + pev(idattacker, pev_health);
	
	set_pev(idattacker, pev_health, (nowe_zdrowie < maksymalne_zdrowie)? nowe_zdrowie: maksymalne_zdrowie);
	
	return HAM_IGNORED;
}

Załączone pliki


  • +
  • -
  • 6