[Problem] CoD MoD, gdy sięskradamy słychać...
hubert4444
15.05.2010
Witam.
Gdy skradam się Komendosem to słychać tak jakbym normalnie biegł i tak się dzieje w każdej klasie gdy dodaję punkty do kondycji ( polepsza prędkość ).
Jak temu zapobiec !?
Gdy skradam się Komendosem to słychać tak jakbym normalnie biegł i tak się dzieje w każdej klasie gdy dodaję punkty do kondycji ( polepsza prędkość ).
Jak temu zapobiec !?
R3X
15.05.2010
To silnik gry wysyła sygnał do odtwarzania dźwięku kroków i robi to automatycznie od pewnej szybkości. Można się o tym przekonać wyłączając mod i kombinować z cvarami gracza cl_*, dokładnej nazwy w tej chwili nie pamiętam, ale mniejsza o to.
Jedyne rozwiązanie przychodzące mi do głowy do ustawienie nowej granicy dla ludzi z odpowiednim atrybutem. I nie ma na to cvara, więc wykazać się musi plugin.
Jedyne rozwiązanie przychodzące mi do głowy do ustawienie nowej granicy dla ludzi z odpowiednim atrybutem. I nie ma na to cvara, więc wykazać się musi plugin.
hubert4444
15.05.2010
a więc co zmienić w tym pluginie ?
Zobacz, plugin od Peyote.
Jak możesz, pobierz i poszperaj
Zobacz, plugin od Peyote.
Jak możesz, pobierz i poszperaj
R3X
15.05.2010
Najłatwiejsza opcja dla programisty to w prethinku sprawdzać szybkość i dawać/zabierać ciche chodzenie. Sry, ale ja chcę brać na siebie takiej podmiany. Brzmi jak duży mod, a ja nie mam gdzie tego porządnie przetestować i może wyjść bubel.
Vertricus
16.05.2010
Idąc za słowami R3X'a kod z diablo oparty o fakemeta'e.
do init
na koniec sma
do init
register_forward(FM_PlayerPreThink, "Forward_FM_PlayerPreThink")
na koniec sma
public Forward_FM_PlayerPreThink(id)
{
if(is_user_alive(id))
{
new Float:fVector[3];
pev(id, pev_velocity, fVector)
new Float: fSpeed = floatsqroot(fVector[0]*fVector[0]+fVector[1]*fVector[1]+fVector[2]*fVector[2])
if((fm_get_user_maxspeed(id) * 5) > (fSpeed*9))
set_pev(id, pev_flTimeStepSound, 300)
}
}
Change
16.05.2010
@up
Przy kompilacji
Error: Undefined symbol "fm_get_user_maxspeed" on line 1703
Przy kompilacji
Error: Undefined symbol "fm_get_user_maxspeed" on line 1703
Vertricus
16.05.2010
na koniec wklej:
stock Float:fm_get_user_maxspeed(index) {
new Float:speed;
pev(index, pev_maxspeed, speed);
return speed;
}
QTM. Peyote
17.05.2010
W CmdStart dodaj:
new Float: velocity[3];
entity_get_vector(id, EV_VEC_velocity, velocity);
new Float: speed = floatsqroot(velocity[0]*velocity[0]+velocity[1]*velocity[1]+velocity[2]*velocity[2]);
if(szybkosc_gracza[id] > speed*1.8)
entity_set_int(id, EV_INT_flTimeStepSound, 300);
Arkovsky
20.05.2010
Jak dodaje to mi wysypuje błędami...
Sorry, działa już.
Trzeba dodać:
Przed Returnem a dokładnie przed:
Użytkownik arkovsky edytował ten post 20.05.2010 22:48
Sorry, działa już.
Trzeba dodać:
{ new Float: velocity[3]; entity_get_vector(id, EV_VEC_velocity, velocity); new Float: speed = floatsqroot(velocity[0]*velocity[0]+velocity[1]*velocity[1]+velocity[2]*velocity[2]); if(szybkosc_gracza[id] > speed*1.8) entity_set_int(id, EV_INT_flTimeStepSound, 300); }
Przed Returnem a dokładnie przed:
return FMRES_IGNORED;
Użytkownik arkovsky edytował ten post 20.05.2010 22:48
PEREF 01.06.2010
rozumiem, że bug eliminuje w/w kod podany przez autora, plugin sie kompiluje ale wywala 1 błąd:
co jest nie tak? kod dodałem wg tego co napisał kolega wyżej...
/home/groups/amxmodx/tmp3/php7flnHh.sma(302) : warning 225: unreachable code
co jest nie tak? kod dodałem wg tego co napisał kolega wyżej...
public CmdStart(id, uc_handle) { if(!is_user_alive(id)) { new Float: velocity[3]; entity_get_vector(id, EV_VEC_velocity, velocity); new Float: speed = floatsqroot(velocity[0]*velocity[0]+velocity[1]*velocity[1]+velocity[2]*velocity[2]); if(szybkosc_gracza[id] > speed*1.8) entity_set_int(id, EV_INT_flTimeStepSound, 300); } return FMRES_IGNORED;