第一次提交
This commit is contained in:
commit
8121362a03
4412 files changed
+1091845
No files matched your search
@@ -0,0 +1,307 @@
|
||||
package com.yy.vip.pk.yyshow
|
||||
{
|
||||
import com.yy.vip.pk.event.JsCallEvent;
|
||||
import com.yy.vip.pk.service.JsService;
|
||||
import com.yy.vip.pk.util.DeposeUtil;
|
||||
import com.yy.vip.pk.util.UrlUtil;
|
||||
|
||||
import flash.display.Loader;
|
||||
import flash.display.MovieClip;
|
||||
import flash.display.Sprite;
|
||||
import flash.events.Event;
|
||||
import flash.events.IOErrorEvent;
|
||||
import flash.events.MouseEvent;
|
||||
import flash.events.SecurityErrorEvent;
|
||||
import flash.net.URLRequest;
|
||||
import flash.net.navigateToURL;
|
||||
import flash.system.Security;
|
||||
import flash.text.TextField;
|
||||
import flash.utils.clearTimeout;
|
||||
import flash.utils.setTimeout;
|
||||
|
||||
[SWF(width=260,height=75,frameRate=15)]
|
||||
public class YYShowBrocast extends MovieClip
|
||||
{
|
||||
private var it : uint
|
||||
private var logoLoader :Loader;
|
||||
private var bgLoader:Loader;
|
||||
private var bgSprite:Sprite;
|
||||
private var label1:TextField;
|
||||
private var label2:TextField;
|
||||
private var iconLoader:Loader;
|
||||
private var label3:TextField;
|
||||
private var label4:TextField;
|
||||
private var data:Object;
|
||||
private var mainSprite:Sprite;
|
||||
private var logoSprite:Sprite;
|
||||
private var bgLoaderUI:Sprite;
|
||||
private var iconLoaderUI:Sprite;
|
||||
public function YYShowBrocast()
|
||||
{
|
||||
Security.allowDomain("*");
|
||||
Security.allowInsecureDomain("*");
|
||||
if(stage)
|
||||
initHandler();
|
||||
else
|
||||
this.addEventListener(Event.ADDED_TO_STAGE,this.initHandler);
|
||||
}
|
||||
protected function initHandler(event:Event = null):void
|
||||
{
|
||||
this.visible = false;
|
||||
bgSprite = new Sprite();
|
||||
this.addChild(bgSprite);
|
||||
|
||||
logoSprite = new Sprite();
|
||||
bgSprite.addChild(logoSprite);
|
||||
|
||||
mainSprite = new Sprite();
|
||||
mainSprite.x = 65;
|
||||
bgSprite.addChild(mainSprite);
|
||||
|
||||
label1 = new TextField();
|
||||
label2 = new TextField();
|
||||
|
||||
|
||||
label3 = new TextField();
|
||||
label4 = new TextField();
|
||||
|
||||
mainSprite.addChild(label1);
|
||||
mainSprite.addChild(label2);
|
||||
|
||||
mainSprite.addChild(label3);
|
||||
mainSprite.addChild(label4);
|
||||
|
||||
this.addEventListener(MouseEvent.CLICK,clickHandler);
|
||||
|
||||
JsService.getInstance().addEventListener(JsCallEvent.CALL_BY_MAIN_SWF,callByMainSwfHandler);
|
||||
|
||||
JsService.getInstance().start(JsService.PUBLIC_TOP_YYSHOW_SWF_ID);
|
||||
|
||||
try{
|
||||
this.stage.addEventListener(MouseEvent.RIGHT_CLICK,rightClickHandler);
|
||||
}
|
||||
catch(e:Error)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
protected function rightClickHandler(event:MouseEvent):void
|
||||
{
|
||||
event.stopImmediatePropagation();
|
||||
}
|
||||
protected function clickHandler(event:MouseEvent):void
|
||||
{
|
||||
if(this.data && this.data.url)
|
||||
JsService.getInstance().callMainSwf(JsService.CMD_SHOW_ETIT_NOTICE_PANEL,JsService.PUBLIC_TOP_YYSHOW_SWF_ID,this.data.url);
|
||||
}
|
||||
|
||||
protected function callByMainSwfHandler(event:JsCallEvent):void
|
||||
{
|
||||
var data:Object = event.data;
|
||||
this.data = data;
|
||||
if(event.cmd == JsService.CMD_BROCAST_YYSHOW)
|
||||
{
|
||||
this.visible = false;
|
||||
bgSprite.graphics.clear();
|
||||
bgSprite.graphics.beginFill(data.bgColor,1);
|
||||
bgSprite.graphics.drawRect(0,0,260,75);
|
||||
bgSprite.graphics.endFill();
|
||||
|
||||
clearLoader();
|
||||
|
||||
var bgUrl:String = data.bgUrl;
|
||||
|
||||
if(!bgLoaderUI)
|
||||
{
|
||||
bgLoaderUI = new Sprite()
|
||||
bgSprite.addChildAt(bgLoaderUI,0);
|
||||
}
|
||||
if(!bgLoader){
|
||||
bgLoader = new Loader();
|
||||
bgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,bgCompleteHandler)
|
||||
bgLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
bgLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
bgLoaderUI.addChild(bgLoader);
|
||||
}
|
||||
if(bgUrl.indexOf("http")!=-1 && (bgUrl.indexOf(".png")!=-1 || bgUrl.indexOf(".jpg")!=-1))
|
||||
bgLoader.load(new URLRequest(UrlUtil.checkHttps(bgUrl)));
|
||||
label1.width = 80;
|
||||
label1.x = 15;
|
||||
label1.y = 10;
|
||||
label1.textColor = uint(data.msgInfo.tip1Color);
|
||||
label1.text = data.msgInfo.tip1;
|
||||
|
||||
if(!iconLoaderUI)
|
||||
{
|
||||
iconLoaderUI = new Sprite()
|
||||
mainSprite.addChild(iconLoaderUI);
|
||||
}
|
||||
if(!iconLoader){
|
||||
iconLoader = new Loader();
|
||||
iconLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,iconLoaderComplete);
|
||||
iconLoaderUI.addChild(iconLoader);
|
||||
}
|
||||
|
||||
iconLoaderUI.x = label1.x + label1.textWidth + 20;
|
||||
iconLoaderUI.y = 10;
|
||||
if(data.msgInfo.img )
|
||||
{
|
||||
var iconUrl:String = data.msgInfo.img;
|
||||
if(iconUrl.indexOf("http")!=-1 && (iconUrl.indexOf(".png")!=-1 || iconUrl.indexOf(".jpg")!=-1))
|
||||
iconLoader.load(new URLRequest(UrlUtil.checkHttps(iconUrl)));
|
||||
}
|
||||
label2.width = 90;
|
||||
label2.x = iconLoaderUI.x + 30;
|
||||
label2.y = 10;
|
||||
label2.textColor = uint(data.msgInfo.nickColor);
|
||||
label2.text = data.msgInfo.nick;
|
||||
|
||||
label3.width = 90;
|
||||
label3.x = 15;
|
||||
label3.y = 36;
|
||||
label3.textColor = uint(data.msgInfo.roleNameColor);
|
||||
label3.text = data.msgInfo.roleName;
|
||||
|
||||
label4.width = 90;
|
||||
label4.x = label3.x + label3.textWidth + 5;
|
||||
label4.y = 36;
|
||||
label4.textColor = uint(data.msgInfo.roleTipColor);
|
||||
label4.text = data.msgInfo.roleTip;
|
||||
|
||||
if(data.logo)
|
||||
{
|
||||
if(!logoLoader)
|
||||
{
|
||||
logoLoader = new Loader();
|
||||
logoLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,logoLoaderCompleteHandler);
|
||||
}
|
||||
if(data.logo.indexOf("http")!=-1 && (data.logo.indexOf(".png")!=-1 || data.logo.indexOf(".jpg")!=-1))
|
||||
logoLoader.load(new URLRequest(UrlUtil.checkHttps(data.logo)));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
protected function logoLoaderCompleteHandler(event:Event):void
|
||||
{
|
||||
if(logoLoader && logoSprite)
|
||||
{
|
||||
logoLoader.x = 3;
|
||||
logoLoader.y = 3;
|
||||
logoLoader.scaleX = logoLoader.scaleY = 0.85;
|
||||
logoSprite.addChild(logoLoader);
|
||||
}
|
||||
if(logoLoader && logoLoader.contentLoaderInfo)
|
||||
{
|
||||
logoLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,logoLoaderCompleteHandler);
|
||||
}
|
||||
}
|
||||
|
||||
protected function iconLoaderComplete(event:Event):void
|
||||
{
|
||||
if(iconLoaderUI && iconLoader)
|
||||
iconLoaderUI.addChild(iconLoader);
|
||||
|
||||
if(iconLoader)
|
||||
{
|
||||
iconLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,iconLoaderComplete);
|
||||
}
|
||||
}
|
||||
|
||||
protected function bgCompleteHandler(event:Event):void
|
||||
{
|
||||
if(!bgLoader)
|
||||
return;
|
||||
|
||||
bgLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,bgCompleteHandler)
|
||||
bgLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
bgLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
|
||||
this.mouseEnabled = this.buttonMode = this.useHandCursor = this.data.url?true:false;
|
||||
|
||||
JsService.getInstance().showYYShowDiv();
|
||||
this.visible = true;
|
||||
try{
|
||||
var contentWidth:Number = bgLoader.contentLoaderInfo.width;
|
||||
var contentHeight:Number = bgLoader.contentLoaderInfo.height;
|
||||
|
||||
var rx:Number = 260/ contentWidth;
|
||||
var ry:Number = 75 / contentHeight;
|
||||
bgLoaderUI.scaleY = ry;
|
||||
bgLoaderUI.scaleX = rx;
|
||||
clearTimeout(it);
|
||||
it = setTimeout(function ():void{
|
||||
depose();
|
||||
}
|
||||
,data.showTime * 1000);
|
||||
}
|
||||
catch(e:Error){
|
||||
depose();
|
||||
}
|
||||
}
|
||||
private function depose():void
|
||||
{
|
||||
clearTimeout(it);
|
||||
clearLoader();
|
||||
JsService.getInstance().hideYYShowDiv();
|
||||
}
|
||||
protected function ioErrorHandler(event:Event):void
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private function clearLoader():void
|
||||
{
|
||||
try{
|
||||
|
||||
this.visible = false;
|
||||
|
||||
clearTimeout(it);
|
||||
|
||||
this.mouseEnabled = this.buttonMode = this.useHandCursor = false;
|
||||
|
||||
DeposeUtil.removeFromStage(bgLoader);
|
||||
if(bgLoader)
|
||||
{
|
||||
|
||||
bgLoader.unloadAndStop(true);
|
||||
bgLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,bgCompleteHandler)
|
||||
bgLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
bgLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
}
|
||||
bgLoader = null;
|
||||
|
||||
DeposeUtil.removeFromStage(iconLoader);
|
||||
if(iconLoader)
|
||||
{
|
||||
iconLoader.unloadAndStop(true);
|
||||
iconLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
iconLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,iconLoaderComplete);
|
||||
}
|
||||
iconLoader = null;
|
||||
|
||||
DeposeUtil.removeFromStage(logoLoader);
|
||||
if(logoLoader)
|
||||
{
|
||||
logoLoader.unloadAndStop(true);
|
||||
logoLoader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
|
||||
logoLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,logoLoaderCompleteHandler);
|
||||
}
|
||||
logoLoader = null;
|
||||
}
|
||||
catch(e:Error){
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user