Biraz bağlanın artık şu game makere :D tutorial bille yazcem .
Tutorial derken sadece objects klasörü için geçerli içindeki eventler actionlar onların ögretimi :D. Direk geçeyim ben eventlere

Hemen add object diyip ismini asd yapın ve add event diyin :
Create eventi ( ampul şeklinde ) :
Nesne yaratıldıgında çalışır ve bi dahaki yaratılışa kadar hiç çalışmaz.

Destroy eventi ( geri dönüşüm kutusu şeklinde ) :
Nesne yok edildiginde olcak olaylar. Mesela destroy the instance diyoruz böyle yapınca direk destroy eventi çağrılıyo eventteki verilen aksiyonlar yerine getirilip nesne yok ediliyo.

Alarm event ( Saat şeklinde ) :
Bu eventi ben sık sık kullanıyom. Herhangi bi eventin aksiyon listesine Alarm koyuyoruz number of steps ile saliseyi ayarlıyoruz alttaki Alarm 0 1 gibi olanlarlada Event verdiginiz alarmı çağırıyoruz :D

Step event ( Adım ) :
Begin step : Adıma atmaya başlangıç oolunca olucak olaylar .
Step : Adım olayı oldukça yani herr zaman olcak aksiyonları yazabilirsiniz. Mesela oyunda cursoru degistirmek için yapabilirsiniz. yapıcagınız cursor objectıne step eventı eklersiniz. Execute piece of code diyip oraya
x=mouse_x
y=mouse_y
diyerek spriteyi hep mousenin üstünde tutarak cursoru ayarlamış olursunuz.
End step : Adım olayı bitince çalışır.

Collision event ( en önemlisi) :
Collision çarpışma eventi nerdeyse en en önemli eventten birisidir. Eentte belirlediginiz objectler birbiriyle çarpışma yaşanırsa olcak olaylar . Mesela bi kalp sprite var bide player var playere kalp için collision evennti ekledim ve player ve kalp çarpıştıgında kalp destroy instance ve lives +1 derim bölelikle 1 hp artırmış olurum :D ne kadar önemli oldugunu düşünün artık.

Keyboard (klavye tuşları) :
Bu eventte belirlediginiz klavye tuşu basılı oldukça olcak olaylar belirlenir. Ama basılı oldukça .

Mouse (fare :D) :
Left button : Sol tuş basılı oldukça olcak olaylar . Ama eventi eklediginiz spriteye tıklayınca olcak
Right button : Sağ tuş "" " " " "
No button : hiç bişeye basılınca :D
Left pressed : Sol tşa bir defa basılınca olcak olaylar . Basılı tutarsan çalışmaz sadece 1 kez basarak çalışır
Right pressed : Aynısının sağ tuşu
Left released : Sol tuş basılıyken basmayı bırakınca olcak olaylar
Right released : Aynı b o k un laciverti

Global mouse ise mouseyle object dışındaki yerlere tıklandıgında gerçekleşir ve çalışımı üsttekiler gibi sadece başka kısımlara tıklanınca.

Other ( diğer ) :
Outside room : Odanın dışına çıktıgında olcak olaylar
Game start : Oyun başladıgında olcak oalylar
Game End : oyun bittiginde olcak olaylar . Mesela score tablosunu gösterebilirsiniz
Room start : odaya başlayınca bölüm mesella level 1 level 2 gibi
room end : Oda bitince olcak olaylar.
No more health : Belirlediginiz Health bitmişse olcak oalylar . Ama bu health Action bölümündeki score kısmındaki health. Kendi yaptıgın deil
No more lives : Belirlediginiz lives bitmişse olcak olay
Animation end : Bu event , sprite eğer bi animasyonsa animasyonun en son resmine geldiginde çalışır.
End of path : Paths kısmındaki ayarladıgınız pathı uyguladıgınız nesnenin eğer ayarladıgınız path ın sonuna gelmişse olcak olaylar.


Anlamadıgınız bişey varsa sorabilirsiniz .

Actions :
Start moving in a direction : Bi yön içinde yürümeye başla anlamında. B actionda nesnenin hızını ve yönünü belirliceniz ve durdurmak için ortadaki stop işaretini aktif edin.

set direction and speed of motion :Nesnenin hızını ve yönünü ayarlar. mesela saş tarafa doğru 4 hızında gitmekde olan nesneye bunu uygulayıp direction kısmına : 180
speed kısmına 2 yaparsak sola 2 hızla gider.

Move in the direction of point:Bu aksiyon nesneyi dümdüz sürükler mesela x kısmına mouse_x
y kısmına mouse_y
speed 4 yaparsak nesne imlecin bulundugu yere dogru 4 hızıyla gider.

