Skocz do zawartości

rozpędzanie


Rekomendowane odpowiedzi

No teraz działa. Tylko jeszzce to drugi pomóż. Bo mi się pokręciło, z tym jechaniem do tyłu.

//  Obrót
    image_single = direction * image_number / 360;
    
//  Skręcanie    
if speed<>0
{
if( keyboard_check( vk_left ) )
{direction+=4}
if( keyboard_check( vk_right ) ) 
{direction-=4}
}
//  Rozpedzanie góra    
    if( keyboard_check( vk_up ) ) 
{
        if(speed<10)
        speed += .1;
        else
        speed=10;
        friction = 0; 
}
else
        friction = .1;

// Rozpędzanie dół      
                
    if( keyboard_check( vk_down ) )
{
        if(speed<5)
        speed += .1;
        else
        speed=5;
        friction = 0;
}
else
        friction = .1;

Co tu popsułem, że jak wciskam przycisk up to nie jedzie, a jak down to jedzie do przodu :(

Odnośnik do komentarza
Udostępnij na innych stronach

//rozpedzanie gora
    if keyboard_check(vk_up) 
{
        if speed<10
        {friction = 0
        speed += 1}
        else
        {speed=10}
        
}
else
        {friction = 1}

//hamowanie
    if keyboard_check(vk_down) 
{
        if speed>-5 
        {friction = 0
        speed -= 1}
        else
        {speed=-5}
        
}
else
        {friction = 1}

Odnośnik do komentarza
Udostępnij na innych stronach

Hm, a gdzie to dałeś? Trzeba ten cały kod wpisać w STEP. :) Chyba, że gdzieś naprawdę ja zrobiłem głupi błąd, lub mój kod gryzie się z resztą Twojego. :P

Odnośnik do komentarza
Udostępnij na innych stronach

No w step jest. Tutaj masz cały kod:

//  Obrót
    image_single = direction * image_number / 360;
    
//  Skręcanie    
if speed<>0
{
if( keyboard_check( vk_left ) )
{direction+=4}
if( keyboard_check( vk_right ) ) 
{direction-=4}
}
//  Rozpedzanie góra    
    if( keyboard_check( vk_up ) ) 
{
        if speed<10
        {friction = 0
        speed += 1}
        else
        {speed=10}
}
else
        {friction = 1}

// Rozpędzanie dół      
                
    if keyboard_check( vk_down ) 
{
        if speed>-5
        {friction = 0
        speed -= 1}
        else
        {speed=-5}
}
else
        {friction = 1}

??

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem, czemu tak jest (nie spotkałem się z czymś takim), ale zrób inaczej:

 

CRAETE:

friction=1

 

UP:

 if speed<10
        {friction = 0
        speed += 1}
        else
        {speed=10}

 

DOWN:

 if speed>-5
        {friction = 0
        speed -= 1}
        else
        {speed=-5}

 

UP relased:

friction=1

 

DOWN relased:

friction=1

 

To tym razem sprawdziłem (i przy okazji tamto stare) i to nowe działa, a stare rzeczywiście nie. ;/ Dziwne-wykonywał tylko kod ten z dołu. ;o

Odnośnik do komentarza
Udostępnij na innych stronach

step...

//  Obrót
    image_single = direction * image_number / 360;

//  Skręcanie
    if( abs( speed ) ) > 0
    {
        if( speed ) > 0
        {
            if( keyboard_check( vk_left ) ) then direction += 3;
            if( keyboard_check( vk_right ) ) then direction -= 3;
        }
        else
        {
            if( keyboard_check( vk_left ) ) then direction -= 3;
            if( keyboard_check( vk_right ) ) then direction += 3;
        }
    }

//  Poruszanie
    if( keyboard_check( vk_up ) ) 
    {
        if( abs( speed ) ) < 10
        {
            friction = 0.5;
            speed += 1; 
        }
    }
    else
    if( keyboard_check( vk_down ) )
    {
        if( abs( speed ) ) < 8
        {
            friction = 0.5;
            speed -= 1;
        }
    }

 

:] Teraz już poprawnie skręca jak cofa i jedzie do przodu i się rozpędza...

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...