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

Problem z miksturką..


  • Zamknięty Temat jest zamknięty
5 odpowiedzi w tym temacie

#1 slowly

    Wszechwidzący

  • Zbanowany

Reputacja: 14
Początkujący

  • Postów:270
  • Steam:steam
  • Lokalizacja:Warszawa
Offline

Napisano 06.09.2010 17:28

Witam.
Chciałem, aby klasa Andriel mogła leczyć sobie 150 hp raz na rundę pod odpowiednim bindem. Więc zrobiłem coś takiego.
Utworzyłem nową zmienną:
new c_ulecz[33]
Potem do public check_magic dodałem:
if (c_ulecz[id] > 0) item_ulecz(id)
Next w public reset_item_skills wpisałem:
c_ulecz[id] = 0
Oraz zrobiłem funkcję item_ulecz:
public item_ulecz(id)
{
        if (used_item[id])
        {
                hudmsg(id,2.0,"Uleczenia mozesz uzyc raz na runde!")
                return PLUGIN_CONTINUE  
        }
        new m_healthf = race_heal[player_class[id]]+player_strength[id]*2
        new CurHealthf = get_user_health(id)
        new NewHealthf = (CurHealthf+c_ulecz[id]<m_healthf)? CurHealthf+c_ulecz[id]:m_healthf
        set_user_health(id, NewHealthf)
        
        used_item[id] = true    
        return PLUGIN_CONTINUE
        
}
Co do binda do zadefiniowałem funkcję w plugin_init:
register_concmd("andriel","check_andriel")
Oraz gdzieś w sma dodałem publiczek.:
public check_andriel(id)
{
	if (player_class[id] == Andriel)
	{ 
		c_ulecz[id] = 150;
	}
	return PLUGIN_HANDLED
}
I nie wiem dlaczego, ale ten bind nie działa. Na klasie andriel leczy co prawda 150 hp raz na runde, ale na nożu. Proszę o pomoc.

#2 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 07.09.2010 17:23

public check_andriel(id)
{
if (player_class[id] == Andriel)
{
c_ulecz[id] = 150;
item_ulecz(id)
}
return PLUGIN_HANDLED
}


ale to nie załatwia problemu z RAZ na runde jak dedykujesz to dla tej klasy to c_ulecz ustawiaj na true po leczeniu a w event_roundstart ustawiaj na false, a funkcji item_ulecz zamień c_ulecz na 150 :>
  • +
  • -
  • 1

#3 slowly

    Wszechwidzący

  • Autor tematu
  • Zbanowany

Reputacja: 14
Początkujący

  • Postów:270
  • Steam:steam
  • Lokalizacja:Warszawa
Offline

Napisano 07.09.2010 18:19

Możesz troszkę jaśniej? Plx :D

#4 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 07.09.2010 19:19

Wywal c_ulecz z check_magic
zamień na typ bool ( za new dodaj "bool:")
później

public check_andriel(id)
{
if (player_class[id] == Andriel && is_user_alive(id))
{
c_ulecz[id] = true;
item_ulecz(id)
}
return PLUGIN_HANDLED
}


w round_start evencie dodaj c_ulecz[i] = false

a w item_ulecz(id)
zmień
c_ulecz[id] na 150 :X

zrobiłbym to ale w ciemno ci musze mówić co gdzie masz dodać i bo nie pracuje na kodzie a na "domysłach"
  • +
  • -
  • 1

#5 slowly

    Wszechwidzący

  • Autor tematu
  • Zbanowany

Reputacja: 14
Początkujący

  • Postów:270
  • Steam:steam
  • Lokalizacja:Warszawa
Offline

Napisano 07.09.2010 20:32

Dzięki, działa. Można zamknąć.

#6 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 489
  • Lokalizacja:AMXX.PL
Offline

Napisano 07.09.2010 21:09

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Wyjasnione

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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