14-03-2009, 15:17 autor
Master_Tech
Uwaga!!!
Gdy do swojej gry dodasz to AI to musi sie na początku gry wyświetlać napis
informujący o tym że użyto AI gry Verdun-battle of surival!!!
Więc do rzeczy założenia naszego AI (Sztucznej inteligencji): gdy się zbliżymy na 250 pixeli to żacznie nas gonić,jak zbliży się do nas na 100 pixeli zacznie strzelać
do nas, a gdy my do niego strzelimy to znikie a więc:
-tworzymy obiekty: obj_soldier,obj_szwab,obj_pocisk,obj_szwab_pocisk.
-Nastepnie w spritcie do objectu obj_soldier tworzymy animacje Roation sequence,i w stepie dajemy taki kod GML:
image_single = direction * image_number/360;
if (keyboard_check(vk_left))
direction+=5;
else
if (keyboard_check(vk_right))
direction-=5;
if (keyboard_check(vk_up) )
speed=3;
else
if (keyboard_check(vk_down) )
speed=-2;
else
speed=0;
Następnie tworzymy event "key press space" i wklejamy ten kod:
if keyboard_check(vk_space)
{
instance_create(x,y,obj_pocisk);
}
Dalej tworzymy obj_pocisk i wklejamy w create taki kod:
vspeed=(-10);
Następnie tworzymy object obj_szwaby_pocisk i w creaate wklejamy taki kod:
vspeed=(10);
I w końcu tworzymy object obj_szwaby i w stepie wpisujemy ten kod:
if distance_to_object(obj_soldier) < 250
{
move_towards_point(obj_soldier.x,obj_soldier.y,3);
}
oraz ten kod:
if distance_to_object(obj_soldier) < 100
{
instance_create(x,y,obj_szwaby_pocisk);
}
A następnie tworzymy event "Coliision obj_pocisk" i dajemy opcje aby po tej kolizji object sie usunął...
A ostatnią częścią tego kodu będzie ustawienie że po kolizji objectu obj_szwaby_pocisk z objectem obj_soldier gra się zrestarotowała...
I to juz cała filozofia AI...
Ogólny przykład gry z tym artykułem powinien się znajdować w dziale:
Game Maker>Przykłady pod nazwą "Przykład AI do shooter'ów"...