刚使用SWFAddress就出现了一个怪异的问题,SWFAddress.setValue(“XXX”);调用后,URL怎么也不改变,不知道什么原因,后来发现如果把这句放在SWFAddress.onChange的事件侦听中就是正常的。想不明白,查看他的代码发现了这么一段:

private static function _check():void {
    if ((typeof SWFAddress['onInit'] == 'function' || _dispatcher.hasEventListener('init')) && !_init) {
        SWFAddress._setValueInit(_getValue());
        SWFAddress._init = true;
    }
    if (typeof SWFAddress['onChange'] == 'function' || _dispatcher.hasEventListener('change')) {
        clearInterval(_interval);
        SWFAddress._init = true;
        SWFAddress._setValueInit(_getValue());
    }
}

看来是在没有增加“onChange”事件侦听的话是不能正常工作的了。

private static function _initialize():Boolean {
    if (_availability) {
        ExternalInterface.addCallback('getSWFAddressValue',
        function():String {return _value});
        ExternalInterface.addCallback('setSWFAddressValue',
        _setValue);
    }
    _interval = setInterval(_check, 10);
    return true;
}

这里”setInterval(_check, 10)“调用了_check()方法,如果没有“onChange”事件侦听就会被认为没初始化。

收藏与分享

July 16th, 2008

Blog升级到2.6

No Comments, 程序开发, by chris.

  今天晚上抽个空吧博客升级到了2.6。速度应该还算快的了。WordPress没什么好,就是简单,连升级也是一样的简单。没得说。

收藏与分享

July 11th, 2008

Blog终于又回来了

No Comments, 程序开发, by chris.

  空间在下线三天后终于又能访问了,一开始说是空间要升级,后来又说是要接受检查,唉,也不知道到底是什么原因就直接被停了,连封Email也没有,也不说明要停多长时间。服务质量有待提高啊。之前买另一家公司的空间也是一样,只是服务态度上好了点。看来国内的空间实在是让人不放心啊,最近,申请的Paypal也通过认证了,以后看上好的国外的空间还是买国外的空间或许会好点。

收藏与分享

July 6th, 2008

博客换皮肤了

2 Comments, 程序开发, by chris.

  已经用了好一阵子的苹果的皮肤了,有点审美疲劳了,昨天晚上给同学要了一个付费的皮肤,一看,竟然还有Flash,再看文档,好复杂的配置哦,太烦了,一气之下又不想换了。

  可惜半夜我被热醒了,这两天这南京的温度高,我这房间还没空调,即便睡地上也没一丝凉意,于是,又起来上网找皮肤。跑到官方的网站还有各个大大小小的皮肤网站找了个遍,就没看中一个真正满意的,唉,看来我还是个相当挑剔的人,最后,看到了现在的这款皮肤,觉得还可以,下下来改了一下就放上来了。

收藏与分享

  今天在使用Audition(Cool Edit)制作循环音乐放入Flash里作为背景音乐时发现一个问题,我导出的音乐文件格式为mp3,每次制作完时听效果是正常的,不过重新打开这个mp3文件发现尾部总是有改动,不能循环起来。

  其实问题出在文件格式上,在将格式改为.wav格式后再做循环就正常了。另外,如果要将.wav格式放入Flash中,可能会出现导入错误的问题,这是因为WAV格式的文件是有多种压缩算法的,WINDOWS版本的FLASH其实只是支持标准的PCM WAV格式的WAV文件;不支持的WAV文件的格式有以下几种:CCITT A-Law, CCITT u-Law, DSP Group TrueSpeech(TM), elemediaTM AX2400P music codec, IMA ADPCM, Microsoft ADPCM, MSN Audio, and GSM 6.10. 所以只能选择保存成这种格式的wav文件。

收藏与分享

这两个搞了一个flash,因为项目比较大,所以我想将一些较为基础的类的代码打到一个包里,本以为很简单的事情,搞了半天也没搞出来。我是用的flex 3做的开发。

问题是,如果将所有的类放到一个 actionscript project 中,Flex 在编译时,事实上并不会将本项目文件夹下的所有类代码都包进来,它似乎只关心它要用到的一些代码。这一点跟VS是完全不一样的。我想或许哪边有这一个选项的设置,可惜找了半天也没找到,试着用flash编译项目,也是一个样的。晕死…

