第一次提交

This commit is contained in:
dengtongyu committed 2018-12-03 17:31:53 +08:00
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){
}
}
}
}