网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 网管学堂 > 网页设计 > Flash > 制作实例 > FLASH打字游戏教程:字母练习  

FLASH打字游戏教程:字母练习

2008-03-10  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

 作品名称:FLASH字母练习
功能:26个字母练习,含大小写。背景音乐可切换,背景图片也可以切换。捡到一个苹果加20分,捡到一个西瓜,加100分。

游戏展示:

网管bitscn_com
源码: test_ball_study.rar 网管网www_bitscn_com

里面主要代码教程:(把代码发在这里,希望大家能提建议。代码能否更精简...)第一帧的代码:
//定义nub,为下面的球体复制做准备...
var num:Number = 0;
//定义xian,此处设置的目的为当球下落到一定程序的时候(即超出屏幕的范围的时候),运行后面的程序,此方法的目的是为了
//让系统不会因为复制太多球体而变得很慢.此处的值是场景的y值,可以随便设...
var xian:Number = 450;
//定义新my_array类,此处为随机出现在黄色球体中的文字,内容可以自己随便加入...
var my_array:Array = new Array();
my_array = ["欢", "迎", "光", "临", "淘", "沙", "网"];
//定义加载第一个球体函数...
function jiazai_ball1() {
  //num的值不断递加...
  num++;
  //定义一个变量ball2,变量的对象为复制第一个球体为新实例名为"第一个球+num"到num层...
  var ball2 = attachMovie("ball", "ball"+num, num);
  //定义ball2的x座标值为随机数...
网管u家u.bitsCN.com

  ball2._x = Math.floor(Math.random()*750);
      //此处运用一个语句switch...即可选择性调用函数...
  switch (moshi_txt.text) {
  case "小写练习" :
  //此处返回一个随机值...
    numb = random(26)+97;
    //此处不要忘了跳出语句...
    break;
  case "大写练习" :
    numb = random(26)+65;
    break;
    //这个函数,我是第一次用到,感谢酱色度,还有小南,当然最感谢的还是Hbro...
    //当前面的条件都不成立时,就运行下面的程序...
  default :
    moshi_txt.text = "综合练习";
    //这里,又要用到变量.先定义一个变量...这里有点难度.即是说:当前面都不成立的时候,就用到这里.而且要包含两种可能.
    //这个时候,就又要用到随机函数了...这个随机函数其实是属于整个default程序的...

网管网www_bitscn_com


    var xuan_tt = random(2);
    if (xuan_tt == 1) {
      numb = random(26)+97;
    } else {
      numb = random(26)+65;
      break;
    }
  }
  ball2.onEnterFrame = function() {
    //当ball2运行的时候,就移动y座标,这样才能形成动画...
    this._y += 3;
    if (this._y>=xian) {
      //当移动到一定位置的时候,就删除影片.这样,才不会形成系统越来越慢......
      removeMovieClip(this);
    }
  };
  //球体上的动态文本框中的文本就将上面的随机字符转换为编码.每个键盘按键都对应得有一个编码的...具体可以查询:

网管u家u.bitscn@com


  //http://www.taoshaw.com/taoshaw/article.asp?id=1309
  ball2.text.text = String.fromCharCode(numb);
}
//此处为复制的另一个球体的函数...
function jiazai_ball2() {
  var ball3 = attachMovie("balld", "balld"+num, num);
  ball3._x = Math.floor(Math.random()*750);
  ball3.onEnterFrame = function() {
    this._y += 5;
    if (this._y>=xian) {
      removeMovieClip(this);
    }
  };
  numb = random(26)+97;
  /*如果希望黄色的小球也出现随机字母,则使用ball3.text.text=String.fromCharCode(nmub);*/
  ball3.text.text = my_array[Math.floor(Math.random()*my_array.length)];
}
//将刚才的球体加载函数调用进场景中......
function diao1() {
  jiazai_ball1();
网管联盟bitsCN@com

}
function diao2() {
  jiazai_ball2();
}
//设置diao1函数调用的时间半隔......
id1 = setInterval(diao1, 1000);
id2 = setInterval(diao2, 5000);
xiaoxie_btn.onRelease = function() {
  moshi_txt.text = "小写练习";
};
daxie_btn.onRelease = function() {
  moshi_txt.text = "大写练习";
};

元件"ball"中第一帧的代码:
stop(); 
//定义鼠标侦听类... 
var keyListener = new Object(); 
keyListener.onKeyDown = function() { 
//判断键盘转化的符号与球体的动态文本框中的内空所对应的编码是否符合... 
if (text.text.charCodeAt(0) == Key.getAscii()) { 
gotoAndPlay(2); 

}; 
Key.addListener(keyListener);


TAGs
 上一篇:flash下拉列表(comboBox)附源码下载   下一篇:没有了
FLASH打字游戏教程:字母练习 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: