Problem z dropem "perków"
DyeR
17.08.2015
Witam, przerabiam system perków. Plugin ładnie się kompiluje bez żadnych błędów jednak podczas testów napotkaliśmy błąd otóż Na serwerze poniekąd jest ustawiony drop tego "artefaktu" jednak zabijając np. 4 razy z rzędu cały czas dropi, nie uwzlegniając wcale tej szansy i w którymś tam momencie wcale przestaje dropić i w konsoli wyskakują takie błędy:
zarzucam ten public
public UstawArtefakt(id, artefakt, wartosc, pokaz_info) { if(!ilosc_artefakty) return PLUGIN_CONTINUE; static obroty[33]; if(obroty[id]++ >= 5) { UstawArtefakt(id, 0, 0, 0); obroty[id] = 0; return PLUGIN_CONTINUE; } artefakt = (artefakt == -1)? random_num(1, ilosc_artefakty): artefakt; wartosc = (wartosc == -1 || min_wartosci_artefakty[artefakt] > wartosc || wartosc > max_wartosci_artefakty[artefakt])? random_num(min_wartosci_artefakty[artefakt], max_wartosci_artefakty[artefakt]): wartosc; new ret; new forward_handle = CreateOneForward(pluginy_artefakty[artefakt_gracza[id]], "artefakt_disabled", FP_CELL, FP_CELL); ExecuteForward(forward_handle, ret, id, artefakt); DestroyForward(forward_handle); artefakt_gracza[id] = 0; forward_handle = CreateOneForward(pluginy_artefakty[artefakt], "artefakt_enabled", FP_CELL, FP_CELL, FP_CELL); ExecuteForward(forward_handle, ret, id, wartosc, artefakt); DestroyForward(forward_handle); if(ret == 4) { UstawArtefakt(id, -1, -1, 1); return PLUGIN_CONTINUE; } ExecuteForward(artefakt_zmieniony, ret, id, artefakt, wartosc); if(ret == 4) { UstawArtefakt(id, -1, -1, 1); return PLUGIN_CONTINUE; } artefakt_gracza[id] = artefakt; wartosc_artefaktu_gracza[id] = wartosc; obroty[id] = 0; if(pokaz_info && artefakt_gracza[id]) chat_color(id, "!g[ARTEFAKT] !yZdobyles %s.", nazwy_artefakty[artefakt_gracza[id]]); return PLUGIN_CONTINUE; }
Proszę o jakąkolwiek pomoc. Z góry dziękuje
Rivit
18.08.2015
Nawet nie raczył napisać, która linia to 259
I jaki typ błędu
Ciekawie się zapowiada
DyeR
18.08.2015
" Ta linia"
UstawArtefakt(id, 0, 0, 0);
Typ błędu? Chyba wszystko omówiłem.
Czy Perki z artefaktami mogą się w jakiś sposób kolidować?
Jeżeli mają te same funkcje chodzi mi o "0, 0, 0" Jednakże było ustawione inaczej problem był ten sam
Linux'
18.08.2015
" Ta linia"
UstawArtefakt(id, 0, 0, 0);Typ błędu? Chyba wszystko omówiłem.
Czy Perki z artefaktami mogą się w jakiś sposób kolidować?
Jeżeli mają te same funkcje chodzi mi o "0, 0, 0" Jednakże było ustawione inaczej problem był ten sam
Jezeli korzystaja z tych samych funkcji/zmiennych to tak ale to o czym piszesz to skladnia i te kuleczka nie maja na to zadnego wplywu.
DyeR
19.08.2015
Funkcje i zmienne mają inne, więc w czym moze tkwić problem?
Użytkownik DyeR edytował ten post 19.08.2015 10:37
Linux'
19.08.2015
Problem raczej na pewno nie tkwi w tej linii ktora podales. Musialbys podac wieksza czesc kodu bo bez tego raczej nie dojdziemy co jest przyczyna. Piszac wieksza mam na mysli calosc.
Rivit
19.08.2015
Albo podaj błąd z logów
Bo zazwyczaj jest coś a ty dałeś tylko screena na którym jest jedno i to samo, zobacz na początek tego logu