←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

long jump

Locked

Mesh's Photo Mesh 17.06.2010

ten kod mi nie dziala tzn long jump'a ma tylko palek brak bledow przy komplikacji

new clip,ammo
new weapon = get_user_weapon(id,clip,ammo)
new button2 = get_user_button(id);
if(player_class[id]==Paladyn || player_class[id]==Jumper && weapon == CSW_KNIFE && freeze_ended)
{
if((button2 & IN_DUCK) && (button2 & IN_JUMP))
{
if(JumpsLeft[id]>0)
{
new flags = pev(id,pev_flags)
if(flags & FL_ONGROUND)
{
set_pev ( id, pev_flags, flags-FL_ONGROUND )

JumpsLeft[id]--

new Float:va[3],Float:v[3]
entity_get_vector(id,EV_VEC_v_angle,va)
v[0]=floatcos(va[1]/180.0*M_PI)*560.0
v[1]=floatsin(va[1]/180.0*M_PI)*560.0
v[2]=300.0
entity_set_vector(id,EV_VEC_velocity,v)
write_hud(id)
}
}
}
}
Quote

  • +
  • -
ZiuTeK's Photo ZiuTeK 17.06.2010

player_class[id]==Paladyn || player_class[id]==Jumper
Ten warunek musi byc w nawiasie.
Quote

Mesh's Photo Mesh 18.06.2010

if(player_class[id]==Paladyn || player_class[id]==Jumper && weapon == CSW_KNIFE && freeze_ended)

czyli jak to jest w nawiasie to musze zrobic tak?

if((player_class[id]==Paladyn || player_class[id]==Jumper) && weapon == CSW_KNIFE && freeze_ended)


na poczatku 2 nawiasy?
Quote

  • +
  • -
ZiuTeK's Photo ZiuTeK 19.06.2010

Tak, bo to na pewno bylo bledem, moze masz jeszcze jakies inne ale tutaj bylo sprawdzane czy klient jest paladynem, jesli jest to juz go przepuszcza dalej, albo, czy jest Jumperem i ma noz i skonczone zamrazenie
teraz sprawdza czy jest jednym albo drugim i do tego przy obu klasach sprawdza czy ma noz i skonczone zamrazanie.
Nie twierdze ze to juz jest koniec bo nie wiem co wiecej zmieniales ale w tym kodzie to byl na pewno blad.
Quote

Mesh's Photo Mesh 19.06.2010

zrobilem tak i wraz ma tylko paladyn long jumpa :[
Quote

  • +
  • -
ZiuTeK's Photo ZiuTeK 19.06.2010

u mnie kawalek tej funkcji wyglada tak:
public client_PreThink ( id ) 
{	
	new button2 = get_user_button(id);
	new clip,ammo
	new weapon = get_user_weapon(id,clip,ammo)
	if((player_class[id]==Paladyn || player_b_lj[id] > 0) && weapon == CSW_KNIFE) 
    { 
        if((button2 & IN_DUCK) && (button2 & IN_JUMP) && !(get_user_oldbutton(id) & IN_JUMP)) 
        { 
            if(JumpsLeft[id]>0 && player_speed(id)>100 ) 
            { 
                new flags = pev(id,pev_flags) 
                if(flags & FL_ONGROUND) 
                { 
                    set_pev ( id, pev_flags, flags-FL_ONGROUND ) 
                    
                    JumpsLeft[id]-- 
                    
                    new Float:va[3],Float:v[3] 
                    entity_get_vector(id,EV_VEC_v_angle,va) 
                    v[0]=floatcos(va[1]/180.0*M_PI)*560.0 
                    v[1]=floatsin(va[1]/180.0*M_PI)*560.0 
                    v[2]=300.0 
                    entity_set_vector(id,EV_VEC_velocity,v) 
                } 
            } 
        } 
    }
W linijce

if((player_class[id]==Paladyn || player_b_lj[id] > 0) && weapon == CSW_KNIFE)

mam playr_b_lj poniewaz mam item na longjumpy, natomiast nie mam "&& freeze_ended"
nie wiem skad u ciebie sie znalazl ten kawalek kodu i co on oznacza.
Wgrywales fixa na longjumpy u palladyna z dzialu tutoriale i poradniki do diablomoda ?
Jesli nie to sprobuj wgrac tego fixa i wtedy edytowac kod.
Quote

Mesh's Photo Mesh 19.06.2010

z forum poradnik na dzialajacy long jump podmienilem caly kod a teraz chcialem dac long jumpa 2 klasie sprobuje bez tego && freeze_ended
Quote

  • +
  • -
Vertricus's Photo Vertricus 20.06.2010

TO nie jedyna funkcja od LJ ;>
Musisz w funkcji od "zliczania" skoków zmienić warunek.
bodajże count_jumps
Quote

Mesh's Photo Mesh 21.06.2010

no znalazlem dwie ta od wyswietlania skokow i ta. ale skoro mowisz ze sa jeszcze to będę szukac ;P

21 czerwiec 2010 - 08:09:
nie wiem czemu wyzuca mi tu blad :/

public count_jumps(id)
{
if( is_user_connected(id))
{
if((player_class[id]==Paladyn || player_class[id]==Jumper) JumpsMax[id]=5+floatround(player_intelligence[id]/10.0)
else JumpsMax[id]=0


}
}

w takim stylu
error 001: expected token: ")", but found "-identifier-"

21 czerwiec 2010 - 08:11:

if( player_class[id]==Paladyn || player_class[id]==Jumper) JumpsMax[id]=5+floatround(player_intelligence[id]/10.0)


zrobilem tak i dziala ;P temat mozna zamknac
Quote

  • +
  • -
ZiuTeK's Photo ZiuTeK 21.06.2010

To zle dziala, w tamtej linijce brakowalo ci zamkniecia nawiasu policze je za ciebie:
if(1(2player_class[id]==Paladyn || player_class[id]==Jumper)2 JumpsMax[id]=5+floatround(3player_intelligence[id]/10.0)3
else JumpsMax[id]=0

A gdzie zamykasz 1 ? Ano nie zamykasz a powinien byc w linijce zaraz po trzecim
Quote
Locked