如下:

// 定义全局变量 var $player = $('#player'); var $box = $('#box');

// 定义角色动态图片数组 var playerImages = ['player1.png', 'player2.png', 'player3.png', 'player4.png'];

// 定义角色动作数组 var playerActions = { 'up': ['player-up1.png', 'player-up2.png', 'player-up3.png'], 'down': ['player-down1.png', 'player-down2.png', 'player-down3.png'], 'left': ['player-left1.png', 'player-left2.png', 'player-left3.png'], 'right': ['player-right1.png', 'player-right2.png', 'player-right3.png'], 'transform': ['player-transform1.png', 'player-transform2.png', 'player-transform3.png'] };

// 定义宝箱动态图片数组 var boxImages = ['box1.png', 'box2.png', 'box3.png'];

// 定义动画时间 var animationDuration = 200;

// 定义默认角色状态 var playerState = { 'imageIndex': 0, 'action': 'down' };

// 定义角色动画函数 function animatePlayer() { var imageUrl = 'images/' + playerActions[playerState.action][playerState.imageIndex]; $player.attr('src', imageUrl); playerState.imageIndex = (playerState.imageIndex + 1) % playerActions[playerState.action].length; }

// 定义宝箱动画函数 function animateBox() { var imageUrl = 'images/' + boxImages[Math.floor(Math.random() * boxImages.length)]; $box.attr('src', imageUrl); }

// 角色跑动 $('body').on('keydown', function(event) { switch (event.which) { case 37: // left playerState.action = 'left'; $player.animate({left: '-=10px'}, animationDuration, animatePlayer); break; case 38: // up playerState.action = 'up'; $player.animate({top: '-=10px'}, animationDuration, animatePlayer); break; case 39: // right playerState.action = 'right'; $player.animate({left: '+=10px'}, animationDuration, animatePlayer); break; case 40: // down playerState.action = 'down'; $player.animate({top: '+=10px'}, animationDuration, animatePlayer); break; } });

// 角色变身 $player.on('dblclick', function() { playerState.action = 'transform'; var imageUrl = 'images/' + playerActions[playerState.action][0]; $player.attr('src', imageUrl); playerState.imageIndex = 1; });

// 寻找宝箱 $box.on('click', function() { animateBox(); alert('你找到了宝箱!'); });


原文地址: https://www.cveoy.top/t/topic/bF7H 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录