js基础应用篇 - 豌豆射手

豌豆射手效果图,增加了可拖拽功能

在这里插入图片描述

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>豌豆射手</title>
    <style type="text/css">
        *{
            margin: 0;
            padding: 0;
        }
        img{
            width: 100px;
            height: 100px;
            position: absolute;
            cursor: pointer;
        }
        /*div{
            width: 100px;
            height: 100px;
            background: red;
            position: absolute;
        }*/
        p{
            width: 30px;
            height: 30px;
            background: green;
            border-radius: 50%;
            position: absolute;

        }
    </style>
</head>
<body>
<div></div>
< img src="img/wan1.jpg" />
</body>
<script type="text/javascript">
    var odiv = document.getElementsByTagName("img")[0];
    function aa(){
        //创建豆子p元素,并添加到body中
        var p = document.createElement("p");
        document.body.appendChild(p);
        //豆子原始左边距=豌豆的左外边距+豌豆射手宽度(高度一样)
        p.style.left = odiv.offsetLeft + odiv.offsetWidth +"px";
        p.style.top = odiv.offsetTop + p.offsetHeight/2 +"px";
        //豆子移动时的左边距
        var count = odiv.offsetLeft+odiv.offsetWidth;
        var timer1 = setInterval(function(){
            count++;
            p.style.left=count+"px";
            //设置豆子左边距大于1000时消失,不在移动
            if (parseInt(p.style.left)>1000) {
                document.body.removeChild(p);
                // p.style.display="none";
                clearInterval(timer1);
            }
        },1);
    }

    setInterval(aa,1000);

    odiv.onmousedown=function(e){
        var evt = e||window.event;
//			var xx = evt.clientX-odiv.offsetLeft;
//			var yy = evt.clientY-odiv.offsetTop;
        var xx= evt.offsetX;
        var yy = evt.offsetY;
        document.onmousemove=function(e){
            var evt = e||window.event;
            var x = evt.clientX-xx;
            var y =evt.clientY-yy;
            odiv.style.left = x+"px";
            odiv.style.top = y+"px";
            return false;
        }
        document.onmouseup=function(){
            document.onmousemove = null;
            document.onmouseup = null;
        }
    }

</script>
</html>
### 回答1: Scratch是一个编程教育平台,它为学生提供了一种有趣而易于理解的方式来学习编程。在Scratch中,豌豆射手是一个非常受欢迎的素材,它可以让学生学习如何创建和控制一个简单的射击游戏。 豌豆射手是一个既可爱又强大的角色。通过使用Scratch的编程语言,学生可以编写代码来控制豌豆射手的移动、射击和击败敌人的能力。 首先,学生需要设置豌豆射手的初始位置,例如在一个游戏屏幕的左侧。然后,学生可以编写代码来实现豌豆射手的移动功能。他们可以使用Scratch提供的坐标系统来控制豌豆射手的位置,并且可以为其添加动画效果,使其在屏幕上移动。 其次,学生可以编写代码来实现豌豆射手的射击功能。他们可以使用Scratch提供的触发器来检测用户点击屏幕的操作,并在用户点击时发射豌豆。学生可以设置射击的速度和方向,并为豌豆射手添加射击声音和动画效果。 最后,学生可以添加敌人角色和碰撞检测功能。他们可以编写代码来使敌人在屏幕上移动,并使用Scratch的碰撞检测功能来判断敌人是否被豌豆射手击中。当敌人被击中时,学生可以编写代码来触发分数增加、敌人消失或游戏结束等操作。 通过使用Scratch的豌豆射手素材,学生可以学习到编程中的基础概念,例如坐标系统、事件触发器和碰撞检测。此外,他们还可以锻炼逻辑思维和问题解决能力,并且由于它趣味性强,可以增加学生对编程的兴趣和动力。 ### 回答2: Scratch是一款非常流行的编程学习工具,用于教授计算机科学和编程的基础知识。在Scratch中,豌豆射手素材是指用来创建一个豌豆射手角色或游戏的各种图像、声音和动画资源。 在Scratch中,你可以使用豌豆射手素材来设计一个有趣的游戏。你可以选择豌豆射手的形象,可以是一个可爱的豌豆形象,或者是一个超级英雄豌豆射手。你可以自定义豌豆射手的动作和动画,比如他射击的方式、移动的方式等等。你还可以为豌豆射手选择背景音乐和音效,增加游戏的趣味性。 使用Scratch的豌豆射手素材,你可以通过编程让豌豆射手实现各种动作和行为。你可以让他射击来抵御敌人的攻击,或者让他躲避障碍物。你还可以为他设计一个得分系统,让他在游戏中不断升级或解锁新的能力。通过编程,你可以让豌豆射手与其他角色互动,创造出一个有趣而丰富的游戏世界。 总而言之,Scratch豌豆射手素材是Scratch软件中提供的用来创建豌豆射手角色或游戏的图像、声音和动画资源。通过使用这些素材,你可以设计一个有趣的游戏,让豌豆射手拥有自己独特的动作和技能,与其他角色互动,创造出属于你自己的编程作品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值