health

[tahir][bigposts]

vehicles

[tahir][bigposts]

business

[tahir][bigposts]

Game Maker Fare ve Klavye kodları

Fare 

etkileşimi için aşağıdaki değişkenler ve işlevler mevcuttur:

mouse_x * Odadaki fare X-koordinatı. Değiştirilemez.
mouse_y * Odadaki farenin Y koordinatı. Değiştirilemez.
mouse_button Şu anda basılı fare düğmesi. Değer olarak mb_none, mb_any, mb_left, mb_middle veya mb_right kullanın.
mouse_lastbutton Son tıklanan fare düğmesi.

Belirli bir fare düğmesine basıp bırakılmadığını kontrol etmek için aşağıdaki işlevleri kullanabilirsiniz. Bu, aynı anda birden fazla tuşa basıldığında yararlıdır.


mouse_check_button (numb) Fare düğmesinin şu an kapalı olduğunu döndürür (değerleri mb_none, mb_left, mb_middle veya mb_right olarak kullanın).
mouse_check_button_pressed (numb) Son adımdan beri fare düğmesine basıp basılıp bastırılmadığını döndürür.
mouse_check_button_released (numb) Son adımdan sonra fare düğmesinin serbest bırakılıp bırakılmadığını döndürür.

Klavye


Klavye etkileşimi için aşağıdaki değişkenler ve işlevler mevcuttur:

keyboard_lastkey Son tuşun tuş kodu basıldı. Anahtar kod sabitleri için aşağıya bakın. Örneğin değiştirebilirsiniz. kullandıysanız 0'a ayarlayın.
keyboard_key Geçerli tuşun tuş kodunu basılır (aşağıya bakınız, yoksa 0'a bakınız).
keyboard_lastchar Son karakter basıldı (dizge olarak).
keyboard_string Yazılmış en son 1024 karakterden oluşan dize. Bu dize yalnızca yazılmış yazdırılabilir karakterleri içerecektir. Ayrıca, son karakteri silerek arka boşluk tuşuna basıldığında da doğru yanıt verir.

Bazen bir tuşu başka bir tuşa eşlemek yararlıdır. Örneğin, müzikçaların hem ok tuşlarını hem de numpad tuşlarını kullanmasına izin vermek isteyebilirsiniz. İşlemleri çoğaltmak yerine sayı tuşlarını ok tuşlarına eşleyebilirsiniz. Ayrıca, oynatıcının kullanılacak tuşları ayarlayabileceği bir mekanizma uygulamak isteyebilirsiniz. Bunun için aşağıdaki işlevler kullanılabilir:


keyboard_set_map (key1, key2) Anahtarı, key1 tuşuyla eşleştirir.
keyboard_get_map (key) Anahtar için geçerli eşlemeyi döndürür.
keyboard_unset_map () Kendilerine eşlemek için tüm tuşları sıfırlar.

Belirli bir tuşa veya fare düğmesine basıp bırakmadığınızı kontrol etmek için aşağıdaki işlevleri kullanabilirsiniz. Bu, aynı anda birden fazla tuşa basıldığında yararlıdır.


keyboard_check (key) Belli bir tuş kodlu anahtarın şu an kapalı olup olmadığını döndürür.
keyboard_check_pressed (key) Son adımdan itibaren belirli tuş kodlu tuşların basılıp basılmadığını döndürür.
keyboard_check_released (key) Belli bir tuş kodlu anahtarın son adımdan bu yana serbest bırakılıp bırakılmadığını döndürür.
keyboard_check_direct (anahtar) Doğrudan donanım denetleyerek belirli bir tuş kodlu tuşa basılıp basılmadığını döndürür. Sonuç, hangi uygulamaya odaklanıldığından bağımsızdır. Birkaç daha kontrol etmenizi sağlar. Özellikle, vk_lshift, vk_lcontrol, vk_lalt, vk_rshift, vk_rcontrol ve vk_ralt tuş kodlarını kullanarak sola veya sağa kayma, kontrol veya alt tuşa basılıp basılmadığını kontrol edebilirsiniz.

Aşağıdaki rutinler klavye durumunu değiştirmek için kullanılabilir:


keyboard_get_numlock () numlock'ın ayarlanıp ayarlanmadığını döndürür.
keyboard_set_numlock (açık) Numlock'u ayarlar (true) veya ayarlarını kaldırır (false).
keyboard_key_press (key) Belirtilen tuş koduyla tuşa basmayı dener.
keyboard_key_release (key) Belirtilen tuş koduyla tuşun bir sürümünü simüle eder.

Sanal tuş kodları için aşağıdaki sabitler mevcuttur:


vk_nokey keycode representing that no key is pressed
vk_anykey keycode representing that any key is pressed
vk_left keycode for left arrow key
vk_right keycode for right arrow key
vk_up keycode for up arrow key
vk_down keycode for down arrow key
vk_enter enter key
vk_escape escape key
vk_space space key
vk_shift shift key
vk_control control key
vk_alt alt key
vk_backspace backspace key
vk_tab tab key
vk_home home key
vk_end end key
vk_delete delete key
vk_insert insert key
vk_pageup pageup key
vk_pagedown pagedown key
vk_pause pause/break key
vk_printscreen printscreen/sysrq key
vk_f1 ... vk_f12 keycodes for the function keys F1 to F12
vk_numpad0 ... vk_numpad9 number keys on the numeric keypad
vk_multiply multiply key on the numeric keypad
vk_divide divide key on the numeric keypad
vk_add add key on the numeric keypad
vk_subtract subtract key on the numeric keypad
vk_decimal decimal dot keys on the numeric keypad

Harf tuşları için örneğin ord ('A') kullanın. (Büyük harfler.) Rakam tuşları için, örneğin <5> anahtarını almak için ord ('5') kullanın. Aşağıdaki sabitler yalnızca keyboard_check_direct'te kullanılabilir:


vk_lshift left shift key
vk_lcontrol left control key
vk_lalt left alt key
vk_rshift right shift key
vk_rcontrol right control key
vk_ralt right alt key

Örneğin, kullanıcının aşağıdaki kod parçasını nesnenin adım olayına yerleştirebileceği ok tuşlarıyla kontrol edebileceğini bir nesneye sahip olduğunuzu varsayalım:


{
  if (keyboard_check (vk_left)) x - = 4;
  if (keyboard_check (vk_right)) x + = 4;
  if (keyboard_check (vk_up)) y - = 4;
  if (keyboard_check (vk_down)) y + = 4;
}

Elbette bunu klavye olaylarına basitçe koymak daha kolaydır.

Klavye etkileşimiyle ilgili bazı ek işlevler vardır.


keyboard_clear (key) Anahtarın durumunu temizler. Bu, tekrarlamaya başlayana kadar artık klavye etkinlikleri oluşturmayacağı anlamına gelir.
io_clear () Tüm klavye ve fare durumlarını temizler.
io_handle () Kullanıcının io'sunu idare edin, klavye ve fare durumunu güncelleyin.
keyboard_wait () Klavye üzerindeki bir tuşa basana kadar bekler.

No comments:

Post a Comment