actionscript project 搞不定就重搞了一个 flex library project, 不过发现也是有问题的,我是想让它生成.swf的文件,不过flex library project默认是在bin文件夹下生成一个.swc的文件。得解压了才会出现一个library.swf,这还是不能满足我的要求。后来发现可以通过设置一些编译的参数来达到目的,不过,文件名还是叫library.swf,只是不是将它跟另一个文件打包成一个.swc文件,而是放到一个目录里。唉,也算是基本达到目的了吧。至于设置编译参数的参考,可以到 http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_04.html 上看看,而事实上我倒是没有用这个方法,太烦,这就是我最讨厌的非微软阵营的一大特点,很多简单的事确复杂化了。我用了ant来编译的。具体方法参考 http://www.jakehilton.com/?q=node/27 ,只是这篇文章里的相应的编译参数要更改。下面代码是我的大致的设置:

<?xml version="1.0" encoding="UTF-8"?>
<project name="RpgGame ClientApp Build" default="Compile ClientApp Swf" basedir=".">
  <property name="compc" location="C:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.0.0\bin\compc.exe"/>
  <target name="Compile ClientApp Swf">
    <exec executable="${compc}" dir="." failonerror="false">
      <arg line="-source-path ."/>
      <arg line="-directory=true"/>
      <arg line="-output ../WebSite/libraries/app"/>
      <arg line="-include-sources ."/>
    </exec>
  </target>
</project>
收藏与分享

June 29th, 2008

关于游戏通信协议

No Comments, 程序开发, by chris.

  最近在准备做一个类似梦幻家园(http://www.1001m.com)的项目,在这之前也有想过做多人在线游戏的问题,其中一个就是游戏所使用的通信协议,游戏通信协议要考虑游戏通信的数据量之大以及通信延时,防止玩家作弊等很多问题。所以还是很难设计的,初看了一下梦幻家园的通信好像很多地方都是用的XML进行通信的,这个对于及时网络游戏来说,数据量事实上还是很大的,并不是一个好的做法,不过XML当然也有它的好处,几乎可以表示任何的数据类型。另外,之前用过的国外的一个叫smartfoxserver的Flash游戏服务器,里面也是用XML和JSON。

  现在我还没有决定服务器是自己写还是用smartfoxserver,如果用smartfoxserver的话,看来也只能用XML了。不过,我还是找到了一个介绍网络游戏的通信协议设计的。http://3web.dkm.cz/myie2cz/test/ogp.htm似乎是一个开源的游戏通信协议,不过,看他最后更新好像还是2004年,时间长了,也不知道发生什么变故了。不过,这个还是可以参考的。而且他的源码里还有一个php的客户端与一个C的服务器端的简单实现。

收藏与分享

June 29th, 2008

最近还真忙

No Comments, 程序开发, by chris.

闲了一阵子,现在又要忙起来了。算了一下最近要做的事。

1.做一个像梦幻家园这样的在线多人的游戏,应该要比这个还好吧,这个工作还不简单。

2.学习XNA,以及3DS MAX,这个嘛,可也不是一天两天的事呀。

3.得考虑一个flash的网站框架.

4.这两天又申请了两个域名xnares.com,forjiankang.com,本想做两个网站玩玩,可惜,暂时是没时间了,先搁浅吧。

看来以后得好好规划时间的。

收藏与分享

June 22nd, 2008

Flash里的3D

No Comments, ActionScript, Flash, by chris.

一直觉得Flash里的假3D是很丑的,不过,看了http://www.roxik.com才发现,假3D也能这么好。只可惜这个引擎没开源呀。听说Flash CS4里会支持3D,效果也不知道会怎样。不过说到底,假的就是假的,不知道就Virtools那样的效果Flash哪一天才能达到。

唉,微软的silverlight也不听说有这方面的动向。

收藏与分享

今天,一个以前的同事说要做一个旅游的网站,让我帮忙想个域名,唉,想了大半天,想到了很多我认为还是不错的域名,可惜想到一个一个就被注册掉了。最后想出了一个呆头驴,可能也是受到跟我住一起的这们兄弟他们现在公司途牛的影响吧。不过嘛,我这位以前的同事嫌这域名太长了,说是要找一个短点了,我自己觉得这个域名还不错,一来呆头驴可以和时下流行的驴友这个词给联系到一起,另外,这个词还有一个谐音“带头旅“,再者,作为一个网站,还可以设计一个很可爱的呆头驴作为形象。不过嘛,看来我用到这个域名的机会不大了,实在没时间搞这些玩艺,虽然听我这位同事的话,现在做网站是很赚钱的。要是有人要,倒是可以考虑卖。

收藏与分享