gm de ateş atmayı kodla yapınca ateş tam yerinde çıkmıyor.

ama normal yaptığım zaman relative diye bişey var ona bastığımda oluyor. bunu kodla nasıl yapabilirim?
instance_create(x,y,ates) de. x ve y ye dikkat yani. 0 felan yaparsan 0 konumunda çıkar. X y yapınca kendi pozisyonunda.
bir sorun daha var;
mouse ye tıkladığımda oka ateş atmasını nasıl yapabilirim?
(çözülürse +++++rep)
tıklama koduna
var a;
a=instance_create(x,y,ates);
a.direction = point_direction(x,y,mouse_x,mouse_y);
a.speed=5;
şeklinde yapabilirsin.
nie bırak ikinci anlatığın gibi yap noulacak ki.
He şu kodların açıklamasını yazayım . . . :
var a;
a=instance_create(x,y,ates);
a.direction = point_direction(x,y,mouse_x,mouse_y);
a.speed=5;
var a diyerek , o an için geçici bir değişken üretiyoruz a adında.
Bu a değişkenine , instance_create diyerek bu fonskyionla yaratılmış ates nesnesinin , kendisine has olan kodunu 'a' değişkenine yüklüyoruz.
Şimdi biz neden 'a' değişkenini instance_create'ye eşitledik. Bunun sebebi , instance_create ile yaratılan nesnenin özel ID'sini döndürmesi. Yani diyelim oyunda 300 tane ates adlı nesne var. biz burda ates.speed deseydik , bu 300 tane ates nesnesi arasından bi tanesini secicekti ve olmadık kurşunlar saçma saçma yön alıcaktı. Şimdi biz bu a değişkenine yüklediğimizde , a. diyerek o yaratılan nesneye işlem yapıyoruz. Bu ID ler nedir ? Roomda nesne yaratıyoruz hani , üstüne gelince altta özellikleri geliyo ID si yüzbin ile başlıyo. Atıyorum osman adlı nesnenin ID si 100641 . Bunun hakkında işlem yapmak için :
(100641).speed=5;
parantez içine almazsak hata verir. Bu sayıyı değişken olarak algılamaya çalışır. Umarım ki mantığını kavramışsındır ?
a.direction diyerek yön veriyoruz ve bu yön point_direction ile nereye doğru olucağını söyler. point_direction(x1,y1,x2,y2); şeklinde argument alır. X1 Y1 pozisyonundan X2 Y2 pozisyonuna bakıyoruz yani bakan kişi , neye bakıyorsa baktığı yönü verir. a.speed diyerek hız veriyoruz.