Video: Learn HTML5 - full course with code samples 2025
Özellikleri, HTML 5 oyunundaki nesnelerin özelliklerini tanımlar ve yöntemler davranışları açıklar. Bir yöntem, bir nesneyle ilişkili bir işlevdir. Bir mülk yaratma gibi yöntemler çok şey inşa edersiniz, ancak basit bir değer eklemeden bir tüm işlevi bir ada atarsınız.
Örneğin, yaratıcının bir sonraki sürümü changeSpeed () yöntemine sahiptir. Kullanıcı yukarı ok tuşuna bastığında, yaratıcı hızlanır ve kullanıcı aşağı okuna bastığında, yaratık yavaşlar (ve eninde sonunda diğer yöne gider). İşte yeni yöntemle yaratıcı için olan kod:
critterChangeSpeed. html var oyun; yaratık; fonksiyon Critter () {tCritter = yeni Sprite (oyun, "yaratıcı. gif", 30, 30); tCritter. hız = 0; tCritter. checkKeys = işlev () { if (keysDown [K_RIGHT]) { bu. Hızlı ++; } if (keysDown [K_LEFT]) { bu. hız--; } tCritter. setSpeed (bu hız); } // son yöntemi return tCritter;} işlevi init () {game = yeni Sahne (); critter = yeni Critter (); oyun. start ();} fonksiyon güncelleme () {oyun. açık(); yaratık. checkKeys (); yaratık. update ();}
Kullanıcı tuşlara basıldığında hareket ettiğini unutmayın. Bu ve çoğu örnek için, durağan bir görüntü, neler olup bittiğini görmenize yardımcı olmak için yeterli olmayacaktır.
Programın bu yeni sürümünde, Critter nesnesinin tanımlanmış yeni bir davranışı vardır. Esasen, bir yöntem, bir sınıf içinde tanımlanan bir işlevden başka bir şey değildir. Panik yapma. Öğrenmek gerçekten zor değil. Kullanıcı, Critter nesnesine hızını değiştirmesini istediğinde sisteme ne yapılacağını söylüyorsunuz.
-
checkKeys adlı yeni bir özellik oluşturun.
JavaScript'te bir özellik ve yöntem tam olarak aynı şey. Bir nesneye düzenli bir değişkeni eklerseniz, bu bir özelliktir. Buna bir işlev takarsanız, bu bir yöntemdir. (Mülkiyet isimleri normalde isimlerdir, yöntem isimleri normalde fiil veya fiil cümleleri olur.)
-
Davranışı içeren yeni bir yöntem oluşturun.
changeSpeed sıradan bir mülk değil, bir yöntem, dolayısıyla ona bir işlev ekleyeceksiniz. (Bilgisayar Bilim birincilleri için anonim bir işlevi anında kurmak, lambda işlevinin bir örneğidir, ara sınav için izleyin!)
-
Klavye girişi olup olmadığını kontrol edin.
Bir Critter nesnesi oluşturduğunuzda, zaten kendi tuş vuruşlarını nasıl arayacağını bilecektir.
-
Hızı klavye girişine göre değiştirin.
Kullanıcı sağa bastığında, hızı artırın (varsayılan yönde, pozitif hızlar sprite sağa hareket ettirir).Kullanıcı sola bastığında, hızı düşürür.
-
Gerçek hızı değiştirmek için setSpeed () yöntemini kullanın.
Vuruş için hazırlık planını sağlayan Sprite nesnesi zaten bir setSpeed () yöntemine sahiptir. Nesneyi belirtilen hızda hareket ettirmek için bu yöntemi kullanın.
-
Yöntemin içinde this anahtar kelimesini kullanın.
Bir kurucuda bir yöntem oluşturduğunuzda, bilgisayar, şeylerin adları hakkında biraz kafası karışabilir. Çoğunlukla, tCritter adlı geçici bir yaratık için malzeme ekliyorsunuzdur. Karmaşayı ortadan kaldırmak için, değiştirdiğiniz nesnenin diğer özelliklerine veya yöntemlerine başvurmanız gerekiyorsa, nesnenin gerçek adı yerine genel anahtar sözcüğünü kullanın.
-
Kriteri klavyeyi kontrol edecek şekilde update () işlevini değiştirin.
Unutmayın, main update () işlevi çerçeve başına bir kez olur. Her çerçeve için bir kez olmak istediğiniz herhangi bir şey update () çağrılmalıdır. Canavara bir çağrı ekleyin. checkKeys (). Bu, yaratıcının klavyeyi her kareyi kontrol etmesini ve hızını gerektiği gibi değiştirmesini hatırlatacaktır.