Skocz do zawartości

Zablokowane Problem z systemem walki


Paqoo

Rekomendowane odpowiedzi

Zamieszczam kod:

 

GRACZ:

var atak, dmg;
        
dmg=round(random(oWojownik.atak));
dmg2=dmg
if distance_to_object(atak_npc) <= 32
{
    atak = round(random(oWojownik.celnosc));
    if atak = 1 and dmg>0 and atak_npc.obrona<dmg{atak_npc.hlt-=dmg;sound_play(krew);sound_play(choose(uderzenie1,uderzenie2));with atak_npc{instance_create(x,y,oKrewMala);instance_create(x,y,oHit);instance_create(x,y,enemy_dmg);}
}   
    
    else{with atak_npc{instance_create(x,y,oMiss);instance_create(x,y,text_miss);}   
    sound_play(choose(pudlo1,pudlo2,pudlo3)); 
        }
}

alarm[0] = room_speed*1; //atak co 1 sekunde

 

PRZECIWNIK:

var atak, dmg, obj, atak, celnosc;

atak=9
celnosc=1

obj=oWojownik
dmg=round(random(atak));
dmg2=dmg
if distance_to_object(obj) <= 32
{
    atak = round(random(celnosc));
    if atak = 1 and dmg>0 and obj.obrona<dmg{
    obj.hlt-=dmg;
    sound_play(krew);
    sound_play(choose(uderzenie1,uderzenie2));
    with obj{instance_create(x,y,oKrewMala);instance_create(x,y,oHit);instance_create(x,y,player_dmg);}
}
    else{
    with obj{instance_create(x,y,oMiss);instance_create(x,y,text_miss);}   
    sound_play(choose(pudlo1,pudlo2,pudlo3));
        }
}
alarm[0] = room_speed*1; //atak co 1 sekunde

 

 

enemy dmg:

if atak_npc.max_hlt-atak_npc.hlt > oWojownik.dmg2 {damaged=oWojownik.dmg2;} else {damaged=atak_npc.max_hlt-atak_npc.hlt;}

 

 

Problem jest w tym, że nie pokazuje mi konkretnej, prawidłowej liczby nad wrogiem/graczem, ale jakieś dziwne cyfry np. 0, 240 itp. ?? Co się dzieje? :crying:

 

Chciałbym żeby po uderzenie potwora pokazywało dmg jaki mu zadaje. Jeśli ma mniej hp to nie pokazywało np. 9 jeśli ma 6 hp - tylko 6 hp. Rozumiecie? :mellow:

Odnośnik do komentarza
Udostępnij na innych stronach

Ale pogubiłem się w kodzie. Daje ten enemy_dmg:

if atak_npc.max_hlt-atak_npc.hlt > oWojownik.dmg2 {damaged=oWojownik.dmg2;} else {damaged=atak_npc.max_hlt-atak_npc.hlt;}

 

A później zmienna jest oczywiście wysyłana jako tekst i idzie w górę :)

A później znika..

Odnośnik do komentarza
Udostępnij na innych stronach

Ale bazgrolisz... XD Rób odstępy między wyrazami (za wyjątkiem nazw stałych, funkcji, sprite'ów itp.). Nowe linie też są bardziej czytelne (masz tam dwa razy instance create w jednej linii, to też jest nieczytelne).

 

Przeanalizowałem kod. Wydaje się, że wina leży w drawie, w obiekcie wyświetlającym obrażenia lub w obronie gracza/przeciwnika. Pokaż któreś z tych.

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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