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

Ако си зад уеб филтър, моля, увери се, че домейните *. kastatic.org и *. kasandbox.org са разрешени.

Основно съдържание

В ролята на бобъра

За начало нека направим нашия герой, подскачащия бобър. Ще използваме обектно-ориентиран дизайн, за който говорихме в този урок, за да опишем нашия герой Beaver.
Когато създаваме герой в игра, трябва да мислим за това какви свойства и поведение ще има. Например нашият бобър трябва да следи своите позиции x и y и да знае колко пръчки е събрал. Освен това трябва да има и 2 поведения: подскачане, което значи да скочи малко нагоре, и падане, с което да слезе надолу.
Ето как ще изглежда това като обект:
Тази програма обаче не проверява добре различните поведения – все още не е анимирана, затова можем да виждаме бобъра само в едно от двете състояния. Да добавим функция draw, за да можем да казваме на бобъра да прави различни неща според поведението на потребителя. В тази игра искаме бобърът да подскача, когато потребителят натисне клавиша space. Това може да се имплементира съвсем лесно:
draw = function() {
  background(255, 255, 255);
  if (keyIsPressed && keyCode === 0) {
      beaver.hop();
  } else {
      beaver.fall();
  }
  beaver.draw();
};
Този код е доста ефективен, но ако го изпълним, ще трябва да натискаме постоянно клавиша space, за да не изчезне нашият бобър от платното и да не се завърне никога. Трябва да ограничим y до разумни стойности, за да остане бобърът на екрана. Това е често срещано в игрите, за да останат героите в "света на играта". Можем да направим това, като използваме constrain във функцията draw и да ѝ подадем подходящи min и max:
 this.y = constrain(this.y, 0, height-50);
Ето я нашата програма с подскачащ и падащ бобър, който се контролира от клавиатурата. Можеш да си поиграеш с него!

Искаш ли да се присъединиш към разговора?

Все още няма публикации.
Разбираш ли английски? Натисни тук, за да видиш още дискусии в английския сайт на Кан Академия.