If you're seeing this message, it means we're having trouble loading external resources on our website.

თუ ვებფილტრს იყენებთ, დარწმუნდით, რომ *.kastatic.org და *.kasandbox.org დომენები არ არის დაბლოკილი.

ძირითადი მასალა

თახვი - პერსონაჟი

დავიწყოთ ჩვენი პერსონაჟის შექმნით - მხტუნავი თახვი. ჩვენ გამოვიყენებთ ობიექტზე ორიენტირებულ დიზაინს, რომელიც განხილულია ამ სახელმძღვანელოში, ჩვენი თახვი პერსონაჟის აღსაწერად.
როდესაც ვქმნით თამაშის პერსონაჟს, უნდა ვიფიქროთ, რა თვისებები და ქცევები უნდა ჰქონდეს მას. მაგალითად, ჩვენმა თახვმა თვალყური უნდა ადევნოს თავის x და y მდებარეობებს და მის მიერ შეგროვებული ჯოხების რაოდენობას. მას აგრეთვე სჭირდება ორი ქცევა: ახტომა, რაც მას ოდნავ ზემოთ აახტუნებს, და დახტომა, რომელიც მას ოდნავ ქვემოთ დაუშვებს.
აი, როგორ შეიძლება, ის გამოიყურებოდეს ობიექტის სახით:
ეს პროგრამა არც ისე კარგია სხვადასხვა ქცევის შესამოწმებლად - ის არ არის ანიმირებული, ასე რომ, მისი ნახვა შეგვიძლია მხოლოდ ერთ მდგომარეობაში ყოფნისას. მოდით, დავამატოთ draw ფუნქცია, რათა შეგვეძლოს მომხმარებლის ინტერაქციის მიხედვით თახვისთვის სხვადასხვა რამის გაკეთებინება. ამ თამაშისთვის გვინდა, რომ თახვი ახტეს მაშინ, როდესაც მომხმარებელი დააჭერს space ღილაკს (გრძელი ღილაკი კლავიატურის შუაში). ამის იმპლემენტაცია საკმაოდ ადვილია:
draw = function() {
    background(255, 255, 255);
    if (keyIsPressed && key.code === 32) {
        beaver.hop();
    } else {
        beaver.fall();
    }
    beaver.draw();
};
ეს საკმაოდ ეფექტური კოდია, მაგრამ თუ მას გავუშვებთ, მოგვიწევს space ღილაკისთვის გამუდმებით დაჭერა, რათა თახვი დავიცვათ სამუშაო სივრციდან სამუდამოდ ჩამოვარდნისა და ვერასოდეს დაბრუნებისგან. y მნიშვნელობები უნდა შევზღუდოთ ადეკვატური მნიშვნელობით, რათა თახვი შევინარჩუნოთ ეკრანზე. თამაშებში ხშირია პერსონაჟების შენარჩუნება „თამაშის სამყაროში". ამის გაკეთება შეგვიძლია constrain-ის გამოყენებით draw ფუნქციაში, მას გადავცემთ შესაბამის min-ს (მინიმუმს) და max-ს (მაქსიმუმს):
 this.y = constrain(this.y, 0, height-50);
აი, ჩვენი პროგრამა, რომელსაც აქვს კლავიატურით მართვადი ამხტომი და დამხტომი თახვი. წაითამაშეთ!

გსურთ, შეუერთდეთ დისკუსიას?

პოსტები ჯერ არ არის.
გესმით ინგლისური? დააწკაპუნეთ აქ და გაეცანით განხილვას ხანის აკადემიის ინგლისურენოვან გვერდზე.