谁给洋大人的代码做个解释,我就给谁发奖金

2024-03-01 04:58

本文主要是介绍谁给洋大人的代码做个解释,我就给谁发奖金,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

地址在这里:https://code.sololearn.com/WR2ZwwSaXBF1/?ref=app

 

你运行的时候,发现是个游戏,小人在走,前面来了一群邪恶的龙,你要跳起来,否则你就狗带了,背景是火山,地狱般的黑夜

代码如下:

Author:Coder;
Name :Kill The Dragon;
FrameWork:P5.js;
-->    
<!DOCTYPE html>
<html>
    <head>    
    <div class="loader">
            <span></span>
            <span></span>
            <span></span>
            <span></span>
            <span></span>
            <span></span>
            <span></span>
            
        </div>
        
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css" />
        <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
     <meta name="viewport" charset="UTF-8" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
        <title>Page Title</title>
    </head>
    
     <body  onselectstart="return false" οnpaste="return false;" onCopy="return false" onCut="return false" onDrag="return false" onDrop="return false" οncοntextmenu="return false">
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/p5.js"></script>
        <script src =   "https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/addons/p5.dom.js">
        </script>  
       <script src =   "https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/addons/p5.sketch.js">
        </script>
          <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" type="text/css">   
       
        <script src="http://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js"></script>
     
  <script src ="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.0/addons/p5.sound.js"></script>
   <script src ="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.0/addons/p5.sound.min.js">

    </body>
</html>

 

再看看CSS部分


.loader{
    position:absolute;
    top:40%;
    left:40%;
    transform:translate (-50%, -50%);
    width:70px;
    display:flex;
}
.loader span{
    width:10px;
    height:60px;
    background:white;
    margin:0px 1px;
    animation:loading 800ms ease-in-out infinite;
}
.loader span:nth-child(1){
    background:#2eeca8;
    animation-delay:-700ms;
}
.loader span:nth-child(2){
    background:#eade3d;
    animation-delay:-600ms;
}
.loader span:nth-child(3){
    background:#55acee;
    animation-delay:-500ms;
}
.loader span:nth-child(4){
    background:#2eeca8;
    animation-delay:-400ms;
}
.loader span:nth-child(5){
    background:#09b7bf;
    animation-delay:-300ms;
}
.loader span:nth-child(6){
    background:#ea3d8c;
    animation-delay:-200ms;
}
.loader span:nth-child(7){
    background:orange;
    animation-delay:-100ms;
}

@keyframes loading{
    0%, 60%, 100%{
        transform:scaleY(0.01);
    }
    35%{
        transform:scale(1);
    }
}

还有JS部分

/*
Author:Coder;
Name :Kill The Dragon;
FrameWork:P5.js;
*/
console.log =()=>{}
var spriteSheet=[],Arrow_img;
var player;
var enemies = []
var fireball = []
/*window.οnclick= function(){
var audio= document.getElementById("audio_k");
audio.volume = 0.2;
audio.play();
}*/
var arrow=[];
var enemy=[];
var audio,audio1,audio2;
var score = 0;
var fire;
var Theme,theme;
var road;
var target = 10;
var points;
var dx;
var button,button1,button2;
var num;
function preload(){
/*spriteSheet =loadImage("https://image.ibb.co/e70vnq/sprite.png"); */
spriteSheet[0] = loadImage("https://image.ibb.co/mHccfL/download.png");
audio = loadSound("https://saantonandre.github.io/anotherSong.wav")
Arrow_img = loadImage("https://image.ibb.co/epXKvL/arrow-bow-PNG1.png");
enemy[0] = loadImage("https://image.ibb.co/ejbsh0/flying-dragon-gold.png");
enemy[1] = loadImage("https://image.ibb.co/hnmyS0/flying-twin-headed-dragon-blue.png")
Theme = loadImage("https://preview.ibb.co/gtT1sq/midnight-volcano-brad-simpson.jpg");
spriteSheet[1] = loadImage("https://image.ibb.co/e2Hw9f/download-2.png");
spriteSheet[2] = loadImage("https://image.ibb.co/kCx4vL/download-1.png");
spriteSheet[3] = loadImage("https://image.ibb.co/hS3gEf/download56.png");
fire = loadImage("https://image.ibb.co/iB6UJp/fireball-clipart-fiery-10.png");
audio1 = loadSound("https://saantonandre.github.io/sfx/player_buffed_shoot.wav");
audio2 = loadSound("https://saantonandre.github.io/sfx/player_damaged.wav");
}

