HTML5 implements WeChat masturbation game_html5 tutorial skills
html5 implements WeChat’s masturbation game. Use this mini game to learn HTML5. This is a direction for developing WEB
// JavaScript Document
var c = document.getElementById("dotu");
var cxt = c.getContext("2d");
var img = newImg(". /assets/bg_01.jpg");
var fps;
cxt.drawImage(img,0,0,480,800);
var flivverLog = 0;
var flivver1 = newImg(". /assets/flivver.png");
var flivver2 = newImg("./assets/flivver2.png");
var flivver3 = newImg("./assets/flivver3.png");
// Used to record the time of the game, the faster it goes to the back
var time1 = 0;
var time2 = 80;
// Points
var jifen = 0;
function getSudu(){
var number = parseInt(Math.random()*10);
if(number < 5 && number > 0){
return number;
}
return 1;
}
//Aircraft object
function flivverObj(hp,ewidth,eheight,eimg,esudu){
//Random X
this.x = parseInt(Math.random()*460 1);
this.y = 0;
// HP
this.hp = hp;
// Beaten
this.hit = 0;
// Whether to die
this.over = 0;
this.width = ewidth;
this.height = eheight;
this.img = eimg;
this.sudu = esudu;
}
//Get the aircraft
function getFlivver(type){
switch(type){
case 1:
return new flivverObj(100,50,30,flivver1,getSudu());
case 2:
return new flivverObj(500,70,90,flivver2,getSudu());
case 3:
return new flivverObj(1000,110,170,flivver3,getSudu());
}
}
function cartridge(x,y){
this.x = x;
this .y = y;
}
function gameover(){
window.clearTimeout(fps);
//$('#dotu').fadeOut();
$('.content').css('position','relative');
$('.content').append('');
$('#sil').html('you') .hide().fadeIn(1000,function(){
$(this).html('You shit').hide().fadeIn(1000,function(){
$(this).html ('You are shit
' jifen 'fen') .hide().fadeIn();
});
});
}
(function(cxt){
var dotu = {nums:0};
// Used to store small aircraft
var flivver = new Array();
var flivverImg = newImg("./assets/flivver.png");
// Self
var me = {x:240,y:750};
var meImg = newImg('assets/me.png');
// Bullets
var cartridges = new Array();
var cartridgeImg = newImg('./assets/cartridge.png');
var boo1 = newImg('./assets/boo1.png');
var over = newImg('./assets/over .png');
//
dotu.update = function(){
dotu.setTimes();
// Set background
dotu.setBg();
// Set up the small plane
dotu.setFlivver();
// Draw yourself
dotu.setMe();
// Bullets
dotu.cartridge();
cxt.font = "italic 20px Microsoft Yahei";
cxt.strokeText("Points:" jifen, 10, 30);
$('#fjs'). html(flivver.length);
$('#zds').html(cartridges.length);
$('#scfj').html("1000/" time2 " milliseconds");
}
dotu.setTimes = function(){
time1 ;
// 1 gear in 100 seconds
if(time1 == 1000){
time1 = 0;
time2 = (time2 == 20) ? 20 : time2 - 20;
}
}
/**
* Set moving background
*/
dotu .setBg = function(){
dotu.nums ;
if(dotu.nums == 800){
dotu.nums = 0;
}
// Canvas background
cxt.drawImage(img,0,dotu.nums,480,800);
cxt.drawImage(img,0,dotu.nums - 800,480,800);
}
dotu.setFlivver = function( ){
// Generate aircraft
if(dotu.nums % time2 == 0){
flivverLog ;
if(flivverLog % 6 == 0){
flivver.push(getFlivver (2));
}else if(flivverLog % 13 == 0){
flivver.push(getFlivver(3));
}else{
flivver.push(getFlivver(1) );
}
}
for(a in flivver){
flivver[a].y = flivver[a]. sudu;
// If it goes beyond the screen, delete the small plane
if(flivver[a].y > 780){
flivver.splice(a, 1);
}
// Draw the small plane onto the canvas
// The small plane dies
if(flivver[a].over > 0){
flivver[a] .over --;
if(flivver[a].over > 20){
cxt.drawImage(boo1,flivver[a].x flivver[a].width/2 - 20 , flivver[a].y flivver[a].height / 2 -10,41,39);
}else if(flivver[a].over > 2){
cxt.drawImage(over,flivver [a].x flivver[a].width/2 - 20 ,flivver[a].y flivver[a].height / 2 -10,40,43);
}else{
flivver.splice (a, 1);
}
}else{
cxt.drawImage(flivver[a].img,flivver[a].x,flivver[a] .y,flivver[a].width,flivver[a].height);
// Determine whether you are dead
if( me.x > (flivver[a].x - flivver[a]. width 20) && (me.x) <(flivver[a].x flivver[a].width - 20) && (me.y) < (flivver[a].y flivver[a].height 20) && (me.y 72) > (flivver[a].y - 20)){
gameover();
}
if(flivver[a].hit > 0) {
cxt.drawImage(boo1,flivver[a].x flivver[a].width/2 - 20 ,flivver[a].y flivver[a].height / 2 -10,41,39);
//cxt.drawImage(boo1,flivver[a].x 5,flivver[a].y,41,39);
flivver[a].hit--;
}
}
}
}
// Update own distance
dotu.setMe = function(){
cxt.drawImage(meImg,me.x,me.y ,64,72);
}
// Update bullet method
dotu.cartridge = function(){
if(dotu.nums % 10 == 0){
cartridges.push(new cartridge(me.x 30,me.y));
}
for(i in cartridges){
// Delete OBJ when it reaches the top
if(cartridges[i].y < 0){
cartridges.splice(i, 1);
continue;
}
cartridges[i].y -= 20;
// Draw the small airplane onto the canvas
cxt.drawImage(cartridgeImg,cartridges[i].x,cartridges[i].y,7,17);
// The situation when the bullet hits the aircraft
for(j in flivver){
if(flivver[j].over > 0){
continue;
}
if(cartridges[ i].x > flivver[j].x && cartridges[i].x < flivver[j].x flivver[j].width && cartridges[i].y > flivver[j].y && cartridges [i].y -flivver[j].height < flivver[j].y){
flivver[j].hit = 10;
$('#isdz').html( 'Hit the number' j);
if(flivver[j].hp > 1){
flivver[j].hp -= 80;
}else{
flivver[j].over = 40;
jifen = 50000;
}
// The bullet disappears
cartridges.splice(i, 1);
break;
}
}
}
}
// Bind mouse event
c.addEventListener('mousemove', function onMouseMove(evt) {
me.x = evt.layerX - $('#dotu').offset().left - 32;
me.y = evt.layerY - 36;
$('#sbX').html(me.x);
$('#sbY').html(me.y);
});
fps = setInterval(dotu.update, 1000/100);
}(cxt))
function newImg(src){
var obj = new Image();
obj.src = src;
return obj;
}
/ /setInterval(h.update, 1000/65);

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Guide to Table Border in HTML. Here we discuss multiple ways for defining table-border with examples of the Table Border in HTML.

This is a guide to Nested Table in HTML. Here we discuss how to create a table within the table along with the respective examples.

Guide to HTML margin-left. Here we discuss a brief overview on HTML margin-left and its Examples along with its Code Implementation.

Guide to HTML Table Layout. Here we discuss the Values of HTML Table Layout along with the examples and outputs n detail.

Guide to Moving Text in HTML. Here we discuss an introduction, how marquee tag work with syntax and examples to implement.

Guide to the HTML Ordered List. Here we also discuss introduction of HTML Ordered list and types along with their example respectively

Guide to HTML onclick Button. Here we discuss their introduction, working, examples and onclick Event in various events respectively.

Guide to HTML Input Placeholder. Here we discuss the Examples of HTML Input Placeholder along with the codes and outputs.
