Accessing External Data
有时候访问游戏的外部信息是非常必要的, 你可以载入来自网页或者文本域的外部参数,也可以保存或者下载本地信息,
External Variables
假设你有一个游戏是根据一些选项而变化的
你可以从flash影片所在的html页面获取一些参数, 有几种不同的方法能实现这个,但是如果你使用通过publish setting设置而发布生成的html模版的话,你能通过设定AC_FL_RunContent 函数中的参数flashvars 开实现传递。

看这个比较短的函数, 这里包含我添加的参数flashvars

<script language=”javascript”>
AC_FL_RunContent(
‘codebase’,
‘http://download.macromedia.com/p ... flash.cab#version=9,0,0,0’,
‘width’, ‘550’,
‘height’, ‘400’,
‘src’, ‘ExternalVariables’,
‘quality’, ‘high’,
‘flashvars’, ‘puzzleFile=myfilename.jpg&difficultyLevel=7’
);
</script>

Flashvars是一对属性名等于值的格式, 他们之间用&分开,上面的参数我们设置了puzzleFile等于myfilename.jpg, diffcultyLevel等于7

Flash播放的时候,flash能通过LoaderInfo对象获取这些参数, 下面的这行代码是获得了参数并且把参数装载到一个对象里面

var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;

如想访问单个的参数值,你可以使用这样的代码实现

var diffLevel:String = paramObj[“difficultyLevel”];

你可以使用这个方法传递任何数字,例如图片的名字,开始的关卡,速度,位置等等

Loading Data
调用外部文本文件是容易的,我们可以调用xml格式的文件,那将是非常方便的
例如我们的xml是这样的

<LoadingData>
<question>
<text>This is a test</text>
<answers>
<answer type=”correct”>Correct answer</answer>
<answer type=”wrong”>Incorrect answer</answer>
</answers>
</question>
</LoadingData>

如果你想调用xml里面的数据,我们需要URLRequest 和 URLLoader 两个对象的帮忙,然后你可以监听载入xml文件是否完成,如果完成可以触发一个函数的实现!

var xmlURL:URLRequest = new URLRequest(“LoadingData.xml”);
var xmlLoader:URLLoader = new URLLoader(xmlURL);
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);

我们可以写这个函数去读取xml里面的信息并trace出来
function xmlLoaded(event:Event) {
var dataXML = XML(event.target.data);
trace(dataXML.question.text);
trace(dataXML.question.answers.answer[0]);
trace(dataXML.question.answers.answer[0].@type);
}

我们需要把xml文件内容转换成XML对象,然后便可以轻松访问了

读黑羽舵主的殿堂之路看到xml可以直接写在flash里面,所以我们可以直接创建XML对象,只不过不是外部调用而已

Var dataXML: XML =

<LoadingData>
<question>
<text>This is a test</text>
<answers>
<answer type=”correct”>Correct answer</answer>
<answer type=”wrong”>Incorrect answer</answer>
</answers>
</question>
</LoadingData>

trace(dataXML.question.text);
trace(dataXML.question.answers.answer[0]);
trace(dataXML.question.answers.answer[0].@type);

Saving Local Data

游戏中我们通常要存储数据到本地,例如你可以存储游戏先前的分数,或者一些游戏选项,去存储数据到本地,我们需要 SharedObject 对象。
看下面代码, 访问SharedObject对象同时会在本地相应的目录生成 命名为 mygamedata的sol文件,这个文件就是用来存储本地数据的,设定myLocalData.data为gameinfo,会在 mygamedata文件里面生成gameinfo = “Store this”, 当我们第一次运行下面的代码的时候,是访问不到本地数据的,因为第一次下面代码完成了本地创建和存储的工作,但第2次运行的时候就会读出Store this了,也就是读取的是先前的数据。
var myLocalData:SharedObject = SharedObject.getLocal(“mygamedata”);
trace(“Found Data: “+myLocalData.data.gameinfo);
myLocalData.data.gameinfo = “Store this.”;