function setup(){
createCanvas(windowWidth,windowHeight).position(0,0);
background(0);
 player = new Player();
 road = new Road();
 theme = new Background();
 audio.play();
 audio.setVolume(0.2);
 audio.loop();
 points = new Score()
 button = createButton("Next Level").class("btn btn-primary");
button.position(width/2-50,height-50);
button.mousePressed(difficult);
button.hide();

button1 = createButton("Restart").class("btn btn-primary");
button1.position(width/2-50,height-50);
button1.mousePressed(restart);
button1.hide();

button2 = createButton("Info").class("btn btn-primary");
button2.position(width-60,0);
button2.mouseClicked(info);
dx = 0.5;
}
function draw(){
 background(0);
 theme.show();
if(frameCount %250==0) {
  enemies.push(new Enemy())   
 }
 points.show()
  road.show();
  player.show();
  player.update();
   if(player.sx>player.sw*8){
         player.sx = 0;
       if(player.sy==64*19){
      player.sy = player.sw*11;
      arrow.push(new Arrow(player.x+player.w/2,player.y+player.h/2));
      audio1.play()
      
         }
     }
     for(var i =0;i<arrow.length;i++){
         arrow[i].show();
         arrow[i].update()
     }
     for(var i =0;i<enemies.length;i++){
         enemies[i].show();
         enemies[i].update();
     }
       for(var i =0;i<enemies.length;i++){
      if(enemies[i].x<-enemies[i].w){
          enemies.splice(i,1);
      }
      }
     for(var i =0;i<arrow.length;i++){
     if(arrow[i].x>width){
         arrow.splice(i,1);
     }
     }
    for(var i =0;i<arrow.length;i++){
    for(var j =0;j<enemies.length;j++){
   if(collision(arrow[i],enemies[j])){
       enemies.splice(j,1);
       //arrow.splice(i,1);
       audio2.play();
       //audio2.volume= 0.5;
       score++;
   }
   }  
    }
    if(score ==target){
        game_win();
   for(var i =0;i<arrow.length;i++){
 arrow.splice(i,1);
 }  
    }
for(var i =0;i<enemies.length;i++){
    if(collision(player,enemies[i])){
        game_over();
    }
}

}
function mouseClicked(){
if(mouseY<height-110){
   player.sy = 64*19;
   player.sx = 0;
   }
   
   
   
}

function mousePressed(){
if(mouseY>height-100){
  player.dy=-3;
 
  }  
 
}
function mouseReleased(){
    player.dy=1;
}
function Player(){
    this.x = 50;
    this.y = height-150;
    this.w = 50;
    this.h = 50;
    this.sx =  0;
    this.sy =  64*11;
    this.sw = 64;
    this.sh = 64;
    this.dy =0;
    this.r = floor(random(0,spriteSheet.length))
    this.img = spriteSheet[this.r];
    this.show = function(){
image(this.img,this.x,this.y,this.w,this.h,this.sx,this.sy,this.sw,this.sh);

    }
    this.update = function(){
    player.y+=this.dy;
     if(this.y>=height-150){
         this.y = height-150;
     }
     else if(this.y<height/2){
     this.y = height/2
     }
    if(frameCount%5==0){
     this.sx+=this.sw;
     }
     
     
    
     
 
    
    }
}
function Road(){
    this.x = 0;
    this.y = height-100;
    this.w = width;
    this.h = 100;
    this.show = function(){
    fill(0,50,250,50);
rect(this.x,this.y,this.w,this.h);
textAlign(CENTER);
textSize(20);
fill(250,0,0,100);
stroke(0)
text("Click Here To Jump",width/2,height-50);
    }
}
function Arrow(x,y){
    this.x = x;
    this.y = y;
    this.w = 50;
    this.h = 10;
    this.img = Arrow_img;
    this.show = function(){
image(this.img,this.x,this.y,this.w,this.h);
    }
    this.update = function(){
        this.x+=5;
    }
    
}
function Enemy(){
    this.x = width;
    this.y = random(height/2,height-150);
    this.w = 80;
    this.h = 80;
    this.sx = 0;
    this.sy = 64*6;
    this.sw = 64*2+20;
    this.sh = 64*2;
    this.dy= 0.5;
    this.r = floor(random(0,enemy.length));
    this.img = enemy[this.r]
    this.show = function(){
image(this.img,this.x,this.y,this.w,this.h,this.sx,this.sy,this.sw,this.sh);
    }
    this.update = function(){
        this.x-=dx;
        if(frameCount %10==0)
        this.sx+=this.sw;
        if(this.sx>this.sw*2){
            this.sx = 0;
        }
    }
}
function collision(a,b){
  return a.x < b.x + b.w/2 &&
         a.x + a.w/2 >b.x &&
         a.y < b.y + b.h &&
         a.y + a.h > b.y;
}
function Background(){
    this.x = -100;
    this.y = -20;
    this.w = width+100;
    this.h = height+20;
    this.img = Theme;
    this.show = function(){
    image(this.img,this.x,this.y,this.w,this.h);
    }
}
function Score(){
   this.x = width/2;
   this.y = 20;
   this.size = 20;
   this.show = function(){
    textAlign(CENTER);
    textSize(this.size);
    text("Score:"+score,this.x,this.y);
   }
}

