Skocz do zawartości

Walka mieczem


Rekomendowane odpowiedzi

Przedstawiam wam przykład pokazujący jak zrobić walkę mieczem, z efektem blura, oraz 'ubojem' przeciwnika. Więcej w przykładzie - nie robilem opisów, bo zdaje mi się że chaosu w kodzie nie ma :)

 

Sterowanie:

LPM i ruch myszka - atak mieczem

PPM - ruch bohatera w wskazane miejsce

 

Tak więc oto link:

DLOAD

 

Miłego używania!

Jeśli wykorzystasz ten przykład to prosze, umiesc mnie w credits :)

 

Pozdrawiam :]

logo_mini.png

Odnośnik do komentarza
Udostępnij na innych stronach

spoko przyklad, poprawilbym tylko zeby samo zabijanuie udawalo sie przy machaniu mieczem, teraz wystarczy tylko trzymac lewy przycisk mychy i czekac az kolesie sie sami nabiją..

Odnośnik do komentarza
Udostępnij na innych stronach

Przyklad bardzo dobry ale rzeczywiscie przydaloby sie zrobic ze miecz rani tych gosci gdy sie nim porusza a nie tylko trzyma przycisk.

Gostek:

-Create:

round=sword.image_angle;

-Step:

if mouse_check_button_pressed(mb_left) and round!=sword.image_angle then <tutaj następuje hit>;
round=sword.image_angle;

Jakbym walnął jakiś bład to powiedzcie.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 miesiące temu...

mam z nim maly problem ;/

fajny miecz ale... gdy dodalem go do mojej gry wyskakuje blad:

 

 

ERROR in
action number 1
of Step Event
for object sword:

Error in code at line 1:
   if(global.scr>5000)pow=1

at position 11: Unknown variable scr

[Abort] [Ignore]

 

Dokladnie to

a gdy tam lookam to nie wiem co jest zle

jest tak samo jak w przyladzie:

 

Moje:

 

if(global.scr>5000)pow=1
image_blend=c_white
if(global.scr>5000)image_blend=c_yellow
angle=point_direction(x,y,mouse_x,mouse_y)-90
image_angle=angle
x=obj_hero.x+lengthdir_x(16,obj_hero.angle)
y=obj_hero.y+lengthdir_y(16,obj_hero.angle)
if(mouse_check_button(mb_left))blur_create()

 

w przykładzie:

 

if(global.scr>5000)pow=1
image_blend=c_white
if(global.scr>5000)image_blend=c_yellow
angle=point_direction(x,y,mouse_x,mouse_y)-90
image_angle=angle
x=human.x+lengthdir_x(16,human.angle)
y=human.y+lengthdir_y(16,human.angle)
if(mouse_check_button(mb_left))blur_create()

 

Zmienilem jedynie nazwe Human na nazwe bohatera ;/ i nie dziala

moze ktos pomoc?

Odnośnik do komentarza
Udostępnij na innych stronach

@up

ee...

 

w Create mam dwa "pliki tekstowe czy jak :D":

 

w pierwszym:

 

instance_create(x,y,sword)
angle=0
hp=100
tx=-20
pow=0

image_single = 0;
image_index = global.player;
if ( global.play )
{
gravity_direction = 0;
gravity = 0;
}

 

w drugim:

 

instance_create(x,y,sword)
angle=0
hp=100
tx=-20
pow=0

 

w czlowieku

Odnośnik do komentarza
Udostępnij na innych stronach

W create sworda jest to:

blur_init()

angle=0

pow=0

 

@up

mozesz jasniej powiedziec co mam zrobic?^^

W GM'ie deklaracji dokonujemy poprzez nadanie wartości. Gdy na początku nie ustaliłeś wartości jakiejś zmiennej to program jej nie widzi, więc jaki w tym sens, aby wykonywał operacje na czymś co dla niego istnieje(i zresztą po prostu nie istnieje).

Odnośnik do komentarza
Udostępnij na innych stronach

Dobra sry za klopoty ale ostatnie pytanie :D :

 

Gdzie nadac wartosc?

 

albo inaczej

 

Gdzie wkleic ten

 co Raistlin napisal :P??

Zmienne lokalne(czyli prywatne zmienne jakiegoś obiektu, a wyróżniają się tym, że są nie poprzedzone global.) zazwyczaj w CREATE obiektów do których należą.

Zmienne globalne(na początku mają global. i charakteryzują się wspólnością dla całego programu) najczęściej w ROOM START albo GAME START, ale często też w CREATE obiektów, które tworzą się jako pierwsze.

Odnośnik do komentarza
Udostępnij na innych stronach

Ehh

@Up

ee...

a gdzie jest ROOM START, GAME START itp??

koles nie jestem jeszcze calkiem obeznany w tym

niewiem gdzie to wsadzic, wsadzilem do Create oraz Step Sworda i nie dziala, nie wiem gdzie to wsadzic. nie mozesz powiedziec normalnie naprzyklad tak:

 

objects>sword>create:

i na koncu tekstu wklej moj "code"

 

...

Gdybys tak prymitywnie powiedzial bym zrozumial ale nadal jestem w niewiedzy ;/ Tak wiec gdzie to wkleic :D?

Odnośnik do komentarza
Udostępnij na innych stronach

przyklad dosc fajny, ta smuga za mieczem przyjemnie wyglada, razi tylko jedna rzecz: to że mozna zrobić "smigielko" i siekac przeciwnikow za swoimi plecami...

 

@UP- to nie wina RaistlinBlackRobe że jestes nadal w niewiedzy, nalezalo by popracowac nad tym aby z tej niewiedzy wyjsc samemu... naprzyklad przeanalizowac ze zrozumieniem kod przykladu... albo jeszcze lepiej zaczac od czegos prostrzego i pocwiczyc podstawy...

Odnośnik do komentarza
Udostępnij na innych stronach

Ehh

@Up

ee...

a gdzie jest ROOM START, GAME START itp??

koles nie jestem jeszcze calkiem obeznany w tym

niewiem gdzie to wsadzic, wsadzilem do Create oraz Step Sworda i nie dziala, nie wiem gdzie to wsadzic. nie mozesz powiedziec normalnie naprzyklad tak:

 

objects>sword>create:

i na koncu tekstu wklej moj "code"

 

...

Gdybys tak prymitywnie powiedzial bym zrozumial ale nadal jestem w niewiedzy ;/ Tak wiec gdzie to wkleic :D?

ADD EVENT \ OTHER \ ROOM START - to zdarzenie się dzieje za każdym razem, gdy startuje nowy room(pokój)

ADD EVENT \ OTHER \ GAME START - to zdarzenie dzieje się za każdym razem gdy startuje gra

ADD EVENT \ CREATE - instancja(czyli stworzony obiekt) wykonuje to zdarzenie w momencie swojego powstawania

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ę...