当前位置:酷酷问答>百科知识>flixel如何替换失焦图片

flixel如何替换失焦图片

2024-12-21 04:22:24 编辑:zane 浏览量:504

flixel如何替换失焦图片

的有关信息介绍如下:

flixel如何替换失焦图片

我们都知道flixel引擎有失焦管理系统,当焦点脱离flash后会暂停,画面中会被灰色的盖住。但有时会觉得这样比较丑,下面将会告诉你如何替换这个失焦图片。

看下源码可以知道失焦的功能是在FlxGame中一个createFocusScreen实现的,而我们的主类是继承于这个FlxGame的。

我们在主文档类中重写这个createFocusScreen方法

这里给一个我写的例子作为参考

上面的代码:

override protected function createFocusScreen():void

{

var gfx:Graphics = _focus.graphics;

var screenWidth:uint = FlxG.width*FlxCamera.defaultZoom;

var screenHeight:uint = FlxG.height*FlxCamera.defaultZoom;

var bg:Bitmap = new ImgBlur();

bg.scaleX = int(helper/10);

if(bg.scaleX < 1)

bg.scaleX = 1;

bg.scaleY = bg.scaleX;

bg.x -= bg.scaleX;

_focus.addChild(bg);

var halfWidth:uint = screenWidth/2;

var halfHeight:uint = screenHeight/2;

var helper:uint = FlxU.min(halfWidth,halfHeight)/3;

gfx.moveTo(halfWidth-helper,halfHeight-helper);

gfx.beginFill(0x999999,1);

gfx.lineTo(halfWidth+helper,halfHeight);

gfx.lineTo(halfWidth-helper,halfHeight+helper);

gfx.lineTo(halfWidth-helper,halfHeight-helper);

gfx.endFill();

var logo:Bitmap = new ImgLogo();

logo.scaleX = int(helper/10);

if(logo.scaleX < 1)

logo.scaleX = 1;

logo.scaleY = logo.scaleX;

logo.x -= logo.scaleX;

logo.alpha = 0.35;

_focus.addChild(logo);

addChild(_focus);

}

版权声明:文章由 酷酷问答 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.kukuwd.com/article/164973.html
热门文章