function difficult(){
frameRate(255);
    score = 0;
  for(var j =0;j<enemies.length;j++){
  enemies.splice(j,3);
  }
  player = new Player() ;
  player.img = spriteSheet[player.r];
  target+=10;
  button.hide();
  dx+=2;
}
function game_win(){
  frameRate(0);
   fill(0);
   rect(0,0,width,height);
   textAlign(CENTER);
   textSize(30);
   fill("blue")
   text("You Win\nCongratulations",width/2,height/2);
   textSize(20);
   fill("red")
   text("Your Score:"+score,width/2,50);
    button.show();
}
function game_over(){
  frameRate(0);
   fill(0);
   rect(0,0,width,height);
   textAlign(CENTER);
   textSize(30);
   fill("blue")
   text("You Died",width/2,height/2);
   textSize(20);
   fill("red")
   text("Your Score:"+score,width/2,50);
    button1.show();
}
function restart(){
frameRate(255);
    score = 0;
  for(var j =0;j<enemies.length;j++){
  enemies.splice(j,3);
  }
  player = new Player();
  player.img = spriteSheet[player.r];
 target = 10;
 dx = 0.5;
 button1.hide()
}
/*
// https://image.ibb.co/e70vnq/sprite.png
// https://image.ibb.co/g17yH0/MSHWarofthe-Gems-hulk.gif
*/

function Fire(x,y){
    this.x = x;
    this.y = y;
    this.w = 50;
    this.h = 50;
    this.dx = 6;
    this.img = fire;
    this.show = function(){
image(this.img,this.x,this.y,this.w,this.h);
    }
    this.update = function(){
        this.x-=this.dx;
    }
}
function info(){
    alert(`To kill dragons you can shoot arrows by clicking on the screen.
You can dodge the dragons by jumping.`);
}

 

洋大人真是太聪明了,到底人家脑袋是长的,好使

谁能把代码看懂,就来告诉我,我发红包的,CDSN货币,转发给你

这篇关于谁给洋大人的代码做个解释,我就给谁发奖金的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761289

相关文章

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

SQL Server使用SELECT INTO实现表备份的代码示例

《SQLServer使用SELECTINTO实现表备份的代码示例》在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误,在SQLServer中,可以使用SELECTINT... 在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SE

python实现pdf转word和excel的示例代码

《python实现pdf转word和excel的示例代码》本文主要介绍了python实现pdf转word和excel的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、引言二、python编程1,PDF转Word2,PDF转Excel三、前端页面效果展示总结一

在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码

《在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码》在MyBatis的XML映射文件中,trim元素用于动态添加SQL语句的一部分,处理前缀、后缀及多余的逗号或连接符,示... 在MyBATis的XML映射文件中,<trim>元素用于动态地添加SQL语句的一部分,例如SET或W

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

python多进程实现数据共享的示例代码

《python多进程实现数据共享的示例代码》本文介绍了Python中多进程实现数据共享的方法,包括使用multiprocessing模块和manager模块这两种方法,具有一定的参考价值,感兴趣的可以... 目录背景进程、进程创建进程间通信 进程间共享数据共享list实践背景 安卓ui自动化框架,使用的是

SpringBoot生成和操作PDF的代码详解

《SpringBoot生成和操作PDF的代码详解》本文主要介绍了在SpringBoot项目下,通过代码和操作步骤,详细的介绍了如何操作PDF,希望可以帮助到准备通过JAVA操作PDF的你,项目框架用的... 目录本文简介PDF文件简介代码实现PDF操作基于PDF模板生成,并下载完全基于代码生成,并保存合并P

SpringBoot基于MyBatis-Plus实现Lambda Query查询的示例代码

《SpringBoot基于MyBatis-Plus实现LambdaQuery查询的示例代码》MyBatis-Plus是MyBatis的增强工具,简化了数据库操作,并提高了开发效率,它提供了多种查询方... 目录引言基础环境配置依赖配置(Maven)application.yml 配置表结构设计demo_st

SpringCloud集成AlloyDB的示例代码

《SpringCloud集成AlloyDB的示例代码》AlloyDB是GoogleCloud提供的一种高度可扩展、强性能的关系型数据库服务,它兼容PostgreSQL,并提供了更快的查询性能... 目录1.AlloyDBjavascript是什么?AlloyDB 的工作原理2.搭建测试环境3.代码工程1.

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python