Home  >  Article  >  Web Front-end  >  HTML5 implements WeChat masturbation game_html5 tutorial skills

HTML5 implements WeChat masturbation game_html5 tutorial skills

WBOY
WBOYOriginal
2016-05-16 15:48:211665browse

html5 implements WeChat’s masturbation game. Use this mini game to learn HTML5. This is a direction for developing WEB

Copy code
The code is as follows:

// 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);


Copy code
The code is as follows:


http://www.w3.org/1999/xhtml">


打飞机 - 多途







鼠标X:
鼠标Y:
小飞机数:
子弹数:
打中:
生成飞机时间:





Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn