- 积分
- 1284
- 注册时间
- 2014-12-29
- 最后登录
- 2016-11-14
- 在线时间
- 17 小时
- 威望
- 11
- 贡献
- 0
- 金币
- 359
- 钢镚
- 20
- 交易凭证
- 0
- 分享
- 0
- 精华
- 0
- 帖子
- 19
- 主题
- 18
TA的每日心情 | 慵懒 2015-4-16 10:25 |
---|
签到天数: 8 天 [LV.3]偶尔看看II
版主
- 威望
- 11
- 贡献
- 0
- 金币
- 359
- 钢镚
- 20
|
本帖最后由 yaoyuan0701 于 2015-9-22 20:58 编辑
大家经常玩网页游戏,里面肯定有各种各样的血值,比如你砍怪一刀,怪头顶会出一个-999的字样,那么这种血值是怎么表现出来呢,下面介绍一种最常见的表现方式:评数字。
只准备0-9数字素材即可,那么就可以随便组成任意数了。
把素材发布swc 嵌入到项目里的lib里面,拼数字其实就是评像素。
像素的复制在下面函数
- private function showAllScoreNum1(num:MovieClip,score:int):Sprite
- {
- var txtWidth:Number = num.width;
- var txtHeight:Number = num.height;
- var mBit:BitmapData = new BitmapData(num.width,num.height,true,0xffffff);
- mBit.draw(num);
- var arr:Array = String(score).split("");
- var rect:Rectangle;
- var sp:Sprite = new Sprite();
- for(var s:int = 0;s<arr.length;s++)
- {
- var j:int = (int(arr[s]));
- rect= new Rectangle(txtWidth/10*(j),0,txtWidth/10,txtHeight);
- var pt:Point = new Point(0,0);
- var bmd:BitmapData = new BitmapData(txtWidth/10,txtHeight,true,0x00000000);
- bmd.copyPixels(mBit, rect, pt);
- var bitmap:Bitmap = new Bitmap(bmd);
- bitmap.x = (txtWidth/10)*s;
- bitmap.smoothing = true;
- sp.addChild(bitmap);
- }
- sp.x = stage.stageWidth/2;
- sp.y = stage.stageHeight/2;
- return sp;
- }
复制代码- </blockquote></div>
- 道理很简单,先把图片分出10个像素 0-9 然后根本传入参数显示就行了。
- 返回的sp就是显示的容器。
- <div class="blockcode"><blockquote>this.addChild(showAllScoreNum1(new blood_mc,97642135));
复制代码
如上图,我显示出了97642135的数值。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
评分
-
查看全部评分
|