Gamemakerla dövüş oyunu yapmayla ilgili bir örnek yaptım.Oyunda düşman yapay zekasıda var.Zeka çok gelişmiş olmasada idare eder.Düşman bizim saldırımızlara karşılık verebilir yada savunma yapabilir ve bizim bulunduğumuz konuma göre pozisyon alır.
Karekterin kontrol tuşlar
w-a-s-d ctr-shift dir.Tekme ve yumruk 2 saldırısı var karekterimizin.
İndir: http://ustaderslik.com/dosya/d%C3%B6v%C3%BC%C5%9F%20oyunu.rar
Görüntüsü :
Karekterin kodları :
if keyboard_check(ord("A")) and obj_dusman.x>obj_karekter.x and sprite_index=spr_ana_saga //e�er A ya basar ve karekterin x i d��man�nkinden b�y�k ve ve saga bakan sprite varsa saga bakan spriteye d�n��s�n dedim.
{
sprite_index=spr_saga_yurume
}
if keyboard_check(ord("D")) and obj_dusman.x>obj_karekter.x and sprite_index=spr_ana_saga
{
sprite_index=spr_saga_yurume
}
if keyboard_check(ord("D")) and obj_dusman.x<obj_karekter.x and sprite_index=spr_ana_sola
{
sprite_index=spr_sola_yurume
}
if keyboard_check(ord("A")) and obj_dusman.x<obj_karekter.x and sprite_index=spr_ana_sola
{
sprite_index=spr_sola_yurume
}
if keyboard_check(vk_control) and obj_dusman.x>obj_karekter.x and sprite_index=spr_ana_saga and instance_number(obj_t_saga)<2 and instance_number(obj_t_sola)<1 and instance_number(obj_y_sola)<1 and instance_number(obj_y_saga)<1//oyunda ctrl ye bas�nca istedi�imden bir tane yarats�n ve di�er vuru� objelerinden hi�biri olmamas� i�in.
{
instance_create(x,y,obj_t_saga)
global.gor=1
}
if keyboard_check(vk_control) and obj_dusman.x<obj_karekter.x and sprite_index=spr_ana_sola and instance_number(obj_t_sola)<2 and instance_number(obj_t_saga)<1 and instance_number(obj_y_sola)<1 and instance_number(obj_y_saga)<1
{
instance_create(x,y,obj_t_sola)
global.gor=1
}
if keyboard_check(vk_shift) and obj_dusman.x>obj_karekter.x and sprite_index=spr_ana_saga and instance_number(obj_y_saga)<2 and instance_number(obj_t_saga)<1 and instance_number(obj_t_sola)<1 and instance_number(obj_y_sola)<1
{
instance_create(x,y,obj_y_saga)
global.gor=1
}
if keyboard_check(vk_shift) and obj_dusman.x<obj_karekter.x and sprite_index=spr_ana_sola and instance_number(obj_y_sola)<2 and instance_number(obj_t_saga)<1 and instance_number(obj_t_sola)<1 and instance_number(obj_y_saga)<1
{
instance_create(x,y,obj_y_sola)
global.gor=1
}
if sprite_index=spr_saga_yurume and keyboard_check(ord("A"))//burda saga y�r�me spritesi varsa ve A ya bas�yosam x ekseninde 5 birim geriye gidiyim dedim.
{
x-=5
}
if sprite_index=spr_saga_yurume and keyboard_check(ord("D"))
{
x+=5
}
if sprite_index=spr_sola_yurume and keyboard_check(ord("D"))
{
x+=5
}
if sprite_index=spr_sola_yurume and keyboard_check(ord("A"))
{
x-=5
}
if keyboard_check_released(ord("A"))and obj_dusman.x>obj_karekter.x//e�er A dan elime �eker ve d��man�n x benimkinden b�y�kse saga bakan ana sprite olsun.
{
sprite_index=spr_ana_saga
}
if keyboard_check_released(ord("D"))and obj_dusman.x>obj_karekter.x
{
sprite_index=spr_ana_saga
}
if keyboard_check_released(ord("D"))and obj_dusman.x<obj_karekter.x
{
sprite_index=spr_ana_sola
}
if keyboard_check_released(ord("A"))and obj_dusman.x<obj_karekter.x
{
sprite_index=spr_ana_sola
}
if keyboard_check(vk_nokey) and obj_dusman.x>obj_karekter.x//hi�bir tu�a basmazsam ve d��man�n x i benim x imden b�y�k ise saga bakan ana sprite olsun.
{
sprite_index=spr_ana_saga
}
if keyboard_check(vk_nokey) and obj_dusman.x<obj_karekter.x
{
sprite_index=spr_ana_sola
}
if global.gor=0//global.gor=0 ise beni g�ster de�ilse g�sterme diyoruz.
{
visible=true
}
else
{
visible=false
}
if place_meeting(x,y,obj_v_saga) //burda d��man�n saga vuru� objesi ile �arp���rsak 3 tane kan objesi yarat dedik.
{
repeat(3)instance_create(x,y-30,obj_kan)
x+=20
}
if place_meeting(x,y,obj_v_sola)
{
repeat(3)instance_create(x,y-30,obj_kan)
x-=20
}