Set the horizonital speed : Yatay hızı belirler. Ne kadar artırırsanız sağa gider. Negaif değer verirseniz sola doğru gider. 0 ile durur

Set the vertical speed :Dikey hızı belirler mesela yer çekimi aktif ettiniz ve wall nesnesine basarsa diker hızı 0 yapıp yer çekimini durdurur gibisinden.

Set the gravity : Yer çekimini ayarlar. Direction kısmı yer çekiminin nereye dogru olmasını ayarlar. 270 aşşağı soğru 180 sola 90 üste 0 sağa doğru yer çekimi yapar.
Gravity ise küçük değerler olmalı 0.5 gibisinden büyük verirseniz yerinden kalkamaz bile :D Mesela keyboard up eventine vertical speed -10 yaptırın zıplar ve yer çekimide yere çekmey ebaşlar :D

Reverse horizontal direction : Yatay yönü tersine döndürür mesela sağa giderken reverse yaparsak sola götürür :D

Reverse vertical direction : Dikey yönü tersine döndürür

Set the friction :Sürtünmeyi ayarlar sürtük misali. 0.05 gibi çok küçük değer vermeniz lazım çünkü friction hızın 0 olana kadar sürter mesela yürürken 0.04 yaptın gittikçe yavaşlamaya başlar sürte sürte duursun.Mesela otomobil yarışlarında dönerkende kayması gibi :D

Jump bölümü :

Jump to a given position :nesneyi belirlediginiz x y koordinatlarına atar. Relative yi işaretlerseniz oldugu x y pozisyonu ile verdiginiz x y değerlerini toplar öle zıplar

Jump to start position : Başlangıça zıplatır . mesela room düzenlerken nesneyi ilk nereye koyduysan oraya hoplar.

Jump to random position . seni oda içindeki random bi pozisyona atar. Rasgele bi yere zıplarsın

Snap to a grid : Türkçe anlamı ızgaraya yerleş demek :D Benim işime yaradı . Belirttiginiz pixellere göre yerleşir mesela 16 16 yaptınız object in create eventine ve en yakın duvarın hemen dibine yerleşir ama yakın olması lzm veya normal bi şekilde koysanızda yerleşir. Daha sonra size grid move diye bi tutorial fln atarım :D

Wrap when moving outside :Yorum yok. !

Move to contact point : Nesne verilen yöne maximum uzaklık içindeki solid bi nesneye yerleşir .

Bounce against object : Mesela taş kırma oyunlarında hep top seker ya bu da aynı mantık. genelde collisionda kullanılır nesneyi sektirir.

Paths kısmına daha sonra geçmem lazım şimdi çok gereksiz :D

Steps :
Perform a step towards a point Nesneye belirtilen x y koordinatına 1 adım attırır. Step eventınde kullansanız daha sağlıklı olur çünkü Step eventi durmadan olan şeyleri içeriyo.

step towards a point avoiding objects İşte game makerin en önemli adım olayında birisidir. Nesnelerden kaçarak x y pozisyonuna gitmesini sağlar ! Daha çok düşman zekası desek iyi olur. Genellikle solid objelerden kaçmasını sağlamanız çok iyi olur.

Main1 Kısmı ! :

Objects:
Create an instance of an object : Belirtilen x y pozisyonunda belirtilen nesneyi yarat. Eğer x y pozisyonu belirlemeyip direk relative kutusunu işaretlerseniz , nesneyi olayı gerçekleştiren nesnenin üzerinde yaratır.

Create an instance of an object with a motion : Gene x y pozisyonlarındaki belirtilmiş objeyi yaratır ama direction ile gidecegi yönü ve speed le hızını belirlersiniz. 270 aşşağı doğru 90 yukarı 0 sağa 180 sola
örnek : bi silah oyunu

Create random object : Belirtilen 4 objeden 1 ini seçip x y pozisyonunda yaratır.

Change the instance :Nesneyi değiştirir. Resmini değil , kökten nesne değişir.

Destroy the instance :Nesneyi yok eder. İşte event kksmında dedigim Destroy eventi ni bu çağrıştırır.

Destroy the instances at a position :ilk olarak relative kutusunu işaretleyin. daha sonra x y pozisyonlarına koordinat yazın mesela 20 20 deyin. Şimdi bulundugunuz yerdeki 20 x ve 20 y pozisyonundaki nesneler yok olucak. Daha çok dinamit patlatma oyunlarında kullanılıo :D Bildigim kadar solid objectler patlamıyo ama genede sağlıksız bence :p

Sprite :

Change the sprite :Bu nesnenin resmini yani sprite yi değiştirir. Nesneyi kökten değil nesnenin sadece şeklini değiştirir o kadar.

