←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Problem z mocami

Zablokowany

  • +
  • -
GOH4n - zdjęcie GOH4n 28.06.2010

Siema, chcialem dodac moce do klas tak jak tutaj : [Tutorial] Dodawnie mocy do klasy. - Nieoficjalny polski support AMX Mod X
Bez problemu udalo mi sie stworzyc moc c_illusionist , ktora dziala, ale gdy staram sie zrobic nastepna to juz sie nie da. Wersja diablo moda : 5.8d
Robie tak:
1. Dodaje zmienna : new c_fireball[33]
2. Potem robie, zeby bylo tak:
if (player_b_fireball[id] > 0 || c_fireball[id] > 0)item_fireball(id)
3.
if(player_b_fireball[id]>0 || c_fireball[id] >0) player_b_fireball[id]+= random_num(0,33)
4.
	g_haskit[id] = 0
	c_illusionist[id] = 0
	c_inv[id] = 0
	c_fireball[id] = 0
	c_theif[id] = 0
	switch(key) 
5.
player_class[id] = Mag
			c_fireball[id] = 100


co robie zle??
Mam jeszcze jedno pytanie: Czy da sie powiekszyc menu (czyli ze jak nacisne 9 to jest czesc dalsza) na diablo 5.8d?? Bo wg. mojego kolegi na tej wersji sie nie da.

28 czerwiec 2010 - 16:50:
Pisze post pod postem bo nie da sie edytowac ;/

Chce jeszcze dodac ze wszystko sie ladnie kompiluje, a do Prethinku nic nie dodaje bo nie dotyczy on fireballa(myle sie?).
Odpowiedz

  • +
  • -
ZiuTeK - zdjęcie ZiuTeK 28.06.2010

tworzysz nowa zmienna c_fireball ktora robi to samo co player_b_fireball ( nie podales dokladnie co ma robic ale z tego co tu widze tak mi wynika) wiec moim zdaniem nie ma sensu sobie utrudniac zycia tylko je ulatwic i dodac do danej klasy moc
player_b_fireball[id]
dodatkowo w tym opisie nie widze zebys resetowal
c_fireball a jak zauwzysz w kodzie diablo to takie cos by sie przydalo
Ponadto w funkcji

if(player_b_fireball[id]>0 || c_fireball[id] >0) player_b_fireball[id]+= random_num(0,33)
ustawiasz u gracza player_b_fireball wiec naprawdę chyba nie ma sensu dodawac nowej zmiennej w postaci c_fireball
Odpowiedz

  • +
  • -
GOH4n - zdjęcie GOH4n 28.06.2010

Tylko ze jak dodam do klasy moc player_b_fireball to po wpisaniu /drop klasa traci moc.
Czy jezeli dodam to resetowanie c_fireball to moc powinna dzialac ?? Jesli tak to jak to zrobic?

"if(player_b_fireball[id]>0 || c_fireball[id] >0) player_b_fireball[id]+= random_num(0,33)
ustawiasz u gracza player_b_fireball wiec naprawdę chyba nie ma sensu dodawac nowej zmiennej w postaci c_fireball "
Czy to cos zmienia ?
Odpowiedz

  • +
  • -
ZiuTeK - zdjęcie ZiuTeK 28.06.2010

Kurcze, nie chce mi sie sprawdzac calego kodu ale mozesz dodac warunki do

public respawn i public roundstart
w postaci
if (player_class[vindex lub i bo w jednej funkcji jest tak a w drugiej tak]= twoja_klasa) player_b_fireball[vindex lub i]==100
Użytkownik ZiuTeK edytował ten post 28.06.2010 19:06
Odpowiedz

  • +
  • -
GOH4n - zdjęcie GOH4n 29.06.2010

"if (player_class[vindex lub i bo w jednej funkcji jest tak a w drugiej tak]= twoja_klasa) player_b_fireball[vindex lub i]==100 " moglbys czytelniej ? Bo niewiem co mam skopiowac

29 czerwiec 2010 - 14:18:
Odswiezam
Odpowiedz

  • +
  • -
ZiuTeK - zdjęcie ZiuTeK 29.06.2010

No chyba niestety nic nie wykombinuje
strzelam ze w funkcji
public call_cast musialbys dopisac do swojej klasy cos podobnego jak u Maga ale czy to wystarczy to nie mam pojecia.
case Mag:
{
show_hudmessage(id, "Wyczarowales fireboll'a")
fired[id]=0
item_fireball(id)
}
Użytkownik ZiuTeK edytował ten post 29.06.2010 15:36
Odpowiedz

  • +
  • -
GOH4n - zdjęcie GOH4n 30.06.2010

Nie mam czegos takiego jak "public call_cast" ;/ Mam wersje 5.8d
Odpowiedz

  • +
  • -
ZiuTeK - zdjęcie ZiuTeK 30.06.2010

Oj, to ja niestety tej wersji nie mam i nie chce mi sie zaglebiac w tamten kod. Odpisuje z grzecznosci, to podbije ci temat i moze znajdzie sie ktos kto ma ta wersje i bedzie wiedzial jak to zrobic.
Odpowiedz

  • +
  • -
GOH4n - zdjęcie GOH4n 03.07.2010

Odswiezam

04 lipiec 2010 - 18:03:
odswiezam
Odpowiedz
Zablokowany