X-Intend[超级打算]
每个人都有自己的想法,哪怕仅仅一瞬间~!

[原]关于股子系统的优化

KingFo 于 2008-06-25 00:18:58 发表  原创
订阅: 请点击这里获取订阅地址
引用: 请点击这里获取引用通告地址 (UTF-8)
上一篇 < [原]关于股子系统的优化 > 下一篇

参考:
DiceClass
原作者:
hexagonstar : http://www.hexagonstar.com/
详情:
http://bbs.actionscript3.cn/thread-2044-1-1.html
程序结构:
Dice+ArrayUtil+NumberUtil,全静态类
个人评论:
NumberUtil内数值方面的是最值得借鉴的部分。

由于目前本人Dice 需要应用于DND System中,所以改变了下结构和随机算法(目的在于工厂化生产Dice,以及Dice随机分布算法抽出方便以后采用不同的随机分布算法。)
 

  1. //系统结构伪码  
  2. Dice implements IDice;  
  3. RandomSystem implements IRandomSystem  
  4. Random48 extends RandomSystem;  
  5.  
  6. interface IRandomSystem {  
  7.     function random(min:Number, max:Number):Number;  
  8.     function randomByRound(min:Number, max:Number,round:int):Array;  
  9. }  
  10.  
  11. interface IDice  {  
  12.     function get sided():int;  
  13.     function roll(round:int, randomSystem:IRandomSystem):DiceArrayList;  
  14.     function toString():String   
  15. }  
  16.  
  17. class DiceArrayList extends com.xintend.as3.dnd.core.ArrayCollection {         
  18.     public function DiceArrayList(data:Array ) {              
  19.     }  
  20.           
  21.     public function get average():int {     }  
  22.     public function get max():int {     }  
  23.     public function get min():int {     }  
  24.     public function get sum():int {     }  
  25.           
  26.     protected function verifyInt():void {}  
  27. }  
  28.          

(测试类):
 

  1. package {  
  2.       
  3.     import com.xintend.as3.dnd.base.dice.Dice;  
  4.     import com.xintend.as3.dnd.util.Random48;  
  5.     import com.xintend.as3.dnd.util.RandomSystem;  
  6.     import flash.display.Sprite;  
  7.       
  8.     public class Main extends Sprite    {  
  9.         public function Main(){           
  10.             var d1:Dice = new Dice(4);  
  11.             trace(d1.roll(100,new Random48()))  
  12.             trace(d1.roll(100,new RandomSystem()))  
  13.         }  
  14.     }  

测试图(结构在output窗口):


再次感谢hexagonstar.com开源的DiceClass中的48位线性同余算法

被阅 421 次, 0投一票
    1 / 0 / 0 | « 1 » |
    1 / 0 / 0 | « 1 » |
  • 看完了要说点啥么?
  • 昵称 (不填说不了话)
  • 信箱地址 (不会被公开,但是不填也说不了话)
  • 网址 (这个不填也成)

Google 网上论坛
订阅 XIntend
电子邮件:
访问此论坛

文章分类

站点统计

  • 文章总数: 87 篇
  • 评论总数: 6 条
  • 附件总数: 53 个
  • 留言总数: 0 份
  • 建站日期: 2008-1-1
  • 访问总数: 96478 人次

最新留言

赞助商

友情链接

Design by Free CSS Templates & TiSkin, Powered by Roclog v3.2.13

滇ICP备05000389号, Copyright © 2007 X-Intend[超级打算]. All rights reserved.