处理外部信息(xml,html,js,shareObject)相关推荐

  1. 每天学习flash一点(3) flash外部读取xml

    刚刚学了点as2.0很希望能够把所学的记载下来,作为一种学习的好习惯..今天我开始写有关于flash 一些很常用的东西.初学者,写得不好望能见谅. 对于外部读取xml, flash 有专门提供的类给我 ...

  2. web主题公园版权信息破解:script.js加密文件

    很多人会使用web主题公园网站的免费worldpress主题,但它的主题又都被加了版权信息,故意让人找不到版权信息的修改位置. 你如果去footer.php里面删除版权信息(技术支持:web主题公园) ...

  3. html在线测试接口,apiManager: 小幺鸡在线接口管理系统,支持在线测试,支持json,txt,xml,html,js,流,和 WebSocket...

    特点 在线接口测试 目前支持 json,text,html,xml,jsonp,Websocket markdown编辑器 在线demo (推荐使用在线系统) 文件夹说明 web 文件夹是前端静态页面 ...

  4. MyEclipse for Windows 关于 java、jsp、xml、js、html 等文件的注释快捷键及注释格式介绍

    文章目录 java 的注释 单行注释 多行注释 文本注释 jsp 的注释 第一种 第二种 第三种 css 的注释 js 的注释 单行注释 奇葩的单行注释 多行注释 文档注释 xml 的注释 html ...

  5. html 读取本地xml文件,JS读取本地的XML文件

    要想让JS读取本地的XML代码,得具备这样的条件,一般情况下,需要一个JS文件,一个XML文件,最后这两个文件就放在相同的路径下,这样方便调用. 一.XML文件代码示例 大众计算机学习网 www.dz ...

  6. html api在线测试,apiManager: 小幺鸡在线接口管理系统,支持在线测试,支持json,txt,xml,html,js,流,和 WebSocket...

    特点 在线接口测试 目前支持 json,text,html,xml,jsonp,Websocket markdown编辑器 在线demo (推荐使用在线系统) 文件夹说明 web 文件夹是前端静态页面 ...

  7. js获取服务器响应头信息,请问,js中请求头信息和返回头信息的方法

    $.ajax({ type: 'HEAD', // 获取头信息,type=HEAD即可 url : window.location.href, complete: function( xhr,data ...

  8. wap开发使用jquery mobile之后页面不加载外部css样式文件/js文件

    场景: wap开发,使用jquery mobile之后不会加载外部自定义的css文件了,需要手动刷新才会加载,查看外部自定义的js文件也是一样. 解决办法: 1.在page下面添加css样式,就不要写 ...

  9. 用html数据库搭建信息管理系统,Node.js实现简单管理系统

    一.简述 主要是面向初学者的node攻略,需要有node基础(了解一点npm和express). 使用express框架+mongodb数据库,前端使用的是原生html. 实现了对图书的增删改查基本功 ...

最新文章

  1. [微信小程序]星级评分和展示(详细注释附效果图)
  2. property classmethod staticmethod的用法
  3. BGP、MPLS是怎么组合到一起的?
  4. 第十一周项目实践2 用邻接表存储的图来实现基本应用
  5. 8、REVOKE:删除用户权限
  6. 计算机专业推荐表自我介绍,就业推荐表-自我介绍
  7. 收藏 | Redis 超详细总结笔记总
  8. CSS外边距(margin)重叠及防止方法
  9. java webservice用户验证_使用java webservice的.net4.0 web app需要Usernametoken身份验证
  10. 机票预定系统类图_出行干货|在法国,廉价机票攻略
  11. Python--SQLite学习(10.29)
  12. 简述计算机的主要分类及应用领域,【内存分类及特点是什么】_简述计算机内存的分类及各自特点?...
  13. aggs 聚合 取结果
  14. 小暑至盛夏始吃苦尝酸保健康
  15. UNITY_DOTWEEN_PATH路径动画的使用
  16. Java二级多少分算过_计算机二级考多少分算过
  17. 银河麒麟linux找不到网卡,银河麒麟(Ubuntu)无法上网问题的解决方法
  18. python房屋租赁系统的设计与实现_毕业设计---在线房屋租赁系统的设计与实现.doc...
  19. 做软件测试三,四年后的感想
  20. 2019BJFU 网站设计(孙俏-web前端开发)实验代码-181002222

热门文章

  1. 10天学安卓-第六天
  2. 深入探究函数返回局部变量
  3. 获取自定义组件的宽度和高度
  4. 元气森林唐彬森:十万块就能爆发团队创造力
  5. 付费会员制,如何赋能产品?
  6. 前美团产品专家罗鑫:谈谈我对增长这件事的理解
  7. 印象笔记设计经理王怀千:全栈设计师的职业本质
  8. 微信运动:抓住用户的小九九,一个都别跑
  9. 面向对象的用户体验设计(持续更新10.29)
  10. 【必读】文案都写不好,还谈什么互联网思维