使用文本文件在flash as2中加载高分

时间:2014-11-22 14:33:07

标签: flash file-upload save actionscript-2

如上面的问题所示,我真的需要一些关于加载和保存从txt文件到闪存的分数的反馈,反之亦然。我仍然是闪光灯的新手,这是我想在游戏中实现的最后一件事。我坚持了大约一个星期尝试互联网上的所有教程。非常感谢任何帮助和建议。

2 个答案:

答案 0 :(得分:0)

创建:::

的函数
  • :接受一个参数来指示要返回的文件位置

    例如,

    将VarName作为字符串check this out a bit for strpos methods

  • :以字符串

  • 读取txt
  • :然后使用indexOf(" varName")找到需要信息的地方

  • :然后解析下一个文本数字,持有分数

  • :最后返回Number(" 123")< - 所以数字串变为int

然后在需要时调用函数:

  • 得分= funcScore(" tommy");

  • 迹(评分* 100);或者其他^^快乐编码

答案 1 :(得分:0)

好的,我为你做了些什么。看看它是如何发生的。


  1. 首先实例化您的玩家列表。 我们将创建:空的影片剪辑存储文本字段的位置,用于存储拉取信息的空数组和用于切换的布尔变量,稍后需要。像这样:

    players = ["tommy","tomm","tom","om","mmy"];
    this.createEmptyMovieClip("sc",1);
    var arr:Array = new Array();
    var done:Boolean;
    
  2. 然后,LoadVars课程将加载&score; scores.txt'文件。然后对于阵列中的每个玩家,我们将信息推送到该阵列并对其进行排序。像这样:

    loo = new LoadVars();
    loo.load("scores.txt");
    loo.onLoad = function() {
    for(el in players){
            arr.push(Number(this[players[el]]));}//##
        arr.sort(16);//16 stands for numeric
        arr.reverse();//descending
        done=true;}
    
  3. 排序后,我们可以动态地放置文本字段并将值写入其文本属性。像:

    onMouseUp = function(){
    if(done==true){
        for(i=0;i<arr.length;i++){
            a = this.sc.createTextField("place"+i,i+100,Stage.width/2-25,i*30+30,50,25);
            a.text = arr[i];}
        done=false;}
    else{
        reload();}}
    
  4. 另外,请注意切换是如何工作的,我们称之为自定义&#39;重新加载&#39;功能。将其添加到您的文件并运行电影。

    function reload():Void {
          _root.loadMovie(_root._url);}
    
  5. 文本文件内容如下所示 - 与player数组中的名称相同,以对应。在一行中写入文本,没有行刹车。

    tommy=112&tomm=20&tom=300&om=2&mmy=2922
    

    // ##如果你想在数字前留下占位符零的分数,例如&#39; 009&#39;,请在此处删除数字功能,并为sorting选项放置数字2而不是16删除倒车阵列