Transform the sprite : Bu özellik kayıtlı sürümde çalışır ! Bu en sevdigim özellikden birisidir. Resmi döndürür . Mesela : - < çubuğu gördünüz. alttaki angle kutusuna 90 yazarsam 90 derece döndürür ve bu olur : - >> |
Ve 1. ve 2. kutulardaki scale ise resmi küçültür.

Blend the sprite: Bu özellik kayıtlı sürümde çalışır ! Spriteye renk verirrengini değiştirir. Siyah renkleri siyah , beyaz renkleri beyaz bnırakır ve diğer yerleri boyar. Alttaki alpha kutusuda transparanlıgını belirler. 1. kutuda ise renk seçimi yapılır.

Sounds:

Play a sound : Seçtiginiz bir sesi çalar. Loop : true | false kısmında true dersenız müziği tekrarlar arkaplan müziklerinde true demeniz sağlıklı olur :d

Stop a sound : Seçtiginiz çalınmakta olan bi müziği durdurur.

if a sound playing : Eğer seçilen ses çalınmaktaysa anlamına geliyo. alttaki NOT kutusunu işaretlerseniz eğer seçilen ses çalınmamaktaysa anlamında oluyo .

Main 2 Bölümü :
Timing :
Set an alarm clock : Bu action alarm eventlerini çağrır. Mesela burda number of steps 250 yapıp alttakini alarm 0 yaparsak , 10 saniye sonra alarm 0 eventi yerine gelir.

Sleep for a while : Oyunu tamamen yazdıgınız salise dolana kadar dondurur. (uyutur)

Time line : hiç kullanmadım anlamınıda pek çıkaramadım

Info :
Display a message : Yazdıgınız mesajı gösterir. Çok hoş bişey . Uyarılarda dökümanlarda kullanabilirsiniz.

Show game information :Oyun için yazdıgınız infoyu ekranda gösterir.

Show a video : Bir video gösterir ama video oyunun kurulu oldugu klasörde olmalı

Game :
Restart the game :oyuna res atar
End the game : oyunu kapatır (bitirir)
save the game :oyunu bulundugunuz ayarlarda kaydeder
load the game :kaydettiginiz oyunu yükleyip devam ettirir.

Resources :
Replace a sprite from a file : Yalnızca kayıtlı sürümde kullanılır. Bir dosyadan sprite yükler yerleştirir. (.jpg .gif .bmp gibi dosyalar)

Replace a sound from a file : Yalnızca kayıtlı sürümde kullanılır. Bir dosyadan ses dosyası yükler yerleştirir (.wav .mp3 .mid)

Replace a background from a file : Yalnızca kayıtlı sürümde kullanılır. Bir dosyadan arkaplan dosyası yükler (.bmp .jpg)

Control:
If it position is free : X Y kısımlarına pozisyon yazcanız ama relativeyi işaretlerseniz ve oraya 4 yazarsanız bulundugunuz x pozisyonunun 4 yatay uzaklıgını belirtir y de aynı şey. Yazdıgınız pozisyonlar uzaklıgı boşsa anlamında

If there is a collision at position :Üstteki gibi relative yi işaretlein ki gene aynı x y pozisyonları eklensin , eğer yazdıgınız pozisyonlardaki yerde çarpışma olucaksa. (collision)

If there is an object at position : X ve y pozisyonlari nı yazarak "EĞER şu x , y pozisyonlarında bir object varsa" anlamını taşır. Uo daki script gibi If anlamında

If number of instances is a value : Eğer nesne şu kadar sayıdaysa. anlamında. Objectle nesneyi secin. numberde eğer şu sayıdaysa anlamında bi sayı yazın altındakide Equal to : eşitse demek Larger than : büyükse smaller than . küçükse anlamında.

With a chance perform next action : Bu random sayı türetir. Eğer işte burda 2 derseniz galiba %2 anlamında. İşte şu oranda diğer actionu göster anlamına gelio.

If the user answers yes to question : Burda o boş kutucuğa sorunuzu yazcanız. Eğer kullanıcı yes tuşuna basarsa şu olyları gerçekleştirir manasında.

If expression true : Bu tamamen If anlamında. Mesela If expression true kutucuguna a<3 a küçükse üçten şu olayı yap. ( a oyundaki değişken).

If mouse pressed : Mousenin tuu basılıysa anlamında. Orda seçebiliyonuz orta tuş sol sağ tuşlaı diye.

Others bölümü :
Start of a block : Yukarı ok şeklinde. Bu If li bi aksiyonda kullanılıır. Eğer check ettiginiz sey dogruysa ve dogru oldugunda birden fazla aksiyon kullanmadan önce bu yapılır ve End of a block ile kapatilir Game maker languagede "{" işaretiyle başlar "}" işaretiyle biter.

Else : If de check ettiginiz şey tam aksineyse start of a block ile devam ettirilir.

Exit this event : Diyelim create eventinde bu aksiyonu kullandınız. Diğer aksiyonları okumadan bu eventten çıkar.

Repeat next action : Diğer yazcagınız aksiyonu kutucuğa yazdıınız sayı kadar tekrarlar.

Code bölümü :
Execute piece of a code : Bu bölüm tamamen game maker languageyle ilgili . Oraya daha sonra gircem. Şimdi bu aksiyon kod yazmak için kullanılıp uygulanır. Orda kodu yanlışmı doğumu yazdın diye IO IO diye bi buton var onla check edersin.

Execute a script : Bi scripti uygular.

Comment ise çok gereksiz ölesine bişe

Variables bölümü : Bu bölümde değer biçmek içindir. Buda oyunların önemli şeylerdir .

Set a variable : Bir değer biçer . üstteki kutucuga değişkenin adını altına ise değerini belirliceniz.

If a variable has a value : Eğer değişken şu değere eşitse , büyükse veya küçükse

Bu konu Xantier tarafından düzenlendi(2006-12-03 11:18, 17 yıl önce)
Sabitlenmiştir. Katkıların için Teşekkür Ederiz.
Eline sağlık bişi çaksam bu aletten denerim ama hiç bişi çakmıorm :P
devamını ekledim daha devam etçem
ekleme yaptım
teşekkürLer..
dökümanlara eklemeli..
Çok sağol xantier
isteyen msn imden istedigini sorabilir. Profilimde msn im yazıyo istediginizi sorun cevap verebilirim.
mesaj altıntı mı yoksa 0 dan mı yazdınız xantier alıntıysa alıntı yazarsanız sevinicem ?
yeni bi oyun yapmaya başlıcam yardımcı olcak varsa p.m atabilir tabi uğraşan varsa

yazıyı 0 dan yazdım alıntı olsa yazardım

Güncellenmiştir. Controls bölümünü bitirdim simdi scores bölümüne başlıcam.
xantier download linkinide verirsen sevinirim indiririz
yanlız oyundakı eventleri ve döngü leri açıklamışsın sadece nasıl ve ne şekilde kullanabilecegimizi yazmamışsın onlarıda yazarsan daha güzel olur

ayrıca bi üst posttaki arkadaş konudan cık pano ya dön ve orada download var iyi bi bak..
Şey yakında GML yi yazmaya başlıcam (game maker language) C gibi ama çok farklı (aslında c le pek alakası hatta hiç alakası yok ama ) Game maker kodlarıyla oyunlar daha mantıklı kolay yapılıyo. Bi sayının sinüs ü kosinüsü fln bir sürü matematiksel fonksiyon var. Game maker sırf oyun yapmayı sağlamıyo bu kodlarla büyük bi hesap makinesi de yapabilrisiniz.Bir saat değişken belirliceğine
var x=2; şeklinde belirtebilrisiniz. Zaten 3D yaparken bu gml yi kullanmak zorundayız :) d3d_start() d3d_set_projection() felan . Ayrıca bu actionlarda kullandıgımız bütün şeyelri gmlde de basitçe yapabiliyoz. Ona giriş yaparken yeni bi konu açıcam. İyi bi oyun zaten bol matematik ve kod istiyo :) RPG oyunu felan yaparken damage si armoru bunları oranlamak felan düşüyo :) Ayrıca Game maker ile istediğin bi .dll dosyasını ekleyerek gml ile tanıta bilirsin. Bi çok yerde multiplayer oyun yapıldıgında bi dll var o kullanılıyo. Game maker forumlarında açıklamalı anlatılmış multiplayer in dll si ve kodları. Ayriyetten kod penceresinin üstünde IOIO şeklinde bi icon var onu tıklayınca kodda yanlışlık varmı yanlış parametre kullanıldımı bütün hataları gösteriyo. Neyse ben bu kadar diyim ilerde yazmaya başlıcam. Gerçi bu forumda pek bunlarla uğraşan oldugunu hiç sanmıyom ama :)
bi kac oyun yapımınıda ayrıntılı bi sekılde anlatsan guzel olur bence ınsanlar sozlukden bakar gibi yapamazlar bence :(
yanı kelımelerın anlamını ogrenıyorlar dıl bılgısınıde sen ogret



Üye Ol veya Giriş Yap

Bu forum başlığına mesaj atmak istiyorsanız hemen üye olun veya giriş yapın.