Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Web > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 18.07.2019, 19:36   #1
alex-012
Новичок
 
Регистрация: 18.07.2019
Сообщений: 1
Репутация: 10
Вопрос нужно задать определённое количество попыток в сутки, то есть не более 3-х раз юзер может сыграть в игру

Код:
var cvs = document.getElementById("canvas");
var ctx = cvs.getContext("2d");

var bird = new Image();
var bg = new Image();
var fg = new Image();
var pipeUp = new Image();
var pipeBottom = new Image();

bird.src = "img/bird.png";
bg.src = "img/bg.png";
fg.src = "img/fg.png";
pipeUp.src = "img/pipeUp.png";
pipeBottom.src = "img/pipeBottom.png";

// Звуковые файлы
var fly = new Audio();
var score_audio = new Audio();

fly.src = "audio/fly.mp3";
score_audio.src = "audio/score.mp3";

var gap = 90;

// При нажатии на какую-либо кнопку
document.addEventListener("keydown", moveUp);

function moveUp() {
 yPos -= 25;
 fly.play();
}

// Создание блоков
var pipe = [];

pipe[0] = {
 x : cvs.width,
 y : 0
}
var dead = 3;
var score = 0;
// Позиция птички
var xPos = 10;
var yPos = 150;
var grav = 1.5;

function draw() {
 ctx.drawImage(bg, 0, 0);

 for(var i = 0; i < pipe.length; i++) {
 ctx.drawImage(pipeUp, pipe[i].x, pipe[i].y);
 ctx.drawImage(pipeBottom, pipe[i].x, pipe[i].y + pipeUp.height + gap);

 pipe[i].x--;

 if(pipe[i].x == 125) {
 pipe.push({
 x : cvs.width,
 y : Math.floor(Math.random() * pipeUp.height) - pipeUp.height
 });
 }

 // Отслеживание прикосновений
 if(xPos + bird.width >= pipe[i].x
 && xPos <= pipe[i].x + pipeUp.width
 && (yPos <= pipe[i].y + pipeUp.height
 || yPos + bird.height >= pipe[i].y + pipeUp.height + gap) || yPos + bird.height >= cvs.height - fg.height) {
 // Перезагрузка страницы    
 location.reload();
 }

 if(pipe[i].x == 5) {
 score++;
 score_audio.play();
 }
 }

 ctx.drawImage(fg, 0, cvs.height - fg.height);
 ctx.drawImage(bird, xPos, yPos);

 yPos += grav;

 //Инфо (редактировать по жиланию)

 //Инфо о попытках
 ctx.fillStyle = "#FF0000";
 ctx.font = "20px Verdana";
 ctx.fillText("Попыток Осталось: " + dead , 10, cvs.height - 80);

 //Инфо о счёте
 ctx.fillStyle = "#000";
 ctx.font = "20px Verdana";
 ctx.fillText("Ваш Счет: " + score, 10, cvs.height - 50);

 //Курс коина
 ctx.fillStyle = "#000";
 ctx.font = "15px Verdana";
 ctx.fillText("Можно перевести в коины : $" + score / 2 , 10, cvs.height - 24);

 //Подпись разработчика, студии
 ctx.fillStyle = "#00FF00";
 ctx.font = "13px DynarShadowC";
 ctx.fillText("By: Flusi3k" , 223, cvs.height - 5);

 requestAnimationFrame(draw);
}

pipeBottom.onload = draw;

______________________
Используйте тег [CODE] (кнопка [CODE] в форме сообщения) при вставке кода на форум. Подробнее в FAQ

Последний раз редактировалось Serge_Bliznykov; 19.07.2019 в 10:52.
alex-012 вне форума   Ответить с цитированием
Старый 18.07.2019, 23:11   #2
web-coder
Форумчанин
 
Аватар для web-coder
 
Регистрация: 27.05.2019
Сообщений: 62
Репутация: 104
По умолчанию

Записывайте попытки в БД.
__________________
Лучший сервис выбора хостинга по параметрам.
Более 600 тарифов. Есть промокоды!
web-coder вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужно чтобы папка создавалась в директории, а если такая уже есть, то задать название Timchik46 C# (си шарп) 13 14.09.2016 13:21
Товарищи , подскажите есть текст в richtextbox1, нужно найти определённое слово и его позицию в тексте, и вывести номер позиции в tscub C# (си шарп) 1 04.02.2016 18:02
как выделить для динамической переменной определённое количество памяти? Мой повелитель Visual C++ 3 10.01.2016 23:10
количество попыток входа в систему shananina-katya Помощь студентам 9 14.04.2012 21:24
Трабла с округлениями. Задачу решил. Но - может есть еще более симпатишные варианты... winfacks Microsoft Office Excel 2 05.02.2009 00:30


09:07.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru