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
CoD Nowy

Problem z wytrzymałością perku

cod nowy

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

#1 secretservice

    Życzliwy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:32
  • Lokalizacja:Cybinka
Offline

Napisano 13.07.2013 10:57

Witam.

Posiadam na swoim serwerze COD MOD plugin na wytrzymałość perku. Niestety problem polega na tym, że gracze go bugują poprzez zmianę klasy na inną i powrót do klasy, tak aby odnowić perk.

Chciałbym rozwiązać ten problem, zmodyfikowałem kod pluginu tak aby po zmianie klasy była losowa wartość perku z przedziału <1,30>, jednak o ile w wiadomości say, która się wyświetla przez colorchat jest poprawna i pokazuje np. [COD:MW3][uGraj.com] Zmieniles klase wiec Twoj perk posiada teraz 14 wytrzymalosci to niestety w HUD nadal jest 100% i maleje, a nie przybiera takiej wartości jak powinno.

 

Kolejny problem polega na tym, że jak ktoś wejdzie na serwer i wybierze klasę to od razu po tym wywala mu ten komunikat z colorchata, mimo, iż nie ma perku.

 

Kod pluginu:

http://www.wklej.org/id/1085878/

 

Mam nadzieję, że ktoś pomoże lub choć nakieruje.

Pozdrawiam i z góry dziękuję.


Użytkownik secretservice edytował ten post 13.07.2013 10:59

  • +
  • -
  • 0

#2 Kalifta

    Zaawansowany

  • Zbanowany

Reputacja: 18
Początkujący

  • Postów:82
  • GG:
  • Imię:Damian
  • Lokalizacja:30km od Grudziądza
Offline

Napisano 13.07.2013 12:05

#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <colorchat>

#define PLUGIN "[CODMOD] Wytrzymalosc Perku"
#define VERSION "1.0"
#define AUTHOR "QTM_Peyote edit secretservice"

new cvar_max_wytrzymalosc, cvar_uszkodzenia_za_smierc, cvar_uszkodzenia_za_obrazenia;

new wytrzymalosc_perku[33];
new wytrzymalosc_pozmianie[33];
new nazwa_perku[33];

/*---------

Aby korzystac z natywow
cod_get_perk_durability oraz cod_set_perk_durability
musisz dodac do swojego pluginu:

native cod_set_perk_durability(id, wytrzymalosc); // Ustawia wytrzymalosc perku gracza.
native cod_get_perk_durability(id); // Pobiera wytrzymalosc perku gracza.

-----------*/

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	RegisterHam(Ham_Killed, "player", "SmiercPost", 1)
	RegisterHam(Ham_TakeDamage, "player", "ObrazeniaPost", 1)
	
	cvar_max_wytrzymalosc = register_cvar("cod_maxperkdurability", "100");
	cvar_uszkodzenia_za_smierc = register_cvar("cod_perkdamage_kill", "5");
	cvar_uszkodzenia_za_obrazenia = register_cvar("cod_cod_perkdamage_dmg", "1")
}

public plugin_natives()
{
	register_native("cod_get_perk_durability", "PobierzWytrzymalosc", 1);
	register_native("cod_set_perk_durability", "UstawWytrzymalosc", 1);
}	
	
public cod_perk_changed(id, perk)
{
	wytrzymalosc_perku[id] = perk? get_pcvar_num(cvar_max_wytrzymalosc): 0;
	cod_get_perk_name(cod_get_user_perk(id), nazwa_perku, 32);
}
	
public SmiercPost(id, attacker, sb)
{
	if(!cod_get_user_perk(id)) return;
	
	new uszkodzenia_za_smierc = get_pcvar_num(cvar_uszkodzenia_za_smierc);
	wytrzymalosc_perku[id] -= (wytrzymalosc_perku[id] > uszkodzenia_za_smierc)? uszkodzenia_za_smierc: wytrzymalosc_perku[id];
	if(wytrzymalosc_perku[id] <= 0)
	{
		cod_set_user_perk(id, 0);
		ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Twoj perk ulegl zniszczeniu.");
	}
	else
	{
		ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Obecnie posiadasz perk ^x04%s. Chron go przed zniszczeniem.", nazwa_perku);
		ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Pozostala wytrzymalosc twojego perku to ^x04%i.", wytrzymalosc_perku[id]);
	}
}

public UstawWytrzymalosc(id, wartosc)
{
	new max_wytrzymalosc = get_pcvar_num(cvar_max_wytrzymalosc);
	wytrzymalosc_perku[id] = (wartosc > max_wytrzymalosc)? max_wytrzymalosc: wartosc;
}

public PobierzWytrzymalosc(id)
	return wytrzymalosc_perku[id];

public ObrazeniaPost(id, idinflictor, attacker, Float:damage, damagebits)
{
	if(!cod_get_user_perk(id)) return;
	if(get_user_team(id) == get_user_team(attacker)) return
	
	while(damage >= 10.0)
	{
		new uszkodzenia_za_smierc = get_pcvar_num(cvar_uszkodzenia_za_obrazenia);
		wytrzymalosc_perku[id] -= (wytrzymalosc_perku[id] > uszkodzenia_za_smierc)? uszkodzenia_za_smierc: wytrzymalosc_perku[id];
		damage -= 10.0
	}
	if(wytrzymalosc_perku[id] <= 0)
	{
		cod_set_user_perk(id, 0);
		ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Twoj perk ulegl zniszczeniu.");
	}
}

public cod_class_changed(id)
{
	wytrzymalosc_pozmianie[id]=random_num(1,30);
	wytrzymalosc_perku[id]=wytrzymalosc_pozmianie[id];
	ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Zmieniles klase wiec Twoj perk posiada teraz^x04 %i ^x01wytrzymalosci", wytrzymalosc_perku[id]);
	ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Aby odnowic perk skorzystaj ze ^x04sklepiku.");
}

 

Spróbuj wywalić:

new wytrzymalosc_pozmianie[33];

 

i

public cod_class_changed(id)
{
	wytrzymalosc_pozmianie[id]=random_num(1,30);
	wytrzymalosc_perku[id]=wytrzymalosc_pozmianie[id];
	ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Zmieniles klase wiec Twoj perk posiada teraz^x04 %i ^x01wytrzymalosci", wytrzymalosc_perku[id]);
	ColorChat(id, GREEN, "[COD:MW3][uGraj.com]^x01 Aby odnowic perk skorzystaj ze ^x04sklepiku.");
}


Użytkownik Kalifta edytował ten post 13.07.2013 12:07

sygna.jpg

Napisałem ci klasę??? Czasami zostaw po sobie +

 

 

Klasa Kapitan & Perk M4 Kapitana


#3 secretservice

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:32
  • Lokalizacja:Cybinka
Offline

Napisano 13.07.2013 12:40

Co to za logika w ogóle? Żeby wywalać coś co dodałem po to aby właśnie wyeliminować ten bug? Bez tego jest to samo, bo przecież taki był domyślnie ten plugin...


  • +
  • -
  • 0

#4 secretservice

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:32
  • Lokalizacja:Cybinka
Offline

Napisano 21.07.2013 17:09

Jest ktoś w stanie mi pomóc?


  • +
  • -
  • 0

#5 secretservice

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:32
  • Lokalizacja:Cybinka
Offline

Napisano 25.07.2013 15:47

Czy jest na tym forum ktoś, kto potrafi pomóc za darmo?...


  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cod nowy

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

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