`
madfroghe
  • 浏览: 122199 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

第一个Flash小游戏制作(2)

阅读更多

第一个Flash小游戏制作(1)中我们获得了如下图的例子

 

 

我们对程序进行修改,通过随机数来分配图案,如下:

package {
 import flash.display.MovieClip;
 import flash.events.MouseEvent;
 import flash.events.Event;
 
 public class frombegintoend extends MovieClip {

  var arr:Array=new Array();
  var listData:Array=new Array();
  
  public function frombegintoend():void {
   
   super();
   
   for(var i:int=0;i<3;i++)
   {
    for(var j:int=0;j<4;j++){
     var card:Card10=new Card10();
     card.x=135+52*j;
     card.y=165+52*i;
     card.stop();
     addChild(card);

     arr.push(card);
    }
    
   }
   
   var temp:Array=new Array();
   
   //Math.floor(Math.random()*20)
   for(var k:int=0;k<arr.length;k++)
   {
    temp.push(k);
    listData.push(0);
   }
   
   for(var L:int=arr.length-1;L>-1;L--)
   {
    var nu:Number=Math.floor(Math.random()*12)+2;
    var nu1:Number=Math.floor(Math.random()*L);
    
    listData[temp[nu1]]=nu;
    temp.splice(nu1,1);
    var nu2:Number=Math.floor(Math.random()*(L--));
    listData[temp[nu2]]=nu;
    temp.splice(nu2,1);
   }
   
   for(var p:int=0;p<arr.length;p++){
    arr[p].gotoAndStop(listData[p]);
    
   }
   
   
  }
  

 

 }

 

 

接着我们对每个图案添加按钮事件,来处理相同的图案消失:

package {
 import flash.display.MovieClip;
 import flash.events.MouseEvent;
 import flash.events.Event;
 
 public class frombegintoend extends MovieClip {

  var arr:Array=new Array();
  var listData:Array=new Array();
  
  public function frombegintoend():void {
   
   super();
   
   for(var i:int=0;i<3;i++)
   {
    for(var j:int=0;j<4;j++){
     var card:Card10=new Card10();
     card.x=135+52*j;
     card.y=165+52*i;
     card.stop();
     addChild(card);
     arr.push(card);
     card.addEventListener(MouseEvent.CLICK,hc);
    }
    
   }
   
   var temp:Array=new Array();
   
   //Math.floor(Math.random()*20)
   for(var k:int=0;k<arr.length;k++)
   {
    temp.push(k);
    listData.push(0);
   }
   
   for(var L:int=arr.length-1;L>-1;L--)
   {
    var nu:Number=Math.floor(Math.random()*12)+2;
    var nu1:Number=Math.floor(Math.random()*L);
    
    listData[temp[nu1]]=nu;
    temp.splice(nu1,1);
    var nu2:Number=Math.floor(Math.random()*(L--));
    listData[temp[nu2]]=nu;
    temp.splice(nu2,1);
   }
   
   for(var p:int=0;p<arr.length;p++){
    arr[p].gotoAndStop(listData[p]);
    
   }
   
   
  }
  
  var firsts:Number;
  var second:Number;
  var firstsC:Card10;
  var secondC:Card10;
  public  function hc(event:Event):void{
   var card:Card10=event.target as Card10;
   if(isNaN(firsts)){
    firsts=listData[arr.indexOf(card)];
    firstsC=card;
   }else{
    second=listData[arr.indexOf(card)];
    secondC=card;
   }
   trace(firsts);
   trace(second);
   if(!isNaN(firsts) && firstsC!=secondC && firsts==second){

    trace(arr);
    if(arr.indexOf(firstsC)>arr.indexOf(secondC)){
     listData.splice(arr.indexOf(firstsC),1);
     listData.splice(arr.indexOf(secondC),1);
    }else{
     listData.splice(arr.indexOf(secondC),1);
     listData.splice(arr.indexOf(firstsC),1);
    }
    arr.splice(arr.indexOf(firstsC),1);
    arr.splice(arr.indexOf(secondC),1);
    trace(listData);
    removeChild(firstsC);
    removeChild(secondC);
    firsts=NaN;
    second=NaN;
   }
   
  }

 

 }

 

}

最终我们就完成了第一个小程序,接着我们要考虑如何来优化我们的程序。

源码见附件

  • 大小: 11.5 KB
分享到:
评论

相关推荐

    第一个Flash小游戏制作(1)

    标题中的“第一个Flash小游戏制作(1)”表明我们将探索如何创建一个基础的Flash游戏,这通常涉及使用Adobe Flash软件,一种曾经广泛用于动画制作和交互式内容开发的工具。在这个过程中,初学者将学习基本的Flash...

    flash 制作游戏教程

    FLASH 游戏制作是一个非常复杂的过程,需要掌握多种技术和技能。今天我们将要一起学习如何制作一个迷宫游戏,学习如何使用 FLASH 来实现游戏的制作。 首先,让我们了解一下 FLASH 游戏的基本概念。 FLASH 游戏是一...

    万年历flash小游戏

    《万年历flash小游戏》是一款基于Flash技术的实用小应用,它将传统的万年历功能与趣味性结合,为用户提供方便快捷的日期查询服务。在本文中,我们将深入探讨这款小游戏的设计原理、功能特点以及如何在不同的操作系统...

    flash游戏制作常用代码解析

    本文将深入探讨“Flash游戏制作常用代码解析”这一主题,旨在帮助初学者和开发者理解如何利用ActionScript来开发引人入胜的Flash游戏。 一、ActionScript基础 ActionScript是基于ECMAScript的脚本语言,用于控制...

    flash 小游戏(代码+源文件)

    总结来说,这个"Flash小游戏(代码+源文件)"的压缩包是一个学习和研究Flash游戏开发的好材料,涵盖了ActionScript编程、动画制作、游戏逻辑构建等多个方面。对于想深入理解Flash游戏开发的人来说,这是一个宝贵的...

    Flash as3.0制作的格斗之路小游戏源码。

    《Flash AS3.0制作的格斗之路小游戏源码解析》 在数字娱乐领域,Flash技术曾是网页游戏和互动内容的重要制作工具,其ActionScript 3.0(AS3.0)版本更是提升了编程效率和性能。本篇文章将深入探讨以AS3.0编写的...

    Flash互动游戏制作范例导航源文件

    本资源包含了《范例导航系列丛书 - Flash互动游戏制作范例导航》源文件。从第一章到二十章的fla格式的源文件。 原素材分上下两个资源,(上传权限小,没办法),1-5章节素材和6-20章节素材,详细请看本人的下载主页...

    flash制作打字游戏

    接着,在元件编辑窗口中调整图片大小并制作形状补间动画,使得图片能够从一个小点逐渐放大到正常大小,模拟爆炸瞬间的视觉效果。此外,还需要将该元件与声音文件相结合,以增强用户体验。 - **声音同步**:在第5...

    flash as3 超级大炮 小游戏

    《Flash AS3 超级大炮小游戏》是一款利用Adobe Flash和ActionScript 3.0技术开发的互动娱乐软件。ActionScript是Flash平台的核心编程语言,它的第三版(AS3)引入了许多重要的改进,使得游戏开发更为高效和灵活。这...

    flash小游戏(飞机)

    总之,开发Flash小游戏是一个很好的学习平台,能让你熟悉ActionScript的基本语法和游戏开发流程。通过实践,你可以逐步掌握更多高级概念,如物理引擎、粒子系统和网络通信,从而开发出更复杂的游戏。

    Flash cs6小游戏源码(记忆大师)

    【描述】提到的"我的第一个flash小游戏作品"表明这是一款初学者或开发者初期的项目,用于展示其在Flash编程和游戏设计上的技能。通过分享源文件,作者为其他学习者提供了一个学习和研究的基础,让他们可以深入了解...

    扎气球小游戏flash

    总的来说,"扎气球小游戏flash"利用了Flash的动画和交互特性,结合教育元素,创造出一个既娱乐又具有学习价值的体验。通过解压缩并查看"lesson02"的源代码,开发者可以深入学习如何构建类似的Flash游戏,包括图形...

    flash 3.0打汽球:小游戏

    总的来说,"打汽球"小游戏展示了Flash AS 3.0在游戏开发中的应用,包括事件处理、图形绘制、动画制作、游戏逻辑和音效管理等多个方面。通过学习和分析这个游戏,初学者可以掌握AS 3.0的基本编程技巧,并为创建更复杂...

    flash打飞船游戏

    flash制作的最基础的打飞船小游戏 数字多媒体基础教程上的 第一个flash 小游戏

    Flash as3.0制作的打字测试小游戏源码。

    本篇将详细讲解如何使用AS3.0来制作一款打字测试小游戏,帮助开发者深入理解AS3.0的核心特性以及游戏开发的基本流程。 首先,我们要明白AS3.0与之前的ActionScript版本相比,语法更加严谨,性能更加强大。在这款...

    一个全面的Flash制作教程

    Flash具备强大的图形和动画创作能力,广泛应用于网络动画、小游戏、广告以及应用程序界面设计等领域。本教程将详细介绍Flash的基础使用方法和一些高级功能,适合初学者学习和打好基础。 在本教程的第一讲中,我们将...

    flash制作文字动画

    - **SLT_SWFText1.2_setup.exe**:这可能是一个第三方的文字动画制作工具,如SWFText,它可能提供了更多预设效果和便捷功能,简化了专业级文字动画的创建。 - **SwfText_Snapshot.jpg**:这可能是一个软件的截图,...

Global site tag (gtag.js) - Google Analytics