--- /dev/null
+//■ABC File MinorVersion:16 , MajorVersion:46
+
+//INT cnt=143
+//UINT cnt=1
+//DOUBLE cnt=32
+//STRING cnt=6667
+//NAMESPACES cnt=1166
+//NAMESPACE_SETS cnt=279
+//MULTINAMES cnt=7959
+//Methods cnt=5427
+//METADATA cnt=0
+//INTERFACE cnt=465
+//CLASS cnt=465
+//SCRIPT cnt=396
+
+//■script000■
+
+package jp.nicovideo.ext{
+
+ import jp.nicovideo.ext.config.IThumbConfig
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+
+ //■class(instance)_index:0
+ public interface IThumbPlayer
+ {
+ //static constructor
+ public static function IThumbPlayer$cinit()
+ { //MethodID:0, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function setThumbWatchVars(hug1:IThumbConfig, hug2:NicoFlashVars):void; //MethodID:1, dispID:0
+
+ function get initialized():Boolean; //MethodID:2, dispID:0
+
+ function playThumbPlayer():void; //MethodID:3, dispID:0
+
+ function pauseThumbPlayer():void; //MethodID:4, dispID:0
+
+ function set onChangedVideoStatus(hug1:Function):void; //MethodID:5, dispID:0
+
+ function get videoPlayerStatus():String; //MethodID:6, dispID:0
+
+ //constructor
+ public function IThumbPlayer(); //MethodID:7, dispID:0
+ }
+}
+
+//■script001■
+
+package jp.nicovideo.nicoplayer{
+
+ import flash.display.DisplayObject
+ import flash.display.MovieClip
+ import flash.display.Sprite
+ import flash.display.StageAlign
+ import flash.display.StageScaleMode
+ import flash.errors.IOError
+ import flash.errors.IllegalOperationError
+ import flash.events.Event
+ import flash.events.TimerEvent
+ import flash.net.URLRequest
+ import flash.net.URLVariables
+ import flash.net.navigateToURL
+ import flash.system.Security
+ import flash.ui.ContextMenu
+ import flash.utils.Timer
+ import jp.nicovideo.ext.config.IThumbConfig
+ import jp.nicovideo.hiroba.HirobaConnectorClient
+ import jp.nicovideo.hiroba.IHirobaConnector
+ import jp.nicovideo.hiroba.events.HirobaErrorEvent
+ import jp.nicovideo.hiroba.events.HirobaEvent
+ import jp.nicovideo.hiroba.events.HirobaEventReferer
+ import jp.nicovideo.hiroba.models.HirobaMessageServerInfo
+ import jp.nicovideo.marquee.INicoMarqueePlayer
+ import jp.nicovideo.marquee.MarqueeClient
+ import jp.nicovideo.nicoplayer.app.ApplibarLoader
+ import jp.nicovideo.nicoplayer.config.DebugMode
+ import jp.nicovideo.nicoplayer.config.DefaultInitializer
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.config.getDebugMode
+ import jp.nicovideo.nicoplayer.external.ExternalClient
+ import jp.nicovideo.nicoplayer.hiroba.HirobaPlayer
+ import jp.nicovideo.nicoplayer.hiroba.events.HirobaErrorStatus
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.MyList
+ import jp.nicovideo.nicoplayer.models.PlayDelay
+ import jp.nicovideo.nicoplayer.models.PlayerConfig
+ import jp.nicovideo.nicoplayer.models.PlayerInfo
+ import jp.nicovideo.nicoplayer.models.PlayerVersion
+ import jp.nicovideo.nicoplayer.models.RelatedVideoList
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.StartVposConfig
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.VideoDetail
+ import jp.nicovideo.nicoplayer.models.VideoLoadGuardian
+ import jp.nicovideo.nicoplayer.models.api.BGMVideoInfo
+ import jp.nicovideo.nicoplayer.models.api.GetBGM
+ import jp.nicovideo.nicoplayer.models.api.GetChecklist
+ import jp.nicovideo.nicoplayer.models.api.GetFLV
+ import jp.nicovideo.nicoplayer.models.api.GetRelation
+ import jp.nicovideo.nicoplayer.models.api.GetSponsorInfo
+ import jp.nicovideo.nicoplayer.models.api.ICapturableVideoContainer
+ import jp.nicovideo.nicoplayer.models.api.IKeygen
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.nicoplayer.models.api.Jumper
+ import jp.nicovideo.nicoplayer.models.api.Keygen
+ import jp.nicovideo.nicoplayer.models.api.RegisterBGM
+ import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+ import jp.nicovideo.nicoplayer.models.comment.CommentList
+ import jp.nicovideo.nicoplayer.models.comment.CommentListPublicStatus
+ import jp.nicovideo.nicoplayer.models.comment.CommentPoolContainer
+ import jp.nicovideo.nicoplayer.models.comment.CommentRouter
+ import jp.nicovideo.nicoplayer.models.comment.CommentStorageEvents
+ import jp.nicovideo.nicoplayer.models.comment.ICommentList
+ import jp.nicovideo.nicoplayer.models.comment.LocalCommentList
+ import jp.nicovideo.nicoplayer.models.comment.OwnerCommentList
+ import jp.nicovideo.nicoplayer.models.comment.TimeMachine
+ import jp.nicovideo.nicoplayer.models.filter.ChannelReplacer
+ import jp.nicovideo.nicoplayer.models.filter.DeleteFilter
+ import jp.nicovideo.nicoplayer.models.filter.LockedComment
+ import jp.nicovideo.nicoplayer.models.filter.NGComment
+ import jp.nicovideo.nicoplayer.models.filter.NGInfo
+ import jp.nicovideo.nicoplayer.models.filter.NGResponseConstants
+ import jp.nicovideo.nicoplayer.models.filter.NGType
+ import jp.nicovideo.nicoplayer.models.filter.Replacer
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVarsInitializer
+ import jp.nicovideo.nicoplayer.models.flashvars.PlaylistFlashVars
+ import jp.nicovideo.nicoplayer.models.log.LogManager
+ import jp.nicovideo.nicoplayer.models.mylist.DefaultMylistAppender
+ import jp.nicovideo.nicoplayer.models.playlist.Playlist
+ import jp.nicovideo.nicoplayer.models.playlist.PlaylistController
+ import jp.nicovideo.nicoplayer.models.playlist.PlaylistErrorManager
+ import jp.nicovideo.nicoplayer.models.video.ChildVideoName
+ import jp.nicovideo.nicoplayer.models.video.FLVVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+ import jp.nicovideo.nicoplayer.models.video.SWFVideo
+ import jp.nicovideo.nicoplayer.models.video.VideoController
+ import jp.nicovideo.nicoplayer.models.video.VideoLoadWatcher
+ import jp.nicovideo.nicoplayer.models.video.VideoType
+ import jp.nicovideo.nicoplayer.models.video.VideoWrapper
+ import jp.nicovideo.nicoplayer.models.video.VposWatcher
+ import jp.nicovideo.nicoplayer.models.video.userSponsor.IUserSponsorVideo
+ import jp.nicovideo.nicoplayer.models.video.userSponsor.UserSponsorVideoClient
+ import jp.nicovideo.nicoplayer.plugin.NicoPluginClient
+ import jp.nicovideo.nicoplayer.remocon.RemoconClient
+ import jp.nicovideo.nicoplayer.remocon.RemoconFullScreenKeeper
+ import jp.nicovideo.nicoplayer.remocon.RemoconNotifier
+ import jp.nicovideo.nicoplayer.remocon.RemoconPlayerStateObserver
+ import jp.nicovideo.nicoplayer.remocon.RemoconReceiver
+ import jp.nicovideo.nicoplayer.remocon.RemoconState
+ import jp.nicovideo.nicoplayer.remocon.method.defineRemoconMethods
+ import jp.nicovideo.nicoplayer.storages.CommentStorage
+ import jp.nicovideo.nicoplayer.storages.CommentStorageError
+ import jp.nicovideo.nicoplayer.storages.ICommentStorage
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.tpls.INicoViewController
+ import jp.nicovideo.nicoplayer.tpls.NicoViewControllerClient
+ import jp.nicovideo.nicoplayer.tpls.shutter.AudioShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.CommentShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.ControllerShutter
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+ import jp.nicovideo.nicoplayer.videoender.VideoenderTesterConfig
+ import jp.nicovideo.nicoplayer.views.JumpMessageLayer
+ import jp.nicovideo.nicoplayer.views.VideoLayerConstants
+ import jp.nicovideo.nicoplayer.views.VideoLayerManager
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayer
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayerID
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayerView
+ import jp.nicovideo.nicoplayer.views.comment.CommentViewTransformer
+ import jp.nicovideo.nicoplayer.views.framerate.FrameRateBooster
+ import jp.nicovideo.nicoscript.INicoSPlayer
+ import jp.nicovideo.nicoscript.NicoSClient
+ import jp.nicovideo.nicoscript.NicoSConstants
+ import jp.nicovideo.nicoscript.macro.parsers.IMacroParserResult
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.api.APICacheProxy
+ import jp.nicovideo.util.events.EventBarrier
+ import jp.nicovideo.util.events.EventChunk
+ import jp.nicovideo.util.events.EventPipe
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.EventSequence
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.external.JSConnector
+ import jp.nicovideo.util.loka.Loka
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:1
+ public class NicoPlayer extends Sprite implements IThumbPlayer
+ {
+ //static constructor
+ public static function NicoPlayer$cinit()
+ { //MethodID:9, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 54
+ DEBUG_MODE = getDebugMode();
+ DEBUG_MODE_EXT = ((DEBUG_MODE == DebugMode.NON) ? DebugMode.NON : DebugMode.EXTDEV);
+ }
+
+ //static variables/etc.
+ private static const DEBUG_MODE:uint; //slotID:1
+ private static const DEBUG_MODE_EXT:uint; //slotID:2
+
+ //constructor
+ public function NicoPlayer()
+ { //MethodID:10, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 137
+ this.commentListContainer = {};
+ this.systemMessage = SystemMessage.instance;
+ this.nicoViewControllerClient = new NicoViewControllerClient();
+ this.pluginClient = new NicoPluginClient();
+ this._playlistSequences = [];
+
+ super();
+ Security.allowDomain("*");
+
+ this.isThumbWatchMode = (loaderInfo.parameters[this._IS_THUMBWATCH_PARAM] == "1");
+ this.configure = new NicoConfig();
+ Loka.instance.debug = true;
+
+ if(this.isThumbWatchMode) return;
+
+ if(loaderInfo.parameters[this._PLAYLIST_ID]){
+ this.initializePlaylistPlayer();
+
+ return;
+ }
+
+ this.initializeWatchPlayer();
+ }
+
+ //variables/etc.
+ private const _IS_THUMBWATCH_PARAM:String = "thumbWatch"; //slotID:0
+ private const _PLAYLIST_ID:String = "playlistId"; //slotID:0
+ private var getFLV:GetFLV; //slotID:0
+ private var flashVars:NicoFlashVars; //slotID:0
+ private var playlistFlashVars:PlaylistFlashVars; //slotID:0
+ private var playerConfig:IPlayerConfig; //slotID:0
+ private var video:VideoWrapper; //slotID:0
+ private var commentListContainer:Object; //slotID:0
+ private var mainCommentListName:String = "commentlist:main"; //slotID:0
+ private var commentList:CommentList; //slotID:0
+ private var ownerCommentList:OwnerCommentList; //slotID:0
+ private var privateCommentList:CommentList; //slotID:0
+ private var nicoSCommentList:CommentList; //slotID:0
+ private var localCommentList:LocalCommentList; //slotID:0
+ private var systemMessage:SystemMessage; //slotID:0
+ private var relatedList:RelatedVideoList; //slotID:0
+ private var ngComment:NGComment; //slotID:0
+ private var lockedComment:LockedComment; //slotID:0
+ private var replacer:Replacer; //slotID:0
+ private var playerVersion:PlayerVersion; //slotID:0
+ private var playerInfo:PlayerInfo; //slotID:0
+ private var timeMachine:TimeMachine; //slotID:0
+ private var deleteFilter:DeleteFilter; //slotID:0
+ private var channelReplacer:ChannelReplacer; //slotID:0
+ private var videoLoadGuardian:VideoLoadGuardian; //slotID:0
+ private var getChecklist:GetChecklist; //slotID:0
+ private var myList:MyList; //slotID:0
+ private var playlist:Playlist; //slotID:0
+ private var initializeInfo:InitializeInfo; //slotID:0
+ private var _startVposConfig:StartVposConfig; //slotID:0
+ private var commentLayerView:CommentLayerView; //slotID:0
+ private var commentLayer:CommentLayer; //slotID:0
+ private var commentViewTransformer:CommentViewTransformer; //slotID:0
+ private var commentRouter:CommentRouter; //slotID:0
+ private var videoLayerManager:VideoLayerManager; //slotID:0
+ private var videoController:VideoController; //slotID:0
+ private var jumpMsgLayer:JumpMessageLayer; //slotID:0
+ private var nicoViewController:INicoViewController; //slotID:0
+ private var nicoViewControllerClient:NicoViewControllerClient; //slotID:0
+ private var vposWatcher:VposWatcher; //slotID:0
+ private var commentShutter:ControllerShutter; //slotID:0
+ private var audioShutter:ControllerShutter; //slotID:0
+ private var playlistController:PlaylistController; //slotID:0
+ private var frameRateBooster:FrameRateBooster; //slotID:0
+ private var userSponsorVideo:IUserSponsorVideo; //slotID:0
+ private var hirobaPlayer:HirobaPlayer; //slotID:0
+ private var hirobaConnectorClient:HirobaConnectorClient; //slotID:0
+ private var _thumbConfig:IThumbConfig; //slotID:0
+ private var configure:NicoConfig; //slotID:0
+ private var keygen:IKeygen; //slotID:0
+ private var commentStorage:ICommentStorage; //slotID:0
+ private var jumper:Jumper; //slotID:0
+ private var nicosPlayer:INicoSPlayer; //slotID:0
+ private var nicosClient:NicoSClient; //slotID:0
+ private var nicosPipe:Function; //slotID:0
+ private var BGMVideoInfos:Array; //slotID:0
+ private var marqueeClient:MarqueeClient; //slotID:0
+ private var externalClient:ExternalClient; //slotID:0
+ private var isThumbWatchMode:Boolean = false; //slotID:0
+ private var _onChangedVideoStatus:Function; //slotID:0
+ private var _initialized:Boolean = false; //slotID:0
+ private var _wholeVideoLoadSucceeded:Boolean = false; //slotID:0
+ private var pluginClient:NicoPluginClient; //slotID:0
+ private var _playlistSequences:Array; //slotID:0
+ private var _isPlaylist:Boolean = false; //slotID:0
+ private var _videoLoadSucceeded:Boolean; //slotID:0
+ private var _isPlaylistPrepared:Boolean = false; //slotID:0
+ private var _shutterKeyLastClosed:int = -1; //slotID:0
+ private var _isShowedDialog:Boolean = false; //slotID:0
+ private var _logManager:LogManager; //slotID:0
+ private var _playerPageMyselfURL:String; //slotID:0
+ private var _videoenderTesterConfig:IVideoenderTesterConfig; //slotID:0
+
+ private function initializePlaylistPlayer():void
+ { //MethodID:12, LocalCount= 2 , MaxScope= 2, MaxStack= 19, CodeLength= 422
+ internal var menu:ContextMenu; //slotID:1
+ internal var vars:Object; //slotID:2
+ internal var seq:EventSequence; //slotID:3
+
+ this._isPlaylist = true;
+
+ DefaultInitializer.setConfig(this.configure, loaderInfo.url, DEBUG_MODE);
+
+ this.keygen = new Keygen(this.configure);
+ stage.align = StageAlign.TOP_LEFT;
+ stage.scaleMode = StageScaleMode.NO_SCALE;
+ menu = new ContextMenu();
+
+ menu.hideBuiltInItems();
+
+ menu.builtInItems.quality = true;
+ contextMenu = menu;
+ vars = loaderInfo.parameters;
+ this.flashVars = new NicoFlashVars();
+
+ NicoFlashVarsInitializer.setFlashVars(this.flashVars, vars);
+
+ this.playlistFlashVars = new PlaylistFlashVars(vars);
+ this._playerPageMyselfURL = function():String{ //MethodID:11, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 49
+ var hug1:* = {};
+
+ if(playlistFlashVars.playlistSort) hug1["sort"] = playlistFlashVars.playlistSort;
+
+ return StringUtils.joinQuery((configure.PLAYLIST_PAGE_BASE_URL + playlistFlashVars.playlistID), hug1);
+ }();
+ this.nicoViewControllerClient.nicoConfig = this.configure;
+
+ this.nicoViewControllerClient.flashVars = this.flashVars;
+ this.nicoViewControllerClient.playlistFlashVars = this.playlistFlashVars;
+ this.nicoViewControllerClient.playerPageMyselfURL = this._playerPageMyselfURL;
+
+ this.pluginClient.setProperty("nicoConfig", this.configure);
+ this.pluginClient.setProperty("flashVars", this.flashVars);
+
+ this.nicoViewControllerClient.pluginClient = this.pluginClient;
+ this._playlistSequences = [this._loadWatchAPI, this.loadVideoInfoAPI, this.initializeMyList, this.loadBGMVideoInfo, this.initializeCommentStorage, this.initializeGetChecklist, this.initializeHiroba, this.prepareVideo, this.prepareCommentLists, this.initializeModelAndView, this.initializeCommentRouter, this.initializeModelAndView4Watch, this.initializeLogger, this.loadConfirm, this.initializePlugin, this.initializeCommentLists, this._delayVideo, this._loadVideo];
+ seq = new EventSequence(this);
+
+ seq.push(this.initializePlayerVersion, this.initializePlayerInfo, this.initializeCrossSharedObjectSWF, this.initializeJSConnector, this.initializeJumper, this.createLogger, this.initializePlayerConfig, this.loadTemplateSWF, this.initializePlaylist, this.loadViewControllerSWF, this.loadNicoScriptSWF, this.checkInitializePlaylist, this.initializeNG, this.startPlaylist);
+ seq.next();
+ }
+
+ private function startPlaylist():void
+ { //MethodID:13, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 54
+ if(this.playlistController) this.playlistController.play(null, null, (this.playerConfig.autoPlay && !this.initializeInfo.isPremium));
+ EventSequence.current.next();
+ }
+
+ private function _loadWatchAPI():void
+ { //MethodID:15, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 96
+ internal var apiParams:Object; //slotID:1
+
+ this.nicoViewControllerClient.flashVars = null;
+ apiParams = {};
+
+ if(this._isPlaylist){
+ apiParams["mode"] = "playlist";
+ apiParams["playlist_token"] = this.playlist.token;
+ }
+
+ HTTPUtils.loadJSON(EventSequence.bind(function(hug1:Object):void{ //MethodID:14, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 245
+ var hug2:* = undefined;
+
+ if(!hug1 || (hug1.status == "ng")){
+ if(_isPlaylist){
+ if(hug1.status_message == PlaylistErrorManager.TOKEN_TIMEOUT){
+ if(playlistController.errorCount < 1){
+ playlistController.errorCount++;
+ playlistController.isInvalidToken = true;
+ playlistController.isVideoUpdating = false;
+
+ playlistController.play(playlistController.threadID);
+
+ return;
+ }
+ }
+
+ playlistController.onError(hug1.status_message.toString());
+
+ if(PlaylistErrorManager.TABWINDOW_ALERT_ERRORS.indexOf(hug1.status_message.toString()) != (-1)) playlistController.goNext(null, (playerConfig.autoPlay && !initializeInfo.isPremium));
+ }
+
+ return;
+ }
+
+ flashVars = new NicoFlashVars();
+
+ NicoFlashVarsInitializer.setFlashVars(flashVars, hug1);
+
+ if(_isPlaylist){
+ hug2 = playlist.getVideoInfo(playlistController.threadID);
+ hug2.flashVars = flashVars;
+ }
+
+ nicoViewControllerClient.flashVars = flashVars;
+
+ EventSequence.current.next();
+ }), (this.configure.WATCH_API_URL + this.playlistController.threadID), apiParams);
+ }
+
+ private function initializePlaylist():void
+ { //MethodID:18, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 96
+ internal var apiParams:Object; //slotID:1
+
+ apiParams = {};
+ apiParams["ts"] = new Date().time;
+ apiParams["playlist_token"] = this.playlistFlashVars.playlistToken;
+ this.playlist = new Playlist((this.configure.GET_PLAYLIST_URL + this.playlistFlashVars.playlistID), apiParams, this.playlistFlashVars.playlistSort, EventSequence.bind(function(hug1:Boolean):void{ //MethodID:17, LocalCount= 3 , MaxScope= 1, MaxStack= 11, CodeLength= 172
+ internal var success:Boolean; //slotID:1
+ internal var reset:Function; //slotID:2
+
+ reset = null;
+ success = hug1;
+ reset = function():void{ //MethodID:16, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 43
+ nicoViewControllerClient.getFLVData = null;
+ nicoViewControllerClient.videoController = null;
+ nicoViewControllerClient.commentRouter = null;
+ nicoViewControllerClient.relatedList = null;
+ nicoViewControllerClient.myList = null;
+ nicoViewControllerClient.defaultMylistAppender = null;
+ };
+
+ _isPlaylistPrepared = success;
+
+ if(!success){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ if(playlistController){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ initializeInfo = InitializeInfo.getInstance();
+ nicoViewControllerClient.initializeInfo = initializeInfo;
+
+ pluginClient.setProperty("initializeInfo", initializeInfo);
+
+ playlistController = new PlaylistController(_playlistSequences, initializePlaylist, playlist, playlistFlashVars, configure, playerInfo.playlistLimit, reset, playerConfig.isPlaylistRandomPlay, _playerPageMyselfURL);
+ nicoViewControllerClient.playlistController = playlistController;
+
+ EventSequence.current.next();
+ }));
+ }
+
+ private function checkInitializePlaylist():void
+ { //MethodID:19, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 105
+ var hug1:String = null;
+
+ if(!this.initializeInfo || !this.initializeInfo.userID){
+ this.systemMessage.informln(__MSG__("ユーザー情報の取得に失敗"));
+
+ hug1 = ("<p><b>" + __MSG__("ユーザー情報の取得に失敗しました。") + "</b></p>" + "<p>" + __MSG__("ログインしていない可能性があります。") + "</p>");
+
+ this.systemMessage.alert(hug1);
+
+ return;
+ }
+
+ EventSequence.current.next();
+ }
+
+ public function setThumbWatchVars(hug1:IThumbConfig, hug2:NicoFlashVars):void
+ { //MethodID:20, LocalCount= 4 , MaxScope= 1, MaxStack= 23, CodeLength= 234
+ if(DEBUG_MODE_EXT != DebugMode.NON){
+ DefaultInitializer.setConfig(this.configure, loaderInfo.url, DEBUG_MODE_EXT);
+ DefaultInitializer.setThumbDebugMode(this.configure);
+ }else{
+ DefaultInitializer.setConfig(this.configure, hug1.playerURL, DebugMode.NON);
+ }
+
+ this.keygen = new Keygen(this.configure);
+ this._thumbConfig = hug1;
+ this.flashVars = hug2;
+ this.nicoViewControllerClient.thumbConfig = hug1;
+ this.nicoViewControllerClient.nicoConfig = this.configure;
+ this.nicoViewControllerClient.flashVars = hug2;
+ var hug3:EventSequence = new EventSequence(this);
+
+ hug3.push(this.initializePlayerVersion, this.initializePlayerInfo, this.initializeCrossSharedObjectSWF, this.initializeJSConnector, this.initializeJumper, this.initializePlayerConfig, this._loadThumbViewSWF, this._loadThumbControllerSWF, this.loadNicoScriptSWF, this._loadThumbVideoInfo, this.loadBGMVideoInfo, this.initializeNG, this.initializeCommentStorage, this.prepareVideo, this.prepareCommentLists, this.initializeModelAndView, this._initializeModelAndViewThumbWatch, this.initializeSponsorVideo, this._delayVideo, this._loadVideo, this.initializeCommentLists, this.beginToPlayVideo);
+ hug3.next();
+ }
+
+ public function get initialized():Boolean
+ { //MethodID:21, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._initialized;
+ }
+
+ public function playThumbPlayer():void
+ { //MethodID:22, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 47
+ if(this.isThumbWatchMode && this.video && this.video.isInitialized) this.video.play();
+ }
+
+ public function pauseThumbPlayer():void
+ { //MethodID:23, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 47
+ if(this.isThumbWatchMode && this.video && this.video.isInitialized) this.video.stop();
+ }
+
+ public function set onChangedVideoStatus(hug1:Function):void
+ { //MethodID:25, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 57
+ internal var onChanged:Function; //slotID:1
+
+ onChanged = hug1;
+
+ if(!this.isThumbWatchMode) throw new IllegalOperationError("NicoPlayer.set onChangedVideoStatus: player is not in thumbwatch.");
+
+ if(onChanged == null) throw new ArgumentError("NicoPlayer.set onChangedVideoStatus: invalid parameters onChanged is null.");
+
+ this._onChangedVideoStatus = function(hug1:String):void{ //MethodID:24, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 24
+ if(!_initialized) _initialized = true;
+ onChanged(hug1);
+ };
+ }
+
+ public function get videoPlayerStatus():String
+ { //MethodID:26, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 49
+ if(this.isThumbWatchMode && this.video && this.video.isInitialized) return this.video.videoPlayerStatus;
+
+ return "";
+ }
+
+ private function initializeWatchPlayer():void
+ { //MethodID:27, LocalCount= 4 , MaxScope= 1, MaxStack= 31, CodeLength= 362
+ DefaultInitializer.setConfig(this.configure, loaderInfo.url, DEBUG_MODE);
+
+ this.keygen = new Keygen(this.configure);
+ stage.align = StageAlign.TOP_LEFT;
+ stage.scaleMode = StageScaleMode.NO_SCALE;
+ var hug1:ContextMenu = new ContextMenu();
+
+ hug1.hideBuiltInItems();
+
+ hug1.builtInItems.quality = true;
+ contextMenu = hug1;
+ var hug2:Object = loaderInfo.parameters;
+ this.flashVars = new NicoFlashVars();
+
+ NicoFlashVarsInitializer.setFlashVars(this.flashVars, hug2);
+
+ this._playerPageMyselfURL = (this.configure.BASE_URL + "watch/" + this.flashVars.watchID);
+ this.nicoViewControllerClient.nicoConfig = this.configure;
+ this.nicoViewControllerClient.flashVars = this.flashVars;
+ this.nicoViewControllerClient.playerPageMyselfURL = this._playerPageMyselfURL;
+
+ this.pluginClient.setProperty("nicoConfig", this.configure);
+ this.pluginClient.setProperty("flashVars", this.flashVars);
+
+ this.nicoViewControllerClient.pluginClient = this.pluginClient;
+ var hug3:EventSequence = new EventSequence(this);
+
+ hug3.push(this.initializePlayerVersion, this.initializePlayerInfo, this.initializeCrossSharedObjectSWF, this.initializeJSConnector, this.initializeJumper, this.createLogger, this.initializePlayerConfig, this.loadTemplateSWF, this.loadViewControllerSWF, this.loadNicoScriptSWF, this.loadVideoInfoAPI, this.initializeMyList, this.loadBGMVideoInfo, this.initializeNG, this.initializeCommentStorage, this.initializeGetChecklist, this.initializeHiroba, this.prepareVideo, this.prepareCommentLists, this.initializeModelAndView, this.initializeCommentRouter, this.initializeModelAndView4Watch, this.initializeSponsorVideo, this.initializeLogger, this.loadConfirm, this.initializePlugin, this.initializeCommentLists, this._delayVideo, this._loadVideo, this.beginToPlayVideo);
+ hug3.next();
+ }
+
+ private function initializeCrossSharedObjectSWF():void
+ { //MethodID:30, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 64
+ internal var _url:String; //slotID:1
+
+ _url = null;
+ _url = StringUtils.joinQuery(this.configure.CROSSSHAREDOBJECT_SWF_URL, {t:this.playerVersion.crossSharedObject});
+
+ CrossSharedObject.init(_url, EventSequence.bind(function(hug1:Boolean):void{ //MethodID:29, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 134
+ internal var sccessed:Boolean; //slotID:1
+
+ sccessed = hug1;
+
+ if(!sccessed) throw new Error("NicoPlayer.loadCrossSharedObjectSWF: failure to load \"" + configure.CROSSSHAREDOBJECT_SWF_URL + "\"");
+
+ if(CrossSharedObject.isPersistable || !configure.CROSSSHAREDOBJECT_NONIMG_SWF_URL){
+ EventSequence.current.next();
+ }else{
+ CrossSharedObject.terminate();
+
+ _url = StringUtils.joinQuery(configure.CROSSSHAREDOBJECT_NONIMG_SWF_URL, {t:playerVersion.crossSharedObject});
+
+ CrossSharedObject.init(_url, EventSequence.bind(function(hug1:Boolean):void{ //MethodID:28, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 38
+ if(!hug1) throw new Error("NicoPlayer.loadCrossSharedObjectNoNimgSWF: failure to load \"" + configure.CROSSSHAREDOBJECT_NONIMG_SWF_URL + "\"");
+ EventSequence.current.next();
+ }));
+ }
+ }));
+ }
+
+ private function createLogger():void
+ { //MethodID:31, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 42
+ this._logManager = new LogManager(!CrossSharedObject.isPersistable);
+ this.nicoViewControllerClient.logManager = this._logManager;
+
+ EventSequence.current.next();
+ }
+
+ private function initializePlayerConfig():void
+ { //MethodID:32, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 116
+ this.playerConfig = new PlayerConfig(this.isThumbWatchMode);
+ this.nicoViewControllerClient.playerConfig = this.playerConfig;
+
+ this.pluginClient.setProperty("playerConfig", this.playerConfig);
+
+ this.playerConfig.deepenedCommentForce = this.flashVars.isDeepenedCommentForce;
+ this.playerConfig.aspectRatio = ((this.flashVars.isWide || this._isPlaylist) ? ScreenAspectRatio.WIDE : ScreenAspectRatio.NORMAL);
+
+ EventSequence.current.next();
+ }
+
+ private function initializeJumper():void
+ { //MethodID:33, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 74
+ this.jumper = new Jumper(this.configure, this.flashVars.watchID);
+ this.nicoViewControllerClient.jumper = this.jumper;
+ this._startVposConfig = new StartVposConfig(this.jumper, this.flashVars);
+ this.nicoViewControllerClient.startVposConfig = this._startVposConfig;
+
+ EventSequence.current.next();
+ }
+
+ private function initializePlayerVersion():void
+ { //MethodID:35, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 116
+ internal var request:URLRequest; //slotID:1
+ internal var params:URLVariables; //slotID:2
+ internal var api:APICacheProxy; //slotID:3
+
+ request = new URLRequest(this.configure.PLAYERVERSION_XML_URL);
+ params = new URLVariables();
+ params.v = this.flashVars.playerVersionUpdated;
+ request.data = params;
+ api = new APICacheProxy(request, 0, uint.MAX_VALUE, this.flashVars.playerVersionUpdated, false);
+ this.playerVersion = new PlayerVersion(EventSequence.bind(function(hug1:Boolean):void{ //MethodID:34, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 36
+ if(!hug1) throw new Error("NicoPlayer.playerVersion. initialize error");
+
+ nicoViewControllerClient.playerVersion = playerVersion;
+
+ EventSequence.current.next();
+ }), api);
+ }
+
+ private function initializeJSConnector():void
+ { //MethodID:37, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 71
+ internal var request:URLRequest; //slotID:1
+
+ request = new URLRequest(this.configure.JSCONNECTOR_SWF_URL);
+ request.data = new URLVariables("v=" + this.playerVersion.jsconnector);
+
+ JSConnector.init(request, EventSequence.current.bind(function(hug1:Boolean):void{ //MethodID:36, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 27
+ if(!hug1) throw new IOError("NicoPlayer.initializeJSConnector: initialize error.");
+ EventSequence.current.next();
+ }));
+ }
+
+ private function initializePlayerInfo():void
+ { //MethodID:39, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 116
+ internal var request:URLRequest; //slotID:1
+ internal var params:URLVariables; //slotID:2
+ internal var api:APICacheProxy; //slotID:3
+
+ request = new URLRequest(this.configure.PLAYERINFO_XML_URL);
+ params = new URLVariables();
+ params.v = this.flashVars.playerInfoUpdated;
+ request.data = params;
+ api = new APICacheProxy(request, 0, uint.MAX_VALUE, this.flashVars.playerInfoUpdated, false);
+ this.playerInfo = new PlayerInfo(EventSequence.bind(function(hug1:Boolean):void{ //MethodID:38, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 36
+ if(!hug1) throw new Error("NicoPlayer.playerInfo. initialize error");
+
+ nicoViewControllerClient.playerInfo = playerInfo;
+
+ EventSequence.current.next();
+ }), api);
+ }
+
+ private function loadTemplateSWF():void
+ { //MethodID:41, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 42
+ HTTPUtils.loadSWF(EventSequence.bind(function(hug1:*):void{ //MethodID:40, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 45
+ if(!hug1) throw new Error("NicoPlayer.loadTemplateSWF: failure to load \"" + configure.VIEW_SWF_URL + "\"");
+
+ nicoViewControllerClient.viewRoot = hug1;
+
+ EventSequence.current.next();
+ }), this.configure.VIEW_SWF_URL, {t:this.playerVersion.nicoplayerTemplate});
+ }
+
+ private function loadViewControllerSWF():void
+ { //MethodID:43, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 42
+ HTTPUtils.loadSWF(EventSequence.bind(function(hug1:*):void{ //MethodID:42, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 89
+ if(!hug1) throw new Error("NicoPlayer.loadViewControllerSWF: failure to load \"" + configure.VIEWCONTROLLER_SWF_URL + "\"");
+ addChild(nicoViewControllerClient.viewRoot);
+
+ nicoViewController = INicoViewController(hug1);
+
+ nicoViewController.startInit(nicoViewControllerClient);
+
+ if(playlistController) playlistController.nicoViewController = nicoViewController;
+ EventSequence.current.next();
+ }), this.configure.VIEWCONTROLLER_SWF_URL, {t:this.playerVersion.nicoplayerViewController});
+ }
+
+ private function loadNicoScriptSWF():void
+ { //MethodID:45, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 76
+ if(!this.flashVars.hasOwnerThread && !this.playlistFlashVars){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ HTTPUtils.loadSWF(EventSequence.bind(function(hug1:*):void{ //MethodID:44, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 50
+ if(!hug1) throw new Error("NicoPlayer.loadViewControllerSWF: failure to load \"" + configure.NICOSPLAYER_URL + "\"");
+
+ nicosPlayer = INicoSPlayer(hug1);
+
+ EventSequence.current.next();
+ }), this.configure.NICOSPLAYER_URL, {t:this.playerVersion.nicoscriptPlayer});
+ }
+
+ private function getGetFLVAPIParams():Object
+ { //MethodID:46, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 165
+ var hug1:Object = {};
+ hug1["v"] = ((this._isPlaylist && this.playlistController) ? this.playlistController.threadID : this.flashVars.watchID);
+
+ if(this.flashVars.videoType == VideoType.SWF) hug1["as3"] = "1";
+
+ if(this.flashVars.forceLowMode) hug1["lo"] = "1";
+
+ if(this.flashVars.economyMode) hug1["eco"] = this.flashVars.economyMode;
+
+ if(this.flashVars.watchFlashVars.noHiroba || this._isPlaylist) hug1["nh"] = "1";
+
+ return hug1;
+ }
+
+ private function loadVideoInfoAPI():void
+ { //MethodID:48, LocalCount= 2 , MaxScope= 2, MaxStack= 6, CodeLength= 65
+ this.nicoViewControllerClient.getFLVData = null;
+
+ this.systemMessage.informln(__MSG__("動画情報を取得開始"));
+
+ this.getFLV = new GetFLV(this.configure.GETFLV_URL, this.getGetFLVAPIParams(), EventSequence.bind(function(hug1:Boolean):void{ //MethodID:47, LocalCount= 7 , MaxScope= 0, MaxStack= 4, CodeLength= 508
+ var hug2:* = undefined;
+ var hug6:* = undefined;
+ var hug3:* = _playerPageMyselfURL;
+
+ if(!hug1 || getFLV.closed){
+ systemMessage.informln(__MSG__("動画情報の取得に失敗"));
+
+ hug2 = (("<p><b>" + __MSG__("動画情報の取得に失敗しました。") + "</b></p>" + "<p>" + __MSG__("ログイン状態が解除されているか、動画が非公開状態にある可能性があります。") + "<br />") + __MSG__("<a href=\"[[url]]\">リロードして再度ログイン</a>", hug3) + "</p>");
+
+ systemMessage.alert(hug2);
+
+ return;
+ }
+
+ if(!initializeInfo){
+ initializeInfo = InitializeInfo.getInstance();
+ nicoViewControllerClient.initializeInfo = initializeInfo;
+
+ pluginClient.setProperty("initializeInfo", initializeInfo);
+ }
+
+ if(!initializeInfo.userID){
+ systemMessage.informln(__MSG__("ユーザー情報の取得に失敗"));
+
+ hug2 = ("<p><b>" + __MSG__("ユーザー情報の取得に失敗しました。") + "</b></p>" + "<p>" + __MSG__("以下のページにアクセスしログインしてください。") + "<a href=\"" + hug3 + "\">" + hug3 + "</a>" + "</p>");
+
+ systemMessage.alert(hug2);
+
+ return;
+ }
+
+ if(flashVars.isChannel){
+ systemMessage.informln(__MSG__("チャンネル動画"));
+ }else if(flashVars.isCommunityThread){
+ systemMessage.informln(__MSG__("コミュニティ動画"));
+ }
+
+ nicoViewControllerClient.getFLVData = getFLV;
+
+ if(!pluginClient.hasInitialized("getFLV")) pluginClient.setProperty("getFLV", getFLV);
+ SystemMessage.instance.informln(__MSG__("スレッド(動画)") + ":" + flashVars.watchID);
+
+ var hug4:* = new RegExp("(https?|rtmp(e|t|te)?)://([^.]+).+", "ig");
+ var hug5:* = hug4.exec(getFLV.videoURL);
+
+ if(hug5 != null){
+ hug6 = ((__MSG__("動画ホスト") + ":") + ((hug5.length >= 1) ? hug5[3] : ""));
+
+ if(new RegExp("low$").test(getFLV.videoURL)) hug6 += __MSG__(" (エコノミー)");
+ SystemMessage.instance.informln(hug6);
+ }
+
+ EventSequence.current.next();
+ }));
+ }
+
+ private function initializeMyList():void
+ { //MethodID:49, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 46
+ this.myList = new MyList(this.configure, this.getFLV.threadID);
+ this.nicoViewControllerClient.myList = this.myList;
+
+ EventSequence.current.next();
+ }
+
+ private function loadBGMVideoInfo():void
+ { //MethodID:51, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 119
+ this.BGMVideoInfos = [];
+
+ if((!this.flashVars.importedBGMVideos || (this.flashVars.importedBGMVideos.length == 0)) || ((this.getFLV.deleted != 0) && (this.getFLV.deleted != 8))){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ GetBGM.exec(EventSequence.bind(function(hug1:Boolean, hug2:Array):void{ //MethodID:50, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 118
+ var hug3:* = undefined;
+ var hug4:* = undefined;
+
+ if(!hug1){
+ systemMessage.informln(__MSG__("引用動画の情報の取得に失敗"));
+
+ hug3 = _playerPageMyselfURL;
+ hug4 = ("<p><b>" + __MSG__("引用動画の情報の取得に失敗しました。") + "</b></p>" + "<p>" + __MSG__("お手数ですが以下のリンクをおしてページをロードしてください。") + "<a href=\"" + hug3 + "\">" + hug3 + "</a>" + "</p>");
+
+ systemMessage.alert(hug4);
+
+ return;
+ }
+
+ BGMVideoInfos = hug2;
+
+ EventSequence.current.next();
+ }), this.configure.GETBGM_API_URL, this.getFLV.threadID);
+ }
+
+ private function initializeNG():void
+ { //MethodID:55, LocalCount= 2 , MaxScope= 2, MaxStack= 11, CodeLength= 145
+ internal var noLoad:Boolean; //slotID:1
+
+ noLoad = !CrossSharedObject.isPersistable;
+ this.nicoViewControllerClient.ngFilter = null;
+ this.ngComment = new NGComment(this.initializeInfo.userID, this.initializeInfo.ngRevision, this.configure.GETCONFIGURENGCLIENT_URL, this.initializeInfo.isPremium, this.playerConfig, this.initializeInfo.isNGMaintenance, noLoad, this.flashVars.isMymemory, (this.isThumbWatchMode ? null : this.flashVars.watchFlashVars.csrfToken));
+
+ this.ngComment.onInitialized.add(EventSequence.bind(function(hug1:Boolean):void{ //MethodID:53, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 187
+ internal var success:Boolean; //slotID:1
+ internal var ngCommentLength:*; //slotID:2
+ internal var ngUserLength:*; //slotID:3
+
+ ngCommentLength = undefined;
+ ngUserLength = undefined;
+ success = hug1;
+
+ if(!success) systemMessage.alert("<p><b>" + __MSG__("NG設定の読み込みに失敗") + "</b></p>" + "<p>" + __MSG__("時間を空けてアクセスしていただくか、下のリンクからお知らせください。") + "<br />" + "<a href=\"https://secure.nicovideo.jp/secure/support_form\" target=\"_blank\">" + "お問い合わせ" + "</a>" + "</p>");
+
+ nicoViewControllerClient.ngFilter = ngComment;
+
+ if(!pluginClient.hasInitialized("ngFilter")) pluginClient.setProperty("ngFilter", ngComment);
+
+ if(!isThumbWatchMode){
+ ngCommentLength = 0;
+ ngUserLength = 0;
+
+ ngComment.list.forEach(function(hug1:NGInfo, hug2:int, hug3:Array):void{ //MethodID:52, LocalCount= 6 , MaxScope= 0, MaxStack= 2, CodeLength= 79
+ if(hug1.type == NGType.MESSAGE){
+ ngCommentLength++;
+ }else if(hug1.type == NGType.USER_ID){
+ ngUserLength++;
+ }
+ });
+ _logManager.observer.onNGCommentInitialized(ngCommentLength, ngUserLength);
+ }
+
+ EventSequence.current.next();
+ }));
+ this.ngComment.onUpdated.add(function(hug1:Array, hug2:String):void{ //MethodID:54, LocalCount= 6 , MaxScope= 0, MaxStack= 2, CodeLength= 56
+ var hug3:ICommentList = null;
+
+ if(hug2 == NGResponseConstants.UNSERVE) return;
+
+ for each(hug3 in commentListContainer){
+ hug3.serveCommentList();
+ }
+ });
+ }
+
+ private function initializeCommentStorage():void
+ { //MethodID:59, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 106
+ internal var client:MessageServerClient; //slotID:1
+
+ client = null;
+ this.nicoViewControllerClient.commentStorageEvents = null;
+ client = new MessageServerClient(this.getFLV.messageServerURL);
+
+ client.connectionLost.add(function(hug1:String):void{ //MethodID:56, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ systemMessage.informln(__MSG__("コメント受信中にエラーが発生: ") + hug1);
+ });
+ client.connected.add(function():void{ //MethodID:57, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ systemMessage.informln(__MSG__("コメントサーバーへの接続準備完了"));
+ });
+
+ if(this._logManager) this._logManager.observer.onThreadLoadStarted();
+ client.connect(EventSequence.bind(function(hug1:Boolean, hug2:String):void{ //MethodID:58, LocalCount= 3 , MaxScope= 0, MaxStack= 8, CodeLength= 131
+ commentStorage = new CommentStorage(client, keygen, initializeInfo.userID, initializeInfo.isPremium, flashVars, getFLV);
+
+ if((playerInfo.leafFilter.indexOf(getFLV.messageServerURL) != (-1)) || (flashVars.leafSwitch == NicoFlashVars.LEAF_DISABLE)) commentStorage.forceLeafOff = true;
+
+ nicoViewControllerClient.commentStorageEvents = new CommentStorageEvents(commentStorage);
+
+ if(_logManager) _logManager.observer.onThreadLoadCompleted(hug1);
+ EventSequence.current.next();
+ }));
+ }
+
+ private function initializeGetChecklist():void
+ { //MethodID:61, LocalCount= 2 , MaxScope= 2, MaxStack= 6, CodeLength= 102
+ internal var apiCacheProxy:APICacheProxy; //slotID:1
+ internal var callback:Function; //slotID:2
+ internal var noLoad:Boolean; //slotID:3
+
+ apiCacheProxy = new APICacheProxy(new URLRequest(this.configure.GET_CHECKLIST_URL), 0, 0, this.initializeInfo.userID);
+ callback = EventSequence.bind(function(hug1:Boolean):void{ //MethodID:60, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 11
+ EventSequence.current.next();
+ });
+
+ noLoad = !CrossSharedObject.isPersistable;
+ this.getChecklist = new GetChecklist(callback, apiCacheProxy, this.flashVars.watchFlashVars.useChecklistCache, noLoad);
+ }
+
+ private function initializeHiroba():void
+ { //MethodID:69, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 380
+ this._logManager.observer.onHirobaInitializeStarted();
+
+ if((this.getFLV.hirobaHost == null) || (this.getFLV.hirobaPort == 0) || (this.getFLV.hirobaThreadID == null) || this.flashVars.watchFlashVars.noHiroba || this.flashVars.isNoComment || this.flashVars.watchFlashVars.isOwnerThreadEditMode || this.flashVars.watchFlashVars.isEditMode){
+ if(!(((this.getFLV.hirobaHost != null) && (this.getFLV.hirobaPort != 0) && !(!(this.getFLV.hirobaThreadID == null))) && (this.flashVars.watchFlashVars.noHiroba || this.flashVars.isNoComment || this.flashVars.watchFlashVars.isOwnerThreadEditMode || this.flashVars.watchFlashVars.isEditMode))) this._logManager.observer.onHirobaConnected(false, HirobaErrorStatus.HIROBA_INFO_NOT_FOUND, HirobaEventReferer.NICO_PLAYER);
+ EventSequence.current.next();
+
+ return;
+ }
+
+ if(this.nicoViewControllerClient.hirobaPlayer){
+ this._logManager.observer.onHirobaInitializeAborted();
+ EventSequence.current.next();
+
+ return;
+ }
+
+ this.hirobaPlayer = new HirobaPlayer(this.playerConfig, this.initializeInfo.isPremium);
+ this.nicoViewControllerClient.hirobaPlayer = this.hirobaPlayer;
+
+ HTTPUtils.loadSWF(function(hug1:Sprite):void{ //MethodID:68, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 276
+ internal var swf:Sprite; //slotID:1
+ internal var connector:IHirobaConnector; //slotID:2
+ internal var succeeded:Boolean; //slotID:3
+ internal var client:HirobaConnectorClient; //slotID:4
+ internal var onConnectionFailed:Function; //slotID:5
+ internal var onDisconnected:Function; //slotID:6
+ internal var onConnected:Function; //slotID:7
+
+ connector = null;
+ client = null;
+ onConnectionFailed = null;
+ onDisconnected = null;
+ onConnected = null;
+ swf = hug1;
+ onConnectionFailed = function(hug1:HirobaErrorEvent):void{ //MethodID:63, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 37
+ systemMessage.informln(__MSG__("広場の接続中にエラーが発生"));
+ _logManager.observer.onHirobaConnected(false, hug1.text, hug1.referer);
+ };
+
+ onDisconnected = function(hug1:HirobaErrorEvent):void{ //MethodID:64, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 36
+ systemMessage.informln(__MSG__("広場の接続中にエラーが発生"));
+ _logManager.observer.onHirobaDisconnected(hug1.text, hug1.referer);
+ };
+
+ onConnected = function(hug1:Boolean, hug2:String, hug3:String):void{ //MethodID:66, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 243
+ internal var succeeded:Boolean; //slotID:1
+ internal var status:String; //slotID:2
+ internal var referer:String; //slotID:3
+
+ succeeded = hug1;
+ status = hug2;
+ referer = hug3;
+
+ if((referer == HirobaEventReferer.HIROBA_AGENT) && succeeded){
+ _logManager.observer.onHirobaConnected(true, status, referer);
+
+ return;
+ }
+
+ if(!succeeded){
+ systemMessage.informln(__MSG__("広場の接続に失敗"));
+ _logManager.observer.onHirobaConnected(false, status, referer);
+
+ return;
+ }
+
+ systemMessage.informln(__MSG__("広場の接続に成功"));
+ _logManager.observer.onHirobaConnected(true, status, referer);
+ hirobaPlayer.onClickedLink.add(function():void{ //MethodID:65, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 15
+ if(videoController) videoController.stop();
+ });
+
+ hirobaPlayer.connector = connector;
+
+ if(commentRouter) commentRouter.addHiroba(hirobaPlayer);
+
+ if(marqueeClient && marqueeClient.marqueePlayer) client.insertItemOnMarquee_0 = INicoMarqueePlayer(marqueeClient.marqueePlayer).interruptContent;
+
+ hirobaConnectorClient = client;
+
+ nicoViewController.onHirobaInitialized();
+ };
+
+ connector = IHirobaConnector(swf);
+ succeeded = (connector != null);
+
+ if(!succeeded){
+ systemMessage.informln(__MSG__("広場の接続に失敗"));
+ _logManager.observer.onHirobaConnected(false, HirobaErrorStatus.HIROBA_CONNECTOR_NOT_FOUND, HirobaEventReferer.NICO_PLAYER);
+
+ return;
+ }
+
+ client = new HirobaConnectorClient(new HirobaMessageServerInfo(getFLV, configure.GETFLV_URL, getGetFLVAPIParams()), initializeInfo.userID, keygen, function():Number{ //MethodID:62, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 25
+ return (playerConfig.isMute ? 0 : playerConfig.volume);
+ });
+
+ client.checkList = getChecklist;
+
+ connector.initialize(client);
+ connector.addEventListener(HirobaErrorEvent.CONNECTION_FAIL, onConnectionFailed);
+ connector.addEventListener(HirobaErrorEvent.DISCONNECTED, onDisconnected);
+ connector.addEventListener(HirobaEvent.CLICKED_LINK, function(hug1:Event):void{ //MethodID:67, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 15
+ if(videoController) videoController.stop();
+ });
+ connector.connect(onConnected);
+ }, this.configure.HIROBACONNECTOR_SWF_URL, {v:this.playerVersion.hirobaconnector});
+ EventSequence.current.next();
+ }
+
+ private function prepareVideo():void
+ { //MethodID:71, LocalCount= 2 , MaxScope= 2, MaxStack= 8, CodeLength= 570
+ internal var videoWidth:int; //slotID:1
+ internal var videoHeight:int; //slotID:2
+
+ this.nicoViewControllerClient.video = null;
+ this.nicoViewControllerClient.videoController = null;
+
+ if(!this.videoLayerManager){
+ this.videoLayerManager = new VideoLayerManager(this.nicoViewController.videoBase, this.playerConfig.aspectRatio);
+
+ if(this.playerConfig.deepenedComment){
+ ObjectUtils.callLater(function():void{ //MethodID:70, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ videoLayerManager.deepenComment();
+ });
+ }
+
+ this.nicoViewControllerClient.videoLayerManager = this.videoLayerManager;
+ }else{
+ this.videoLayerManager.refreshLayers();
+ }
+
+ if(!this.pluginClient.hasInitialized("videoLayerManager")) this.pluginClient.setProperty("videoLayerManager", this.videoLayerManager);
+
+ videoWidth = ((this.flashVars.isWide || this._isPlaylist) ? VideoLayerConstants.VIDEO_LAYER_HD_WIDTH : VideoLayerConstants.VIDEO_LAYER_SD_WIDTH);
+ videoHeight = ((this.flashVars.isWide || this._isPlaylist) ? VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT : VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT);
+
+ if(this.video && this.video.isInitialized){
+ this.video.close();
+
+ this.video = null;
+ }
+
+ this.video = new VideoWrapper(this.videoLayerManager.videoLayer, this.getFLV, this.configure, this.flashVars, videoWidth, videoHeight);
+ this.nicoViewControllerClient.video = this.video;
+ this.videoController = new VideoController(this.video, this.playerConfig, this.initializeInfo.isPremium, this._isPlaylist);
+ this.nicoViewControllerClient.videoController = this.videoController;
+
+ if(this._logManager){
+ this.video.onVideoLoadComplete.add(this._logManager.observer.onVideoLoadCompleted);
+ this.video.onVideoBufferingStarted.add(this._logManager.observer.onVideoBufferingStarted);
+ }
+
+ if(this.playlistController) this.playlistController.videoController = this.videoController;
+
+ if(!this.pluginClient.hasInitialized("videoController")) this.pluginClient.setProperty("videoController", this.videoController);
+
+ if(this._onChangedVideoStatus != null) this.video.onChangedVideoStatus.add(this._onChangedVideoStatus);
+
+ if(this.vposWatcher) this.vposWatcher.kill();
+
+ this.vposWatcher = new VposWatcher(this.video);
+
+ if(this.videoLoadGuardian != null) this.videoLoadGuardian.destroy();
+
+ this.videoLoadGuardian = new VideoLoadGuardian(this.video, this.initializeInfo.isPremium);
+
+ if(this.nicoViewControllerClient.videoLoadWatcher == null) this.nicoViewControllerClient.videoLoadWatcher = new VideoLoadWatcher();
+ EventSequence.current.next();
+ }
+
+ private function prepareCommentLists():void
+ { //MethodID:73, LocalCount= 2 , MaxScope= 2, MaxStack= 12, CodeLength= 597
+ internal var normalThreadID:String; //slotID:1
+ internal var leafMode:Boolean; //slotID:2
+ internal var clear:Function; //slotID:3
+ internal var filtered:CommentPoolContainer; //slotID:4
+
+ filtered = null;
+ clear = function():void{ //MethodID:72, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 150
+ nicoViewControllerClient.commentListContainer = null;
+ nicoViewControllerClient.nicoSClient = null;
+
+ if(nicosClient) nicosClient.clear();
+
+ if(nicosPlayer) nicosPlayer.clear();
+
+ nicosClient = null;
+ privateCommentList = null;
+ commentList = null;
+ nicoSCommentList = null;
+ ownerCommentList = null;
+ localCommentList = null;
+
+ delete commentListContainer[CommentConstants.CL_PRIVATE];
+ delete commentListContainer[CommentConstants.CL_MAIN];
+ delete commentListContainer[CommentConstants.CL_NICOS];
+ delete commentListContainer[CommentConstants.CL_OWNER];
+ delete commentListContainer[CommentConstants.CL_LOCAL];
+ };
+
+ clear();
+
+ normalThreadID = this.getFLV.threadID;
+ leafMode = (((this.playerInfo.leafFilter.indexOf(this.getFLV.messageServerURL) != (-1)) || (this.flashVars.leafSwitch != NicoFlashVars.LEAF_DISABLE)) && this.playerConfig.isEnabledLeafMode);
+
+ if(this.flashVars.isCommunityThread){
+ this.privateCommentList = new CommentList(this.getFLV.threadID, this.getFLV.videoLength, this.commentStorage, CommentConstants.CL_PRIVATE, this.flashVars.isMymemory, leafMode);
+ this.commentListContainer[CommentConstants.CL_PRIVATE] = this.privateCommentList;
+ this.mainCommentListName = CommentConstants.CL_PRIVATE;
+ normalThreadID = this.getFLV.optionalThreadID;
+ }
+
+ if(this.getFLV.nicoSThreadID){
+ this.nicoSCommentList = new CommentList(this.getFLV.nicoSThreadID, this.getFLV.videoLength, this.commentStorage, CommentConstants.CL_NICOS);
+ this.commentListContainer[CommentConstants.CL_NICOS] = this.nicoSCommentList;
+ }
+
+ this.commentList = new CommentList(normalThreadID, this.getFLV.videoLength, this.commentStorage, CommentConstants.CL_MAIN, this.flashVars.isMymemory, leafMode);
+ this.commentListContainer[CommentConstants.CL_MAIN] = this.commentList;
+
+ if(this.flashVars.hasOwnerThread){
+ this.nicosClient = new NicoSClient(this.nicosPlayer, this.videoController, this.videoLayerManager, this.jumper, this.flashVars, null, null, this.nicoSCommentList, this.playerConfig, this._isPlaylist);
+ this.ownerCommentList = new OwnerCommentList(normalThreadID, this.commentStorage, this.nicosClient, new RegisterBGM(this.configure));
+ this.commentListContainer[CommentConstants.CL_OWNER] = this.ownerCommentList;
+ }
+
+ this.localCommentList = new LocalCommentList();
+ this.commentListContainer[CommentConstants.CL_LOCAL] = this.localCommentList;
+ this.nicoViewControllerClient.commentListContainer = this.commentListContainer;
+ this.nicoViewControllerClient.nicoSClient = this.nicosClient;
+
+ if(!this.pluginClient.hasInitialized("commentListContainer")) this.pluginClient.setProperty("commentListContainer", this.commentListContainer);
+
+ if(!this.nicoViewControllerClient.filteredCommentPoolContainers) this.nicoViewControllerClient.filteredCommentPoolContainers = [];
+
+ if(!this.pluginClient.hasInitialized("filteredCommentPoolContainer")){
+ filtered = new CommentPoolContainer();
+
+ this.pluginClient.setProperty("filteredCommentPoolContainer", filtered);
+ this.nicoViewControllerClient.filteredCommentPoolContainers.push(filtered);
+ }
+
+ EventSequence.current.next();
+ }
+
+ private function initializeModelAndView():void
+ { //MethodID:74, LocalCount= 3 , MaxScope= 1, MaxStack= 9, CodeLength= 768
+ var hug2:GetRelation = null;
+ this.nicoViewControllerClient.commentLayer = null;
+ this.nicoViewControllerClient.commentLayerView = null;
+ this.nicoViewControllerClient.commentViewTransformer = null;
+ this.nicoViewControllerClient.jumpMessageLayer = null;
+ this.nicoViewControllerClient.replacer = null;
+ this.nicoViewControllerClient.channelReplacer = null;
+ this.nicoViewControllerClient.deleteFilter = null;
+ this.nicoViewControllerClient.externalClient = null;
+
+ this.initializeCommentLayerView();
+
+ this.nicoViewControllerClient.commentLayer = this.commentLayer;
+ this.nicoViewControllerClient.commentLayerView = this.commentLayerView;
+ this.nicoViewControllerClient.commentViewTransformer = this.commentViewTransformer;
+
+ if(this.nicosClient){
+ this.nicosClient.commentLayerView_ = this.commentLayerView;
+ this.nicosClient.commentLayer_ = this.commentLayer;
+ }
+
+ this.jumpMsgLayer = new JumpMessageLayer(this.videoLayerManager.jumpMsgLayer);
+ this.nicoViewControllerClient.jumpMessageLayer = this.jumpMsgLayer;
+ this.replacer = new Replacer(this.getFLV.ownerFilter, this.configure.GET_CONFIGURE_NGWORD, this.flashVars.watchID, this.initializeInfo.isNGMaintenance, (this.isThumbWatchMode ? null : this.flashVars.watchFlashVars.csrfToken));
+ this.nicoViewControllerClient.replacer = this.replacer;
+
+ if(this.getFLV.channelFilter){
+ this.channelReplacer = new ChannelReplacer(this.getFLV.channelFilter);
+ this.nicoViewControllerClient.channelReplacer = this.channelReplacer;
+ }
+
+ var hug1:Object = {};
+
+ if(this.commentList) hug1[CommentConstants.CL_MAIN] = this.commentList;
+
+ if(this.nicoSCommentList) hug1[CommentConstants.CL_NICOS] = this.nicoSCommentList;
+
+ if(this.privateCommentList) hug1[CommentConstants.CL_PRIVATE] = this.privateCommentList;
+
+ this.deleteFilter = new DeleteFilter(hug1, (this.isThumbWatchMode ? false : this.flashVars.watchFlashVars.isEditMode));
+ this.nicoViewControllerClient.deleteFilter = this.deleteFilter;
+
+ if(!this.audioShutter){
+ this.audioShutter = new ControllerShutter(AudioShutterConstants.END_OF_ENUM, "AUDIO");
+ this.nicoViewControllerClient.audioShutter = this.audioShutter;
+
+ this.pluginClient.setProperty("audioShutter", this.audioShutter);
+ }
+
+ if(!this.externalClient) this.externalClient = new ExternalClient();
+ this.externalClient.initialize(this.flashVars.watchID, this.video, this.videoController, this.playerConfig, this.initializeInfo.isPremium, (this.isThumbWatchMode ? false : this.flashVars.watchFlashVars.isOwnerThreadEditMode), (this.getFLV.nicoSThreadID != null));
+
+ this.externalClient.localCommentList = this.localCommentList;
+ this.externalClient.ownerCommentList = this.ownerCommentList;
+ this.nicoViewControllerClient.externalClient = this.externalClient;
+
+ this.video.onChangedVideoStatus.add(this.externalClient.onChangeVideoStatus);
+
+ if(!this.commentShutter){
+ this.commentShutter = new ControllerShutter(CommentShutterConstants.END_OF_ENUM, "COMMENT");
+ this.nicoViewControllerClient.commentShutter = this.commentShutter;
+
+ if(this.playlistController != null) this.playlistController.commentShutter = this.commentShutter;
+ }
+
+ if(this.nicosClient){
+ this.nicosClient.audioShutter = this.audioShutter;
+ this.nicosClient.commentShutter = this.commentShutter;
+ }
+
+ if(!this.flashVars.forceRelationInvisible){
+ hug2 = new GetRelation(HTTPUtils.loadXML, this.configure.GETRELATION_URL, this.flashVars.watchID, this.flashVars.category);
+ this.relatedList = new RelatedVideoList(hug2, this.flashVars.noRelatedVideo);
+ this.nicoViewControllerClient.relatedList = this.relatedList;
+ }
+
+ EventSequence.current.next();
+ }
+
+ private function initializeCommentRouter():void
+ { //MethodID:78, LocalCount= 2 , MaxScope= 2, MaxStack= 8, CodeLength= 271
+ this.nicoViewControllerClient.lockedComment = null;
+ this.nicoViewControllerClient.commentRouter = null;
+
+ if(this.isThumbWatchMode && !this.flashVars.thumbFlashVars.thumbComment){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ this.lockedComment = new LockedComment(this.getFLV.threadID, this.mainCommentListName, this.flashVars.watchFlashVars.isPostLocked, this.flashVars.watchFlashVars.isEditMode);
+ this.nicoViewControllerClient.lockedComment = this.lockedComment;
+ this.deleteFilter.lockedComment = this.lockedComment;
+ this.commentRouter = new CommentRouter(this.flashVars, this.playerConfig, this.lockedComment, this.nicosClient, this.initializeInfo.isPremium, this.channelReplacer);
+
+ this.commentRouter.onCommentPostErorr.add(function(hug1:String):void{ //MethodID:75, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 580
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommentRouter.ERROR_POST_184:
+ systemMessage.informComment(__MSG__("チャンネルとコミュニティ動画では184コマンドを使用できません"));
+ break;
+ case CommentRouter.ERROR_POST_AT_COMMENT_UNDEFINED:
+ systemMessage.alert(__MSG__("入力された@コメントは、以下のどちらかの理由で使用できません。<br />") + __MSG__("・存在しない<br />") + __MSG__("・投稿者以外は使えない<br />") + __MSG__("現在、動画閲覧者が使用できるのは、") + "<a href=\"http://info.nicovideo.jp/help/player/script/90.html#s01\" target=\"_blank\">" + __MSG__("@ボタン(閲覧者用)") + "</a>、<a href=\"http://info.nicovideo.jp/help/player/script/90.html#s02\" target=\"_blank\">" + __MSG__("@ピザ") + "</a>" + __MSG__("の2つです。"));
+ break;
+ case CommentRouter.ERROR_POST_BUTTON_ONCE:
+ systemMessage.informComment(__MSG__("@ボタンは、1視聴につき1つまでしかご利用になれません"));
+ break;
+ case CommentRouter.ERROR_POST_BUTTON_PREMIUM_ONLY:
+ systemMessage.alert(__MSG__("@ボタンは現在[[a_tag_open]]プレミアム会員[[a_tag_close]]のみ使用可能です。", "<a href=\"http://www.nicovideo.jp/?p=premium_top&sec=at_button\" target=\"_blank\">", "</a>"));
+ break;
+ case CommentRouter.ERROR_POST_HIROBA:
+ systemMessage.informComment(__MSG__("広場では@ボタンは使えません。"));
+ break;
+ case CommentRouter.ERROR_POST_INITIALIZE:
+ systemMessage.informComment(__MSG__("コメント投稿の準備が未完了です"));
+ break;
+ case CommentRouter.ERROR_POST_BUTTON_ARGUMENTS:
+ systemMessage.informComment(__MSG__("@ボタンの設定項目が足りません。"));
+ break;
+ case CommentRouter.ERROR_POST_SAME_COMMENT:
+ systemMessage.informComment(__MSG__("同じコメントを連続で投稿することができません。"));
+ break;
+ case CommentRouter.ERROR_POST_CHANNEL_FILTER:
+ systemMessage.informComment(__MSG__("入力されたコメントはこの動画では投稿できません。"));
+ break;
+ case CommentRouter.ERROR_POST_AT_COMMENT_DISABLED:
+ systemMessage.informComment(__MSG__("この動画では@コメントは使えません。"));
+ break;
+ case CommentRouter.ERROR_POST_COMMAND_DISABLED:
+ systemMessage.informComment(__MSG__("この動画ではコマンドは使えません。"));
+ break;
+ default:
+ break;
+ }
+ });
+
+ if(this.flashVars.watchFlashVars.noAtPizza || this.isThumbWatchMode){
+ this.commentRouter.onCommentHavingMacro.add(function(hug1:IMacroParserResult):void{ //MethodID:76, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ if(hug1.macroName == "ピザ") systemMessage.informComment("@ピザは、使用できません。");
+ });
+ }else{
+ this.commentRouter.onCommentHavingMacro.add(function(hug1:IMacroParserResult):void{ //MethodID:77, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 40
+ if(hug1.macroName == "ピザ"){
+ navigateToURL(new URLRequest(configure.PIZZA_URL), "_blank");
+ videoController.stop();
+ }
+ });
+ }
+
+ if(this.nicosClient) this.nicosClient.commentRouter = this.commentRouter;
+
+ this.nicoViewControllerClient.commentRouter = this.commentRouter;
+ EventSequence.current.next();
+ }
+
+ private function initializeModelAndView4Watch():void
+ { //MethodID:82, LocalCount= 3 , MaxScope= 2, MaxStack= 10, CodeLength= 1164
+ internal var linkURL:String; //slotID:1
+ internal var pageURL:String; //slotID:2
+ internal var messageHTML:String; //slotID:3
+ internal var onMarqueePlayerLoaded:Function; //slotID:4
+ internal var isUseVideoEnder:Boolean; //slotID:5
+
+ linkURL = null;
+ pageURL = null;
+ messageHTML = null;
+ isUseVideoEnder = false;
+ this.nicoViewControllerClient.timeMachine = null;
+ this.nicoViewControllerClient.marqueeClient = null;
+ this.nicoViewControllerClient.frameRateBooster = null;
+ this.timeMachine = new TimeMachine(new Date(parseInt(this.getFLV.threadID, 10) * 1000));
+ this.nicoViewControllerClient.timeMachine = this.timeMachine;
+
+ if(!this.frameRateBooster) this.frameRateBooster = new FrameRateBooster(stage);
+
+ this.nicoViewControllerClient.frameRateBooster = this.frameRateBooster;
+
+ if(this._isPlaylist && (this._shutterKeyLastClosed >= 0)){
+ this.commentShutter.open(this._shutterKeyLastClosed);
+
+ this._shutterKeyLastClosed = -1;
+ }
+
+ if(this.flashVars.isMymemory){
+ this.commentShutter.close(this._shutterKeyLastClosed = CommentShutterConstants.SHUTTER_MYMEMORY, __MSG__("マイメモリーはコメントできません"));
+ }else if(!this.getFLV.commentExpire && !this.flashVars.watchFlashVars.isOwnerThreadEditMode){
+ if(this.flashVars.watchFlashVars.commentListPublicStatus == CommentListPublicStatus.MEMBER_ONLY){
+ linkURL = (this.configure.CHANNEL_URL + (this.flashVars.isChannel ? "channel" : "community") + "/" + this.flashVars.communityGlobalID);
+
+ this.commentShutter.close(this._shutterKeyLastClosed = CommentShutterConstants.SHUTTER_CHANNEL_COMMUNITY, (("<a href=\"" + linkURL + "\"><u>") + (this.flashVars.isChannel ? __MSG__("コメントするにはチャンネルに入会してください") : __MSG__("コメントするにはコミュニティに入会してください")) + "</u></a>"));
+ }else{
+ this.commentShutter.close(this._shutterKeyLastClosed = CommentShutterConstants.SHUTTER_OTHER, "");
+ }
+ }else if(this.flashVars.watchFlashVars.isCommentShuttered){
+ this.commentShutter.close(this._shutterKeyLastClosed = CommentShutterConstants.SHUTTER_LOCKED, __MSG__("あなたはコメントを禁止されています"));
+ }
+
+ if(!CrossSharedObject.isPersistable){
+ if(!this.flashVars.watchFlashVars.isEditMode && !this.flashVars.watchFlashVars.isOwnerThreadEditMode) this.commentShutter.close(this._shutterKeyLastClosed = CommentShutterConstants.SHUTTER_NOSHAREDOBJECT, ("<p>" + __MSG__("ローカル記憶領域が使用できないため、コメント機能を制限をしています") + "</p>"));
+
+ if(!this._isShowedDialog){
+ this._isShowedDialog = true;
+
+ this.systemMessage.informln(__MSG__("SharedObjectの初期に失敗しました。"));
+
+ pageURL = this._playerPageMyselfURL;
+ messageHTML = ("<p><b>" + __MSG__("ローカル記憶領域の書き込みが出来ません。") + "</b></p>" + "<p>" + __MSG__("NG設定、音量設定の保存、ニコニコニュース、RSS、") + "<br>" + __MSG__("生放送開始のお知らせ、ユーザーが設定した@CMなど、") + "<br>" + __MSG__("プレーヤーの機能がご利用出来ない状態です。") + "<br>" + __MSG__("プレーヤーの各機能を有効にするため、Flashの設定を変更してください。") + "<br>" + "<a href=\"" + this.configure.NOSO_URL + "\" target=\"_blank\">ローカル記憶領域の設定を変更する方法について</a>" + "</p>");
+
+ this.systemMessage.alert(messageHTML);
+ }
+ }
+
+ if(this.flashVars.watchFlashVars.isEditMode){
+ this.deleteFilter.onFinishedEdit = function(hug1:Boolean):void{ //MethodID:79, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 144
+ var hug3:String = null;
+ var hug4:String = null;
+ var hug2:String = _playerPageMyselfURL;
+
+ if(!hug1){
+ if(flashVars.isMymemory){
+ hug3 = StringUtils.joinQuery(hug2, {edit:"mymemory"});
+ hug4 = ("<b>マイメモリーの編集に失敗しました。</b>" + "再度編集しなおす場合は、以下のURLからお願いします。<br />" + "<a href=\"" + hug3 + "\">" + hug3 + "</a>");
+ }else{
+ hug3 = StringUtils.joinQuery(hug2, {edit:"comment"});
+ hug4 = ("<b>編集の保存に失敗しました。</b>" + "再度編集しなおす場合は、以下のURLからお願いします。<br />" + "<a href=\"" + hug3 + "\">" + hug3 + "</a>");
+ }
+
+ systemMessage.alert(hug4);
+
+ return;
+ }
+
+ navigateToURL(new URLRequest(hug2), "_self");
+ };
+ }
+
+ if(!this.flashVars.watchFlashVars.isNoMarquee && !this.flashVars.watchFlashVars.isEditMode && !this.flashVars.watchFlashVars.isOwnerThreadEditMode && CrossSharedObject.isPersistable){
+ onMarqueePlayerLoaded = function():void{ //MethodID:80, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 94
+ if(nicosClient) nicosClient.marqueePlayer = INicoMarqueePlayer(marqueeClient.marqueePlayer);
+
+ if(hirobaConnectorClient) hirobaConnectorClient.insertItemOnMarquee_0 = INicoMarqueePlayer(marqueeClient.marqueePlayer).interruptContent;
+
+ if(playlistController) playlistController.marqueeClient = marqueeClient;
+ pluginClient.setProperty("marqueeClient", marqueeClient);
+ commentRouter.addMarqueePlayer(marqueeClient.marqueePlayer);
+ };
+
+ if(!this.marqueeClient) this.marqueeClient = new MarqueeClient(this.configure.MARQUEE_PLAYER_URL, this.playerVersion, this.playerInfo, this.nicoViewController.marqueeBase, this.videoLayerManager, this.playerConfig, this.initializeInfo, onMarqueePlayerLoaded);
+
+ if(this.nicosClient) this.nicosClient.marqueePlayer = INicoMarqueePlayer(this.marqueeClient.marqueePlayer);
+
+ this.marqueeClient.videoController = this.videoController;
+ this.marqueeClient.flashVars = this.flashVars;
+ this.nicoViewControllerClient.marqueeClient = this.marqueeClient;
+ }
+
+ if(!this.flashVars.watchFlashVars.isNoAppli && !this.pluginClient.hasInitialized("videoDetail")) this.pluginClient.setProperty("videoDetail", new VideoDetail(this.flashVars.category, this.flashVars.videoDetail));
+ function():void{ //MethodID:81, LocalCount= 5 , MaxScope= 0, MaxStack= 23, CodeLength= 193
+ if(_isPlaylist) return;
+
+ var hug1:* = new RemoconNotifier(configure.REMOCON_ALERT_SWF_URL + "?" + playerVersion.remoconAlert);
+ var hug2:* = new RemoconFullScreenKeeper(playerConfig, externalClient);
+ var hug3:* = new RemoconPlayerStateObserver(externalClient.udpateRemoconState, hug1, hug2);
+
+ commentRouter.onCommentPostErorr.add(hug3.onCommentRouterPostError);
+
+ var hug4:* = new RemoconClient(hug3, hug1, RemoconState.instance);
+
+ RemoconReceiver.initialize({videoController:videoController, playerConfig:playerConfig, commentRouter:commentRouter, isPremium:initializeInfo.isPremium, stateObserver:hug3, notifier:hug1, userID:initializeInfo.userID, userNasme:initializeInfo.nickname, commentShutter:commentShutter, audioShutter:audioShutter, fullScreenKeeper:hug2}, defineRemoconMethods);
+ hug2.start();
+
+ nicoViewControllerClient.remoconClient = hug4;
+ }();
+
+ this.nicoViewControllerClient.defaultMylistAppender = new DefaultMylistAppender(HTTPUtils.loadJSON, this.configure.MYLIST_ADD_API_URL, this.getFLV.threadID, this.flashVars.watchFlashVars.noDeflistAdd, this.flashVars.watchFlashVars.csrfToken);
+
+ if(this.nicoViewControllerClient.videoenderTesterConfig == null){
+ if(this._isPlaylist){
+ isUseVideoEnder = (this.playlistFlashVars && this.playlistFlashVars.useVideoEnder);
+ }else{
+ isUseVideoEnder = (this.flashVars.watchFlashVars && this.flashVars.watchFlashVars.useVideoEnder);
+ }
+
+ this._videoenderTesterConfig = new VideoenderTesterConfig(isUseVideoEnder);
+ this.nicoViewControllerClient.videoenderTesterConfig = this._videoenderTesterConfig;
+ }
+
+ EventSequence.current.next();
+ }
+
+ private function initializeSponsorVideo():void
+ { //MethodID:85, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 169
+ internal var url:String; //slotID:1
+ internal var info:GetSponsorInfo; //slotID:2
+
+ info = null;
+ this.nicoViewControllerClient.getSponsorInfo = null;
+
+ if(!this.isThumbWatchMode && (this.flashVars.isMymemory || this.flashVars.watchFlashVars.isEditMode || this.flashVars.watchFlashVars.isOwnerThreadEditMode)){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ url = StringUtils.joinQuery(this.configure.GETSPONSOR_API_URL, {limit:"4", videoid:this.flashVars.originalVideoID});
+ info = new GetSponsorInfo(url, function(hug1:Boolean):void{ //MethodID:84, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 213
+ internal var succeeded:Boolean; //slotID:1
+ internal var layer:*; //slotID:2
+ internal var userSponsorSWFURL:*; //slotID:3
+ internal var otherSponsorLink:*; //slotID:4
+ internal var youAlsoLink:*; //slotID:5
+
+ layer = undefined;
+ otherSponsorLink = undefined;
+ youAlsoLink = undefined;
+ succeeded = hug1;
+
+ if(!succeeded || (info.sponsorInfoList.length == 0)) return;
+
+ layer = videoLayerManager.createOptionalLayer(VideoLayerManager.OPTIONAL_LAYER_SPONSORVIDEOLAYER);
+ userSponsorSWFURL = StringUtils.joinQuery(configure.USERSPONSOR_MOVIE_URL, {t:playerVersion.userSponsorMovie});
+ otherSponsorLink = (StringUtils.joinQuery(configure.OTHERSPONSOR_URL, {vid:flashVars.originalVideoID}) + "&video_player");
+ youAlsoLink = (StringUtils.joinQuery(configure.OTHERSPONSOR_URL, {vid:flashVars.originalVideoID}) + "&video_player_also");
+
+ if(video.hasLoaded){
+ HTTPUtils.loadSWF(function(hug1:*):void{ //MethodID:83, LocalCount= 2 , MaxScope= 0, MaxStack= 8, CodeLength= 76
+ if(hug1){
+ userSponsorVideo = IUserSponsorVideo(hug1);
+
+ userSponsorVideo.initialize(new UserSponsorVideoClient(info, layer, otherSponsorLink, youAlsoLink, ICapturableVideoContainer(videoController.videoWrapper), vposWatcher));
+ video.appendVideo(ChildVideoName.USER_SPONSOR, userSponsorVideo);
+ }
+ }, userSponsorSWFURL, {});
+ }else{
+ video.appendVideo(ChildVideoName.USER_SPONSOR, userSponsorVideo);
+ }
+ });
+
+ this.nicoViewControllerClient.getSponsorInfo = info;
+
+ EventSequence.current.next();
+ }
+
+ private function loadConfirm():void
+ { //MethodID:87, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 24
+ this.videoLoadGuardian.loadStart(EventSequence.bind(function(hug1:Boolean):void{ //MethodID:86, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 144
+ var hug2:* = undefined;
+
+ if(hug1){
+ EventSequence.current.next();
+ }else if(!isThumbWatchMode){
+ if(_isPlaylist && playlistController){
+ playlistController.onError(PlaylistErrorManager.VIDEO_LOAD_STOP);
+ }else{
+ hug2 = _playerPageMyselfURL;
+
+ SystemMessage.instance.alert(("<p><b>" + __MSG__("動画の読み込みができません。") + "</b></p>" + "<p>" + __MSG__("別のタブかウィンドウで、動画をいくつか読み込み中です。<br />") + __MSG__("読み込みが完了してから再度アクセスしてください。<br />") + "<br />") + __MSG__("<a href=\"[[url]]\">リロードする</a>", hug2) + "</p>");
+ }
+ }
+ }));
+ }
+
+ private function initializePlugin():void
+ { //MethodID:91, LocalCount= 2 , MaxScope= 2, MaxStack= 9, CodeLength= 208
+ internal var loader:ApplibarLoader; //slotID:1
+
+ loader = null;
+
+ if(this.flashVars.watchFlashVars.isNoAppli || this.flashVars.watchFlashVars.isEditMode || this.flashVars.watchFlashVars.isOwnerThreadEditMode || !CrossSharedObject.isPersistable){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ loader = new ApplibarLoader(this.configure.APPLIBAR_URL, {v:this.playerVersion.applibar}, this.initializeInfo.userID, this.flashVars.watchFlashVars.bootApp, this.playerConfig, this.flashVars.watchFlashVars.appliInstalled, this.flashVars.watchFlashVars.isAppliPromotion);
+
+ loader.onLoaded.add(function(hug1:Boolean):void{ //MethodID:88, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 26
+ if(!hug1) return;
+
+ nicoViewControllerClient.applibarLoader = loader;
+
+ loader.setPluginClient(pluginClient);
+ });
+ loader.onPageOpen.add(function():void{ //MethodID:89, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 18
+ if(videoController.isPlaying) videoController.stop();
+ });
+ this._playlistSequences.forEach(function(hug1:Function, hug2:int, hug3:Array):Boolean{ //MethodID:90, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 22
+ if(hug1 == initializePlugin){
+ _playlistSequences.splice(hug2, 1);
+
+ return false;
+ }
+
+ return true;
+ });
+ EventSequence.current.next();
+ }
+
+ private function _delayVideo():void
+ { //MethodID:93, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 101
+ internal var delay:Number; //slotID:1
+ internal var timer:Timer; //slotID:2
+ internal var handler:Function; //slotID:3
+
+ timer = null;
+ handler = null;
+ delay = PlayDelay.getPlayDelayTime(this.initializeInfo.isPremium, this.isThumbWatchMode);
+ timer = new Timer(delay, 1);
+ handler = EventSequence.bind(function():void{ //MethodID:92, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 40
+ timer.stop();
+ timer.reset();
+ timer.removeEventListener(TimerEvent.TIMER_COMPLETE, handler);
+ EventSequence.current.next();
+ });
+ timer.addEventListener(TimerEvent.TIMER_COMPLETE, handler);
+ timer.start();
+ }
+
+ private function _loadVideo():void
+ { //MethodID:97, LocalCount= 5 , MaxScope= 2, MaxStack= 10, CodeLength= 779
+ internal var barrier:EventBarrier; //slotID:1
+ internal var succeeded_all:Boolean; //slotID:2
+ internal var bgmNeeded:Boolean; //slotID:3
+ internal var bgmVideos:Object; //slotID:4
+ internal var cmVideos:Object; //slotID:5
+ internal var bgmInfo:BGMVideoInfo; //slotID:6
+ internal var bgmVideo:IVideo; //slotID:7
+ internal var container:Sprite; //slotID:8
+
+ succeeded_all = false;
+ bgmNeeded = false;
+ bgmVideos = null;
+ cmVideos = null;
+ bgmInfo = null;
+ bgmVideo = null;
+ container = null;
+
+ if(this._logManager) this._logManager.observer.onVideoLoadStarted();
+
+ barrier = new EventBarrier();
+ succeeded_all = true;
+
+ this.systemMessage.informln(__MSG__("動画の読み込みを開始"));
+
+ if((this.getFLV.videoProtocol == "rtmp") || (this.getFLV.videoProtocol == "rtmpe") || (this.getFLV.videoProtocol == "rtmpt") || (this.getFLV.videoProtocol == "rtmpte")) this.systemMessage.informln(__MSG__("動画に接続"));
+
+ this.video.isRetryable = false;
+
+ this.video.load(barrier.bind(function(hug1:Boolean):void{ //MethodID:94, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 110
+ succeeded_all = (succeeded_all && hug1);
+
+ if(!hug1 && !isThumbWatchMode && _logManager) _logManager.observer.onVideoLoadErrorOccurred();
+
+ if(_startVposConfig.halfwayStartEnabled) _startVposConfig.judgebyVideoLength(video);
+
+ if(!_startVposConfig.halfwayStartEnabled){
+ nicoViewController.initVideoEventPipe(vposWatcher);
+ nicoViewController.onVideoInitialized(hug1);
+ }
+
+ _videoLoadSucceeded = hug1;
+ }));
+
+ bgmNeeded = Boolean(this.BGMVideoInfos.length != 0);
+
+ bgmVideos = {};
+ cmVideos = {};
+
+ if(this.flashVars.watchFlashVars && !this.flashVars.watchFlashVars.isOwnerThreadEditMode || this.flashVars.thumbFlashVars && this.BGMVideoInfos && bgmNeeded){
+ for each(bgmInfo in this.BGMVideoInfos){
+ if(bgmInfo.type == BGMVideoInfo.TYPE_BGM){
+ container = new Sprite();
+
+ container.graphics.beginFill(0);
+ container.graphics.drawRect(0, 0, NicoSConstants.ATBGM_VIDEO_WIDTH, NicoSConstants.ATBGM_VIDEO_HEIGHT);
+ }else{
+ container = new MovieClip();
+
+ container.graphics.beginFill(0);
+ container.graphics.drawRect(0, 0, NicoSConstants.ATCM_VIDEO_WIDTH, NicoSConstants.ATCM_VIDEO_HEIGHT);
+ }
+
+ container.graphics.endFill();
+
+ switch(bgmInfo.movieType){
+ case VideoType.FLV:
+ case VideoType.MP4:
+ bgmVideo = new FLVVideo(bgmInfo.URL, container, -1);
+ break;
+ case VideoType.SWF:
+ bgmVideo = new SWFVideo(bgmInfo.URL, container, NaN, false, "", null, "", bgmInfo.isAS3);
+ break;
+ default:
+ throw new Error("未定義のBGMタイプ:" + bgmInfo.movieType);
+ break;
+ }
+
+ if(bgmInfo.type == BGMVideoInfo.TYPE_BGM){
+ bgmVideos[bgmInfo.ID] = bgmVideo;
+ }else{
+ cmVideos[bgmInfo.ID] = bgmVideo;
+ }
+
+ bgmVideo.load(barrier.bind(function(hug1:Boolean):void{ //MethodID:95, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 102
+ if(!succeeded_all) return;
+
+ succeeded_all = (succeeded_all && hug1);
+
+ if(!hug1){
+ if(!isThumbWatchMode) SystemMessage.instance.alert("<p><b>" + __MSG__("引用動画の読み込みに失敗") + "</b></p>" + "<p>" + __MSG__("問題解消に向けて努力しております。") + "<br />" + __MSG__("しばらく時間をおいて再度アクセスしてみて下さい。") + "</p>");
+
+ return;
+ }
+ }));
+ }
+ }
+
+ barrier.finish(EventSequence.bind(function():void{ //MethodID:96, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 145
+ var hug1:* = undefined;
+ var hug2:* = undefined;
+ _wholeVideoLoadSucceeded = succeeded_all;
+
+ if(!succeeded_all){
+ EventSequence.current.next();
+
+ return;
+ }
+
+ if(bgmNeeded){
+ hug1 = {};
+
+ for(hug2 in cmVideos){
+ hug1[hug2] = cmVideos[hug2].movieClip;
+ }
+
+ nicosClient.setBGMVideos(bgmVideos, hug1);
+ }
+
+ if(getFLV.deleted == 0) PlayDelay.countUp();
+
+ if(marqueeClient) marqueeClient.load();
+ EventSequence.current.next();
+ }));
+ }
+
+ private function initializeLogger():void
+ { //MethodID:98, LocalCount= 1 , MaxScope= 1, MaxStack= 13, CodeLength= 63
+ this._logManager.initialize(this.initializeInfo, this.configure, this.flashVars, this.getFLV, this.playerConfig, this.playerInfo, this, this.isThumbWatchMode, this.video, this, this._isPlaylist, this._videoenderTesterConfig);
+ EventSequence.current.next();
+ }
+
+ private function initializeCommentLists():void
+ { //MethodID:102, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 241
+ internal var barrier:EventBarrier; //slotID:1
+ internal var error:CommentStorageError; //slotID:2
+ internal var init_handler:Function; //slotID:3
+
+ barrier = null;
+ error = null;
+ init_handler = null;
+ init_handler = function(hug1:CommentStorageError):void{ //MethodID:99, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 38
+ var hug2:CommentStorageError = hug1;
+ error = hug2;
+
+ if(!(error || hug2)) return;
+ barrier.finish();
+ };
+
+ if(this.nicosClient) this.nicosClient.setup();
+ this.systemMessage.informln(__MSG__("コメントサーバーへの接続を開始"));
+
+ barrier = new EventBarrier();
+ error = null;
+
+ this.commentList.onCommentPostFinished.add(function(hug1:String, hug2:int, hug3:int):void{ //MethodID:100, LocalCount= 5 , MaxScope= 0, MaxStack= 2, CodeLength= 63
+ var hug4:XMLList = null;
+
+ if(hug2 == MessageServerClient.POST_INVALID_THREAD){
+ hug4 = playerInfo.getThreadError;
+
+ if(hug4 && (hug4.post_invalid_thread != "")) SystemMessage.instance.alert(hug4.post_invalid_thread);
+ }
+ });
+ this.commentList.initialize(barrier.bind(init_handler));
+
+ if(this.flashVars.isCommunityThread) this.privateCommentList.initialize(barrier.bind(init_handler));
+
+ if(this.nicoSCommentList) this.nicoSCommentList.initialize(barrier.bind(init_handler));
+
+ if(this.flashVars.hasOwnerThread) this.ownerCommentList.initialize(barrier.bind(init_handler));
+ barrier.finish(function():void{ //MethodID:101, LocalCount= 4 , MaxScope= 0, MaxStack= 4, CodeLength= 201
+ var hug1:String = null;
+
+ if(error){
+ if(error.isInLowerLayer){
+ systemMessage.informln(__MSG__("コメントサーバーへの接続に失敗"));
+ }else{
+ systemMessage.informln(threadStatusCodeToMessage(error.status));
+ }
+
+ nicoViewController.onCommentListInitialized(false);
+
+ return;
+ }
+
+ systemMessage.informln(__MSG__("コメントサーバーへの接続に成功"));
+
+ if(flashVars.thumbFlashVars && flashVars.thumbFlashVars.thumbComment || !isThumbWatchMode && !flashVars.isMymemory){
+ for(hug1 in commentListContainer){
+ commentRouter.add(hug1, commentListContainer[hug1]);
+ }
+ }
+
+ nicoViewController.onCommentListInitialized(true);
+ setupCommentListEventPipes();
+ });
+ EventSequence.current.next();
+ }
+
+ private function setupCommentListEventPipes():void
+ { //MethodID:103, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 51
+ var hug1:ICommentList = null;
+
+ this.nicoViewController.initCommentEventPipe();
+
+ for each(hug1 in this.commentListContainer){
+ hug1.serveCommentList();
+ }
+ }
+
+ private function beginToPlayVideo():void
+ { //MethodID:108, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 216
+ internal var alreadyBegan:Boolean; //slotID:1
+ internal var begin:Function; //slotID:2
+ internal var vpos:Number; //slotID:3
+
+ alreadyBegan = false;
+ vpos = NaN;
+ begin = function():void{ //MethodID:104, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 129
+ if(_startVposConfig.halfwayStartEnabled) nicoViewController.initVideoEventPipe(vposWatcher);
+
+ if(isThumbWatchMode){
+ if(!flashVars.thumbFlashVars.isP4Mode) videoController.play();
+ }else{
+ videoController.startToPlay(_startVposConfig.isAutoPlay || (nicoViewControllerClient.initializeInfo.isPremium && playerConfig.autoPlay));
+
+ if(!_wholeVideoLoadSucceeded) videoController.stop();
+ }
+
+ if(_startVposConfig.halfwayStartEnabled) nicoViewController.onVideoInitialized(_videoLoadSucceeded);
+ };
+
+ this.externalClient.onPlayerReady();
+
+ if(this.isThumbWatchMode){
+ begin();
+
+ return;
+ }
+
+ if(this.flashVars.watchFlashVars.jumpReturnVideoID){
+ vpos = this.flashVars.watchFlashVars.jumpPlayLength;
+
+ if(this._startVposConfig.halfwayStartEnabled) vpos += this.flashVars.watchFlashVars.jumpVPosPlayFrom;
+
+ vpos *= 1000;
+
+ this.vposWatcher.addWatchPoint(function():void{ //MethodID:106, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 97
+ internal var params:Object; //slotID:1
+
+ params = null;
+
+ videoController.stop();
+
+ params = {};
+
+ if(flashVars.watchFlashVars.jumpVPosReturnTo > 0) params.from = flashVars.watchFlashVars.jumpVPosReturnTo;
+ SystemMessage.instance.informJumpMessage(function():void{ //MethodID:105, LocalCount= 4 , MaxScope= 0, MaxStack= 10, CodeLength= 109
+ var hug1:Object = jumper.tossedObject;
+ var hug2:String = flashVars.watchFlashVars.jumpReturnVideoID;
+ var hug3:Object = {};
+
+ if(hug1 && hug1.jumpHistory) hug3 = hug1.jumpHistory;
+
+ hug3[flashVars.watchID] = true;
+
+ jumper.jump(hug2, params, false, {jumpFrom:flashVars.watchID, jumpHistory:hug3, jumpHash_:(hug1 ? hug1.jumpHash : undefined)});
+ }, (flashVars.watchFlashVars.jumpReturnMessage || __MSG__("元の動画にジャンプします")));
+ }, vpos, 0x7FFFFFFF);
+ }
+
+ if(!this._startVposConfig.halfwayStartEnabled){
+ begin();
+
+ return;
+ }
+
+ alreadyBegan = false;
+
+ EventPipe.serial(new EventChunk(this.video, ["onVideoSeeked"]), this.videoController, EventSequence.bind(function(hug1:String, hug2:Array):EventResult{ //MethodID:107, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 28
+ if(!alreadyBegan){
+ alreadyBegan = true;
+
+ begin();
+ }
+
+ return EventResult.BREAK;
+ }));
+ this.videoController.seek(this._startVposConfig.fromMsec, true);
+ }
+
+ private function initializeCommentLayerView():void
+ { //MethodID:109, LocalCount= 2 , MaxScope= 1, MaxStack= 7, CodeLength= 343
+ this.commentLayer = new CommentLayer(this.videoLayerManager.commentLayer, this.playerConfig, this.initializeInfo.isPremium);
+
+ this.commentLayer.addLayer(CommentLayerID.MAIN);
+ this.commentLayer.addLayer(CommentLayerID.OWNER);
+
+ var hug1:Object = {};
+
+ if(this.flashVars.isCommunityThread){
+ hug1[CommentLayerID.MAIN] = [CommentConstants.CL_PRIVATE, CommentConstants.CL_LOCAL];
+ hug1[CommentLayerID.OWNER] = [CommentConstants.CL_OWNER];
+ hug1[CommentLayerID.OPTION] = [CommentConstants.CL_MAIN];
+
+ this.commentLayer.addLayer(CommentLayerID.OPTION, 0);
+ this.commentLayer.setOptionalLayer(CommentLayerID.OPTION);
+ }else{
+ hug1[CommentLayerID.MAIN] = [CommentConstants.CL_MAIN, CommentConstants.CL_LOCAL, CommentConstants.CL_NICOS];
+ hug1[CommentLayerID.OWNER] = [CommentConstants.CL_OWNER];
+ }
+
+ this.commentLayerView = new CommentLayerView(this, this.video, VideoLayerConstants.COMMENT_LAYER_SD_WIDTH, VideoLayerConstants.COMMENT_LAYER_SD_HEIGHT, this.getFLV.videoLength);
+ this.commentViewTransformer = new CommentViewTransformer(hug1, this.commentLayer, this.commentLayerView, (this.nicosClient ? this.nicosClient.player : null));
+
+ if(this.isThumbWatchMode && this.flashVars.thumbFlashVars && this.flashVars.thumbFlashVars.isP4Mode) this.commentViewTransformer.setP4Mode();
+ }
+
+ private function threadStatusCodeToMessage(hug1:int):String
+ { //MethodID:110, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 415
+ var hug2:XMLList = null;
+ var hug3:int = hug1;
+
+ switch(hug3){
+ case MessageServerClient.THREAD_FOUND:
+ return __MSG__("...");
+ case MessageServerClient.THREAD_INVALID:
+ return __MSG__("メッセージサーバーへの接続に失敗");
+ case MessageServerClient.THREAD_NOT_FOUND:
+ hug2 = this.playerInfo.getThreadError;
+
+ if(hug2 && (hug2.thread_not_found != "")) SystemMessage.instance.alert(hug2.thread_not_found);
+
+ return __MSG__("スレッドが見つかりません");
+ case MessageServerClient.THREAD_VERSION:
+ return __MSG__("プレイヤーのバージョンが不正");
+ case MessageServerClient.THREAD_INVALID_ADMINKEY:
+ return __MSG__("AdminKeyが不正");
+ case MessageServerClient.THREAD_TOO_OLD_ADMINKEY:
+ return __MSG__("AdminKeyが失効");
+ case MessageServerClient.THREAD_INVALID_WAYBACKKEY:
+ return __MSG__("WaybackKeyが不正");
+ case MessageServerClient.THREAD_TOO_OLD_WAYBACKKEY:
+ return __MSG__("WaybackKeyが失効");
+ case MessageServerClient.THREAD_INVALID_THREADKEY:
+ return __MSG__("ThreadKeyが不正");
+ case MessageServerClient.THREAD_TOO_OLD_THREADKEY:
+ return __MSG__("ThreadKeyが失効");
+ default:
+ return __MSG__("不明なエラー:code=[code]", hug1);
+ break;
+ }
+ }
+
+ private function _loadThumbViewSWF():void
+ { //MethodID:112, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 42
+ HTTPUtils.loadSWF(EventSequence.bind(function(hug1:*):void{ //MethodID:111, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 73
+ if(!hug1) throw new Error("NicoPlayer._loadThumbViewSWF: load failure.");
+
+ if(!hug1 is MovieClip) throw new Error("NicoPlayer._loadThumbViewSWF: content is not MovieClip.");
+ addChild(hug1 as DisplayObject);
+
+ (hug1 as DisplayObject).visible = false;
+ nicoViewControllerClient.viewRoot = hug1;
+
+ EventSequence.current.next();
+ }), this.configure.THUMBPLAYER_VIEW_URL, {t:this.playerVersion.thumbplayerView});
+ }
+
+ private function _loadThumbControllerSWF():void
+ { //MethodID:114, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 42
+ HTTPUtils.loadSWF(EventSequence.bind(function(hug1:*):void{ //MethodID:113, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 67
+ if(!hug1) throw new Error("NicoPlayer._loadThumbControllerSWF: load failure.");
+
+ nicoViewController = INicoViewController(hug1);
+
+ if(!nicoViewController) throw new Error("NicoPlayer._loadThumbControllerSWF: content is not INicoViewController.");
+ nicoViewController.startInit(nicoViewControllerClient);
+ EventSequence.current.next();
+ }), this.configure.THUMBPLAYER_CONTROLLER_URL, {t:this.playerVersion.thumbplayerController});
+ }
+
+ private function _loadThumbVideoInfo():void
+ { //MethodID:116, LocalCount= 2 , MaxScope= 2, MaxStack= 6, CodeLength= 148
+ internal var apiParams:Object; //slotID:1
+
+ apiParams = {};
+ apiParams["as3"] = "1";
+ apiParams["v"] = this.flashVars.watchID;
+ apiParams["k"] = this.flashVars.thumbFlashVars.thumbPlayKey;
+
+ if(this.flashVars.forceLowMode) apiParams["lo"] = "1";
+
+ if(this.flashVars.economyMode) apiParams["eco"] = this.flashVars.economyMode;
+
+ this.getFLV = new GetFLV(this.configure.THUMBWATCH_URL, apiParams, EventSequence.bind(function(hug1:Boolean):void{ //MethodID:115, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 41
+ nicoViewControllerClient.getFLVData = getFLV;
+ initializeInfo = InitializeInfo.getInstance();
+ nicoViewControllerClient.initializeInfo = initializeInfo;
+
+ EventSequence.current.next();
+ }));
+ }
+
+ private function _initializeModelAndViewThumbWatch():void
+ { //MethodID:119, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 118
+ if(this.flashVars.thumbFlashVars.thumbComment){
+ this.commentRouter = new CommentRouter(this.flashVars, this.playerConfig, null, this.nicosClient, this.initializeInfo.isPremium);
+
+ this.commentRouter.onCommentPostErorr.add(function(hug1:String):void{ //MethodID:117, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 346
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommentRouter.ERROR_POST_184:
+ systemMessage.informComment(__MSG__("チャンネルとコミュニティ動画では184コマンドを使用できません。"));
+ break;
+ case CommentRouter.ERROR_POST_BUTTON_ARGUMENTS:
+ case CommentRouter.ERROR_POST_BUTTON_ONCE:
+ case CommentRouter.ERROR_POST_BUTTON_PREMIUM_ONLY:
+ case CommentRouter.ERROR_POST_BUTTON_DISABLED:
+ systemMessage.informComment(__MSG__("@ボタンは、使用できません。"));
+ break;
+ case CommentRouter.ERROR_POST_AT_COMMENT_UNDEFINED:
+ systemMessage.informComment(__MSG__("その@コメントは存在しないか、投稿者以外は使えないかのどちらかです。"));
+ break;
+ case CommentRouter.ERROR_POST_INITIALIZE:
+ systemMessage.informComment(__MSG__("コメント投稿の準備が未完了です。"));
+ break;
+ case CommentRouter.ERROR_POST_SAME_COMMENT:
+ systemMessage.informComment(__MSG__("同じコメントを連続で投稿することができません。"));
+ break;
+ case CommentRouter.ERROR_POST_CHANNEL_FILTER:
+ systemMessage.informComment(__MSG__("入力されたコメントはチャンネルにより規制されています。"));
+ break;
+ default:
+ break;
+ }
+ });
+ this.commentRouter.onCommentHavingMacro.add(function(hug1:IMacroParserResult):void{ //MethodID:118, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ if(hug1.macroName == "ピザ") systemMessage.informComment("@ピザは、使用できません。");
+ });
+
+ if(this.nicosClient) this.nicosClient.commentRouter = this.commentRouter;
+
+ this.nicoViewControllerClient.commentRouter = this.commentRouter;
+ }
+
+ EventSequence.current.next();
+ }
+ }
+}
+
+//■script002■
+
+package{
+
+ import jp.nicovideo.nicoplayer.NicoPlayer
+
+ //■class(instance)_index:2
+ public class nicoplayer extends NicoPlayer
+ {
+ //static constructor
+ public static function nicoplayer$cinit()
+ { //MethodID:121, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function nicoplayer()
+ { //MethodID:122, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script003■
+
+package jp.nicovideo.ext.config{
+
+ //■class(instance)_index:3
+ public interface IThumbConfig
+ {
+ //static constructor
+ public static function IThumbConfig$cinit()
+ { //MethodID:124, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get nicovideoURL():String; //MethodID:125, dispID:0
+
+ function get playerURL():String; //MethodID:126, dispID:0
+
+ //constructor
+ public function IThumbConfig(); //MethodID:127, dispID:0
+ }
+}
+
+//■script004■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+ //■class(instance)_index:4
+ public class NicoFlashVars extends Object
+ {
+ //static constructor
+ public static function NicoFlashVars$cinit()
+ { //MethodID:129, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ LEAF_NO_LOCK = 0;
+ LEAF_HIDDEN_MENU = 1;
+ LEAF_DISABLE = 2;
+ }
+
+ //static variables/etc.
+ public static const LEAF_NO_LOCK:uint = 0; //slotID:1
+ public static const LEAF_HIDDEN_MENU:uint = 1; //slotID:2
+ public static const LEAF_DISABLE:uint = 2; //slotID:3
+
+ //variables/etc.
+ private var _watchFlashVars:WatchFlashVars; //slotID:0
+ private var _thumbFlashVars:ThumbFlashVars; //slotID:0
+ private var _watchID:String; //slotID:0
+ private var _originalVideoID:String; //slotID:0
+ private var _mylistCount:uint; //slotID:0
+ private var _videoType:String; //slotID:0
+ private var _videoTitle:String = ""; //slotID:0
+ private var _videoDescription:String = ""; //slotID:0
+ private var _isMymemory:Boolean; //slotID:0
+ private var _waitsSWFVideoInit:Boolean; //slotID:0
+ private var _forceLowMode:Boolean; //slotID:0
+ private var _economyMode:String; //slotID:0
+ private var _playerVersionUpdated:String; //slotID:0
+ private var _playerInfoUpdated:String; //slotID:0
+ private var _isCommunityVideo:Boolean; //slotID:0
+ private var _isCommunityThread:Boolean; //slotID:0
+ private var _hasOwnerThread:Boolean; //slotID:0
+ private var _isDeepenedCommentForce:Boolean; //slotID:0
+ private var _isChannel:Boolean; //slotID:0
+ private var _isNoComment:Boolean; //slotID:0
+ private var _importedBGMVideos:Array; //slotID:0
+ private var _category:String; //slotID:0
+ private var _categoryGroup:String; //slotID:0
+ private var _communityID:String; //slotID:0
+ private var _communityGlobalID:String; //slotID:0
+ private var _isNoCommand:Boolean; //slotID:0
+ private var _isNoAtComment:Boolean; //slotID:0
+ private var _isWide:Boolean; //slotID:0
+ private var _countryCode:String; //slotID:0
+ private var _videoDetail:Object; //slotID:0
+ private var _leafSwitch:uint = 0; //slotID:0
+ private var _noRelation:Boolean; //slotID:0
+ private var _noRelatedVideo:Boolean; //slotID:0
+
+ public function get watchID():String
+ { //MethodID:130, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchID;
+ }
+
+ internal function set watchID(hug1:String):void
+ { //MethodID:131, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._watchID = hug1;
+ }
+
+ public function get originalVideoID():String
+ { //MethodID:132, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._originalVideoID;
+ }
+
+ internal function set originalVideoID(hug1:String):void
+ { //MethodID:133, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._originalVideoID = hug1;
+ }
+
+ public function get mylistCount():uint
+ { //MethodID:134, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mylistCount;
+ }
+
+ internal function set mylistCount(hug1:uint):void
+ { //MethodID:135, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._mylistCount = hug1;
+ }
+
+ public function get videoType():String
+ { //MethodID:136, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoType;
+ }
+
+ internal function set videoType(hug1:String):void
+ { //MethodID:137, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoType = hug1;
+ }
+
+ public function get videoTitle():String
+ { //MethodID:138, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoTitle;
+ }
+
+ internal function set videoTitle(hug1:String):void
+ { //MethodID:139, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoTitle = hug1;
+ }
+
+ public function get videoDescription():String
+ { //MethodID:140, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoDescription;
+ }
+
+ internal function set videoDescription(hug1:String):void
+ { //MethodID:141, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoDescription = hug1;
+ }
+
+ public function get isMymemory():Boolean
+ { //MethodID:142, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isMymemory;
+ }
+
+ internal function set isMymemory(hug1:Boolean):void
+ { //MethodID:143, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isMymemory = hug1;
+ }
+
+ public function get waitsSWFVideoInit():Boolean
+ { //MethodID:144, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._waitsSWFVideoInit;
+ }
+
+ internal function set waitsSWFVideoInit(hug1:Boolean):void
+ { //MethodID:145, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._waitsSWFVideoInit = hug1;
+ }
+
+ public function get forceLowMode():Boolean
+ { //MethodID:146, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._forceLowMode;
+ }
+
+ internal function set forceLowMode(hug1:Boolean):void
+ { //MethodID:147, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._forceLowMode = hug1;
+ }
+
+ public function get economyMode():String
+ { //MethodID:148, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._economyMode;
+ }
+
+ internal function set economyMode(hug1:String):void
+ { //MethodID:149, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._economyMode = hug1;
+ }
+
+ public function get playerVersionUpdated():String
+ { //MethodID:150, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerVersionUpdated;
+ }
+
+ internal function set playerVersionUpdated(hug1:String):void
+ { //MethodID:151, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playerVersionUpdated = hug1;
+ }
+
+ public function get playerInfoUpdated():String
+ { //MethodID:152, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerInfoUpdated;
+ }
+
+ internal function set playerInfoUpdated(hug1:String):void
+ { //MethodID:153, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playerInfoUpdated = hug1;
+ }
+
+ public function get isCommunityVideo():Boolean
+ { //MethodID:154, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isCommunityVideo;
+ }
+
+ internal function set isCommunityVideo(hug1:Boolean):void
+ { //MethodID:155, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isCommunityVideo = hug1;
+ }
+
+ public function get isCommunityThread():Boolean
+ { //MethodID:156, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isCommunityThread;
+ }
+
+ internal function set isCommunityThread(hug1:Boolean):void
+ { //MethodID:157, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isCommunityThread = hug1;
+ }
+
+ public function get hasOwnerThread():Boolean
+ { //MethodID:158, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasOwnerThread;
+ }
+
+ internal function set hasOwnerThread(hug1:Boolean):void
+ { //MethodID:159, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hasOwnerThread = hug1;
+ }
+
+ public function get isDeepenedCommentForce():Boolean
+ { //MethodID:160, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isDeepenedCommentForce;
+ }
+
+ internal function set isDeepenedCommentForce(hug1:Boolean):void
+ { //MethodID:161, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isDeepenedCommentForce = hug1;
+ }
+
+ public function get importedBGMVideos():Array
+ { //MethodID:162, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._importedBGMVideos;
+ }
+
+ internal function set importedBGMVideos(hug1:Array):void
+ { //MethodID:163, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._importedBGMVideos = hug1;
+ }
+
+ public function get isChannel():Boolean
+ { //MethodID:164, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isChannel;
+ }
+
+ internal function set isChannel(hug1:Boolean):void
+ { //MethodID:165, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isChannel = hug1;
+ }
+
+ public function get isNoComment():Boolean
+ { //MethodID:166, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoComment;
+ }
+
+ internal function set isNoComment(hug1:Boolean):void
+ { //MethodID:167, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoComment = hug1;
+ }
+
+ public function get category():String
+ { //MethodID:168, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._category;
+ }
+
+ internal function set category(hug1:String):void
+ { //MethodID:169, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._category = hug1;
+ }
+
+ public function get categoryGroup():String
+ { //MethodID:170, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._categoryGroup;
+ }
+
+ internal function set categoryGroup(hug1:String):void
+ { //MethodID:171, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._categoryGroup = hug1;
+ }
+
+ public function get watchFlashVars():WatchFlashVars
+ { //MethodID:172, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchFlashVars;
+ }
+
+ internal function set watchFlashVars(hug1:WatchFlashVars):void
+ { //MethodID:173, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._watchFlashVars = hug1;
+ }
+
+ public function get thumbFlashVars():ThumbFlashVars
+ { //MethodID:174, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbFlashVars;
+ }
+
+ internal function set thumbFlashVars(hug1:ThumbFlashVars):void
+ { //MethodID:175, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbFlashVars = hug1;
+ }
+
+ public function get communityID():String
+ { //MethodID:176, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._communityID;
+ }
+
+ internal function set communityID(hug1:String):void
+ { //MethodID:177, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._communityID = hug1;
+ }
+
+ public function get communityGlobalID():String
+ { //MethodID:178, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._communityGlobalID;
+ }
+
+ internal function set communityGlobalID(hug1:String):void
+ { //MethodID:179, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._communityGlobalID = hug1;
+ }
+
+ public function get isNoCommand():Boolean
+ { //MethodID:180, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoCommand;
+ }
+
+ internal function set isNoCommand(hug1:Boolean):void
+ { //MethodID:181, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoCommand = hug1;
+ }
+
+ public function get isNoAtComment():Boolean
+ { //MethodID:182, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoAtComment;
+ }
+
+ internal function set isNoAtComment(hug1:Boolean):void
+ { //MethodID:183, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoAtComment = hug1;
+ }
+
+ public function get isWide():Boolean
+ { //MethodID:184, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isWide;
+ }
+
+ internal function set isWide(hug1:Boolean):void
+ { //MethodID:185, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isWide = hug1;
+ }
+
+ public function get countryCode():String
+ { //MethodID:186, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._countryCode;
+ }
+
+ internal function set countryCode(hug1:String):void
+ { //MethodID:187, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._countryCode = hug1;
+ }
+
+ public function get videoDetail():Object
+ { //MethodID:188, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoDetail;
+ }
+
+ internal function set videoDetail(hug1:Object):void
+ { //MethodID:189, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoDetail = hug1;
+ }
+
+ public function get leafSwitch():uint
+ { //MethodID:190, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._leafSwitch;
+ }
+
+ internal function set leafSwitch(hug1:uint):void
+ { //MethodID:191, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._leafSwitch = hug1;
+ }
+
+ public function get forceRelationInvisible():Boolean
+ { //MethodID:192, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noRelation;
+ }
+
+ internal function set forceRelationInvisible(hug1:Boolean):void
+ { //MethodID:193, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noRelation = hug1;
+ }
+
+ public function get noRelatedVideo():Boolean
+ { //MethodID:194, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noRelatedVideo;
+ }
+
+ internal function set noRelatedVideo(hug1:Boolean):void
+ { //MethodID:195, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noRelatedVideo = hug1;
+ }
+
+ //constructor
+ public function NicoFlashVars()
+ { //MethodID:196, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script005■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:5
+ public class VideoType extends Object
+ {
+ //static constructor
+ public static function VideoType$cinit()
+ { //MethodID:198, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ FLV = "flv";
+ MP4 = "mp4";
+ SWF = "swf";
+ }
+
+ //static variables/etc.
+ public static const FLV:String = "flv"; //slotID:1
+ public static const MP4:String = "mp4"; //slotID:2
+ public static const SWF:String = "swf"; //slotID:3
+
+ //constructor
+ public function VideoType()
+ { //MethodID:199, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script006■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ //■class(instance)_index:6
+ public class CommentLayerID extends Object
+ {
+ //static constructor
+ public static function CommentLayerID$cinit()
+ { //MethodID:201, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ MAIN = "main";
+ OWNER = "owner";
+ OPTION = "option";
+ }
+
+ //static variables/etc.
+ public static const MAIN:String = "main"; //slotID:1
+ public static const OWNER:String = "owner"; //slotID:2
+ public static const OPTION:String = "option"; //slotID:3
+
+ //constructor
+ public function CommentLayerID()
+ { //MethodID:202, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script007■
+
+package jp.nicovideo.nicoplayer.models.video.swf{
+
+ //■class(instance)_index:7
+ public interface ISWFVideoClient
+ {
+ //static constructor
+ public static function ISWFVideoClient$cinit()
+ { //MethodID:204, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function getSourceData(hug1:Function):void; //MethodID:205, dispID:0
+
+ //constructor
+ public function ISWFVideoClient(); //MethodID:206, dispID:0
+ }
+}
+
+//■script008■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:8
+ public interface ITimeline
+ {
+ //static constructor
+ public static function ITimeline$cinit()
+ { //MethodID:208, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get length():Number; //MethodID:209, dispID:0
+
+ function get vpos():Number; //MethodID:210, dispID:0
+
+ function get isInitialized():Boolean; //MethodID:211, dispID:0
+
+ //constructor
+ public function ITimeline(); //MethodID:212, dispID:0
+ }
+}
+
+//■script009■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.DisplayObject
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:9
+ public interface IVideo implements ITimeline
+ {
+ //static constructor
+ public static function IVideo$cinit()
+ { //MethodID:214, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function load(hug1:Function):void; //MethodID:215, dispID:0
+
+ function play():void; //MethodID:216, dispID:0
+
+ function stop():void; //MethodID:217, dispID:0
+
+ function seek(hug1:Number):void; //MethodID:218, dispID:0
+
+ function resize(hug1:Number, hug2:Number):void; //MethodID:219, dispID:0
+
+ function get loadedLength():Number; //MethodID:220, dispID:0
+
+ function get isPlaying():Boolean; //MethodID:221, dispID:0
+
+ function get isPausing():Boolean; //MethodID:222, dispID:0
+
+ function get isSeeking():Boolean; //MethodID:223, dispID:0
+
+ function get isEnd():Boolean; //MethodID:224, dispID:0
+
+ function get isBuffering():Boolean; //MethodID:225, dispID:0
+
+ function set isLoop(hug1:Boolean):void; //MethodID:226, dispID:0
+
+ function set volume(hug1:Number):void; //MethodID:227, dispID:0
+
+ function get isControllable():Boolean; //MethodID:228, dispID:0
+
+ function get videoPlayerStatus():String; //MethodID:229, dispID:0
+
+ function get layer():DisplayObject; //MethodID:230, dispID:0
+
+ function get onVideoBufferingStarted():Functions; //MethodID:231, dispID:0
+
+ function get onVideoLoadComplete():Functions; //MethodID:232, dispID:0
+
+ function get contentWidth():int; //MethodID:233, dispID:0
+
+ function get contentHeight():int; //MethodID:234, dispID:0
+
+ //constructor
+ public function IVideo(); //MethodID:235, dispID:0
+ }
+}
+
+//■script010■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.DisplayObject
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:10
+ public interface IChildVideo implements IVideo
+ {
+ //static constructor
+ public static function IChildVideo$cinit()
+ { //MethodID:237, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function close():void; //MethodID:238, dispID:0
+
+ function get onVideoEnded():Functions; //MethodID:239, dispID:0
+
+ function get onVideoSeeked():Functions; //MethodID:240, dispID:0
+
+ function get onVideoSeeking():Functions; //MethodID:241, dispID:0
+
+ function get onVideoPlayed():Functions; //MethodID:242, dispID:0
+
+ function get onVideoStopped():Functions; //MethodID:243, dispID:0
+
+ function get onVideoError():Functions; //MethodID:244, dispID:0
+
+ function get source():DisplayObject; //MethodID:245, dispID:0
+
+ //constructor
+ public function IChildVideo(); //MethodID:246, dispID:0
+ }
+}
+
+//■script011■
+
+package jp.nicovideo.nicoplayer.models.video.swf{
+
+ //■class(instance)_index:11
+ public interface IGameRankingClient implements ISWFVideoClient
+ {
+ //static constructor
+ public static function IGameRankingClient$cinit()
+ { //MethodID:248, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function getThumbnailURL(hug1:String, hug2:Function):void; //MethodID:249, dispID:0
+
+ //constructor
+ public function IGameRankingClient(); //MethodID:250, dispID:0
+ }
+}
+
+//■script012■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.DisplayObject
+ import flash.display.Loader
+ import flash.display.LoaderInfo
+ import flash.display.MovieClip
+ import flash.display.Sprite
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.IOErrorEvent
+ import flash.events.ProgressEvent
+ import flash.events.SecurityErrorEvent
+ import flash.media.SoundTransform
+ import flash.net.URLRequest
+ import flash.system.ApplicationDomain
+ import flash.system.LoaderContext
+ import flash.system.Security
+ import flash.system.SecurityDomain
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.video.swf.ISWFVideoClient
+ import jp.nicovideo.nicoplayer.models.video.swf.ISWFVideoContent
+ import jp.nicovideo.nicoplayer.models.video.swf.SWFVideoType
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.StringUtils
+ import org.libspark.utils.ForcibleLoader
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:12
+ public class SWFVideo extends Object implements IChildVideo
+ {
+ //static constructor
+ public static function SWFVideo$cinit()
+ { //MethodID:252, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function SWFVideo(hug1:String, hug2:Sprite, hug3:Number, hug4:Boolean=false, hug5:String, hug6:NicoConfig=null, hug7:String, hug8:Boolean=false)
+ { //MethodID:253, LocalCount= 9 , MaxScope= 1, MaxStack= 2, CodeLength= 156
+ this._onVideoEnded = new Functions();
+ this._onVideoSeeked = new Functions();
+ this._onVideoSeeking = new Functions();
+ this._onVideoPlayed = new Functions();
+ this._onVideoStopped = new Functions();
+ this._onVideoBufferingStarted = new Functions();
+ this._onVideoLoadComplete = new Functions();
+ this._onVideoError = new Functions();
+
+ super();
+
+ this._this = this;
+ this._url = hug1;
+ this._length = hug3;
+ this._videoLayer = hug2;
+ this._layerWidth = this._videoLayer.width;
+ this._layerHeight = this._videoLayer.height;
+ this._isAS3 = hug8;
+
+ if(!hug4) return;
+
+ this._waitingLoad = true;
+ this._videoTitle = hug5;
+ this._configure = hug6;
+ this._videoID = hug7;
+ }
+
+ //variables/etc.
+ private var _this:IVideo; //slotID:0
+ private var _videoLayer:Sprite; //slotID:0
+ private var _video:MovieClip; //slotID:0
+ private var _url:String; //slotID:0
+ private var _length:Number; //slotID:0
+ private var _bytesLoaded:uint = 0; //slotID:0
+ private var _bytesTotal:uint; //slotID:0
+ private var _isInitialized:Boolean = false; //slotID:0
+ private var _isLoaded:Boolean = false; //slotID:0
+ private var _isPlaying:Boolean = false; //slotID:0
+ private var _waitingLoad:Boolean = false; //slotID:0
+ private var _videoTitle:String; //slotID:0
+ private var _configure:NicoConfig; //slotID:0
+ private var _videoID:String; //slotID:0
+ private var _isLoop:Boolean; //slotID:0
+ private const _onVideoEnded:Functions; //slotID:0
+ private const _onVideoSeeked:Functions; //slotID:0
+ private const _onVideoSeeking:Functions; //slotID:0
+ private const _onVideoPlayed:Functions; //slotID:0
+ private const _onVideoStopped:Functions; //slotID:0
+ private const _onVideoBufferingStarted:Functions; //slotID:0
+ private const _onVideoLoadComplete:Functions; //slotID:0
+ private const _onVideoError:Functions; //slotID:0
+ private var _isAS3:Boolean = false; //slotID:0
+ private var _isLoading:Boolean = false; //slotID:0
+ private var _isPausing:Boolean = true; //slotID:0
+ private var _isEnd:Boolean = false; //slotID:0
+ private var _isSeeking:Boolean = false; //slotID:0
+ private var _layerWidth:int; //slotID:0
+ private var _layerHeight:int; //slotID:0
+ private var _contentWidth:int; //slotID:0
+ private var _contentHeight:int; //slotID:0
+
+ public function get movieClip():MovieClip
+ { //MethodID:254, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function load(hug1:Function):void
+ { //MethodID:261, LocalCount= 4 , MaxScope= 5, MaxStack= 6, CodeLength= 414
+ internal var f:Function; //slotID:1
+ internal var loader:Loader; //slotID:2
+ internal var context:LoaderContext; //slotID:3
+ internal var request:URLRequest; //slotID:4
+ internal var info:LoaderInfo; //slotID:5
+ internal var applied:Boolean; //slotID:6
+ internal var ioErrorHandler:Function; //slotID:7
+ internal var securityErrorHandler:Function; //slotID:8
+ internal var eventDispatcher:EventDispatcher; //slotID:9
+
+ info = null;
+ applied = false;
+ ioErrorHandler = null;
+ securityErrorHandler = null;
+ eventDispatcher = null;
+ f = hug1;
+ ioErrorHandler = function(hug1:IOErrorEvent):void{ //MethodID:255, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ _isLoading = false;
+
+ f(false);
+ };
+
+ securityErrorHandler = function(hug1:SecurityErrorEvent):void{ //MethodID:256, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ _isLoading = false;
+
+ f(false);
+ };
+
+ loader = new Loader();
+ context = new LoaderContext(false, ApplicationDomain.currentDomain, ((Security.sandboxType == Security.REMOTE) ? SecurityDomain.currentDomain : null));
+ request = new URLRequest(this._url);
+ info = loader.contentLoaderInfo;
+
+ info.addEventListener(Event.INIT, function(hug1:Event):void{ //MethodID:257, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 160
+ _bytesLoaded = info.bytesLoaded;
+ _video = (hug1.target.content as MovieClip);
+ _contentWidth = hug1.target.width;
+ _contentHeight = hug1.target.height;
+
+ if(!_video){
+ f(false);
+
+ return;
+ }
+
+ _video.stop();
+
+ _video.soundTransform = new SoundTransform(0.0);
+ _length = ((_video.totalFrames / 25) * 1000);
+
+ resize(_layerWidth, _layerHeight);
+
+ if(_waitingLoad){
+ initializeSWFVideo(f);
+
+ return;
+ }
+
+ _isInitialized = true;
+
+ f(true);
+ });
+ info.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:258, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ _isLoaded = true;
+ _isLoading = false;
+ });
+
+ applied = false;
+ info.addEventListener(ProgressEvent.PROGRESS, function(hug1:ProgressEvent):void{ //MethodID:259, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 55
+ _bytesTotal = hug1.bytesTotal;
+ _bytesLoaded = hug1.bytesLoaded;
+
+ if(!applied && (_bytesTotal > 0)){
+ applied = true;
+
+ _onVideoBufferingStarted.apply();
+ }
+ });
+ info.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:260, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ _onVideoLoadComplete.apply(_bytesTotal);
+ });
+ info.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
+ info.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
+ this._videoLayer.addChild(loader);
+
+ this._isLoading = true;
+
+ try{
+ if(this._isAS3){
+ loader.load(request, context);
+ }else{
+ eventDispatcher = new EventDispatcher();
+
+ eventDispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
+ eventDispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
+ new ForcibleLoader(loader, eventDispatcher).load(request);
+ }
+ }
+ catch(error:Error){
+ ObjectUtils.callLater(f, false);
+ }
+ }
+
+ public function resize(hug1:Number, hug2:Number):void
+ { //MethodID:262, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 199
+ this._layerWidth = hug1;
+ this._layerHeight = hug2;
+
+ if(!this._video || (this._contentWidth <= 0) || (this._contentHeight <= 0)) return;
+
+ var hug3:Number = 1;
+
+ if((this._contentHeight / this._contentWidth) < (hug2 / hug1)){
+ hug3 = (this._layerWidth / this._contentWidth);
+ var hug4:Number = hug3;
+ this._video.scaleY = hug4;
+ this._video.scaleX = hug4;
+ this._video.x = 0;
+ this._video.y = ((this._layerHeight - (this._contentHeight * hug3)) / 2);
+ }else{
+ hug3 = (this._layerHeight / this._contentHeight);
+ var hug4:Number = hug3;
+ this._video.scaleY = hug4;
+ this._video.scaleX = hug4;
+ this._video.x = ((this._layerWidth - (this._contentWidth * hug3)) / 2);
+ this._video.y = 0;
+ }
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:263, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPlaying;
+ }
+
+ public function get isPausing():Boolean
+ { //MethodID:264, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPausing;
+ }
+
+ public function get isSeeking():Boolean
+ { //MethodID:265, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isSeeking;
+ }
+
+ public function get isEnd():Boolean
+ { //MethodID:266, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isEnd;
+ }
+
+ public function get isBuffering():Boolean
+ { //MethodID:267, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isLoading;
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:268, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 149
+ if((hug1 < 0) || (hug1 > 1)) return;
+
+ hug1 *= 100;
+
+ if(hug1 == 0){
+ this._video.soundTransform = new SoundTransform(0);
+ return;
+ }
+
+ if(hug1 == 100){
+ this._video.soundTransform = new SoundTransform(1);
+ return;
+ }
+
+ hug1 = ((hug1 * (4 / 5)) + 20);
+ var hug2:Number = this._getACurb(100);
+ var hug3:Number = (this._getACurb(hug1) * (1 / hug2));
+
+ if(hug3 < 0.01){
+ this._video.soundTransform = new SoundTransform(0.01);
+ return;
+ }
+
+ this._video.soundTransform = new SoundTransform(hug3);
+ }
+
+ private function _getACurb(hug1:Number):Number
+ { //MethodID:269, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 35
+ return (((0.6838 * Math.pow(hug1, 3)) - (1.7262 * Math.pow(hug1, 2))) + (2.4252 * hug1));
+ }
+
+ private function initializeSWFVideo(hug1:Function):void
+ { //MethodID:271, LocalCount= 3 , MaxScope= 2, MaxStack= 7, CodeLength= 198
+ internal var f:Function; //slotID:1
+ internal var content:ISWFVideoContent; //slotID:2
+ internal var client:ISWFVideoClient; //slotID:3
+
+ client = null;
+ f = hug1;
+ content = ISWFVideoContent(this._video);
+
+ if(!content) throw new Error("SWFVideo.initializeSWFVideo: invalid type.");
+
+ if(content.videoType == SWFVideoType.INTERRUPT_GAME_RANKING){
+ client = new _GameRankingClient(this._videoID, this._configure.GETGAMERANKING_URL, this._configure.GETTHUMBINFO_URL);
+ }else if(content.videoType == SWFVideoType.INTERRUPT_ENQUETE_RESULT){
+ client = new _SWFVideoClient(this._videoID, StringUtils.joinQuery(this._configure.GETENQUESTERESULT_URL, {enquete_id:this._videoID}));
+ }else{
+ throw new Error("SWFVideo.initializeSWFVideo: invalid videoType.");
+ }
+
+ content.initialize(client, function():void{ //MethodID:270, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ _isInitialized = true;
+
+ f(true);
+ });
+ }
+
+ private function _onEnterFrame(hug1:Event):void
+ { //MethodID:272, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 68
+ if(!this._isEnd && (this._video.currentFrame == this._video.totalFrames)){
+ this._video.stop();
+
+ this._isPausing = false;
+ this._isPlaying = false;
+ this._isEnd = true;
+
+ this._onVideoEnded.apply(this._isLoop);
+ }
+ }
+
+ public function play():void
+ { //MethodID:273, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ this._video.gotoAndPlay(this._video.currentFrame);
+
+ this._isPlaying = true;
+ this._isPausing = false;
+ this._isEnd = false;
+
+ this._video.addEventListener(Event.ENTER_FRAME, this._onEnterFrame);
+ ObjectUtils.callLater(this._onVideoPlayed.apply);
+ }
+
+ public function stop():void
+ { //MethodID:274, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 47
+ this._video.stop();
+
+ this._isPausing = true;
+
+ this._video.removeEventListener(Event.ENTER_FRAME, this._onEnterFrame);
+ ObjectUtils.callLater(this._onVideoStopped.apply);
+ }
+
+ public function close():void
+ { //MethodID:275, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:277, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 65
+ internal var vpos:Number; //slotID:1
+ internal var _frame:uint; //slotID:2
+
+ _frame = 0;
+ vpos = hug1;
+ this._isEnd = false;
+ this._isSeeking = true;
+ _frame = (Math.round((vpos / 1000) * 25) + 1);
+
+ ObjectUtils.callLater(function():void{ //MethodID:276, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 49
+ _isSeeking = false;
+
+ if(_isPausing){
+ _video.gotoAndStop(_frame);
+ }else{
+ _video.gotoAndPlay(_frame);
+ }
+
+ _onVideoSeeked.apply(vpos);
+ });
+ }
+
+ public function get length():Number
+ { //MethodID:278, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._length;
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:279, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 32
+ return ((Number(this._bytesLoaded) / Number(this._bytesTotal)) * Number(this._length));
+ }
+
+ public function get vpos():Number
+ { //MethodID:280, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ return (((this._video.currentFrame - 1) / 25) * 1000);
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:281, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInitialized;
+ }
+
+ public function get isControllable():Boolean
+ { //MethodID:282, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInitialized;
+ }
+
+ public function set isLoop(hug1:Boolean):void
+ { //MethodID:283, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isLoop = hug1;
+ }
+
+ public function get onVideoSeeked():Functions
+ { //MethodID:284, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoSeeked;
+ }
+
+ public function get onVideoSeeking():Functions
+ { //MethodID:285, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoSeeking;
+ }
+
+ public function get onVideoPlayed():Functions
+ { //MethodID:286, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoPlayed;
+ }
+
+ public function get onVideoStopped():Functions
+ { //MethodID:287, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoStopped;
+ }
+
+ public function get onVideoEnded():Functions
+ { //MethodID:288, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoEnded;
+ }
+
+ public function get onVideoBufferingStarted():Functions
+ { //MethodID:289, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoBufferingStarted;
+ }
+
+ public function get onVideoLoadComplete():Functions
+ { //MethodID:290, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoLoadComplete;
+ }
+
+ public function get onVideoError():Functions
+ { //MethodID:291, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoError;
+ }
+
+ public function get layer():DisplayObject
+ { //MethodID:292, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayer;
+ }
+
+ public function get source():DisplayObject
+ { //MethodID:293, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function get videoPlayerStatus():String
+ { //MethodID:294, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 69
+ if(this._isEnd) return VideoPlayerStatus.END;
+
+ if(this._isPlaying){
+ if(this._isPausing) return VideoPlayerStatus.PAUSED;
+
+ return VideoPlayerStatus.PLAYING;
+ }
+
+ if(this._isLoading) return VideoPlayerStatus.LOADING;
+
+ return VideoPlayerStatus.STOPPED;
+ }
+
+ public function get contentWidth():int
+ { //MethodID:295, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._contentWidth;
+ }
+
+ public function get contentHeight():int
+ { //MethodID:296, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._contentHeight;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get videoLayer():Sprite
+ { //MethodID:297, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayer;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get video():MovieClip
+ { //MethodID:298, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get isLoop():Boolean
+ { //MethodID:299, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isLoop;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get waitingLoad():Boolean
+ { //MethodID:300, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._waitingLoad;
+ }
+ }
+}
+
+import flash.events.Event
+import flash.events.IOErrorEvent
+import flash.events.SecurityErrorEvent
+import flash.net.URLLoader
+import flash.net.URLRequest
+import jp.nicovideo.util.StringUtils
+
+//■class(instance)_index:13
+//private
+class _SWFVideoClient extends Object implements ISWFVideoClient
+{
+ //static constructor
+ public static function _SWFVideoClient$cinit()
+ { //MethodID:301, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SWFVideoClient(hug1:String, hug2:String):void
+ { //MethodID:302, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._videoID = hug1;
+ this._apiURL = hug2;
+ }
+
+ //variables/etc.
+ private var _videoID:String; //slotID:0
+ private var _apiURL:String; //slotID:0
+
+ public function getSourceData(hug1:Function):void
+ { //MethodID:306, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 99
+ private var callback:Function; //slotID:1
+ private var loader:URLLoader; //slotID:2
+
+ loader = null;
+ callback = hug1;
+ loader = new URLLoader();
+
+ loader.load(new URLRequest(this._apiURL));
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:303, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 58
+ var hug2:XML = new XML(loader.data);
+
+ if(hug2.attribute("status").toString() == "ok"){
+ callback(true, hug2);
+ }else{
+ callback(false, null);
+ }
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:304, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:SecurityErrorEvent):void{ //MethodID:305, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ }
+}
+
+//■class(instance)_index:14
+//private
+class _GameRankingClient extends Object implements IGameRankingClient
+{
+ //static constructor
+ public static function _GameRankingClient$cinit()
+ { //MethodID:307, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _GameRankingClient(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:308, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 34
+ super();
+
+ this._videoID = hug1;
+ this._getGameRankURL = StringUtils.joinQuery(hug2, {game_id:hug1});
+ this._getThumbInfoURL = hug3;
+ }
+
+ //variables/etc.
+ private var _videoID:String; //slotID:0
+ private var _getGameRankURL:String; //slotID:0
+ private var _getThumbInfoURL:String; //slotID:0
+
+ public function getSourceData(hug1:Function):void
+ { //MethodID:312, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 99
+ private var callback:Function; //slotID:1
+ private var loader:URLLoader; //slotID:2
+
+ loader = null;
+ callback = hug1;
+ loader = new URLLoader();
+
+ loader.load(new URLRequest(this._getGameRankURL));
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:309, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 21
+ callback(true, new XML(loader.data));
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:310, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:SecurityErrorEvent):void{ //MethodID:311, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ }
+
+ public function getThumbnailURL(hug1:String, hug2:Function):void
+ { //MethodID:316, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 109
+ private var videoID:String; //slotID:1
+ private var callback:Function; //slotID:2
+ private var loader:URLLoader; //slotID:3
+
+ loader = null;
+ videoID = hug1;
+ callback = hug2;
+ loader = new URLLoader();
+
+ loader.load(new URLRequest(this._getThumbInfoURL + videoID));
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:313, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 49
+ var hug2:String = XML(loader.data).thumb.thumbnail_url;
+
+ if(!hug2){
+ callback(false, null);
+ }else{
+ callback(true, hug2);
+ }
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:314, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:SecurityErrorEvent):void{ //MethodID:315, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 11
+ callback(false, null);
+ });
+ }
+}
+
+//■script013■
+
+package jp.nicovideo.util.events{
+
+ import flash.errors.IllegalOperationError
+
+ //■class(instance)_index:15
+ public class EventBarrier extends Object
+ {
+ //static constructor
+ public static function EventBarrier$cinit()
+ { //MethodID:318, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function EventBarrier()
+ { //MethodID:319, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var __counter:int = 0; //slotID:0
+ private var __f:Function; //slotID:0
+
+ public function bind(hug1:Function):Function
+ { //MethodID:321, LocalCount= 5 , MaxScope= 2, MaxStack= 2, CodeLength= 55
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ if(this.__counter <= (-1)) throw new IllegalOperationError("Barrier have been broken.");
+
+ this.__counter++;
+ return function(... rest):*{ //MethodID:320, LocalCount= 7 , MaxScope= 4, MaxStack= 5, CodeLength= 151
+ public var args:Array; //slotID:1
+
+ internal var args:Object = rest;
+
+ try{
+ var hug3:* = f.apply(null, args);
+ return hug3;
+ }
+ finally{
+ if(((--__counter) <= 0) && (__f is Function)) __finish_0();
+ }
+ };
+ }
+
+ public function finish(hug1:Function=null):void
+ { //MethodID:322, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 37
+ if(!(hug1 is Function) || (this.__counter <= 0)){
+ this.__finish_0(hug1);
+
+ return;
+ }
+
+ this.__f = hug1;
+ }
+
+ private function __finish_0(hug1:Function=null):void
+ { //MethodID:323, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 52
+ if(this.__counter <= (-1)) return;
+
+ this.__counter = -1;
+ var hug2:Function = this.__f;
+ hug1 = hug2;
+
+ if(hug1 || hug2) hug1();
+ }
+ }
+}
+
+//■script014■
+
+package jp.nicovideo.util.api{
+
+ //■class(instance)_index:16
+ public interface IAPICacheProxy
+ {
+ //static constructor
+ public static function IAPICacheProxy$cinit()
+ { //MethodID:325, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function load(hug1:Function, hug2:Boolean):void; //MethodID:326, dispID:0
+
+ function get isCacheUsable():Boolean; //MethodID:327, dispID:0
+
+ //constructor
+ public function IAPICacheProxy(); //MethodID:328, dispID:0
+ }
+}
+
+//■script015■
+
+package jp.nicovideo.util.api{
+
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.TimerEvent
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import flash.utils.Timer
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.storage.LocalStorage
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:18
+ public class APICacheProxy extends Object implements IAPICacheProxy
+ {
+ //static constructor
+ public static function APICacheProxy$cinit()
+ { //MethodID:332, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function APICacheProxy(hug1:URLRequest, hug2:Number=0.0, hug3:Number=0.0, hug4:String=null, hug5:Boolean=true)
+ { //MethodID:333, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 147
+ this._loader = new URLLoader();
+ this._onLoaded = [];
+
+ super();
+
+ if((hug1 == null) || (hug1.url == null)) throw new ArgumentError("APICacheProxy.APICacheProxy: illegal parameter.");
+
+ this._request = hug1;
+ this._interval = ((isNaN(hug2) || (hug2 < 0)) ? 0 : hug2);
+ this._cacheExpire = ((isNaN(hug3) || (hug3 < 0)) ? 0 : hug3);
+ this._cacheKey = hug4;
+ this._useCommonCache = hug5;
+
+ this._constructor();
+ }
+
+ //variables/etc.
+ private var _request:URLRequest; //slotID:0
+ private var _loader:URLLoader; //slotID:0
+ private var _interval:Number; //slotID:0
+ private var _cacheExpire:Number = 0.0; //slotID:0
+ private var _cache:LocalStorage; //slotID:0
+ private var _cacheData:_CacheData; //slotID:0
+ private var _onLoaded:Array; //slotID:0
+ private var _loadTimer:Timer; //slotID:0
+ private var _isLocked:Boolean = false; //slotID:0
+ private var _cacheKey:String; //slotID:0
+ private var _useCommonCache:Boolean; //slotID:0
+
+ private function _constructor():void
+ { //MethodID:337, LocalCount= 3 , MaxScope= 5, MaxStack= 5, CodeLength= 295
+ internal var path:String; //slotID:1
+
+ path = this._request.url.replace(new RegExp("[\.\/~\\%&:;\"',<>?#]", "g"), "_");
+
+ try{
+ this._cache = (this._useCommonCache ? CrossSharedObject.getStorage(path) : CrossSharedObject.getStorageNative(path));
+ this._cacheData = new _CacheData(this._cache.data);
+ }
+ catch(e:Error){
+ _cache = null;
+ _cacheData = new _CacheData();
+ }
+
+ if((((this._cacheData.cacheKey == null) || ((this._cacheKey != null) && (this._cacheData.cacheKey != this._cacheKey))) || isNaN(this._cacheData.lastAccessTime)) || (this._cacheData.source == undefined)){
+ this._cacheData.cacheKey = "";
+ this._cacheData.lastAccessTime = -1;
+ this._cacheData.source = null;
+
+ this._updateCacheData();
+ }
+
+ this._loadTimer = new Timer(0, 1);
+
+ this._loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:335, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 81
+ internal var event:Event; //slotID:1
+
+ event = hug1;
+ _isLocked = true;
+ _cacheData.cacheKey = _cacheKey;
+ _cacheData.lastAccessTime = TimeUtils.time;
+ _cacheData.source = _loader.data;
+
+ _updateCacheData();
+ _reflect(true, _cacheData.source);
+ ObjectUtils.callLater(function():void{ //MethodID:334, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 8
+ _isLocked = false;
+ });
+ });
+ this._loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:336, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 10
+ _reflect(false, null);
+ });
+ }
+
+ public function load(hug1:Function, hug2:Boolean):void
+ { //MethodID:340, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 253
+ internal var callback:Function; //slotID:1
+ internal var useCache:Boolean; //slotID:2
+ internal var delay:Number; //slotID:3
+ internal var source:*; //slotID:4
+
+ source = undefined;
+ callback = hug1;
+ useCache = hug2;
+
+ if(useCache && (this._cache != null) && (this._cache.data.source != null)){
+ source = this._cache.data.source;
+
+ ObjectUtils.callLater(callback, (source != null), source);
+
+ return;
+ }
+
+ this._onLoaded.push(callback);
+
+ if(!this._hasExpired){
+ ObjectUtils.callLater(function():void{ //MethodID:338, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 15
+ _reflect(true, _cacheData.source);
+ });
+
+ return;
+ }
+
+ if(this._isLocked || this._loadTimer.running) return;
+
+ delay = (this._cacheData.lastAccessTime + this._interval - TimeUtils.time);
+ delay = ((delay < 1) ? 1 : delay);
+ this._loadTimer.delay = delay;
+ this._loadTimer.repeatCount = 1;
+
+ this._loadTimer.addEventListener(TimerEvent.TIMER_COMPLETE, function(hug1:TimerEvent):void{ //MethodID:339, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 18
+ _loadTimer.reset();
+ _loader.load(_request);
+ });
+ this._loadTimer.start();
+ }
+
+ public function get isCacheUsable():Boolean
+ { //MethodID:341, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ return ((this._cacheData != null) && (this._cacheData.source != null));
+ }
+
+ private function get _hasExpired():Boolean
+ { //MethodID:342, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ return ((this._cacheKey != this._cacheData.cacheKey) || ((this._cacheData.lastAccessTime + this._cacheExpire) < TimeUtils.time));
+ }
+
+ private function _reflect(hug1:Boolean, hug2:*):void
+ { //MethodID:343, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 68
+ var hug4:Function = null;
+ var hug3:Array = this._onLoaded.concat();
+ this._onLoaded = [];
+
+ for each(hug4 in hug3){
+ hug4.apply(null, [hug1, hug2]);
+ }
+ }
+
+ private function _updateCacheData():void
+ { //MethodID:344, LocalCount= 3 , MaxScope= 5, MaxStack= 3, CodeLength= 102
+ if(!this._cache) return;
+
+ try{
+ this._cache.data.cacheKey = this._cacheData.cacheKey;
+ this._cache.data.lastAccessTime = this._cacheData.lastAccessTime;
+ this._cache.data.source = this._cacheData.source;
+
+ this._cache.flush();
+ }
+ catch(e:Error){
+ _cache = null;
+ }
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get cache():LocalStorage
+ { //MethodID:345, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._cache;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get hasExpired():Boolean
+ { //MethodID:346, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasExpired;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get loadTimer():Timer
+ { //MethodID:347, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._loadTimer;
+ }
+ }
+}
+
+
+//■class(instance)_index:17
+//private
+class _CacheData extends Object
+{
+ //static constructor
+ public static function _CacheData$cinit()
+ { //MethodID:330, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CacheData(hug1:Object=null)
+ { //MethodID:331, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ super();
+
+ if(!hug1) return;
+
+ this.source = hug1.source;
+ this.lastAccessTime = hug1.lastAccessTime;
+ this.cacheKey = hug1.cacheKey;
+ }
+
+ //variables/etc.
+ public var source:*; //slotID:0
+ public var lastAccessTime:Number; //slotID:0
+ public var cacheKey:String; //slotID:0
+}
+
+//■script016■
+
+package jp.nicovideo.nicoplayer.models.video.userSponsor{
+
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.api.ICapturableVideoContainer
+ import jp.nicovideo.nicoplayer.models.api.IGetSponsorInfo
+ import jp.nicovideo.nicoplayer.models.video.IVposWatcher
+
+ //■class(instance)_index:19
+ public interface IUserSponsorVideoClient
+ {
+ //static constructor
+ public static function IUserSponsorVideoClient$cinit()
+ { //MethodID:349, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get info():IGetSponsorInfo; //MethodID:350, dispID:0
+
+ function get layer():Sprite; //MethodID:351, dispID:0
+
+ function get linkURL():String; //MethodID:352, dispID:0
+
+ function get youAlsoLink():String; //MethodID:353, dispID:0
+
+ function get capturableVideoContainer():ICapturableVideoContainer; //MethodID:354, dispID:0
+
+ function get vposWatcher():IVposWatcher; //MethodID:355, dispID:0
+
+ //constructor
+ public function IUserSponsorVideoClient(); //MethodID:356, dispID:0
+ }
+}
+
+//■script017■
+
+package jp.nicovideo.nicoplayer.models.video.userSponsor{
+
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.api.ICapturableVideoContainer
+ import jp.nicovideo.nicoplayer.models.api.IGetSponsorInfo
+ import jp.nicovideo.nicoplayer.models.video.IVposWatcher
+
+ //■class(instance)_index:20
+ public class UserSponsorVideoClient extends Object implements IUserSponsorVideoClient
+ {
+ //static constructor
+ public static function UserSponsorVideoClient$cinit()
+ { //MethodID:358, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function UserSponsorVideoClient(hug1:IGetSponsorInfo, hug2:Sprite, hug3:String, hug4:String, hug5:ICapturableVideoContainer, hug6:IVposWatcher)
+ { //MethodID:359, LocalCount= 7 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ super();
+
+ this._info = hug1;
+ this._layer = hug2;
+ this._linkURL = hug3;
+ this._youAlsoLink = hug4;
+ this._capturableVideoContainer = hug5;
+ this._vposWatcher = hug6;
+ }
+
+ //variables/etc.
+ private var _info:IGetSponsorInfo; //slotID:0
+ private var _layer:Sprite; //slotID:0
+ private var _linkURL:String; //slotID:0
+ private var _youAlsoLink:String; //slotID:0
+ private var _capturableVideoContainer:ICapturableVideoContainer;//slotID:0
+ private var _vposWatcher:IVposWatcher; //slotID:0
+
+ public function get info():IGetSponsorInfo
+ { //MethodID:360, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._info;
+ }
+
+ public function get layer():Sprite
+ { //MethodID:361, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._layer;
+ }
+
+ public function get linkURL():String
+ { //MethodID:362, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._linkURL;
+ }
+
+ public function get youAlsoLink():String
+ { //MethodID:363, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._youAlsoLink;
+ }
+
+ public function get capturableVideoContainer():ICapturableVideoContainer
+ { //MethodID:364, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._capturableVideoContainer;
+ }
+
+ public function get vposWatcher():IVposWatcher
+ { //MethodID:365, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._vposWatcher;
+ }
+ }
+}
+
+//■script018■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.storage.LocalStorage
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:21
+ public class PlayDelay extends Object
+ {
+ //static constructor
+ public static function PlayDelay$cinit()
+ { //MethodID:367, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 71
+ OPENPLAYER_INTERVAL = 3000;
+ OPENPLAYER_INTERVAL_PREMIUM = 0;
+ OPENPLAYER_INTERVAL_THUMBWATCH = 1000;
+ SO_RUSH_HOUR_PLAY_COUNT = "rush_hour_play_count";
+ soRushHourPlayCount = CrossSharedObject.getStorage(SO_RUSH_HOUR_PLAY_COUNT);
+ RUSH_HOUR = "1800-0300";
+ RUSH_HOUR_PLAY_COUNTER_TTL = 10;
+ }
+
+ //static variables/etc.
+ private static const OPENPLAYER_INTERVAL:Number = 3000.0; //slotID:1
+ private static const OPENPLAYER_INTERVAL_PREMIUM:Number = 0.0; //slotID:2
+ private static const OPENPLAYER_INTERVAL_THUMBWATCH:Number = 1000.0;//slotID:3
+ private static const SO_RUSH_HOUR_PLAY_COUNT:String = "rush_hour_play_count";//slotID:4
+ private static var soRushHourPlayCount:LocalStorage; //slotID:5
+ private static const RUSH_HOUR:String = "1800-0300"; //slotID:6
+ private static const RUSH_HOUR_PLAY_COUNTER_TTL:Number = 10.0; //slotID:7
+
+ private static function _getCount():uint
+ { //dispID:3, MethodID:368, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 155
+ var hug1:Date = TimeUtils.now();
+
+ if(soRushHourPlayCount.data.count == undefined) soRushHourPlayCount.data.count = 0;
+
+ if(soRushHourPlayCount.data.lastCountUp == undefined) soRushHourPlayCount.data.lastCountUp = hug1;
+
+ var hug2:uint = soRushHourPlayCount.data.count;
+ var hug3:Date = soRushHourPlayCount.data.lastCountUp;
+
+ if(!_isRushHour(RUSH_HOUR) || _isRsetCount(RUSH_HOUR_PLAY_COUNTER_TTL, hug3)){
+ soRushHourPlayCount.data.count = 0;
+ hug2 = 0;
+ }
+
+ soRushHourPlayCount.data.lastCountUp = hug1;
+
+ soRushHourPlayCount.flush();
+
+ return hug2;
+ }
+
+ private static function _isRsetCount(hug1:Number, hug2:Date):Boolean
+ { //dispID:4, MethodID:369, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 42
+ var hug3:Date = TimeUtils.now();
+
+ if((hug2.getTime() + ((hug1 * 60 * 60) * 1000)) <= hug3.getTime()) return true;
+
+ return false;
+ }
+
+ private static function _isRushHour(hug1:String):Boolean
+ { //dispID:5, MethodID:370, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 132
+ var hug2:Array = hug1.split("-");
+ var hug3:Date = TimeUtils.now();
+ var hug4:Number = ((hug3.getHours() * 100) + hug3.getMinutes());
+ var hug5:Number = Number(hug2[0]);
+ var hug6:Number = Number(hug2[1]);
+ var hug7:Boolean = false;
+
+ if(hug5 < hug6){
+ if((hug5 <= hug4) && (hug4 <= hug6)) hug7 = true;
+ }else if((hug5 <= hug4) || (hug4 <= hug6)){
+ hug7 = true;
+ }
+
+ return hug7;
+ }
+
+ public static function getPlayDelayTime(hug1:Boolean, hug2:Boolean):Number
+ { //dispID:6, MethodID:371, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 80
+ if(hug2) return Math.max(Math.min((_getCount() * 500), 15000), OPENPLAYER_INTERVAL_THUMBWATCH);
+
+ if(hug1) return OPENPLAYER_INTERVAL_PREMIUM;
+
+ return Math.max(Math.min((_getCount() * 500), 15000), OPENPLAYER_INTERVAL);
+ }
+
+ public static function countUp():void
+ { //dispID:7, MethodID:372, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 49
+ if(soRushHourPlayCount.data.count == undefined) return;
+
+ soRushHourPlayCount.data.count++;
+ soRushHourPlayCount.flush();
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) static function isRushHour(hug1:String):Boolean
+ { //dispID:8, MethodID:373, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return _isRushHour(hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) static function isRsetCount(hug1:Number, hug2:Date):Boolean
+ { //dispID:9, MethodID:374, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return _isRsetCount(hug1, hug2);
+ }
+
+ //constructor
+ public function PlayDelay()
+ { //MethodID:375, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script019■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:22
+ public class VideoLoadWatcher extends Object
+ {
+ //static constructor
+ public static function VideoLoadWatcher$cinit()
+ { //MethodID:377, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ WATCH_DELAY = 1000;
+ }
+
+ //static variables/etc.
+ public static const WATCH_DELAY:Number = 1000.0; //slotID:1
+
+ //constructor
+ public function VideoLoadWatcher()
+ { //MethodID:378, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 53
+ this.onPlaybackStopped = new Functions();
+ this.onVideoLoadCompleted = new Functions();
+ this._watchTimer = new Timer(WATCH_DELAY);
+
+ super();
+ this._watchTimer.addEventListener(TimerEvent.TIMER, this._onWatchTimer);
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaybackStopped:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoLoadCompleted:Functions;//slotID:0
+ private var _prevVpos:Number = -1.0; //slotID:0
+ private var _watchTimer:Timer; //slotID:0
+ private var _stoppedCount:uint; //slotID:0
+ private var _enabled:Boolean = true; //slotID:0
+ private var _onPlaybackStoppedEventSended:Boolean = false; //slotID:0
+ private var _hasJustSeeked:Boolean = false; //slotID:0
+ private var _video:IVideo; //slotID:0
+
+ private function _startWatching():void
+ { //MethodID:380, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 103
+ if(this._video == null) throw new Error("VideoLoadWatcher._startWatching: _video is null.");
+
+ if(!this._video.isBuffering){
+ onVideoLoadCompleted.apply();
+
+ return;
+ }
+
+ this._video.onVideoLoadComplete.add(function(hug1:uint, ...args):void{ //MethodID:379, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 44
+ stopWatching();
+ onVideoLoadCompleted.apply();
+ _video.onVideoLoadComplete.remove(args.calee);
+ });
+ this._watchTimer.reset();
+ this._watchTimer.start();
+
+ this._stoppedCount = 0;
+ this._prevVpos = -1;
+ }
+
+ public function stopWatching():void
+ { //MethodID:381, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._watchTimer.stop();
+ }
+
+ private function _onWatchTimer(hug1:TimerEvent):void
+ { //MethodID:382, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 195
+ if(this._video.isPausing || (this._video.vpos != this._prevVpos) || this._video.isSeeking || !this._video.isBuffering){
+ if(!this._video.isSeeking && !this._video.isPausing && (this._video.vpos != this._prevVpos)) this._hasJustSeeked = false;
+
+ this._prevVpos = this._video.vpos;
+ this._onPlaybackStoppedEventSended = false;
+ return;
+ }
+
+ if(this._hasJustSeeked) return;
+
+ if(this._onPlaybackStoppedEventSended) return;
+
+ this._onPlaybackStoppedEventSended = true;
+ this._stoppedCount++;
+ onPlaybackStopped.apply(this._stoppedCount);
+ }
+
+ public function set enabled(hug1:Boolean):void
+ { //MethodID:383, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this._enabled = hug1;
+
+ if(!this._enabled) this.stopWatching();
+ }
+
+ public function get enabled():Boolean
+ { //MethodID:384, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._enabled;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoInitialized(hug1:Boolean, hug2:IVideo):EventResult
+ { //MethodID:385, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 32
+ if(!this._enabled) return EventResult.THROUGH;
+
+ this._video = hug2;
+
+ this._startWatching();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:386, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._hasJustSeeked = true;
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script020■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ //■class(instance)_index:23
+ public class CommentStorageError extends Object
+ {
+ //static constructor
+ public static function CommentStorageError$cinit()
+ { //MethodID:388, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentStorageError(hug1:int, hug2:String, hug3:Boolean=false)
+ { //MethodID:389, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this.__status = hug1;
+ this.__message = hug2;
+ this.__isInLowerLayer = hug3;
+ }
+
+ //variables/etc.
+ private var __status:int; //slotID:0
+ private var __message:String; //slotID:0
+ private var __isInLowerLayer:Boolean; //slotID:0
+
+ public function get status():int
+ { //MethodID:390, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__status;
+ }
+
+ public function get message():String
+ { //MethodID:391, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__message;
+ }
+
+ public function get isInLowerLayer():Boolean
+ { //MethodID:392, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__isInLowerLayer;
+ }
+ }
+}
+
+//■script021■
+
+package jp.nicovideo.nicoplayer.models.mylist{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:24
+ public interface IDefaultMylistAppendable
+ {
+ //static constructor
+ public static function IDefaultMylistAppendable$cinit()
+ { //MethodID:394, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get onAppendedDefaultMylist():Functions; //MethodID:395, dispID:0
+
+ function appendDefaultMylist(hug1:String=null):void; //MethodID:396, dispID:0
+
+ function get hasAppendedDefaultMylist():Boolean; //MethodID:397, dispID:0
+
+ //constructor
+ public function IDefaultMylistAppendable(); //MethodID:398, dispID:0
+ }
+}
+
+//■script022■
+
+package jp.nicovideo.nicoplayer.models.mylist{
+
+ import flash.errors.IllegalOperationError
+ import flash.net.URLRequestMethod
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:30
+ public class DefaultMylistAppender extends Object implements IDefaultMylistAppendable
+ {
+ //static constructor
+ public static function DefaultMylistAppender$cinit()
+ { //MethodID:410, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 35
+ _LOG_TERM = ((3 * 24 * 60 * 60) * 1000);
+ _ON_APPENDED_DEFAULT_MYLIST = new Functions();
+ }
+
+ //static variables/etc.
+ private static const _LOG_TERM:Number = 0xF731400; //slotID:1
+ private static const _ON_APPENDED_DEFAULT_MYLIST:Functions; //slotID:2
+
+ //constructor
+ public function DefaultMylistAppender(hug1:Function, hug2:String, hug3:String, hug4:Boolean, hug5:String)
+ { //MethodID:411, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 49
+ this._appendedLogStorage = CrossSharedObject.getStorage((_SOSetting).NAME, (_SOSetting).PATH);
+
+ super();
+
+ this._loadFunc = hug1;
+ this._apiURL = hug2;
+
+ this.initialize(hug3, hug4, hug5);
+ }
+
+ //variables/etc.
+ private var _loadFunc:Function; //slotID:0
+ private var _apiURL:String; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _hasAppended:Boolean; //slotID:0
+ private var _csrfToken:String; //slotID:0
+ private var _appendedLogStorage:LocalStorage; //slotID:0
+
+ public function initialize(hug1:String, hug2:Boolean, hug3:String=null):void
+ { //MethodID:412, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 169
+ var hug4:String = null;
+ var hug5:Number = NaN;
+ this._threadID = hug1;
+ this._hasAppended = hug2;
+
+ if(hug3 != null) this._csrfToken = hug3;
+ _ON_APPENDED_DEFAULT_MYLIST.clear();
+
+ if(!this._hasAppended){
+ for(hug4 in this._appendedLogStorage.data){
+ hug5 = Number(this._appendedLogStorage.data[hug4]);
+
+ if(isNaN(hug5) || ((hug5 + _LOG_TERM) < TimeUtils.time)){
+ delete this._appendedLogStorage.data[hug4];
+ }else if(hug4 == this._threadID){
+ this._hasAppended = true;
+ }
+ }
+ }
+ }
+
+ public function get onAppendedDefaultMylist():Functions
+ { //MethodID:413, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ return _ON_APPENDED_DEFAULT_MYLIST;
+ }
+
+ public function appendDefaultMylist(hug1:String=null):void
+ { //MethodID:415, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 140
+ internal var description:String = null; //slotID:1
+ internal var parameters:Object; //slotID:2
+
+ description = hug1;
+
+ if(this._hasAppended) throw new IllegalOperationError("DefaultMylistAppender.appendDefaultMylist: has appended already.");
+
+ parameters = {};
+ parameters[(_RequestParameterKey).ITEM_TYPE] = (_ItemType).VIDEO;
+ parameters[(_RequestParameterKey).ITEM_ID] = this._threadID;
+
+ if(description != null) parameters[(_RequestParameterKey).DESCRIPTION] = description;
+
+ parameters[(_RequestParameterKey).TOKEN] = this._csrfToken;
+
+ this._loadFunc(function(hug1:Object):void{ //MethodID:414, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 72
+ var hug2:Boolean = _hasAppended = (hug1[(_ResponseKey).STATUS] == (_ResponseValue).OK);
+
+ if((hug1 != null) && hug2) _appendedLogStorage.data[_threadID] = TimeUtils.time;
+ onAppendedDefaultMylist.apply(hug2);
+ }, this._apiURL, parameters, URLRequestMethod.POST);
+ }
+
+ public function get hasAppendedDefaultMylist():Boolean
+ { //MethodID:416, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasAppended;
+ }
+ }
+}
+
+
+//■class(instance)_index:25
+//private
+class _SOSetting extends Object
+{
+ //static constructor
+ public static function _SOSetting$cinit()
+ { //MethodID:400, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ NAME = "jp.nicovideo.nicoplayer.models.mylist.DefaultMylistAppender";
+ PATH = "/";
+ }
+
+ //static variables/etc.
+ public static const NAME:String = "jp.nicovideo.nicoplayer.models.mylist.DefaultMylistAppender";//slotID:1
+ public static const PATH:String = "/"; //slotID:2
+
+ //constructor
+ public function _SOSetting()
+ { //MethodID:401, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:26
+//private
+class _RequestParameterKey extends Object
+{
+ //static constructor
+ public static function _RequestParameterKey$cinit()
+ { //MethodID:402, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ ITEM_TYPE = "item_type";
+ ITEM_ID = "item_id";
+ DESCRIPTION = "description";
+ TOKEN = "token";
+ }
+
+ //static variables/etc.
+ public static const ITEM_TYPE:String = "item_type"; //slotID:1
+ public static const ITEM_ID:String = "item_id"; //slotID:2
+ public static const DESCRIPTION:String = "description"; //slotID:3
+ public static const TOKEN:String = "token"; //slotID:4
+
+ //constructor
+ public function _RequestParameterKey()
+ { //MethodID:403, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:27
+//private
+class _ItemType extends Object
+{
+ //static constructor
+ public static function _ItemType$cinit()
+ { //MethodID:404, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ VIDEO = 0;
+ }
+
+ //static variables/etc.
+ public static const VIDEO:uint = 0; //slotID:1
+
+ //constructor
+ public function _ItemType()
+ { //MethodID:405, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:28
+//private
+class _ResponseKey extends Object
+{
+ //static constructor
+ public static function _ResponseKey$cinit()
+ { //MethodID:406, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ STATUS = "status";
+ }
+
+ //static variables/etc.
+ public static const STATUS:String = "status"; //slotID:1
+
+ //constructor
+ public function _ResponseKey()
+ { //MethodID:407, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:29
+//private
+class _ResponseValue extends Object
+{
+ //static constructor
+ public static function _ResponseValue$cinit()
+ { //MethodID:408, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ OK = "ok";
+ }
+
+ //static variables/etc.
+ public static const OK:String = "ok"; //slotID:1
+
+ //constructor
+ public function _ResponseValue()
+ { //MethodID:409, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script023■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:31
+ public final class CommentConstants extends Object
+ {
+ //static constructor
+ public static function CommentConstants$cinit()
+ { //MethodID:418, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ CL_MAIN = "commentlist:main";
+ CL_OWNER = "commentlist:owner";
+ CL_NICOS = "commentlist:nicos";
+ CL_LOCAL = "commentlist:local";
+ CL_PRIVATE = "commentlist:private";
+ }
+
+ //static variables/etc.
+ public static const CL_MAIN:String = "commentlist:main"; //slotID:1
+ public static const CL_OWNER:String = "commentlist:owner"; //slotID:2
+ public static const CL_NICOS:String = "commentlist:nicos"; //slotID:3
+ public static const CL_LOCAL:String = "commentlist:local"; //slotID:4
+ public static const CL_PRIVATE:String = "commentlist:private"; //slotID:5
+
+ //constructor
+ public function CommentConstants()
+ { //MethodID:419, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script024■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:32
+ public interface IGetChecklist
+ {
+ //static constructor
+ public static function IGetChecklist$cinit()
+ { //MethodID:421, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get communities():Array; //MethodID:422, dispID:0
+
+ function get channels():Array; //MethodID:423, dispID:0
+
+ function get friends():Array; //MethodID:424, dispID:0
+
+ function get watchUsers():Array; //MethodID:425, dispID:0
+
+ //constructor
+ public function IGetChecklist(); //MethodID:426, dispID:0
+ }
+}
+
+//■script025■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:33
+ public interface IChannelInfo
+ {
+ //static constructor
+ public static function IChannelInfo$cinit()
+ { //MethodID:428, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get channel_id():Number; //MethodID:429, dispID:0
+
+ function get community_id():Number; //MethodID:430, dispID:0
+
+ //constructor
+ public function IChannelInfo(); //MethodID:431, dispID:0
+ }
+}
+
+//■script026■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import com.adobe.serialization.json.JSON
+ import jp.nicovideo.util.api.IAPICacheProxy
+
+ //■class(instance)_index:34
+ public class GetChecklist extends Object implements IGetChecklist
+ {
+ //static constructor
+ public static function GetChecklist$cinit()
+ { //MethodID:433, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function GetChecklist(hug1:Function, hug2:IAPICacheProxy, hug3:Boolean, hug4:Boolean)
+ { //MethodID:436, LocalCount= 6 , MaxScope= 2, MaxStack= 3, CodeLength= 122
+ internal var callback:Function; //slotID:1
+ internal var apiCahceProxy:IAPICacheProxy; //slotID:2
+ internal var useCache:Boolean; //slotID:3
+ internal var noLoad:Boolean; //slotID:4
+
+ callback = hug1;
+ apiCahceProxy = hug2;
+ useCache = hug3;
+ noLoad = hug4;
+ this._communities = [];
+ this._channels = [];
+ this._friends = [];
+ this._watchUsers = [];
+
+ super();
+
+ if((callback == null) || (apiCahceProxy == null)) throw new ArgumentError("GetCheckList.GetCheckList: invalid parameter.");
+
+ if(noLoad){
+ callback(false);
+
+ return;
+ }
+
+ apiCahceProxy.load(function(hug1:Boolean, hug2:*):void{ //MethodID:435, LocalCount= 6 , MaxScope= 3, MaxStack= 6, CodeLength= 354
+ internal var succeeded:Boolean; //slotID:1
+ internal var source:*; //slotID:2
+ internal var castItem:Function; //slotID:3
+ internal var data:Object; //slotID:4
+ internal var map:Object; //slotID:5
+ internal var channel_id:String; //slotID:6
+
+ castItem = null;
+ data = null;
+ map = null;
+ channel_id = null;
+ succeeded = hug1;
+ source = hug2;
+ castItem = function(hug1:*, hug2:int, hug3:Array):void{ //MethodID:434, LocalCount= 6 , MaxScope= 0, MaxStack= 2, CodeLength= 174
+ var hug4:Number = parseInt(hug1);
+
+ if(isNaN(hug4)) return;
+
+ var hug5:Array = hug3;
+
+ switch(hug5){
+ case data["community_id"]:
+ _communities.push(hug4);
+ break;
+ case data["friend"]:
+ _friends.push(hug4);
+ break;
+ case data["watchuser"]:
+ _watchUsers.push(hug4);
+ break;
+ default:
+ break;
+ }
+ };
+
+ if(!succeeded){
+ callback(false);
+
+ return;
+ }
+
+ try{
+ data = JSON.decode(source);
+
+ if(data["community_id"] is Array) (data["community_id"] as Array).forEach(castItem);
+
+ if(data["friend"] is Array) (data["friend"] as Array).forEach(castItem);
+
+ if(data["watchuser"] is Array) (data["watchuser"] as Array).forEach(castItem);
+
+ if(data["channel_id"] is Object){
+ map = (data["channel_id"] as Object);
+
+ for(channel_id in map){
+ _channels.push(new _ChannelInfo(parseInt(channel_id), parseInt(map[channel_id])));
+ }
+ }
+ }
+ catch(error:Error){
+ callback(false);
+
+ return;
+ }
+
+ callback(true);
+ }, useCache);
+ }
+
+ //variables/etc.
+ private var _communities:Array; //slotID:0
+ private var _channels:Array; //slotID:0
+ private var _friends:Array; //slotID:0
+ private var _watchUsers:Array; //slotID:0
+
+ public function get communities():Array
+ { //MethodID:437, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._communities;
+ }
+
+ public function get channels():Array
+ { //MethodID:438, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channels;
+ }
+
+ public function get friends():Array
+ { //MethodID:439, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._friends;
+ }
+
+ public function get watchUsers():Array
+ { //MethodID:440, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchUsers;
+ }
+ }
+}
+
+
+//■class(instance)_index:35
+//private
+class _ChannelInfo extends Object implements IChannelInfo
+{
+ //static constructor
+ public static function _ChannelInfo$cinit()
+ { //MethodID:441, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ChannelInfo(hug1:Number, hug2:Number)
+ { //MethodID:442, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._channel_id = hug1;
+ this._community_id = hug2;
+ }
+
+ //variables/etc.
+ private var _channel_id:Number; //slotID:0
+ private var _community_id:Number; //slotID:0
+
+ public function get channel_id():Number
+ { //MethodID:443, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channel_id;
+ }
+
+ public function get community_id():Number
+ { //MethodID:444, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._community_id;
+ }
+}
+
+//■script027■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:36
+ public class NGInfo extends Object
+ {
+ //static constructor
+ public static function NGInfo$cinit()
+ { //MethodID:446, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NGInfo(hug1:String, hug2:String, hug3:Date, hug4:IComment=null):void
+ { //MethodID:447, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 49
+ super();
+
+ this.__type = hug1;
+ this.__source = hug2;
+ this.__comment = hug4;
+
+ if(hug3){
+ this.__lastHit = new Date(hug3.time);
+ }else{
+ this.__lastHit = null;
+ }
+ }
+
+ //variables/etc.
+ private var __type:String; //slotID:0
+ private var __source:String; //slotID:0
+ private var __lastHit:Date; //slotID:0
+ private var __comment:IComment; //slotID:0
+
+ public function get type():String
+ { //MethodID:448, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__type;
+ }
+
+ public function get source():String
+ { //MethodID:449, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__source;
+ }
+
+ public function get lastHit():Date
+ { //MethodID:450, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__lastHit;
+ }
+
+ public function set lastHit(hug1:Date):void
+ { //MethodID:451, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 16
+ this.__lastHit = new Date(hug1.time);
+ }
+
+ public function get comment():IComment
+ { //MethodID:452, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__comment;
+ }
+ }
+}
+
+//■script028■
+
+package jp.nicovideo.marquee{
+
+ import flash.display.DisplayObjectContainer
+
+ //■class(instance)_index:37
+ public interface IMarqueeClient
+ {
+ //static constructor
+ public static function IMarqueeClient$cinit()
+ { //MethodID:454, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function jumpToURL(hug1:String):void; //MethodID:455, dispID:0
+
+ function showComment():void; //MethodID:456, dispID:0
+
+ function hideComment():void; //MethodID:457, dispID:0
+
+ function readyParade(hug1:Array):void; //MethodID:458, dispID:0
+
+ function startParade():void; //MethodID:459, dispID:0
+
+ function endParade():void; //MethodID:460, dispID:0
+
+ function get userID():String; //MethodID:461, dispID:0
+
+ function get category():String; //MethodID:462, dispID:0
+
+ function get marqueeLayer():DisplayObjectContainer; //MethodID:463, dispID:0
+
+ function get videoLayer():DisplayObjectContainer; //MethodID:464, dispID:0
+
+ function get volume():Number; //MethodID:465, dispID:0
+
+ function get isNicowariSkipEnabled():Boolean; //MethodID:466, dispID:0
+
+ function get videoID():String; //MethodID:467, dispID:0
+
+ function get videoTitle():String; //MethodID:468, dispID:0
+
+ function get videoTime():String; //MethodID:469, dispID:0
+
+ function get videoCode():String; //MethodID:470, dispID:0
+
+ function get nowTime():Number; //MethodID:471, dispID:0
+
+ function get isChannel():Boolean; //MethodID:472, dispID:0
+
+ function get segmentInfo():Object; //MethodID:473, dispID:0
+
+ function get isVideoPlaying():Boolean; //MethodID:474, dispID:0
+
+ //constructor
+ public function IMarqueeClient(); //MethodID:475, dispID:0
+ }
+}
+
+//■script029■
+
+package jp.nicovideo.marquee{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:38
+ public interface INicoMarqueeClient implements IMarqueeClient
+ {
+ //static constructor
+ public static function INicoMarqueeClient$cinit()
+ { //MethodID:477, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get categoryGroup():String; //MethodID:478, dispID:0
+
+ function get isOfficialAnime():Boolean; //MethodID:479, dispID:0
+
+ function get isNoLoadAdsLiveBanner():Boolean; //MethodID:480, dispID:0
+
+ function get onCommentVisibleEnabledUpdated():Functions; //MethodID:481, dispID:0
+
+ function get onParadeReady():Functions; //MethodID:482, dispID:0
+
+ //constructor
+ public function INicoMarqueeClient(); //MethodID:483, dispID:0
+ }
+}
+
+//■script030■
+
+package jp.nicovideo.util.events{
+
+ //■class(instance)_index:39
+ public interface EventSender
+ {
+ //static constructor
+ public static function EventSender$cinit()
+ { //MethodID:485, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get eventNames():Array; //MethodID:486, dispID:0
+
+ //constructor
+ public function EventSender(); //MethodID:487, dispID:0
+ }
+}
+
+//■script031■
+
+package jp.nicovideo.marquee{
+
+ import flash.display.DisplayObjectContainer
+ import flash.display.MovieClip
+ import flash.display.Sprite
+ import flash.net.URLRequest
+ import flash.net.navigateToURL
+ import jp.nicovideo.marquee.events.MarqueeErrorEvent
+ import jp.nicovideo.marquee.events.MarqueeEvent
+ import jp.nicovideo.marquee.events.MarqueeFullEvent
+ import jp.nicovideo.marquee.models.MarqueeAspectRatio
+ import jp.nicovideo.marquee.models.info.IMarqueeInfo
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.PlayerInfo
+ import jp.nicovideo.nicoplayer.models.PlayerVersion
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.api.IInitializeInfo
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.views.IVideoLayerManager
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:40
+ public class MarqueeClient extends Object
+ implements INicoMarqueeClient, EventSender
+ {
+ //static constructor
+ public static function MarqueeClient$cinit()
+ { //MethodID:489, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ _OffFullScreenPriority = 10;
+ }
+
+ //static variables/etc.
+ private static const _OffFullScreenPriority:uint = 10; //slotID:1
+
+ //constructor
+ public function MarqueeClient(hug1:String, hug2:PlayerVersion, hug3:PlayerInfo, hug4:MovieClip, hug5:IVideoLayerManager, hug6:IPlayerConfig, hug7:IInitializeInfo, hug8:Function)
+ { //MethodID:491, LocalCount= 10 , MaxScope= 2, MaxStack= 4, CodeLength= 246
+ internal var playerURL:String; //slotID:1
+ internal var playerVersion:PlayerVersion; //slotID:2
+ internal var playerInfo:PlayerInfo; //slotID:3
+ internal var marqueeLayer:MovieClip; //slotID:4
+ internal var videoLayerManager:IVideoLayerManager; //slotID:5
+ internal var playerConfig:IPlayerConfig; //slotID:6
+ internal var initializeInfo:IInitializeInfo; //slotID:7
+ internal var callback:Function; //slotID:8
+ internal var params:Object; //slotID:9
+
+ playerURL = hug1;
+ playerVersion = hug2;
+ playerInfo = hug3;
+ marqueeLayer = hug4;
+ videoLayerManager = hug5;
+ playerConfig = hug6;
+ initializeInfo = hug7;
+ callback = hug8;
+ this.onMarqueeClientMarqueeStarted = new Functions();
+ this.onMarqueeClientMarqueeEnded = new Functions();
+ this.onMarqueeClientNicowariStarted = new Functions();
+ this.onMarqueeClientNicowariEnded = new Functions();
+ this._onCommentVisibleEnabledUpdated = new Functions();
+ this._onParadeReady = new Functions();
+
+ super();
+
+ this._this = this;
+ this._marqueeLayer = marqueeLayer;
+ this._videoLayerManager = videoLayerManager;
+ this._playerConfig = playerConfig;
+ this._isNicowariSkip = this._playerConfig.isNicowariSkip;
+ this._playerInfo = playerInfo;
+ this._initializeInfo = initializeInfo;
+ this._systemMessage = SystemMessage.instance;
+ this._callback = callback;
+ this._playerVersion = playerVersion;
+ params = {t:playerVersion.marqueePlayer};
+
+ this._systemMessage.informln(__MSG__("マーキーの初期化開始"));
+ HTTPUtils.loadSWF(function(hug1:*):void{ //MethodID:490, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 204
+ if(!hug1){
+ _systemMessage.informln(__MSG__("マーキーの取得に失敗"));
+
+ return;
+ }
+
+ _player = IMarqueePlayer(hug1);
+ _setVolume = _player.setVolume;
+
+ _player.addEventListener(MarqueeErrorEvent.ERROR, onErrorPlayer);
+ _player.addEventListener(MarqueeEvent.COMPLETE_PLAYER, onCompletePlayer);
+ _player.addEventListener(MarqueeEvent.STARTED_MARQUEE, onStartedMarquee);
+ _player.addEventListener(MarqueeEvent.ENDED_MARQUEE, onEndedMarquee);
+ _player.addEventListener(MarqueeEvent.CLICK_PLAY_BUTTON, onClickedPlayButton);
+ _player.addEventListener(MarqueeFullEvent.PLAY_VIDEO, onClickedNicowariPlayButton);
+ _player.addEventListener(MarqueeFullEvent.PAUSE_VIDEO, onClickedVideoPlayButton);
+ _player.initialize(IMarqueeClient(_this));
+ INicoMarqueePlayer(_player).setRecentPremiumUsers(initializeInfo.recentPremiumUsers);
+
+ if(_isLoadLater) load();
+ }, playerURL, params);
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onMarqueeClientMarqueeStarted:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onMarqueeClientMarqueeEnded:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onMarqueeClientNicowariStarted:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onMarqueeClientNicowariEnded:Functions;//slotID:0
+ private var _this:IMarqueeClient; //slotID:0
+ private var _player:IMarqueePlayer; //slotID:0
+ private var _systemMessage:SystemMessage; //slotID:0
+ private var _setVolume:Function; //slotID:0
+ private var _marqueeLayer:Sprite; //slotID:0
+ private var _videoLayer:Sprite; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _videoLayerManager:IVideoLayerManager; //slotID:0
+ private var _videoController:IVideoController; //slotID:0
+ private var _vars:NicoFlashVars; //slotID:0
+ private var _initializeInfo:IInitializeInfo; //slotID:0
+ private var _videoPlayed:Boolean; //slotID:0
+ private var _isNicowariSkip:Boolean; //slotID:0
+ private var _onceSetupTimeUtils:Boolean = false; //slotID:0
+ private var _completePlayer:Boolean = false; //slotID:0
+ private const _onCommentVisibleEnabledUpdated:Functions; //slotID:0
+ private const _onParadeReady:Functions; //slotID:0
+ private var _callback:Function; //slotID:0
+ private var _playerVersion:PlayerVersion; //slotID:0
+ private var _playerInfo:PlayerInfo; //slotID:0
+ private var _isLoadLater:Boolean = false; //slotID:0
+ private var _isLarqueeLoaded:Boolean = false; //slotID:0
+
+ public function load():void
+ { //MethodID:492, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 88
+ if(!this._player && !this._isLoadLater){
+ this._isLoadLater = true;
+ return;
+ }
+
+ if(this._isLarqueeLoaded) return;
+
+ this._isLarqueeLoaded = true;
+
+ if(!this._vars.watchFlashVars.isNoGetMarquee) this._player.load(this._playerVersion.larquee);
+
+ if(this._callback is Function) this._callback();
+ }
+
+ public function get eventNames():Array
+ { //MethodID:493, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 17
+ return ["onMarqueeClientMarqueeStarted", "onMarqueeClientMarqueeEnded", "onMarqueeClientNicowariStarted", "onMarqueeClientNicowariEnded"];
+ }
+
+ public function get marqueePlayer():IMarqueePlayer
+ { //MethodID:494, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._player;
+ }
+
+ private function onStartedMarquee(hug1:MarqueeEvent):void
+ { //MethodID:495, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 174
+ var hug2:IMarqueeInfo = (hug1.origin as IMarqueeInfo);
+
+ if(!hug2) return;
+
+ if((hug2.enabled && !this.isNicowariSkipEnabled) && ((hug2.priority >= _OffFullScreenPriority) && (this._playerConfig.screenMode != ScreenMode.NORMAL))){
+ this._playerConfig.screenMode = ScreenMode.NORMAL;
+
+ SystemMessage.instance.inform(__MSG__("ニコ割を再生"), false);
+ }
+
+ if(hug2.enabled && hug2.pauseVideo) onMarqueeClientNicowariStarted.apply(hug2);
+ onMarqueeClientMarqueeStarted.apply(hug2);
+ }
+
+ private function onEndedMarquee(hug1:MarqueeEvent):void
+ { //MethodID:496, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 106
+ var hug2:IMarqueeInfo = (hug1.origin as IMarqueeInfo);
+
+ if(!hug2) return;
+
+ if(this._videoLayer){
+ this._videoLayerManager.deleteMarqueeVideoLayer();
+
+ this._videoLayer = null;
+ }
+
+ if(hug2.enabled && hug2.pauseVideo) onMarqueeClientNicowariEnded.apply(hug2);
+ onMarqueeClientMarqueeEnded.apply(hug2);
+ }
+
+ private function onClickedPlayButton(hug1:MarqueeEvent):void
+ { //MethodID:497, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 42
+ var hug2:IMarqueeInfo = (hug1.origin as IMarqueeInfo);
+
+ if(!hug2) return;
+ onMarqueeClientNicowariStarted.apply(hug2);
+ }
+
+ private function onClickedNicowariPlayButton(hug1:MarqueeEvent):void
+ { //MethodID:498, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 115
+ var hug2:IMarqueeInfo = (hug1.origin as IMarqueeInfo);
+
+ if(!hug2) return;
+
+ if((hug2.enabled && !this.isNicowariSkipEnabled) && ((hug2.priority >= _OffFullScreenPriority) && (this._playerConfig.screenMode != ScreenMode.NORMAL))) this._playerConfig.screenMode = ScreenMode.NORMAL;
+ this.hideComment();
+ onMarqueeClientNicowariStarted.apply(hug2);
+ }
+
+ private function onClickedVideoPlayButton(hug1:MarqueeEvent):void
+ { //MethodID:499, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 47
+ var hug2:IMarqueeInfo = (hug1.origin as IMarqueeInfo);
+
+ if(!hug2) return;
+ this.showComment();
+ onMarqueeClientNicowariEnded.apply(hug2);
+ }
+
+ private function onCompletePlayer(hug1:MarqueeEvent):void
+ { //MethodID:500, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this._completePlayer = true;
+
+ if(this._onceSetupTimeUtils) this.startPlayer();
+ }
+
+ private function startPlayer():void
+ { //MethodID:501, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 102
+ this._player.start();
+
+ var hug1:uint = ((this._playerConfig.aspectRatio == ScreenAspectRatio.NORMAL) ? MarqueeAspectRatio.NORMAL : MarqueeAspectRatio.WIDE);
+
+ INicoMarqueePlayer(this._player).updateAspect(hug1);
+ INicoMarqueePlayer(this._player).updateNicowariSkip(this._isNicowariSkip);
+
+ if(this._playerConfig.isMute) this._setVolume.call(null, 0.0);
+ }
+
+ private function onErrorPlayer(hug1:MarqueeErrorEvent):void
+ { //MethodID:502, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 129
+ if((hug1.errorId == MarqueeErrorEvent.INITIALIZE_DOWNLOAD_ERROR) || (hug1.errorId == MarqueeErrorEvent.INITIALIZE_XML_FAIL)){
+ this._player = null;
+ this._completePlayer = false;
+
+ this._systemMessage.informln(__MSG__("マーキーの初期化に失敗"));
+ }else if((hug1.errorId == MarqueeErrorEvent.SENDED_FAIL) || (hug1.errorId == MarqueeErrorEvent.SENDED_ERROR) || (hug1.errorId == MarqueeErrorEvent.SENDED_NOAUTH)){
+ this._systemMessage.informln(__MSG__("ゲームまたはアンケートの情報の送信に失敗"));
+ }
+ }
+
+ public function get userID():String
+ { //MethodID:503, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._initializeInfo.userID;
+ }
+
+ public function get category():String
+ { //MethodID:504, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._vars.category;
+ }
+
+ public function get categoryGroup():String
+ { //MethodID:505, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._vars.categoryGroup;
+ }
+
+ public function get isNoLoadAdsLiveBanner():Boolean
+ { //MethodID:506, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._playerInfo.isNoLoadAdsLiveBanner;
+ }
+
+ public function get onCommentVisibleEnabledUpdated():Functions
+ { //MethodID:507, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onCommentVisibleEnabledUpdated;
+ }
+
+ public function get onParadeReady():Functions
+ { //MethodID:508, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onParadeReady;
+ }
+
+ public function get marqueeLayer():DisplayObjectContainer
+ { //MethodID:509, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueeLayer;
+ }
+
+ public function get videoLayer():DisplayObjectContainer
+ { //MethodID:510, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(!this._videoLayer) this._videoLayer = this._videoLayerManager.createMarqueeVideoLayer();
+
+ return this._videoLayer;
+ }
+
+ public function get volume():Number
+ { //MethodID:511, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 29
+ return (this._playerConfig.isMute ? 0 : this._playerConfig.volume);
+ }
+
+ public function jumpToURL(hug1:String):void
+ { //MethodID:512, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ this._videoController.stop();
+ navigateToURL(new URLRequest(hug1), "_blank");
+ }
+
+ public function get isNicowariSkipEnabled():Boolean
+ { //MethodID:513, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ if(this._vars.watchFlashVars.forceNicowariOff) return true;
+
+ return (this._isNicowariSkip && this._initializeInfo.isPremium);
+ }
+
+ public function showComment():void
+ { //MethodID:514, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.onCommentVisibleEnabledUpdated.apply(true);
+ }
+
+ public function hideComment():void
+ { //MethodID:515, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.onCommentVisibleEnabledUpdated.apply(false);
+ }
+
+ public function readyParade(hug1:Array):void
+ { //MethodID:516, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function startParade():void
+ { //MethodID:517, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function endParade():void
+ { //MethodID:518, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function get videoID():String
+ { //MethodID:519, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._vars.watchFlashVars.watchVideoID;
+ }
+
+ public function get videoTitle():String
+ { //MethodID:520, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._vars.videoTitle;
+ }
+
+ public function get videoTime():String
+ { //MethodID:521, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._vars.watchFlashVars.gameTime;
+ }
+
+ public function get videoCode():String
+ { //MethodID:522, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._vars.watchFlashVars.gameKey;
+ }
+
+ public function get nowTime():Number
+ { //MethodID:523, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return TimeUtils.time;
+ }
+
+ public function get isChannel():Boolean
+ { //MethodID:524, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._vars.isChannel;
+ }
+
+ public function get segmentInfo():Object
+ { //MethodID:525, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 121
+ var hug1:Object = {};
+
+ if(this._vars.watchFlashVars.userSex != null) hug1.userSex = this._vars.watchFlashVars.userSex;
+
+ if(this._vars.watchFlashVars.userAge != null) hug1.userAge = this._vars.watchFlashVars.userAge;
+
+ if(this._vars.watchFlashVars.userPrefecture != null) hug1.userPrefecture = this._vars.watchFlashVars.userPrefecture;
+
+ hug1.memberType = (this._initializeInfo.isPremium ? 1 : 0);
+ return hug1;
+ }
+
+ public function get isVideoPlaying():Boolean
+ { //MethodID:526, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoController.isPlaying;
+ }
+
+ public function set videoController(hug1:IVideoController):void
+ { //MethodID:527, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoController = hug1;
+ }
+
+ public function set flashVars(hug1:NicoFlashVars):void
+ { //MethodID:528, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._vars = hug1;
+ }
+
+ public function get isOfficialAnime():Boolean
+ { //MethodID:529, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._vars.watchFlashVars.isOfficialAnime;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsMuteUpdated(hug1:Boolean):EventResult
+ { //MethodID:530, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 77
+ if(!this._player) return EventResult.THROUGH;
+
+ if(!Boolean(this._setVolume)) return EventResult.THROUGH;
+
+ if(hug1){
+ this._setVolume.call(null, 0.0);
+ }else{
+ this._setVolume.call(null, this._playerConfig.volume);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigVolumeUpdated(hug1:Number):EventResult
+ { //MethodID:531, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 51
+ if(!this._player) return EventResult.THROUGH;
+
+ if(!Boolean(this._setVolume)) return EventResult.THROUGH;
+ this._setVolume.call(null, hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsNicowariSkipUpdated(hug1:Boolean):EventResult
+ { //MethodID:532, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ if(!this._player) return EventResult.THROUGH;
+
+ this._isNicowariSkip = hug1;
+
+ INicoMarqueePlayer(this._player).updateNicowariSkip(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onServerTimeUpdated():EventResult
+ { //MethodID:533, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ if(!this._onceSetupTimeUtils){
+ this._onceSetupTimeUtils = true;
+
+ if(this._completePlayer) this.startPlayer();
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onFeedListUpdated(hug1:XML):EventResult
+ { //MethodID:534, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(!this._player) return EventResult.THROUGH;
+ INicoMarqueePlayer(this._player).updateFeedList(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAspectRatioUpdate(hug1:uint):EventResult
+ { //MethodID:535, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 68
+ if(!this._player) return EventResult.THROUGH;
+
+ var hug2:uint = ((hug1 == ScreenAspectRatio.NORMAL) ? MarqueeAspectRatio.NORMAL : MarqueeAspectRatio.WIDE);
+
+ INicoMarqueePlayer(this._player).updateAspect(hug2);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:536, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(!this._player) return EventResult.THROUGH;
+ INicoMarqueePlayer(this._player).updateScreenMode(hug1);
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script032■
+
+package jp.nicovideo.nicoplayer.hiroba.events{
+
+ //■class(instance)_index:41
+ public class HirobaErrorStatus extends Object
+ {
+ //static constructor
+ public static function HirobaErrorStatus$cinit()
+ { //MethodID:538, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ HIROBA_INFO_NOT_FOUND = "hirobaInfoNotFound";
+ HIROBA_CONNECTOR_NOT_FOUND = "hirobaConnectorNotFound";
+ }
+
+ //static variables/etc.
+ public static const HIROBA_INFO_NOT_FOUND:String = "hirobaInfoNotFound";//slotID:1
+ public static const HIROBA_CONNECTOR_NOT_FOUND:String = "hirobaConnectorNotFound";//slotID:2
+
+ //constructor
+ public function HirobaErrorStatus()
+ { //MethodID:539, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script033■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:42
+ public class ScreenAspectRatio extends Object
+ {
+ //static constructor
+ public static function ScreenAspectRatio$cinit()
+ { //MethodID:541, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ NORMAL = 0;
+ WIDE = 1;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:uint = 0; //slotID:1
+ public static const WIDE:uint = 1; //slotID:2
+
+ //constructor
+ public function ScreenAspectRatio()
+ { //MethodID:542, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script034■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.events.Event
+ import jp.nicovideo.marquee.models.info.IMarqueeInfo
+ import jp.nicovideo.nicoplayer.models.comment.CommentRouter
+ import jp.nicovideo.nicoplayer.storages.CommentPostResultStatus
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:43
+ public class RemoconPlayerStateObserver extends Object
+ {
+ //static constructor
+ public static function RemoconPlayerStateObserver$cinit()
+ { //MethodID:544, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RemoconPlayerStateObserver(hug1:Function, hug2:IRemoconEventNotifier, hug3:IRemoconFullScreenKeeper)
+ { //MethodID:546, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 87
+ internal var updateRemoconState:Function; //slotID:1
+ internal var notifier:IRemoconEventNotifier; //slotID:2
+ internal var fullScreenKeeper:IRemoconFullScreenKeeper; //slotID:3
+ internal var remoconState:RemoconState; //slotID:4
+
+ remoconState = null;
+ updateRemoconState = hug1;
+ notifier = hug2;
+ fullScreenKeeper = hug3;
+
+ super();
+
+ this._updateRemoconState = updateRemoconState;
+ this._notifier = notifier;
+ this._fullScreenKeeper = fullScreenKeeper;
+ remoconState = RemoconState.instance;
+
+ remoconState.addEventListener(Event.CONNECT, function(hug1:Event, ...args):void{ //MethodID:545, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 24
+ remoconState.removeEventListener(Event.CONNECT, args.callee);
+ _updateRemoconState();
+ });
+ }
+
+ //variables/etc.
+ private var _updateRemoconState:Function; //slotID:0
+ private var _isHirobaMode:Boolean; //slotID:0
+ private var _isNicowariMode:Boolean; //slotID:0
+ private var _notifier:IRemoconEventNotifier; //slotID:0
+ private var _fullScreenKeeper:IRemoconFullScreenKeeper; //slotID:0
+
+ private function _onChangedStatus():void
+ { //MethodID:547, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 24
+ if(RemoconState.instance.isConnecting) this._updateRemoconState.apply();
+ }
+
+ public function get isHirobaMode():Boolean
+ { //MethodID:548, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isHirobaMode;
+ }
+
+ public function get isNicowariMode():Boolean
+ { //MethodID:549, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNicowariMode;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsMuteUpdated(hug1:Boolean):EventResult
+ { //MethodID:550, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsLoopUpdated(hug1:Boolean):EventResult
+ { //MethodID:551, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigVolumeUpdated(hug1:Number):EventResult
+ { //MethodID:552, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigCommentVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:553, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:554, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this._onChangedStatus();
+ this._fullScreenKeeper.screenModeUpdateListener(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:555, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:556, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._onChangedStatus();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:557, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isHirobaMode = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onMarqueeClientNicowariStarted(hug1:IMarqueeInfo):EventResult
+ { //MethodID:558, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isNicowariMode = true;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onMarqueeClientNicowariEnded(hug1:IMarqueeInfo):EventResult
+ { //MethodID:559, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isNicowariMode = false;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentPostFinished(hug1:String, hug2:String, hug3:Number):EventResult
+ { //MethodID:560, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 47
+ var hug4:Boolean = (hug2 == CommentPostResultStatus.SUCCESS);
+
+ this._notifier.receiveCommentPostResult(hug4, (hug4 ? null : RemoconPostCommentErrorStatus.OTHER));
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:561, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ this._notifier.receiveVideoSeekResult(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ public function onCommentRouterPostError(hug1:String):void
+ { //MethodID:562, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 42
+ this._notifier.receiveCommentPostResult(false, ((hug1 == CommentRouter.ERROR_POST_SAME_COMMENT) ? RemoconPostCommentErrorStatus.SAME_MESSAGE : RemoconPostCommentErrorStatus.OTHER));
+ }
+ }
+}
+
+//■script035■
+
+package jp.nicovideo.nicoplayer.config{
+
+
+ public function getDebugMode():uint
+ { //dispID:1, MethodID:564, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return DebugMode.NON;
+ }
+
+}
+
+//■script036■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:44
+ public interface IRegisterBGM
+ {
+ //static constructor
+ public static function IRegisterBGM$cinit()
+ { //MethodID:566, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function registerBGMVideoIDs(hug1:Function, hug2:String, hug3:Array):void; //MethodID:567, dispID:0
+
+ function registerCMVideoIDs(hug1:Function, hug2:String, hug3:Array):void; //MethodID:568, dispID:0
+
+ //constructor
+ public function IRegisterBGM(); //MethodID:569, dispID:0
+ }
+}
+
+//■script037■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.util.HTTPUtils
+
+ //■class(instance)_index:45
+ public class RegisterBGM extends Object implements IRegisterBGM
+ {
+ //static constructor
+ public static function RegisterBGM$cinit()
+ { //MethodID:571, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RegisterBGM(hug1:NicoConfig)
+ { //MethodID:572, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.__cfg = hug1;
+ }
+
+ //variables/etc.
+ private var __cfg:NicoConfig; //slotID:0
+
+ public function registerBGMVideoIDs(hug1:Function, hug2:String, hug3:Array):void
+ { //MethodID:573, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 14
+ this.__callAPI(hug1, hug2, hug3, "bgm");
+ }
+
+ public function registerCMVideoIDs(hug1:Function, hug2:String, hug3:Array):void
+ { //MethodID:574, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 14
+ this.__callAPI(hug1, hug2, hug3, "cm");
+ }
+
+ private function __callAPI(hug1:Function, hug2:String, hug3:Array, hug4:String):void
+ { //MethodID:576, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 112
+ internal var f:Function; //slotID:1
+ internal var threadID:String; //slotID:2
+ internal var videoIDs:Array; //slotID:3
+ internal var type:String; //slotID:4
+ internal var param:Object; //slotID:5
+
+ f = hug1;
+ threadID = hug2;
+ videoIDs = hug3;
+ type = hug4;
+ param = {id:threadID, type:type};
+
+ if(videoIDs && (videoIDs.length != 0)) param["bgm_id[]"] = videoIDs;
+ HTTPUtils.loadXML(function(hug1:XML):void{ //MethodID:575, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 56
+ if(hug1 === null){
+ f(false, null);
+
+ return;
+ }
+
+ if(hug1.@status == "fail"){
+ f(false, hug1.error.code);
+
+ return;
+ }
+
+ f(true, null);
+ }, this.__cfg.REGISTERBGM_API_URL, param);
+ }
+ }
+}
+
+//■script038■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:46
+ public class CommentPoolContainer extends Object
+ {
+ //static constructor
+ public static function CommentPoolContainer$cinit()
+ { //MethodID:578, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentPoolContainer()
+ { //MethodID:579, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this._list = {};
+ this.onCommentPoolContainerUpdated = new Functions();
+
+ super();
+ }
+
+ //variables/etc.
+ private var _list:Object; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentPoolContainerUpdated:Functions;//slotID:0
+
+ public function get lists():Object
+ { //MethodID:580, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._list;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:581, LocalCount= 5 , MaxScope= 1, MaxStack= 7, CodeLength= 88
+ if(!this._list.hasOwnProperty(hug4)) this._list[hug4] = [];
+
+ this._list[hug4] = CommentListUtils.update(this._list[hug4], hug1, hug2, hug3);
+
+ onCommentPoolContainerUpdated.apply(hug1, hug2, hug3, hug4);
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script039■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+ import flash.utils.unescapeMultiByte
+ import jp.nicovideo.ext.models.ThumbWatchViaName
+ import jp.nicovideo.nicoplayer.models.comment.CommentListPublicStatus
+ import jp.nicovideo.nicoplayer.models.video.VideoType
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.StringUtils
+
+ //■class(instance)_index:47
+ public class NicoFlashVarsInitializer extends Object
+ {
+ //static constructor
+ public static function NicoFlashVarsInitializer$cinit()
+ { //MethodID:583, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function setFlashVars(hug1:NicoFlashVars, hug2:Object):void
+ { //dispID:3, MethodID:584, LocalCount= 5 , MaxScope= 1, MaxStack= 7, CodeLength= 837
+ var hug3:Array = null;
+ var hug4:int = 0;
+
+ if(StringUtils.isValidVideoID(hug2.v)){
+ nico_flashvars.watchID = hug2.v;
+ }else if(!hug2.playlistId){
+ throw new Error("WatchFlashVars.WatchFlashVars. invalid variable:v=" + hug2.v);
+ }
+
+ if(StringUtils.isPureVideoID(hug2.videoId)) nico_flashvars.originalVideoID = hug2.videoId;
+
+ if(hug2.mylist_count) hug1.mylistCount = uint(Number(hug2.mylist_count));
+
+ if((hug2.movie_type == VideoType.FLV) || (hug2.movie_type == VideoType.MP4) || (hug2.movie_type == VideoType.SWF)) nico_flashvars.videoType = hug2.movie_type;
+
+ nico_flashvars.isMymemory = (hug2.mm == "1");
+ nico_flashvars.hasOwnerThread = (hug2.has_owner_thread == "1");
+ nico_flashvars.forceLowMode = (hug2.lo == "1");
+
+ if(hug2.eco) nico_flashvars.economyMode = hug2.eco;
+
+ nico_flashvars.isCommunityThread = (hug2.is_community_thread == "1");
+ nico_flashvars.waitsSWFVideoInit = (hug2.dlcw == "1");
+
+ if(hug2.thumbTitle) nico_flashvars.videoTitle = hug2.thumbTitle;
+
+ if(hug2.thumbDescription) nico_flashvars.videoDescription = hug2.thumbDescription;
+
+ if(hug2.player_version_xml) nico_flashvars.playerVersionUpdated = hug2.player_version_xml;
+
+ if(hug2.player_info_xml) nico_flashvars.playerInfoUpdated = hug2.player_info_xml;
+
+ nico_flashvars.isChannel = (hug2.is_channel == "1");
+ nico_flashvars.category = hug2.category;
+ nico_flashvars.categoryGroup = hug2.categoryGroup;
+ nico_flashvars.isDeepenedCommentForce = (hug2.isBackComment == "1");
+
+ if(hug2.noComment) nico_flashvars.isNoComment = (hug2.noComment == "1");
+
+ if(hug2.bgms){
+ hug3 = hug2.bgms.toString().split(new RegExp("\s*,\s*"));
+
+ Assert.assert((hug3.length % 2) == 0);
+
+ nico_flashvars.importedBGMVideos = [];
+ hug4 = 0;
+
+ while(hug4 < hug3.length){
+ hug1.importedBGMVideos.push({id:hug3[hug4], type:hug3[hug4 + 1]});
+
+ hug4 += 2;
+ }
+ }
+
+ nico_flashvars.noRelatedVideo = (hug2.no_related_video == "1");
+ nico_flashvars.forceRelationInvisible = (hug2.noRelation == "1");
+
+ if(hug2.country_code) nico_flashvars.countryCode = hug2.country_code;
+
+ if(hug2.thumbWatch == "1"){
+ setThumbFlashVars(hug1, hug2);
+ }else{
+ setWatchFlashVars(hug1, hug2);
+ }
+
+ if(hug2.community_id) nico_flashvars.communityID = hug2.community_id;
+
+ if(hug2.community_global_id) nico_flashvars.communityGlobalID = hug2.community_global_id;
+
+ nico_flashvars.isNoCommand = (hug2.noCommand == "1");
+ nico_flashvars.isNoAtComment = (hug2.noAtComment == "1");
+ nico_flashvars.isWide = (hug2.isWide == "1");
+
+ if(hug2.videoDetail) nico_flashvars.videoDetail = hug2.videoDetail;
+
+ if(hug2.leaf_switch) hug1.leafSwitch = int(hug2.leaf_switch);
+ }
+
+ private static function setThumbFlashVars(hug1:NicoFlashVars, hug2:Object):void
+ { //dispID:4, MethodID:585, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 509
+ var hug3:ThumbFlashVars = new ThumbFlashVars();
+ nico_flashvars.thumbFlashVars = hug3;
+ hug3.isThumbWatch = Boolean(hug2.thumbWatch);
+ nico_flashvars.playerTimestamp = (hug2.playerTimestamp || "");
+ nico_flashvars.thumbImage = hug2.thumbImage;
+ hug3.thumbWidth = Number(hug2.thumbWidth);
+ hug3.thumbHeight = Number(hug2.thumbHeight);
+ nico_flashvars.openNewWindow = (hug2.fv_new_window == "1");
+ hug3.transparent = Number(hug2.fv_transparent);
+ nico_flashvars.watchRef = hug2.fv_watch_ref;
+ var hug4:String = unescapeMultiByte(String(hug2.thumbPlayKey));
+ nico_flashvars.thumbPlayKey = hug4;
+ nico_flashvars.isP4Mode = (hug2.fv_p4_mode == "1");
+ nico_flashvars.noController = (hug2.fv_no_controller == "1");
+ nico_flashvars.thumbComment = (hug2.thumbComment == "1");
+ nico_flashvars.bySwf = (hug2.bySwf == "1");
+ nico_flashvars.noAdSense = (hug2.noAdSense == "1");
+ nico_flashvars.noLogo = (hug2.fv_no_logo == "1");
+ nico_flashvars.isNoLogin = (hug2.isNoLogin == "1");
+
+ if(ThumbWatchViaName.contains(hug2.via)) nico_flashvars.via = hug2.via;
+
+ if(new RegExp("^[0-9]+\.1\.").test(hug4)){
+ nico_flashvars.isAutoPlay = (hug2.fv_autoplay == "1");
+ nico_flashvars.noJumpMessage = (hug2.fv_no_jump_msg == "1");
+ nico_flashvars.noComment = (hug2.fv_no_comment == "1");
+ nico_flashvars.noCommentButton = (hug2.fv_no_comment_btn == "1");
+ nico_flashvars.noLink = (hug2.fv_no_link == "1");
+ nico_flashvars.noSound = (hug2.fv_no_sound == "1");
+ }
+
+ if(hug1.isNoComment){
+ nico_flashvars.noComment = true;
+ nico_flashvars.noCommentButton = true;
+ }
+ }
+
+ private static function setWatchFlashVars(hug1:NicoFlashVars, hug2:Object):void
+ { //dispID:5, MethodID:586, LocalCount= 8 , MaxScope= 1, MaxStack= 5, CodeLength= 1536
+ var hug6:uint = 0;
+ var hug3:WatchFlashVars = new WatchFlashVars();
+ nico_flashvars.watchFlashVars = hug3;
+ nico_flashvars.isEditMode = (hug2.e == "1");
+ nico_flashvars.isReadOnly = (hug2.ro == "1");
+ nico_flashvars.isOwnerThreadEditMode = (hug2.owner_thread_edit_mode == "1");
+ nico_flashvars.isPostLocked = (hug2.isHtrzm == "1");
+ nico_flashvars.isCommentShuttered = (hug2.post_locked == "1");
+ nico_flashvars.isVideoOwner = (hug2.is_video_owner == "1");
+ nico_flashvars.hasEconomyMode = (hug2.iee == "1");
+ nico_flashvars.isNoBanner = (hug2.noBanner == "1");
+ nico_flashvars.thumbImage = hug2.thumbImage;
+
+ if(hug2.us) hug3.userStatus = uint(Number(hug2.us));
+
+ nico_flashvars.noPostPlayStats = (hug2.unps == "1");
+ var hug7:Boolean = (hug2.noNicotic == "1");
+ nico_flashvars.noNicotic = hug7;
+ var hug4:Boolean = hug7;
+ nico_flashvars.noAtPizza = ((hug2.fv_no_pizza == "1") || hug4);
+ nico_flashvars.noHiroba = ((hug2.noHiroba == "1") || hug4);
+
+ if(hug2.wv_id) nico_flashvars.watchVideoID = hug2.wv_id;
+
+ if(hug2.wv_time) nico_flashvars.gameTime = hug2.wv_time;
+
+ if(hug2.wv_code) nico_flashvars.gameKey = hug2.wv_code;
+
+ if(hug2.button_threshold) hug3.buttonThreshold = uint(Number(hug2.button_threshold));
+
+ nico_flashvars.commentListPublicStatus = (((hug2.threadPublic == 2) || (hug2.threadPublic == 4)) ? CommentListPublicStatus.MEMBER_ONLY : CommentListPublicStatus.ALL_ENABLE);
+
+ if(hug2.fv_play_from) nico_flashvars.jumpVPosPlayFrom = hug2.fv_play_from;
+
+ if(hug2.fv_play_length) nico_flashvars.jumpPlayLength = hug2.fv_play_length;
+
+ if(hug2.fv_returnid) nico_flashvars.jumpReturnVideoID = hug2.fv_returnid;
+
+ if(hug2.fv_returnto) nico_flashvars.jumpVPosReturnTo = hug2.fv_returnto;
+
+ if(hug2.fv_returnmsg) nico_flashvars.jumpReturnMessage = hug2.fv_returnmsg;
+
+ var hug5:Boolean = false;
+
+ if(hug2.marqueeUrl){
+ nico_flashvars.marqueeUrl = hug2.marqueeUrl;
+ hug5 = true;
+ }
+
+ nico_flashvars.isNoMarquee = ((hug2.noMarquee == "1") || hug5);
+ nico_flashvars.isNoGetMarquee = (hug2.noGetMarquee == "1");
+
+ if(hug2.open_src) nico_flashvars.isOwnerThreadAvailable = (hug2.open_src == "1");
+
+ nico_flashvars.isMonetized = (hug2.is_monetized == "1");
+
+ if(hug2.userSex && ((hug2.userSex == "0") || (hug2.userSex == "1"))) nico_flashvars.userSex = hug2.userSex;
+
+ if(hug2.userAge){
+ hug6 = parseInt(hug2.userAge, 10);
+
+ if(hug6 && !isNaN(hug6)) nico_flashvars.userAge = hug6.toString();
+ }
+
+ if(hug2.userPrefecture && !isNaN(hug2.userPrefecture)) hug3.userPrefecture = String(hug2.userPrefecture);
+
+ nico_flashvars.forceNicowariOff = (hug2.forceNicowariOff == "1");
+
+ if(hug2.originalThreadId) nico_flashvars.originalThreadId = hug2.originalThreadId;
+
+ nico_flashvars.isNoNicomesse = (hug2.noNicomesse == "1");
+
+ if(hug2.channelId) nico_flashvars.channelID = hug2.channelId;
+
+ if(hug2.channelTopURL) nico_flashvars.channelTopURL = hug2.channelTopURL;
+
+ if(hug2.channelVideoURL) nico_flashvars.channelVideoURL = hug2.channelVideoURL;
+
+ if(hug2.channelName) nico_flashvars.channelName = hug2.channelName;
+
+ if(hug2.dicArticleURL) nico_flashvars.dicArticleURL = hug2.dicArticleURL;
+
+ if(hug2.blogEmbedURL) nico_flashvars.blogEmbedURL = hug2.blogEmbedURL;
+
+ if(hug2.uadAdvertiseURL) nico_flashvars.uadAdvertiseURL = hug2.uadAdvertiseURL;
+
+ if(hug2.communityPostURL) nico_flashvars.communityPostURL = hug2.communityPostURL;
+
+ if(hug2.csrfToken) nico_flashvars.csrfToken = hug2.csrfToken;
+
+ nico_flashvars.useChecklistCache = ((hug2.useChecklistCache != null) && (hug2.useChecklistCache != "0"));
+
+ if(hug2.noMovie) nico_flashvars.isNoMovie = (hug2.noMovie == "1");
+
+ if(hug2.noDeflistAdd) nico_flashvars.noDeflistAdd = (hug2.noDeflistAdd == "1");
+
+ if(hug2.liveKick) nico_flashvars.liveKick = hug2.liveKick;
+
+ if(hug2.liveKickId) nico_flashvars.liveKickId = hug2.liveKickId;
+
+ if(hug2.hoihoiTitle) nico_flashvars.hoihoiTitle = hug2.hoihoiTitle;
+
+ if(hug2.hoihoiButton) nico_flashvars.hoihoiButton = hug2.hoihoiButton;
+
+ if(hug2.hoihoiURL) nico_flashvars.hoihoiURL = hug2.hoihoiURL;
+
+ if(hug2.noVideoMenu) nico_flashvars.isNoVideoMenu = (hug2.noVideoMenu == "1");
+
+ if(hug2.noColor) nico_flashvars.noColor = (hug2.noColor == "1");
+
+ if(hug2.noAppli) nico_flashvars.isNoAppli = (hug2.noAppli == "1");
+
+ if(hug2.bootApp) hug3.bootApp = String(hug2.bootApp);
+
+ if(hug2.videoUserId) nico_flashvars.videoUserID = hug2.videoUserId;
+
+ if(hug2.isOfficialAnime) nico_flashvars.isOfficialAnime = (hug2.isOfficialAnime == "1");
+
+ if(hug2.appliInstalled) hug3.appliInstalled = Number(hug2.appliInstalled);
+
+ if(hug2.isAppliPromotion) nico_flashvars.isAppliPromotion = true;
+
+ if(hug2.useVideoEnder != undefined) nico_flashvars.useVideoEnder = (hug2.useVideoEnder == "1");
+ }
+
+ //constructor
+ public function NicoFlashVarsInitializer()
+ { //MethodID:587, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script040■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:48
+ public interface ICommentList implements EventSender
+ {
+ //static constructor
+ public static function ICommentList$cinit()
+ { //MethodID:589, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function reload(hug1:Function):void; //MethodID:590, dispID:0
+
+ function update(hug1:Function):void; //MethodID:591, dispID:0
+
+ function post(hug1:IComment):void; //MethodID:592, dispID:0
+
+ function serveCommentList():void; //MethodID:593, dispID:0
+
+ function get name():String; //MethodID:594, dispID:0
+
+ function get currentList():Array; //MethodID:595, dispID:0
+
+ function clickButtonComment(hug1:IComment):void; //MethodID:596, dispID:0
+
+ function isClickable(hug1:IComment):Boolean; //MethodID:597, dispID:0
+
+ function get leavesNum():String; //MethodID:598, dispID:0
+
+ function get threadID():String; //MethodID:599, dispID:0
+
+ //constructor
+ public function ICommentList(); //MethodID:600, dispID:0
+ }
+}
+
+//■script041■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ //■class(instance)_index:49
+ public interface IReplaceInfo
+ {
+ //static constructor
+ public static function IReplaceInfo$cinit()
+ { //MethodID:602, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get originalSource():String; //MethodID:603, dispID:0
+
+ function get replacedSource():String; //MethodID:604, dispID:0
+
+ function get isWholeReplaced():Boolean; //MethodID:605, dispID:0
+
+ function get isRegExp():Boolean; //MethodID:606, dispID:0
+
+ //constructor
+ public function IReplaceInfo(); //MethodID:607, dispID:0
+ }
+}
+
+//■script042■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import flash.net.URLVariables
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:50
+ public class ChannelReplacer extends Object
+ {
+ //static constructor
+ public static function ChannelReplacer$cinit()
+ { //MethodID:609, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ChannelReplacer(hug1:String)
+ { //MethodID:610, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 94
+ var hug4:URLVariables = null;
+ var hug5:_ReplaceInfo = null;
+ this._replaceList = [];
+
+ super();
+
+ var hug2:Array = hug1.split("&");
+ var hug3:uint = 0;
+
+ while(hug3 < hug2.length){
+ hug4 = new URLVariables(hug2[hug3]);
+ hug5 = new _ReplaceInfo(hug4);
+
+ this._replaceList.push(hug5);
+
+ hug3++;
+ }
+ }
+
+ //variables/etc.
+ private var _replaceList:Array; //slotID:0
+
+ public function isPostable(hug1:String):Boolean
+ { //MethodID:611, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 115
+ var hug2:_ReplaceInfo = null;
+ var hug3:* = undefined;
+
+ for each(hug2 in this._replaceList){
+ if(hug2.isWholeReplaced && (hug2.replacedSource == null)){
+ hug3 = (hug2.isRegExp ? new RegExp(hug2.originalSource, "g") : hug2.originalSource);
+
+ if(hug1.search(hug3) != (-1)) return false;
+ }
+ }
+
+ return true;
+ }
+
+ private function _replace(hug1:IComment):IComment
+ { //MethodID:612, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 225
+ var hug3:_ReplaceInfo = null;
+ var hug5:Boolean = false;
+ var hug6:* = undefined;
+ var hug2:String = hug1.message;
+
+ for each(hug3 in this._replaceList){
+ hug5 = hug3.isRegExp;
+ hug6 = (hug5 ? new RegExp(hug3.originalSource, "g") : hug3.originalSource);
+
+ if(!hug3.isWholeReplaced){
+ hug2 = hug2.replace(hug6, hug3.replacedSource);
+ }else{
+ if((hug5 && RegExp(hug6).test(hug2)) || (!hug5 && (hug2.indexOf(String(hug6)) != (-1)))) hug2 = hug3.replacedSource;
+
+ if(hug2 == null) return null;
+ }
+ }
+
+ if(hug2 == hug1.message) return hug1;
+
+ var hug4:CommentBuilder = new CommentBuilder(hug1);
+ hug4.message = hug2;
+ return hug4.make();
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:613, LocalCount= 10 , MaxScope= 1, MaxStack= 5, CodeLength= 111
+ var hug6:IComment = null;
+ var hug7:IComment = null;
+
+ if(hug1.length == 0) return EventResult.THROUGH;
+
+ var hug5:Array = [];
+
+ for each(hug6 in hug1){
+ hug7 = this._replace(hug6);
+
+ if(hug7 == null){
+ }else{
+ hug5.push(hug7);
+ }
+ }
+
+ return EventResult.replace([hug5, hug2, hug3, hug4]);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get replaceList():Array
+ { //MethodID:614, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._replaceList;
+ }
+ }
+}
+
+import flash.net.URLVariables
+
+//■class(instance)_index:51
+//private
+class _ReplaceInfo extends Object implements IReplaceInfo
+{
+ //static constructor
+ public static function _ReplaceInfo$cinit()
+ { //MethodID:615, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ReplaceInfo(hug1:URLVariables)
+ { //MethodID:616, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 128
+ var hug2:String = null;
+
+ super();
+
+ for(hug2 in hug1){
+ if(hug1[hug2] != ""){
+ this._replaced = hug1[hug2];
+ }else{
+ this._replaced = null;
+ }
+
+ if(hug2.indexOf("/") == 0){
+ this._isRegExp = true;
+ hug2 = hug2.substring(1);
+ }
+
+ if(hug2.indexOf("*") == 0){
+ this._isWholeReplaced = true;
+ hug2 = hug2.substring(1);
+ }
+
+ this._original = hug2;
+ }
+ }
+
+ //variables/etc.
+ private var _original:String; //slotID:0
+ private var _replaced:String; //slotID:0
+ private var _isWholeReplaced:Boolean = false; //slotID:0
+ private var _isRegExp:Boolean = false; //slotID:0
+
+ public function get originalSource():String
+ { //MethodID:617, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._original;
+ }
+
+ public function get replacedSource():String
+ { //MethodID:618, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._replaced;
+ }
+
+ public function get isWholeReplaced():Boolean
+ { //MethodID:619, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isWholeReplaced;
+ }
+
+ public function get isRegExp():Boolean
+ { //MethodID:620, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isRegExp;
+ }
+}
+
+//■script043■
+
+package jp.nicovideo.nicoplayer.views{
+
+ import flash.display.Sprite
+
+ //■class(instance)_index:52
+ public interface IVideoLayerManager
+ {
+ //static constructor
+ public static function IVideoLayerManager$cinit()
+ { //MethodID:622, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function setVideoSize(hug1:int, hug2:int):void; //MethodID:623, dispID:0
+
+ function refreshLayers():void; //MethodID:624, dispID:0
+
+ function updateWideNicoSLayer(hug1:Boolean=false):void; //MethodID:625, dispID:0
+
+ function updateVideoMask(hug1:Boolean=false):void; //MethodID:626, dispID:0
+
+ function deepenComment():void; //MethodID:627, dispID:0
+
+ function createMarqueeVideoLayer():Sprite; //MethodID:628, dispID:0
+
+ function deleteMarqueeVideoLayer():void; //MethodID:629, dispID:0
+
+ function updateNicowariVisible(hug1:Boolean):void; //MethodID:630, dispID:0
+
+ function get baseLayer():Sprite; //MethodID:631, dispID:0
+
+ function get videoLayer():Sprite; //MethodID:632, dispID:0
+
+ function get nicosLayer():Sprite; //MethodID:633, dispID:0
+
+ function get nicosMaskLayer():Sprite; //MethodID:634, dispID:0
+
+ function get nicosBGMLayer():Sprite; //MethodID:635, dispID:0
+
+ function get commentLayer():Sprite; //MethodID:636, dispID:0
+
+ function get jumpMsgLayer():Sprite; //MethodID:637, dispID:0
+
+ function get marqueeVideoLayer():Sprite; //MethodID:638, dispID:0
+
+ function get hirobaCommentLayer():Sprite; //MethodID:639, dispID:0
+
+ function get pluginLayer():Sprite; //MethodID:640, dispID:0
+
+ //constructor
+ public function IVideoLayerManager(); //MethodID:641, dispID:0
+ }
+}
+
+//■script044■
+
+package jp.nicovideo.nicoplayer.views{
+
+ import flash.display.CapsStyle
+ import flash.display.DisplayObject
+ import flash.display.JointStyle
+ import flash.display.LineScaleMode
+ import flash.display.MovieClip
+ import flash.display.Sprite
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.nicoplayer.models.playlist.VideoInfo
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_receiver
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:53
+ public class VideoLayerManager extends Object implements IVideoLayerManager
+ {
+ //static constructor
+ public static function VideoLayerManager$cinit()
+ { //MethodID:643, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ OPTIONAL_LAYER_SPONSORVIDEOLAYER = "opt_sponsorvideo_layer";
+ }
+
+ //static variables/etc.
+ public static const OPTIONAL_LAYER_SPONSORVIDEOLAYER:String = "opt_sponsorvideo_layer";//slotID:1
+
+ //constructor
+ public function VideoLayerManager(hug1:MovieClip, hug2:uint)
+ { //MethodID:644, LocalCount= 3 , MaxScope= 1, MaxStack= 21, CodeLength= 241
+ this._LAYERS_ORDER_DEFAULT = [this._LAYER_KEY_VIDEOLAYER, this._LAYER_KEY_VIDEOMASK, OPTIONAL_LAYER_SPONSORVIDEOLAYER, this._OPTIONAL_LAYER_SPONSORVIDEOMASK, this._LAYER_KEY_NICOSMASKLAYER, this._LAYER_KEY_NICOSMASKLAYERMASK, this._LAYER_KEY_NICOSLAYER, this._LAYER_KEY_NICOSLAYERMASK, this._LAYER_KEY_NICOSBGMLAYER, this._LAYER_KEY_NICOSBGMLAYERMASK, this._LAYER_KEY_COMMENTLAYER, this._LAYER_KEY_COMMENTMASK, this._LAYER_KEY_PLUGIN, this._LAYER_KEY_MARQUEEVIDEOLAYER, this._LAYER_KEY_MARQUEEVIDEOMASK, this._LAYER_KEY_HIROBACOMMENTLAYER, this._LAYER_KEY_HIROBACOMMENTMASK, this._LAYER_KEY_JUMPMSG, this._LAYER_KEY_FRAMELAYER, this._LAYER_KEY_FRAMEMASK];
+ this._LAYERS_ORDER_DEEPENEDCOMMENT = [this._LAYER_KEY_COMMENTLAYER, this._LAYER_KEY_COMMENTMASK, this._LAYER_KEY_VIDEOLAYER, this._LAYER_KEY_VIDEOMASK, OPTIONAL_LAYER_SPONSORVIDEOLAYER, this._OPTIONAL_LAYER_SPONSORVIDEOMASK, this._LAYER_KEY_NICOSMASKLAYER, this._LAYER_KEY_NICOSMASKLAYERMASK, this._LAYER_KEY_NICOSLAYER, this._LAYER_KEY_NICOSLAYERMASK, this._LAYER_KEY_NICOSBGMLAYER, this._LAYER_KEY_NICOSBGMLAYERMASK, this._LAYER_KEY_PLUGIN, this._LAYER_KEY_HIROBACOMMENTLAYER, this._LAYER_KEY_HIROBACOMMENTMASK, this._LAYER_KEY_MARQUEEVIDEOLAYER, this._LAYER_KEY_MARQUEEVIDEOMASK, this._LAYER_KEY_JUMPMSG, this._LAYER_KEY_FRAMELAYER, this._LAYER_KEY_FRAMEMASK];
+ this._NICOS_LAYERS = [this._LAYER_KEY_NICOSLAYER, this._LAYER_KEY_NICOSMASKLAYER, this._LAYER_KEY_NICOSBGMLAYER];
+ this._NICOS_MASKS = [this._LAYER_KEY_NICOSLAYERMASK, this._LAYER_KEY_NICOSMASKLAYERMASK, this._LAYER_KEY_NICOSBGMLAYERMASK];
+ this._registered = {};
+ this._layersOrder = this._LAYERS_ORDER_DEFAULT;
+
+ super();
+
+ this._baseLayer = hug1;
+ this._aspectRatio = hug2;
+
+ this._initializeLayers();
+ }
+
+ //variables/etc.
+ private const _OPTIONAL_LAYER_SPONSORVIDEOMASK:String = "opt_sponsorvideo_mask";//slotID:0
+ private const _LAYER_KEY_FRAMELAYER:String = "framelayer"; //slotID:0
+ private const _LAYER_KEY_FRAMEMASK:String = "framemask"; //slotID:0
+ private const _LAYER_KEY_VIDEOLAYER:String = "videolayer"; //slotID:0
+ private const _LAYER_KEY_VIDEOMASK:String = "videomask"; //slotID:0
+ private const _LAYER_KEY_NICOSLAYER:String = "nicos"; //slotID:0
+ private const _LAYER_KEY_NICOSLAYERMASK:String = "nicoslayermask";//slotID:0
+ private const _LAYER_KEY_NICOSMASKLAYER:String = "nicosmask"; //slotID:0
+ private const _LAYER_KEY_NICOSMASKLAYERMASK:String = "nicosmasklayermask";//slotID:0
+ private const _LAYER_KEY_NICOSBGMLAYER:String = "nicosbgm"; //slotID:0
+ private const _LAYER_KEY_NICOSBGMLAYERMASK:String = "nicosbgmlayermask";//slotID:0
+ private const _LAYER_KEY_COMMENTLAYER:String = "commentlayer"; //slotID:0
+ private const _LAYER_KEY_COMMENTMASK:String = "commentmask"; //slotID:0
+ private const _LAYER_KEY_JUMPMSG:String = "jumpmsg"; //slotID:0
+ private const _LAYER_KEY_MARQUEEVIDEOLAYER:String = "marqueevideolayer";//slotID:0
+ private const _LAYER_KEY_MARQUEEVIDEOMASK:String = "marqueevideomask";//slotID:0
+ private const _LAYER_KEY_HIROBACOMMENTLAYER:String = "hirobacommentLayer";//slotID:0
+ private const _LAYER_KEY_HIROBACOMMENTMASK:String = "hirobacommentMask";//slotID:0
+ private const _LAYER_KEY_PLUGIN:String = "pluginLayer"; //slotID:0
+ private const _LAYERS_ORDER_DEFAULT:Array; //slotID:0
+ private const _LAYERS_ORDER_DEEPENEDCOMMENT:Array; //slotID:0
+ private const _NICOS_LAYERS:Array; //slotID:0
+ private const _NICOS_MASKS:Array; //slotID:0
+ private var _registered:Object; //slotID:0
+ private var _layersOrder:Array; //slotID:0
+ private var _aspectRatio:uint = 1; //slotID:0
+ private var _screenMode:uint = 0; //slotID:0
+ private var _scale:Number = 1.0; //slotID:0
+ private var _videoWidth:int = 0; //slotID:0
+ private var _videoHeight:int = 0; //slotID:0
+ private var _isDeepenCommentMode:Boolean = false; //slotID:0
+ private var _isWideNicoSLayer:Boolean = false; //slotID:0
+ private var _isNoMaskMask:Boolean = false; //slotID:0
+ private var _isNicowariVisible:Boolean = false; //slotID:0
+ private var _isHirobaVisible:Boolean = false; //slotID:0
+ private var _baseLayer:MovieClip; //slotID:0
+ private var _frameLayer:Sprite; //slotID:0
+ private var _pluginLayer:Sprite; //slotID:0
+ private var _jumpMsg:Sprite; //slotID:0
+ private var _videoLayer:Sprite; //slotID:0
+ private var _videoMask:Sprite; //slotID:0
+ private var _marqueeVideoLayer:Sprite; //slotID:0
+ private var _marqueeVideoMask:Sprite; //slotID:0
+ private var _commentLayer:Sprite; //slotID:0
+ private var _commentMask:Sprite; //slotID:0
+ private var _hirobaCommentLayer:Sprite; //slotID:0
+ private var _hirobaCommentMask:Sprite; //slotID:0
+ private var _nicosLayer:Sprite; //slotID:0
+ private var _nicosLayerMask:Sprite; //slotID:0
+ private var _nicosMaskLayer:Sprite; //slotID:0
+ private var _nicosMaskLayerMask:Sprite; //slotID:0
+ private var _nicosBGMLayer:Sprite; //slotID:0
+ private var _nicosBGMLayerMask:Sprite; //slotID:0
+
+ private function _initializeLayers():void
+ { //MethodID:645, LocalCount= 2 , MaxScope= 1, MaxStack= 8, CodeLength= 1098
+ this._videoWidth = this._videoLayerWidth;
+ this._videoHeight = this._videoLayerHeight;
+ this._frameLayer = new Sprite();
+
+ this._frameLayer.graphics.lineStyle(1, 0, 1, false, LineScaleMode.NONE, CapsStyle.NONE, JointStyle.MITER);
+ this._frameLayer.graphics.drawRect(0, 0, (VideoLayerConstants.BASE_LAYER_HD_WIDTH + 2), (VideoLayerConstants.BASE_LAYER_HD_HEIGHT + 2));
+
+ this._frameLayer.width = (this._baseLayerWidth + 2);
+ this._frameLayer.height = (this._baseLayerHeight + 2);
+ this._jumpMsg = this._createSimpleLayer(VideoLayerConstants.BASE_LAYER_HD_WIDTH, VideoLayerConstants.BASE_LAYER_HD_HEIGHT, 0, 0, 0, 0);
+ this._pluginLayer = this._createSimpleLayer(VideoLayerConstants.BASE_LAYER_SD_WIDTH, VideoLayerConstants.BASE_LAYER_SD_HEIGHT, 0, 0, 0, 0);
+ this._videoMask = this._createSimpleLayer(this._maskLayerWidth, this._maskLayerHeight, 0xFF0000);
+ this._videoLayer = this._createSimpleLayer(this._videoLayerWidth, this._videoLayerHeight, 0, 0, 0, 0);
+ this._videoLayer.mask = this._videoMask;
+ this._commentMask = this._createSimpleLayer(VideoLayerConstants.COMMENT_LAYER_HD_WIDTH, VideoLayerConstants.COMMENT_LAYER_HD_HEIGHT, 0xFF0000, -((VideoLayerConstants.COMMENT_LAYER_HD_WIDTH - VideoLayerConstants.COMMENT_LAYER_SD_WIDTH) / 2));
+ this._commentLayer = this._createSimpleLayer(VideoLayerConstants.COMMENT_LAYER_SD_WIDTH, VideoLayerConstants.COMMENT_LAYER_SD_HEIGHT, 0, 0, 0, 0);
+ this._commentLayer.mask = this._commentMask;
+ this._hirobaCommentMask = this._createSimpleLayer(VideoLayerConstants.COMMENT_LAYER_HD_WIDTH, VideoLayerConstants.COMMENT_LAYER_HD_HEIGHT, 0xFF0000);
+ this._hirobaCommentLayer = this._createSimpleLayer(VideoLayerConstants.COMMENT_LAYER_HD_WIDTH, VideoLayerConstants.COMMENT_LAYER_HD_HEIGHT, 0, 0, 0, 0);
+ this._hirobaCommentLayer.mask = this._hirobaCommentMask;
+ this._nicosLayerMask = this._createSimpleLayer(VideoLayerConstants.BASE_LAYER_SD_WIDTH, VideoLayerConstants.BASE_LAYER_SD_HEIGHT, 0xFF0000);
+ this._nicosLayer = this._createSimpleLayer(VideoLayerConstants.VIDEO_LAYER_HD_WIDTH, VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT, 0, 0, 0, 0);
+ this._nicosLayer.mask = this._nicosLayerMask;
+ this._nicosMaskLayerMask = this._createSimpleLayer(VideoLayerConstants.BASE_LAYER_SD_WIDTH, VideoLayerConstants.BASE_LAYER_SD_HEIGHT, 0xFF0000);
+ this._nicosMaskLayer = this._createSimpleLayer(VideoLayerConstants.VIDEO_LAYER_HD_WIDTH, VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT, 0, 0, 0, 0);
+ this._nicosMaskLayer.mask = this._nicosMaskLayerMask;
+ this._nicosBGMLayerMask = this._createSimpleLayer(VideoLayerConstants.BASE_LAYER_SD_WIDTH, VideoLayerConstants.BASE_LAYER_SD_HEIGHT, 0xFF0000);
+ this._nicosBGMLayer = this._createSimpleLayer(VideoLayerConstants.VIDEO_LAYER_HD_WIDTH, VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT, 0, 0, 0, 0);
+ this._nicosBGMLayer.mask = this._nicosBGMLayerMask;
+
+ if(this._aspectRatio == ScreenAspectRatio.WIDE){
+ var hug1:int = -1;
+ this._frameLayer.y = hug1;
+ this._frameLayer.x = hug1;
+ }else{
+ this._frameLayer.x = (((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.BASE_LAYER_SD_WIDTH) / 2) - 1);
+ this._frameLayer.y = -1;
+ }
+
+ this._videoLayer.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - this._videoLayerWidth) / 2);
+ this._videoLayer.y = ((this._baseLayerHeight - this._videoLayerHeight) / 2);
+ this._videoMask.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - this._maskLayerWidth) / 2);
+ this._videoMask.y = ((this._baseLayerHeight - this._maskLayerHeight) / 2);
+ var hug1:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.COMMENT_LAYER_SD_WIDTH) / 2);
+ this._commentMask.x = hug1;
+ this._commentLayer.x = hug1;
+ var hug1:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.VIDEO_LAYER_SD_WIDTH) / 2);
+ this._nicosBGMLayer.x = hug1;
+ this._nicosMaskLayer.x = hug1;
+ this._nicosLayer.x = hug1;
+ var hug1:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.BASE_LAYER_SD_WIDTH) / 2);
+ this._nicosBGMLayerMask.x = hug1;
+ this._nicosMaskLayerMask.x = hug1;
+ this._nicosLayerMask.x = hug1;
+ this._pluginLayer.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.BASE_LAYER_SD_WIDTH) / 2);
+
+ this._append(this._LAYER_KEY_VIDEOLAYER, this._videoLayer);
+ this._append(this._LAYER_KEY_VIDEOMASK, this._videoMask);
+ this._append(this._LAYER_KEY_NICOSMASKLAYER, this._nicosMaskLayer);
+ this._append(this._LAYER_KEY_NICOSMASKLAYERMASK, this._nicosMaskLayerMask);
+ this._append(this._LAYER_KEY_NICOSLAYER, this._nicosLayer);
+ this._append(this._LAYER_KEY_NICOSLAYERMASK, this._nicosLayerMask);
+ this._append(this._LAYER_KEY_NICOSBGMLAYER, this._nicosBGMLayer);
+ this._append(this._LAYER_KEY_NICOSBGMLAYERMASK, this._nicosBGMLayerMask);
+ this._append(this._LAYER_KEY_COMMENTLAYER, this._commentLayer);
+ this._append(this._LAYER_KEY_COMMENTMASK, this._commentMask);
+ this._append(this._LAYER_KEY_FRAMELAYER, this._frameLayer);
+ this._append(this._LAYER_KEY_JUMPMSG, this._jumpMsg);
+ this._append(this._LAYER_KEY_HIROBACOMMENTLAYER, this._hirobaCommentLayer);
+ this._append(this._LAYER_KEY_HIROBACOMMENTMASK, this._hirobaCommentMask);
+ this._append(this._LAYER_KEY_PLUGIN, this._pluginLayer);
+
+ this._jumpMsg.visible = false;
+
+ this._updateIndex();
+ this.updateNicowariVisible(false);
+ onHirobaPlayerVisibleUpdated(false);
+ }
+
+ public function refreshLayers():void
+ { //MethodID:646, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 116
+ while(this._videoLayer.numChildren > 0){
+ this._videoLayer.removeChildAt(0);
+ }
+
+ while(this._commentLayer.numChildren > 0){
+ this._commentLayer.removeChildAt(0);
+ }
+
+ var hug1:Sprite = this._registered[OPTIONAL_LAYER_SPONSORVIDEOLAYER];
+
+ delete this._registered[OPTIONAL_LAYER_SPONSORVIDEOLAYER];
+
+ if((hug1 != null) && this._baseLayer.contains(hug1)) this._baseLayer.removeChild(hug1);
+ }
+
+ public function deepenComment():void
+ { //MethodID:647, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._updateLayerDepth(true);
+ }
+
+ public function createMarqueeVideoLayer():Sprite
+ { //MethodID:648, LocalCount= 2 , MaxScope= 1, MaxStack= 8, CodeLength= 144
+ this._marqueeVideoMask = this._createSimpleLayer(VideoLayerConstants.VIDEO_LAYER_SD_WIDTH, VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT, 0xFF0000, 0);
+ this._marqueeVideoLayer = this._createSimpleLayer(VideoLayerConstants.VIDEO_LAYER_SD_WIDTH, VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT, 0, 0, 0, 0);
+ this._marqueeVideoLayer.mask = this._marqueeVideoMask;
+ var hug1:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.VIDEO_LAYER_SD_WIDTH) / 2);
+ this._marqueeVideoMask.x = hug1;
+ this._marqueeVideoLayer.x = hug1;
+
+ this._append(this._LAYER_KEY_MARQUEEVIDEOLAYER, this._marqueeVideoLayer);
+ this._append(this._LAYER_KEY_MARQUEEVIDEOMASK, this._marqueeVideoMask);
+
+ this._marqueeVideoLayer.mouseEnabled = true;
+
+ this._updateIndex();
+
+ return this._marqueeVideoLayer;
+ }
+
+ public function createOptionalLayer(hug1:String):Sprite
+ { //MethodID:649, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 141
+ if(this._LAYERS_ORDER_DEFAULT.indexOf(hug1) == (-1)) throw new ArgumentError("VideoLayerManager.createOptionalLayer: invalid name.");
+
+ if(this._registered[hug1]) throw new IllegalOperationError("VideoLayerManager.createOptionalLayer: \"" + hug1 + "\" layer has been already created");
+
+ var hug2:Sprite = new Sprite();
+
+ hug2.graphics.beginFill(0, 0);
+ hug2.graphics.drawRect(0, 0, VideoLayerConstants.VIDEO_LAYER_HD_WIDTH, VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT);
+ hug2.graphics.endFill();
+
+ hug2.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.VIDEO_LAYER_SD_WIDTH) / 2);
+
+ this._append(hug1, hug2);
+ this._updateIndex();
+
+ return hug2;
+ }
+
+ public function deleteMarqueeVideoLayer():void
+ { //MethodID:650, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 158
+ var hug2:String = null;
+ var hug1:Object = {};
+
+ for(hug2 in this._registered){
+ if((hug2 == this._LAYER_KEY_MARQUEEVIDEOLAYER) || (hug2 == this._LAYER_KEY_MARQUEEVIDEOMASK)){
+ }else{
+ hug1[hug2] = this._registered[hug2];
+ }
+ }
+
+ this._registered = hug1;
+
+ if(this._baseLayer.contains(this._marqueeVideoLayer)) this._baseLayer.removeChild(this._marqueeVideoLayer);
+
+ if(this._baseLayer.contains(this._marqueeVideoMask)) this._baseLayer.removeChild(this._marqueeVideoMask);
+ this._updateIndex();
+
+ this._marqueeVideoLayer = null;
+ this._marqueeVideoMask = null;
+ }
+
+ private function _append(hug1:String, hug2:Sprite):void
+ { //MethodID:651, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 26
+ hug2.mouseEnabled = false;
+
+ this._baseLayer.addChild(hug2);
+
+ this._registered[hug1] = hug2;
+ }
+
+ private function _createSimpleLayer(hug1:Number, hug2:Number, hug3:uint=0, hug4:Number=0.0, hug5:Number=0.0, hug6:Number=1.0):Sprite
+ { //MethodID:652, LocalCount= 8 , MaxScope= 1, MaxStack= 5, CodeLength= 49
+ var hug7:Sprite = new Sprite();
+
+ hug7.graphics.beginFill(hug3, hug6);
+ hug7.graphics.drawRect(hug4, hug5, hug1, hug2);
+ hug7.graphics.endFill();
+
+ return hug7;
+ }
+
+ private function _updateIndex():void
+ { //MethodID:653, LocalCount= 10 , MaxScope= 1, MaxStack= 3, CodeLength= 214
+ var hug2:String = null;
+ var hug3:uint = 0;
+ var hug4:String = null;
+ var hug5:uint = 0;
+ var hug6:String = null;
+ var hug7:Sprite = null;
+ var hug1:Array = [];
+
+ for(hug2 in this._registered){
+ hug1.push(hug2);
+ }
+
+ hug3 = 0;
+
+ while(hug1.length > 0){
+ hug4 = hug1[0];
+ hug5 = 1;
+
+ while(hug5 < hug1.length){
+ hug6 = hug1[hug5];
+ hug7 = this._registered[hug6];
+
+ if(this._layersOrder.indexOf(hug4) > this._layersOrder.indexOf(hug6)) hug4 = hug6;
+
+ hug5++;
+ }
+
+ this._baseLayer.setChildIndex(this._registered[hug4], hug3);
+ hug1.splice(hug1.indexOf(hug4), 1);
+
+ hug3++;
+ }
+ }
+
+ private function _updateLayerDepth(hug1:Boolean):void
+ { //MethodID:654, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 384
+ var hug2:String = null;
+ this._isDeepenCommentMode = hug1;
+ this._layersOrder = (hug1 ? this._LAYERS_ORDER_DEEPENEDCOMMENT : this._LAYERS_ORDER_DEFAULT);
+ this._scale = (hug1 ? 0.8 : 1);
+
+ for(hug2 in this._registered){
+ var hug5:String = hug2;
+
+ switch(hug5){
+ case this._LAYER_KEY_VIDEOLAYER:
+ this._updateLayerScaleAndPosition(this._videoLayer, this._videoLayerWidth, this._videoLayerHeight, this._scale);
+ break;
+ case this._LAYER_KEY_NICOSLAYER:
+ case this._LAYER_KEY_NICOSMASKLAYER:
+ case this._LAYER_KEY_NICOSBGMLAYER:
+ this._updateLayerScaleAndPosition(this._registered[hug2], (this._isWideNicoSLayer ? VideoLayerConstants.VIDEO_LAYER_HD_WIDTH : VideoLayerConstants.VIDEO_LAYER_SD_WIDTH), (this._isWideNicoSLayer ? VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT : VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT), this._scale);
+ break;
+ case this._LAYER_KEY_MARQUEEVIDEOLAYER:
+ case this._LAYER_KEY_MARQUEEVIDEOMASK:
+ this._updateLayerScaleAndPosition(this._registered[hug2], VideoLayerConstants.VIDEO_LAYER_SD_WIDTH, VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT, this._scale);
+ break;
+ default:
+ break;
+ }
+ }
+
+ this._updateNicoSMaskLayerSize();
+ this._updateVideoMaskLayerSize();
+ this._updateIndex();
+ }
+
+ private function _updateLayerScaleAndPosition(hug1:DisplayObject, hug2:int, hug3:int, hug4:Number):void
+ { //MethodID:655, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 83
+ var hug5:int = 1;
+ hug1.scaleY = hug5;
+ hug1.scaleX = hug5;
+ hug1.width = hug2;
+ hug1.height = hug3;
+ var hug5:Number = hug4;
+ hug1.scaleY = hug5;
+ hug1.scaleX = hug5;
+ hug1.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - (hug2 * hug4)) / 2);
+ hug1.y = ((VideoLayerConstants.BASE_LAYER_HD_HEIGHT - (hug3 * hug4)) / 2);
+ }
+
+ private function _updateFrameSize():void
+ { //MethodID:656, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 139
+ if(this._aspectRatio == ScreenAspectRatio.WIDE){
+ this._frameLayer.width = (VideoLayerConstants.BASE_LAYER_HD_WIDTH + 2);
+ this._frameLayer.height = (VideoLayerConstants.BASE_LAYER_HD_HEIGHT + 2);
+ var hug1:int = -1;
+ this._frameLayer.y = hug1;
+ this._frameLayer.x = hug1;
+ }else{
+ this._frameLayer.width = (VideoLayerConstants.BASE_LAYER_SD_WIDTH + 2);
+ this._frameLayer.height = (VideoLayerConstants.BASE_LAYER_SD_HEIGHT + 2);
+ this._frameLayer.x = (((VideoLayerConstants.BASE_LAYER_HD_WIDTH - VideoLayerConstants.BASE_LAYER_SD_WIDTH) / 2) - 1);
+ this._frameLayer.y = -1;
+ }
+ }
+
+ public function setVideoSize(hug1:int, hug2:int):void
+ { //MethodID:657, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ this._videoWidth = hug1;
+ this._videoHeight = hug2;
+
+ this._updateVideoMaskLayerSize();
+ }
+
+ private function _updateLayerVisible():void
+ { //MethodID:658, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 111
+ var hug1:Boolean = (this._isNicowariVisible || this._isHirobaVisible);
+ this._videoLayer.visible = !hug1;
+ this._jumpMsg.visible = !hug1;
+ this._pluginLayer.visible = !hug1;
+ var hug2:Boolean = !hug1;
+ this._nicosBGMLayer.visible = hug2;
+ this._nicosMaskLayer.visible = hug2;
+ this._nicosLayer.visible = hug2;
+ this._hirobaCommentLayer.visible = this._isHirobaVisible;
+
+ if(this._marqueeVideoLayer) this._marqueeVideoLayer.visible = this._isNicowariVisible;
+ }
+
+ public function updateNicowariVisible(hug1:Boolean):void
+ { //MethodID:659, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isNicowariVisible = hug1;
+
+ this._updateLayerVisible();
+ }
+
+ public function updateWideNicoSLayer(hug1:Boolean=false):void
+ { //MethodID:660, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isWideNicoSLayer = hug1;
+
+ this._updateNicoSMaskLayerSize();
+ }
+
+ public function updateVideoMask(hug1:Boolean=false):void
+ { //MethodID:661, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isNoMaskMask = hug1;
+
+ this._updateVideoMaskLayerSize();
+ }
+
+ private function _updateVideoMaskLayerSize():void
+ { //MethodID:662, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 183
+ var hug1:Number = NaN;
+
+ if(this._isNoMaskMask){
+ this._videoMask.width = VideoLayerConstants.BASE_LAYER_HD_WIDTH;
+ this._videoMask.height = VideoLayerConstants.BASE_LAYER_HD_HEIGHT;
+ var hug2:int = 0;
+ this._videoMask.y = hug2;
+ this._videoMask.x = hug2;
+ }else{
+ hug1 = Math.min((this._videoLayerWidth / this._maskLayerWidth), (this._videoLayerHeight / this._maskLayerHeight));
+ this._videoMask.width = (this._maskLayerWidth * this._scale * hug1);
+ this._videoMask.height = (this._maskLayerHeight * this._scale * hug1);
+ this._videoMask.x = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - (this._maskLayerWidth * this._scale * hug1)) / 2);
+ this._videoMask.y = ((VideoLayerConstants.BASE_LAYER_HD_HEIGHT - (this._maskLayerHeight * this._scale * hug1)) / 2);
+ }
+ }
+
+ private function _updateNicoSMaskLayerSize():void
+ { //MethodID:663, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 393
+ var hug1:int = ((this._isWideNicoSLayer ? VideoLayerConstants.BASE_LAYER_HD_WIDTH : VideoLayerConstants.BASE_LAYER_SD_WIDTH) * this._scale);
+ var hug2:int = ((this._isWideNicoSLayer ? VideoLayerConstants.BASE_LAYER_HD_HEIGHT : VideoLayerConstants.BASE_LAYER_SD_HEIGHT) * this._scale);
+ var hug5:int = hug1;
+ this._nicosBGMLayerMask.width = hug5;
+ this._nicosMaskLayerMask.width = hug5;
+ this._nicosLayerMask.width = hug5;
+ var hug5:int = hug2;
+ this._nicosBGMLayerMask.height = hug5;
+ this._nicosMaskLayerMask.height = hug5;
+ this._nicosLayerMask.height = hug5;
+ var hug5:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - hug1) / 2);
+ this._nicosBGMLayerMask.x = hug5;
+ this._nicosMaskLayerMask.x = hug5;
+ this._nicosLayerMask.x = hug5;
+ var hug5:Number = ((VideoLayerConstants.BASE_LAYER_HD_HEIGHT - hug2) / 2);
+ this._nicosBGMLayerMask.y = hug5;
+ this._nicosMaskLayerMask.y = hug5;
+ this._nicosLayerMask.y = hug5;
+ var hug3:int = ((this._isWideNicoSLayer ? VideoLayerConstants.VIDEO_LAYER_HD_WIDTH : VideoLayerConstants.VIDEO_LAYER_SD_WIDTH) * this._scale);
+ var hug4:int = ((this._isWideNicoSLayer ? VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT : VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT) * this._scale);
+ var hug5:Number = ((VideoLayerConstants.BASE_LAYER_HD_WIDTH - hug3) / 2);
+ this._nicosBGMLayer.x = hug5;
+ this._nicosMaskLayer.x = hug5;
+ this._nicosLayer.x = hug5;
+ var hug5:Number = ((VideoLayerConstants.BASE_LAYER_HD_HEIGHT - hug4) / 2);
+ this._nicosBGMLayer.y = hug5;
+ this._nicosMaskLayer.y = hug5;
+ this._nicosLayer.y = hug5;
+ }
+
+ public function get baseLayer():Sprite
+ { //MethodID:664, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._baseLayer;
+ }
+
+ public function get pluginLayer():Sprite
+ { //MethodID:665, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._pluginLayer;
+ }
+
+ public function get jumpMsgLayer():Sprite
+ { //MethodID:666, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpMsg;
+ }
+
+ public function get videoLayer():Sprite
+ { //MethodID:667, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayer;
+ }
+
+ public function get marqueeVideoLayer():Sprite
+ { //MethodID:668, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueeVideoLayer;
+ }
+
+ public function get commentLayer():Sprite
+ { //MethodID:669, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentLayer;
+ }
+
+ public function get hirobaCommentLayer():Sprite
+ { //MethodID:670, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaCommentLayer;
+ }
+
+ public function get nicosLayer():Sprite
+ { //MethodID:671, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicosLayer;
+ }
+
+ public function get nicosMaskLayer():Sprite
+ { //MethodID:672, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicosMaskLayer;
+ }
+
+ public function get nicosBGMLayer():Sprite
+ { //MethodID:673, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicosBGMLayer;
+ }
+
+ private function get _maskLayerWidth():int
+ { //MethodID:674, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 25
+ return (this._isNoMaskMask ? this._baseLayerWidth : this._videoWidth);
+ }
+
+ private function get _maskLayerHeight():int
+ { //MethodID:675, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 25
+ return (this._isNoMaskMask ? this._baseLayerHeight : this._videoHeight);
+ }
+
+ private function get _baseLayerWidth():int
+ { //MethodID:676, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ var hug1:int = ((this._aspectRatio == ScreenAspectRatio.NORMAL) ? VideoLayerConstants.BASE_LAYER_SD_WIDTH : VideoLayerConstants.BASE_LAYER_HD_WIDTH);
+ return hug1;
+ }
+
+ private function get _baseLayerHeight():int
+ { //MethodID:677, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ var hug1:int = ((this._aspectRatio == ScreenAspectRatio.NORMAL) ? VideoLayerConstants.BASE_LAYER_SD_HEIGHT : VideoLayerConstants.BASE_LAYER_HD_HEIGHT);
+ return hug1;
+ }
+
+ private function get _videoLayerWidth():int
+ { //MethodID:678, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ var hug1:int = ((this._aspectRatio == ScreenAspectRatio.NORMAL) ? VideoLayerConstants.VIDEO_LAYER_SD_WIDTH : VideoLayerConstants.VIDEO_LAYER_HD_WIDTH);
+ return hug1;
+ }
+
+ private function get _videoLayerHeight():int
+ { //MethodID:679, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ var hug1:int = ((this._aspectRatio == ScreenAspectRatio.NORMAL) ? VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT : VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT);
+ return hug1;
+ }
+
+ public function set isWideNicoSLayer(hug1:Boolean):void
+ { //MethodID:680, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function set isVideoSizeMask(hug1:Boolean):void
+ { //MethodID:681, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigDeepenedCommentUpdated(hug1:Boolean):EventResult
+ { //MethodID:682, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ this._updateLayerDepth(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:683, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 73
+ this._screenMode = hug1;
+
+ if((hug1 == ScreenMode.BROWSER_FULL) || (hug1 == ScreenMode.DISPLAY_FULL)){
+ this._frameLayer.visible = false;
+ }else{
+ this._frameLayer.visible = true;
+ }
+
+ this._updateFrameSize();
+ this._updateLayerDepth(this._isDeepenCommentMode);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:684, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ this._isHirobaVisible = hug1;
+
+ this._updateLayerVisible();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAspectRatioUpdate(hug1:uint):EventResult
+ { //MethodID:685, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ this._aspectRatio = hug1;
+
+ this._updateFrameSize();
+ this._updateLayerDepth(this._isDeepenCommentMode);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistTargetUpdated(hug1:VideoInfo):EventResult
+ { //MethodID:686, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this.refreshLayers();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get videoMask():Sprite
+ { //MethodID:687, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoMask;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get commentMask():Sprite
+ { //MethodID:688, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentMask;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get marqueeVideoMask():Sprite
+ { //MethodID:689, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueeVideoMask;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get frameLayer():Sprite
+ { //MethodID:690, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._frameLayer;
+ }
+ }
+}
+
+//■script045■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:54
+ public class LocalCommentList extends Object
+ implements ICommentList, EventSender
+ {
+ //static constructor
+ public static function LocalCommentList$cinit()
+ { //MethodID:692, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LocalCommentList()
+ { //MethodID:693, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ this._commentList = [];
+ this._pastCommentList = [];
+ this.onCommentListUpdated = new Functions();
+ this.onCommentPost = new Functions();
+
+ super();
+ }
+
+ //variables/etc.
+ private var _commentList:Array; //slotID:0
+ private var _pastCommentList:Array; //slotID:0
+ private var _isPast:Boolean = false; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentListUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentPost:Functions;//slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:694, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return ["onCommentListUpdated", "onCommentPost"];
+ }
+
+ public function reload(hug1:Function):void
+ { //MethodID:695, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 9
+ hug1(null);
+ }
+
+ public function update(hug1:Function):void
+ { //MethodID:696, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 9
+ hug1(null);
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:697, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 84
+ var hug2:CommentBuilder = new CommentBuilder(hug1);
+ hug2.resNo = (this._commentList.length + 1);
+ hug2.justPosted = true;
+ var hug3:IComment = hug2.make();
+
+ this._commentList.push(hug3);
+ onCommentListUpdated.apply([hug3], [hug1], false, this.name);
+ }
+
+ public function serveCommentList():void
+ { //MethodID:698, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 54
+ onCommentListUpdated.apply((this._isPast ? this._pastCommentList : this._commentList), [], true, this.name);
+ }
+
+ public function get currentList():Array
+ { //MethodID:699, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ return this._commentList.concat();
+ }
+
+ public function get name():String
+ { //MethodID:700, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return CommentConstants.CL_LOCAL;
+ }
+
+ public function clickButtonComment(hug1:IComment):void
+ { //MethodID:701, LocalCount= 8 , MaxScope= 1, MaxStack= 6, CodeLength= 169
+ var hug2:IComment = null;
+ var hug3:CommentBuilder = null;
+ var hug4:IComment = null;
+
+ if(!hug1.command.hasButton) throw new IllegalOperationError("LocalCommentList.clickButtonComment: comment is not button.");
+
+ for each(hug2 in this._commentList){
+ if(hug2.resNo == hug1.resNo){
+ hug3 = new CommentBuilder(hug2);
+ hug3.clickCount = (hug2.clickCount + 1);
+ hug4 = hug3.make();
+
+ onCommentListUpdated([hug4], [hug1], false, this.name);
+
+ return;
+ }
+ }
+
+ throw new Error("LocalCommentList.clickButtonComment: comment is not for LocalCommentList.");
+ }
+
+ public function isClickable(hug1:IComment):Boolean
+ { //MethodID:702, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return hug1.command.hasButton;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onTimeMachineDateUpdated(hug1:Boolean, hug2:Date=null):EventResult
+ { //MethodID:703, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this._isPast = hug1;
+
+ ObjectUtils.callLater(this.serveCommentList);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsEnabledLeafMode(hug1:Boolean):EventResult
+ { //MethodID:704, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ public function get leavesNum():String
+ { //MethodID:705, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return "";
+ }
+
+ public function get threadID():String
+ { //MethodID:706, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return "";
+ }
+ }
+}
+
+//■script046■
+
+package jp.nicovideo.nicoplayer.tpls.shutter{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:55
+ public interface IControllerShutter
+ {
+ //static constructor
+ public static function IControllerShutter$cinit()
+ { //MethodID:708, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function close(hug1:int, hug2:String):void; //MethodID:709, dispID:0
+
+ function open(hug1:int):void; //MethodID:710, dispID:0
+
+ function isClosing(hug1:int):Boolean; //MethodID:711, dispID:0
+
+ function get onShutterOpened():Functions; //MethodID:712, dispID:0
+
+ function get onShutterClosed():Functions; //MethodID:713, dispID:0
+
+ //constructor
+ public function IControllerShutter(); //MethodID:714, dispID:0
+ }
+}
+
+//■script047■
+
+package jp.nicovideo.nicoplayer.tpls.shutter{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:57
+ public class ControllerShutter extends Object implements IControllerShutter
+ {
+ //static constructor
+ public static function ControllerShutter$cinit()
+ { //MethodID:718, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ControllerShutter(hug1:int, hug2:String)
+ { //MethodID:719, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 69
+ this.__shutterStates = [];
+ this._onShutterOpened = new Functions();
+ this._onShutterClosed = new Functions();
+
+ super();
+
+ this._END_OF_ENUM = hug1;
+ var hug3:int = 0;
+
+ while(hug3 < this._END_OF_ENUM){
+ this.__shutterStates[hug3] = new _ShutterState();
+ hug3++;
+ }
+ }
+
+ //variables/etc.
+ private var _END_OF_ENUM:int; //slotID:0
+ private var __shutterStates:Array; //slotID:0
+ private var __mostPreferredClosedShutter:int = -1; //slotID:0
+ private const _onShutterOpened:Functions; //slotID:0
+ private const _onShutterClosed:Functions; //slotID:0
+
+ public function get onShutterOpened():Functions
+ { //MethodID:720, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onShutterOpened;
+ }
+
+ public function get onShutterClosed():Functions
+ { //MethodID:721, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onShutterClosed;
+ }
+
+ public function close(hug1:int, hug2:String):void
+ { //MethodID:722, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 51
+ this.__ensureShutterBeing(hug1);
+
+ var hug3:_ShutterState = this.__shutterStates[hug1];
+ hug3.closed = true;
+ hug3.message = hug2;
+
+ if(this.__mostPreferredClosedShutter <= hug1){
+ this.__closeShutter(hug1);
+
+ this.__mostPreferredClosedShutter = hug1;
+ }
+ }
+
+ public function open(hug1:int):void
+ { //MethodID:723, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 113
+ this.__ensureShutterBeing(hug1);
+
+ this.__shutterStates[hug1].closed = false;
+
+ if(this.__mostPreferredClosedShutter == hug1){
+ while(true){
+ if(this.__mostPreferredClosedShutter >= 0){
+ if(!this.__shutterStates[this.__mostPreferredClosedShutter].closed){
+ this.__mostPreferredClosedShutter--;
+ continue;
+ }
+
+ this.__closeShutter(this.__mostPreferredClosedShutter);
+ }else{
+ this._onShutterOpened.apply();
+ }
+ break;
+ this.__mostPreferredClosedShutter--;
+ }
+ }else{
+ }//note: JumpOffset(33) is wrong
+ }
+
+ public function isClosing(hug1:int):Boolean
+ { //MethodID:724, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ this.__ensureShutterBeing(hug1);
+
+ return this.__shutterStates[hug1].closed;
+ }
+
+ private function __ensureShutterBeing(hug1:int):void
+ { //MethodID:725, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ if((hug1 < 0) || (hug1 >= this._END_OF_ENUM)) throw new ArgumentError("shutter=" + hug1);
+ }
+
+ private function __closeShutter(hug1:int):void
+ { //MethodID:726, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 23
+ this._onShutterClosed.apply(hug1, this.__shutterStates[hug1].message);
+ }
+ }
+}
+
+
+//■class(instance)_index:56
+//private
+class _ShutterState extends Object
+{
+ //static constructor
+ public static function _ShutterState$cinit()
+ { //MethodID:716, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ShutterState()
+ { //MethodID:717, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var closed:Boolean = false; //slotID:0
+ public var message:String; //slotID:0
+}
+
+//■script048■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:58
+ public interface IPlayerConfig
+ {
+ //static constructor
+ public static function IPlayerConfig$cinit()
+ { //MethodID:728, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isLoop():Boolean; //MethodID:729, dispID:0
+
+ function set isLoop(hug1:Boolean):void; //MethodID:730, dispID:0
+
+ function get isMute():Boolean; //MethodID:731, dispID:0
+
+ function set isMute(hug1:Boolean):void; //MethodID:732, dispID:0
+
+ function get isNicowariSkip():Boolean; //MethodID:733, dispID:0
+
+ function set isNicowariSkip(hug1:Boolean):void; //MethodID:734, dispID:0
+
+ function get volume():Number; //MethodID:735, dispID:0
+
+ function set volume(hug1:Number):void; //MethodID:736, dispID:0
+
+ function get commentVisible():Boolean; //MethodID:737, dispID:0
+
+ function set commentVisible(hug1:Boolean):void; //MethodID:738, dispID:0
+
+ function get fullScreenMode():uint; //MethodID:739, dispID:0
+
+ function set fullScreenMode(hug1:uint):void; //MethodID:740, dispID:0
+
+ function get screenMode():uint; //MethodID:741, dispID:0
+
+ function set screenMode(hug1:uint):void; //MethodID:742, dispID:0
+
+ function get useNG():Boolean; //MethodID:743, dispID:0
+
+ function set useNG(hug1:Boolean):void; //MethodID:744, dispID:0
+
+ function get hide184():Boolean; //MethodID:745, dispID:0
+
+ function set hide184(hug1:Boolean):void; //MethodID:746, dispID:0
+
+ function get use184():Boolean; //MethodID:747, dispID:0
+
+ function set use184(hug1:Boolean):void; //MethodID:748, dispID:0
+
+ function get synchronicScrolling():Boolean; //MethodID:749, dispID:0
+
+ function set synchronicScrolling(hug1:Boolean):void; //MethodID:750, dispID:0
+
+ function get automaticLoading():Boolean; //MethodID:751, dispID:0
+
+ function set automaticLoading(hug1:Boolean):void; //MethodID:752, dispID:0
+
+ function get oceColumnVPosWidth():uint; //MethodID:753, dispID:0
+
+ function set oceColumnVPosWidth(hug1:uint):void; //MethodID:754, dispID:0
+
+ function get oceColumnCommandWidth():uint; //MethodID:755, dispID:0
+
+ function set oceColumnCommandWidth(hug1:uint):void; //MethodID:756, dispID:0
+
+ function get oceColumnMessageWidth():uint; //MethodID:757, dispID:0
+
+ function set oceColumnMessageWidth(hug1:uint):void; //MethodID:758, dispID:0
+
+ function get oceColumnCheckWidth():uint; //MethodID:759, dispID:0
+
+ function set oceColumnCheckWidth(hug1:uint):void; //MethodID:760, dispID:0
+
+ function get liveCommentInvisible():Boolean; //MethodID:761, dispID:0
+
+ function set liveCommentInvisible(hug1:Boolean):void; //MethodID:762, dispID:0
+
+ function get aspectRatio():uint; //MethodID:763, dispID:0
+
+ function set aspectRatio(hug1:uint):void; //MethodID:764, dispID:0
+
+ function get isAvailableCommandPallete():Boolean; //MethodID:765, dispID:0
+
+ function set isAvailableCommandPallete(hug1:Boolean):void; //MethodID:766, dispID:0
+
+ function get autoPlay():Boolean; //MethodID:767, dispID:0
+
+ function set autoPlay(hug1:Boolean):void; //MethodID:768, dispID:0
+
+ function get deepenedCommentForce():Boolean; //MethodID:769, dispID:0
+
+ function set deepenedCommentForce(hug1:Boolean):void; //MethodID:770, dispID:0
+
+ function get deepenedComment():Boolean; //MethodID:771, dispID:0
+
+ function set deepenedComment(hug1:Boolean):void; //MethodID:772, dispID:0
+
+ function get optionalCommentVisible():Boolean; //MethodID:773, dispID:0
+
+ function set optionalCommentVisible(hug1:Boolean):void; //MethodID:774, dispID:0
+
+ function get sponsorVisibleOnLoop():Boolean; //MethodID:775, dispID:0
+
+ function set sponsorVisibleOnLoop(hug1:Boolean):void; //MethodID:776, dispID:0
+
+ function get clockMessageVisible():Boolean; //MethodID:777, dispID:0
+
+ function set clockMessageVisible(hug1:Boolean):void; //MethodID:778, dispID:0
+
+ function get isPlayerModeConfirm():Boolean; //MethodID:779, dispID:0
+
+ function set isPlayerModeConfirm(hug1:Boolean):void; //MethodID:780, dispID:0
+
+ function get toolTipVisible():Boolean; //MethodID:781, dispID:0
+
+ function set toolTipVisible(hug1:Boolean):void; //MethodID:782, dispID:0
+
+ function get isEnabledLeafMode():Boolean; //MethodID:783, dispID:0
+
+ function set isEnabledLeafMode(hug1:Boolean):void; //MethodID:784, dispID:0
+
+ function get isPlaylistRandomPlay():Boolean; //MethodID:785, dispID:0
+
+ function set isPlaylistRandomPlay(hug1:Boolean):void; //MethodID:786, dispID:0
+
+ function getTabVisibleConfig(hug1:String):Boolean; //MethodID:787, dispID:0
+
+ function setTabVisibleConfig(hug1:String, hug2:Boolean):void; //MethodID:788, dispID:0
+
+ //constructor
+ public function IPlayerConfig(); //MethodID:789, dispID:0
+ }
+}
+
+//■script049■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowChildren.TabContentName
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.storage.LocalStorage
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:59
+ public class PlayerConfig extends Object
+ implements EventSender, IPlayerConfig
+ {
+ //static constructor
+ public static function PlayerConfig$cinit()
+ { //MethodID:791, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlayerConfig(hug1:Boolean=false)
+ { //MethodID:794, LocalCount= 3 , MaxScope= 2, MaxStack= 24, CodeLength= 1537
+ internal var isThumbWatch:Boolean = false; //slotID:1
+ internal var invalidFlag:Boolean; //slotID:2
+
+ isThumbWatch = hug1;
+ this.soSound = CrossSharedObject.getStorage(this.SO_SOUND);
+ this.soCommentDG = CrossSharedObject.getStorage(this.SO_COMMENTDATAGRID);
+ this.soUseNG = CrossSharedObject.getStorage(this.SO_USENG);
+ this.soHide184 = CrossSharedObject.getStorage(this.SO_HIDE184);
+ this.soOwnerCommentEditor = CrossSharedObject.getStorage(this.SO_OWNERCOMMENT_EDITOR);
+ this.soOptionalComment = CrossSharedObject.getStorage(this.SO_OPTIONAL_COMMENT);
+ this.soCommentInputSetting = CrossSharedObject.getStorage(this.SO_COMMENTINPUT_SETTING);
+ this.soVideoSetting = CrossSharedObject.getStorage(this.SO_VIDEO_SETTING);
+ this.soPlayerSetting = CrossSharedObject.getStorage(this.SO_PLAYER_SETTING);
+ this.soTabSetting = CrossSharedObject.getStorage("jp.nicovideo.nicoplayer.models.PlayerConfig_tabSetting");
+ this.soEnabledLeafMode = CrossSharedObject.getStorage(this.SO_ENABLED_LEAF_MODE);
+ this._soPlaylist = CrossSharedObject.getStorage(this._SO_PLAYLIST);
+ this._eventNames = ["onPlayerConfigIsMuteUpdated", "onPlayerConfigIsLoopUpdated", "onPlayerConfigIsNicowariSkipUpdated", "onPlayerConfigUse184Updated", "onPlayerConfigVolumeUpdated", "onPlayerConfigCommentVisibleUpdated", "onPlayerConfigScreenModeUpdated", "onPlayerConfigFullScreenModeUpdated", "onPlayerConfigUseNGUpdated", "onPlayerConfigHide184Updated", "onPlayerConfigSynchronicScrollingUpdated", "onPlayerConfigAutomaticLoadingUpdated", "onPlayerConfigCommandPalleteAvailableUpdated", "onPlayerConfigAutoPlayUpdated", "onPlayerConfigSponsorVisibleOnLoopUpdated", "onPlayerConfigClockMessageVisibleUpdated", "onPlayerConfigDeepenedCommentUpdated", "onPlayerConfigPlayerModeUpdated", "onPlayerConfigToolTipVisibleUpdated", "onPlayerConfigTabContentVisibleUpdated", "onPlayerConfigliveCommentInvisibleUpdate", "onPlayerConfigIsEnabledLeafMode", "onPlayerConfigIsPlaylistRandomPlayUpdated"];
+ this.onPlayerConfigIsMuteUpdated = new Functions();
+ this.onPlayerConfigIsLoopUpdated = new Functions();
+ this.onPlayerConfigIsNicowariSkipUpdated = new Functions();
+ this.onPlayerConfigUse184Updated = new Functions();
+ this.onPlayerConfigVolumeUpdated = new Functions();
+ this.onPlayerConfigCommentVisibleUpdated = new Functions();
+ this.onPlayerConfigScreenModeUpdated = new Functions();
+ this.onPlayerConfigFullScreenModeUpdated = new Functions();
+ this.onPlayerConfigUseNGUpdated = new Functions();
+ this.onPlayerConfigHide184Updated = new Functions();
+ this.onPlayerConfigSynchronicScrollingUpdated = new Functions();
+ this.onPlayerConfigAutomaticLoadingUpdated = new Functions();
+ this.onPlayerConfigSponsorVisibleOnLoopUpdated = new Functions();
+ this.onPlayerConfigTabContentVisibleUpdated = new Functions();
+ this.onPlayerConfigliveCommentInvisibleUpdate = new Functions();
+ this.onPlayerConfigAspectRatioUpdate = new Functions();
+ this.onPlayerConfigIsEnabledLeafMode = new Functions();
+ this.onPlayerConfigCommandPalleteAvailableUpdated = new Functions();
+ this.onPlayerConfigAutoPlayUpdated = new Functions();
+ this.onPlayerConfigDeepenedCommentUpdated = new Functions();
+ this.onPlayerConfigOptionalCommentVisibleUpdated = new Functions();
+ this.onPlayerConfigClockMessageVisibleUpdated = new Functions();
+ this.onPlayerConfigPlayerModeUpdated = new Functions();
+ this.onPlayerConfigToolTipVisibleUpdated = new Functions();
+ this.onPlayerConfigIsPlaylistRandomPlayUpdated = new Functions();
+
+ super();
+
+ this._isThumbWatch = isThumbWatch;
+ this._commentVisible = true;
+ this._screenMode = ScreenMode.NORMAL;
+
+ if((this.soSound.data.mute == undefined) || (this.soSound.data.volume != undefined)){
+ if(this.soSound.data.mute == undefined) this.soSound.data.mute = false;
+
+ if(this.soSound.data.volume == undefined) this.soSound.data.volume = 50;
+ this.soSound.flush();
+ }
+
+ if((this.soCommentDG.data.isLoglistAutoDL2 == undefined) || (this.soCommentDG.data.liveCommentInvisible == undefined)){
+ if(this.soCommentDG.data.isLoglistAutoDL2 == undefined) this.soCommentDG.data.isLoglistAutoDL2 = false;
+
+ if(this.soCommentDG.data.liveCommentInvisible == undefined) this.soCommentDG.data.liveCommentInvisible = false;
+ this.soCommentDG.flush();
+ }
+
+ if(this.soUseNG.data.flag == undefined){
+ this.soUseNG.data.flag = true;
+
+ this.soUseNG.flush();
+ }
+
+ if(this.soHide184.data.flag == undefined){
+ this.soHide184.data.flag = false;
+
+ this.soHide184.flush();
+ }
+
+ if((this.soVideoSetting.data.isLoop == undefined) || (this.soVideoSetting.data.fullScreenMode == undefined) || (this.soVideoSetting.data.autoPlay == undefined) || (this.soVideoSetting.data.isNicowariSkip == undefined) || (this.soVideoSetting.data.sponsorVisibleOnLoop == undefined)){
+ if(this.soVideoSetting.data.isLoop == undefined) this.soVideoSetting.data.isLoop = false;
+
+ if(this.soVideoSetting.data.fullScreenMode == undefined) this.soVideoSetting.data.fullScreenMode = ScreenMode.BROWSER_FULL;
+
+ if(this.soVideoSetting.data.autoPlay == undefined) this.soVideoSetting.data.autoPlay = false;
+
+ if(this.soVideoSetting.data.isNicowariSkip == undefined) this.soVideoSetting.data.isNicowariSkip = false;
+
+ if(this.soVideoSetting.data.sponsorVisibleOnLoop == undefined) this.soVideoSetting.data.sponsorVisibleOnLoop = true;
+ this.soVideoSetting.flush();
+ }
+
+ if((this.soCommentInputSetting.data.use184 == undefined) || (this.soCommentInputSetting.data.commandPalleteAvailable == undefined)){
+ if(this.soCommentInputSetting.data.use184 == undefined) this.soCommentInputSetting.data.use184 = true;
+
+ if(this.soCommentInputSetting.data.commandPalleteAvailable == undefined) this.soCommentInputSetting.data.commandPalleteAvailable = true;
+ this.soCommentInputSetting.flush();
+ }
+
+ if(this.soOptionalComment.data.isVisible == undefined){
+ this.soOptionalComment.data.isVisible = true;
+
+ this.soOptionalComment.flush();
+ }
+
+ this.soOwnerCommentEditor.data.columnVPosWidth = 52;
+ this.soOwnerCommentEditor.data.columnCommandWidth = 64;
+ this.soOwnerCommentEditor.data.columnMessageWidth = 199;
+ this.soOwnerCommentEditor.data.columnCheckWidth = 21;
+
+ if((this.soPlayerSetting.data.clockMessageVisible == undefined) || (this.soPlayerSetting.data.playerMode == undefined) || (this.soPlayerSetting.data.isModeConfirm == undefined) || (this.soPlayerSetting.data.toolTipVisible == undefined)){
+ if(this.soPlayerSetting.data.clockMessageVisible == undefined) this.soPlayerSetting.data.clockMessageVisible = true;
+
+ if(this.soPlayerSetting.data.isModeConfirm == undefined) this.soPlayerSetting.data.isModeConfirm = true;
+
+ if(this.soPlayerSetting.data.toolTipVisible == undefined) this.soPlayerSetting.data.toolTipVisible = true;
+ this.soPlayerSetting.flush();
+ }
+
+ if(this.soEnabledLeafMode.data.isEnabledLeafMode == undefined){
+ this.soEnabledLeafMode.data.isEnabledLeafMode = true;
+
+ this.soEnabledLeafMode.flush();
+ }
+
+ invalidFlag = false;
+
+ TabContentName.TAB_NAMES.every(function(hug1:String, hug2:int, hug3:Array):Boolean{ //MethodID:792, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 28
+ if(soTabSetting.data[hug1] == undefined){
+ invalidFlag = true;
+ return false;
+ }
+
+ return true;
+ }, null);
+
+ if(invalidFlag){
+ TabContentName.TAB_NAMES.forEach(function(hug1:String, hug2:int, hug3:Array):void{ //MethodID:793, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 12
+ soTabSetting.data[hug1] = true;
+ }, null);
+ this.soTabSetting.flush();
+ }
+
+ if(this._soPlaylist.data.isRandomPlay == undefined){
+ this._soPlaylist.data.isRandomPlay = false;
+
+ this._soPlaylist.flush();
+ }
+
+ if(this._isThumbWatch) this._isLoopOnThumbwatch = false;
+ }
+
+ //variables/etc.
+ private const SO_SOUND:String = "sound"; //slotID:0
+ private const SO_COMMENTDATAGRID:String = "logList"; //slotID:0
+ private const SO_USENG:String = "ngCheck"; //slotID:0
+ private const SO_HIDE184:String = "ng184"; //slotID:0
+ private const SO_COMMENTINPUT_SETTING:String = "commentInputSetting";//slotID:0
+ private const SO_VIDEO_SETTING:String = "videoSetting"; //slotID:0
+ private const SO_OWNERCOMMENT_EDITOR:String = "ownerCommentEditor";//slotID:0
+ private const SO_PLAYER_SETTING:String = "playerSetting"; //slotID:0
+ private const SO_OPTIONAL_COMMENT:String = "optionalComment"; //slotID:0
+ private const SO_ENABLED_LEAF_MODE:String = "enabledLeafMode"; //slotID:0
+ private const _SO_PLAYLIST:String = "playlist"; //slotID:0
+ private var soSound:LocalStorage; //slotID:0
+ private var soCommentDG:LocalStorage; //slotID:0
+ private var soUseNG:LocalStorage; //slotID:0
+ private var soHide184:LocalStorage; //slotID:0
+ private var soOwnerCommentEditor:LocalStorage; //slotID:0
+ private var soOptionalComment:LocalStorage; //slotID:0
+ private var soCommentInputSetting:LocalStorage; //slotID:0
+ private var soVideoSetting:LocalStorage; //slotID:0
+ private var soPlayerSetting:LocalStorage; //slotID:0
+ private var soTabSetting:LocalStorage; //slotID:0
+ private var soEnabledLeafMode:LocalStorage; //slotID:0
+ private var _soPlaylist:LocalStorage; //slotID:0
+ private var _commentVisible:Boolean; //slotID:0
+ private var _screenMode:uint; //slotID:0
+ private var _aspectRatio:uint = 1; //slotID:0
+ private var _deepenedCommentForce:Boolean = false; //slotID:0
+ private var _deepenedComment:Boolean = false; //slotID:0
+ private var _optionalCommentVisible:Boolean; //slotID:0
+ private var _isLoopOnThumbwatch:Boolean; //slotID:0
+ private const _eventNames:Array; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigIsMuteUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigIsLoopUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigIsNicowariSkipUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigUse184Updated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigVolumeUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigCommentVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigScreenModeUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigFullScreenModeUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigUseNGUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigHide184Updated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigSynchronicScrollingUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigAutomaticLoadingUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigSponsorVisibleOnLoopUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigTabContentVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigliveCommentInvisibleUpdate:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigAspectRatioUpdate:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigIsEnabledLeafMode:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigCommandPalleteAvailableUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigAutoPlayUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigDeepenedCommentUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigOptionalCommentVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigClockMessageVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigPlayerModeUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigToolTipVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlayerConfigIsPlaylistRandomPlayUpdated:Functions;//slotID:0
+ private var _isThumbWatch:Boolean; //slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:795, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._eventNames;
+ }
+
+ public function get isMute():Boolean
+ { //MethodID:796, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soSound.data.mute;
+ }
+
+ public function set isMute(hug1:Boolean):void
+ { //MethodID:797, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soSound.data.mute = hug1;
+
+ this.soSound.flush();
+ onPlayerConfigIsMuteUpdated.apply(hug1);
+ }
+
+ public function get isLoop():Boolean
+ { //MethodID:798, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 26
+ if(this._isThumbWatch) return this._isLoopOnThumbwatch;
+
+ return this.soVideoSetting.data.isLoop;
+ }
+
+ public function set isLoop(hug1:Boolean):void
+ { //MethodID:799, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 62
+ if(this._isThumbWatch){
+ this._isLoopOnThumbwatch = hug1;
+ }else{
+ this.soVideoSetting.data.isLoop = hug1;
+
+ this.soVideoSetting.flush();
+ }
+
+ onPlayerConfigIsLoopUpdated.apply(hug1);
+ }
+
+ public function get isNicowariSkip():Boolean
+ { //MethodID:800, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soVideoSetting.data.isNicowariSkip;
+ }
+
+ public function set isNicowariSkip(hug1:Boolean):void
+ { //MethodID:801, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soVideoSetting.data.isNicowariSkip = hug1;
+
+ this.soVideoSetting.flush();
+ onPlayerConfigIsNicowariSkipUpdated.apply(hug1);
+ }
+
+ public function get use184():Boolean
+ { //MethodID:802, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soCommentInputSetting.data.use184;
+ }
+
+ public function set use184(hug1:Boolean):void
+ { //MethodID:803, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soCommentInputSetting.data.use184 = hug1;
+
+ this.soCommentInputSetting.flush();
+ onPlayerConfigUse184Updated.apply(hug1);
+ }
+
+ public function get volume():Number
+ { //MethodID:804, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ return (this.soSound.data.volume / 100);
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:805, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 79
+ if((hug1 < 0.0) || (hug1 > 1)) return;
+
+ this.soSound.data.volume = (hug1 * 100);
+
+ this.soSound.flush();
+ onPlayerConfigVolumeUpdated.apply(this.soSound.data.volume / 100);
+ }
+
+ public function get commentVisible():Boolean
+ { //MethodID:806, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentVisible;
+ }
+
+ public function set commentVisible(hug1:Boolean):void
+ { //MethodID:807, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ this._commentVisible = hug1;
+
+ onPlayerConfigCommentVisibleUpdated.apply(this._commentVisible);
+ }
+
+ public function get fullScreenMode():uint
+ { //MethodID:808, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soVideoSetting.data.fullScreenMode;
+ }
+
+ public function set fullScreenMode(hug1:uint):void
+ { //MethodID:809, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soVideoSetting.data.fullScreenMode = hug1;
+
+ this.soVideoSetting.flush();
+ onPlayerConfigFullScreenModeUpdated.apply(hug1);
+ }
+
+ public function get screenMode():uint
+ { //MethodID:810, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._screenMode;
+ }
+
+ public function set screenMode(hug1:uint):void
+ { //MethodID:811, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ if(this._screenMode == hug1) return;
+
+ this._screenMode = hug1;
+
+ onPlayerConfigScreenModeUpdated.apply(hug1);
+ }
+
+ public function get useNG():Boolean
+ { //MethodID:812, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soUseNG.data.flag;
+ }
+
+ public function set useNG(hug1:Boolean):void
+ { //MethodID:813, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soUseNG.data.flag = hug1;
+
+ this.soUseNG.flush();
+ onPlayerConfigUseNGUpdated.apply(hug1);
+ }
+
+ public function get hide184():Boolean
+ { //MethodID:814, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soHide184.data.flag;
+ }
+
+ public function set hide184(hug1:Boolean):void
+ { //MethodID:815, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soHide184.data.flag = hug1;
+
+ this.soHide184.flush();
+ onPlayerConfigHide184Updated.apply(hug1);
+ }
+
+ public function get synchronicScrolling():Boolean
+ { //MethodID:816, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soCommentDG.data.isPlayScroll;
+ }
+
+ public function set synchronicScrolling(hug1:Boolean):void
+ { //MethodID:817, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soCommentDG.data.isPlayScroll = hug1;
+
+ this.soCommentDG.flush();
+ onPlayerConfigSynchronicScrollingUpdated.apply(hug1);
+ }
+
+ public function get automaticLoading():Boolean
+ { //MethodID:818, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soCommentDG.data.isLoglistAutoDL2;
+ }
+
+ public function set automaticLoading(hug1:Boolean):void
+ { //MethodID:819, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soCommentDG.data.isLoglistAutoDL2 = hug1;
+
+ this.soCommentDG.flush();
+ onPlayerConfigAutomaticLoadingUpdated.apply(hug1);
+ }
+
+ public function get isAvailableCommandPallete():Boolean
+ { //MethodID:820, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soCommentInputSetting.data.commandPalleteAvailable;
+ }
+
+ public function set isAvailableCommandPallete(hug1:Boolean):void
+ { //MethodID:821, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soCommentInputSetting.data.commandPalleteAvailable = hug1;
+
+ this.soCommentInputSetting.flush();
+ onPlayerConfigCommandPalleteAvailableUpdated.apply(hug1);
+ }
+
+ public function get autoPlay():Boolean
+ { //MethodID:822, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soVideoSetting.data.autoPlay;
+ }
+
+ public function set autoPlay(hug1:Boolean):void
+ { //MethodID:823, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soVideoSetting.data.autoPlay = hug1;
+
+ this.soVideoSetting.flush();
+ onPlayerConfigAutoPlayUpdated.apply(hug1);
+ }
+
+ public function get oceColumnVPosWidth():uint
+ { //MethodID:824, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soOwnerCommentEditor.data.columnVPosWidth;
+ }
+
+ public function set oceColumnVPosWidth(hug1:uint):void
+ { //MethodID:825, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.soOwnerCommentEditor.data.columnVPosWidth = hug1;
+
+ this.soOwnerCommentEditor.flush();
+ }
+
+ public function get oceColumnCommandWidth():uint
+ { //MethodID:826, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soOwnerCommentEditor.data.columnCommandWidth;
+ }
+
+ public function set oceColumnCommandWidth(hug1:uint):void
+ { //MethodID:827, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.soOwnerCommentEditor.data.columnCommandWidth = hug1;
+
+ this.soOwnerCommentEditor.flush();
+ }
+
+ public function get oceColumnMessageWidth():uint
+ { //MethodID:828, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soOwnerCommentEditor.data.columnMessageWidth;
+ }
+
+ public function set oceColumnMessageWidth(hug1:uint):void
+ { //MethodID:829, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.soOwnerCommentEditor.data.columnMessageWidth = hug1;
+
+ this.soOwnerCommentEditor.flush();
+ }
+
+ public function get oceColumnCheckWidth():uint
+ { //MethodID:830, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soOwnerCommentEditor.data.columnCheckWidth;
+ }
+
+ public function set oceColumnCheckWidth(hug1:uint):void
+ { //MethodID:831, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.soOwnerCommentEditor.data.columnCheckWidth = hug1;
+
+ this.soOwnerCommentEditor.flush();
+ }
+
+ public function get deepenedCommentForce():Boolean
+ { //MethodID:832, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deepenedCommentForce;
+ }
+
+ public function set deepenedCommentForce(hug1:Boolean):void
+ { //MethodID:833, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this._deepenedCommentForce = hug1;
+
+ if(this._deepenedCommentForce) this._deepenedComment = true;
+ }
+
+ public function get deepenedComment():Boolean
+ { //MethodID:834, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deepenedComment;
+ }
+
+ public function set deepenedComment(hug1:Boolean):void
+ { //MethodID:835, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ if(this._deepenedCommentForce) return;
+
+ this._deepenedComment = hug1;
+
+ onPlayerConfigDeepenedCommentUpdated.apply(this._deepenedComment);
+ }
+
+ public function get optionalCommentVisible():Boolean
+ { //MethodID:836, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soOptionalComment.data.isVisible;
+ }
+
+ public function set optionalCommentVisible(hug1:Boolean):void
+ { //MethodID:837, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soOptionalComment.data.isVisible = hug1;
+
+ onPlayerConfigOptionalCommentVisibleUpdated.apply(hug1);
+ this.soOptionalComment.flush();
+ }
+
+ public function get sponsorVisibleOnLoop():Boolean
+ { //MethodID:838, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soVideoSetting.data.sponsorVisibleOnLoop;
+ }
+
+ public function set sponsorVisibleOnLoop(hug1:Boolean):void
+ { //MethodID:839, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soVideoSetting.data.sponsorVisibleOnLoop = hug1;
+
+ onPlayerConfigSponsorVisibleOnLoopUpdated.apply(hug1);
+ this.soVideoSetting.flush();
+ }
+
+ public function get clockMessageVisible():Boolean
+ { //MethodID:840, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soPlayerSetting.data.clockMessageVisible;
+ }
+
+ public function set clockMessageVisible(hug1:Boolean):void
+ { //MethodID:841, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soPlayerSetting.data.clockMessageVisible = hug1;
+
+ onPlayerConfigClockMessageVisibleUpdated.apply(hug1);
+ this.soPlayerSetting.flush();
+ }
+
+ public function get playerMode():String
+ { //MethodID:842, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soPlayerSetting.data.playerMode;
+ }
+
+ public function get isPlayerModeConfirm():Boolean
+ { //MethodID:843, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soPlayerSetting.data.isModeConfirm;
+ }
+
+ public function set isPlayerModeConfirm(hug1:Boolean):void
+ { //MethodID:844, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.soPlayerSetting.data.isModeConfirm = hug1;
+
+ this.soPlayerSetting.flush();
+ }
+
+ public function get toolTipVisible():Boolean
+ { //MethodID:845, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function set toolTipVisible(hug1:Boolean):void
+ { //MethodID:846, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soPlayerSetting.data.toolTipVisible = hug1;
+
+ this.soPlayerSetting.flush();
+ onPlayerConfigToolTipVisibleUpdated.apply(hug1);
+ }
+
+ public function get isEnabledLeafMode():Boolean
+ { //MethodID:847, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soEnabledLeafMode.data.isEnabledLeafMode;
+ }
+
+ public function set isEnabledLeafMode(hug1:Boolean):void
+ { //MethodID:848, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soEnabledLeafMode.data.isEnabledLeafMode = hug1;
+
+ this.soEnabledLeafMode.flush();
+ onPlayerConfigIsEnabledLeafMode.apply(hug1);
+ }
+
+ public function getTabVisibleConfig(hug1:String):Boolean
+ { //MethodID:849, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return this.soTabSetting.data[hug1];
+ }
+
+ public function setTabVisibleConfig(hug1:String, hug2:Boolean):void
+ { //MethodID:850, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 47
+ this.soTabSetting.data[hug1] = hug2;
+
+ this.soTabSetting.flush();
+ onPlayerConfigTabContentVisibleUpdated.apply(hug1, hug2);
+ }
+
+ public function get liveCommentInvisible():Boolean
+ { //MethodID:851, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.soCommentDG.data.liveCommentInvisible;
+ }
+
+ public function set liveCommentInvisible(hug1:Boolean):void
+ { //MethodID:852, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.soCommentDG.data.liveCommentInvisible = hug1;
+
+ onPlayerConfigliveCommentInvisibleUpdate.apply(hug1);
+ this.soCommentDG.flush();
+ }
+
+ public function get aspectRatio():uint
+ { //MethodID:853, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._aspectRatio;
+ }
+
+ public function set aspectRatio(hug1:uint):void
+ { //MethodID:854, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 31
+ this._aspectRatio = hug1;
+
+ onPlayerConfigAspectRatioUpdate.apply(hug1);
+ }
+
+ public function get isPlaylistRandomPlay():Boolean
+ { //MethodID:855, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._soPlaylist.data.isRandomPlay;
+ }
+
+ public function set isPlaylistRandomPlay(hug1:Boolean):void
+ { //MethodID:856, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this._soPlaylist.data.isRandomPlay = hug1;
+
+ this._soPlaylist.flush();
+ onPlayerConfigIsPlaylistRandomPlayUpdated.apply(hug1);
+ }
+ }
+}
+
+//■script050■
+
+package jp.nicovideo.hiroba.events{
+
+ import flash.events.Event
+ import jp.nicovideo.hiroba.models.IHirobaComment
+
+ use namespace (http://www.nicovideo.jp/as3_ns/hiroba/events/hiroba_setter);
+
+ //■class(instance)_index:60
+ public class HirobaEvent extends Event
+ {
+ //static constructor
+ public static function HirobaEvent$cinit()
+ { //MethodID:858, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ RECEIVED_DATA = "received_data";
+ RECEIVED_COMMENT = "received_comment";
+ CLICKED_LINK = "clicked_link";
+ }
+
+ //static variables/etc.
+ public static const RECEIVED_DATA:String = "received_data"; //slotID:1
+ public static const RECEIVED_COMMENT:String = "received_comment";//slotID:2
+ public static const CLICKED_LINK:String = "clicked_link"; //slotID:3
+
+ //constructor
+ public function HirobaEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:859, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 9
+ super(hug1, hug2, hug3);
+ }
+
+ //variables/etc.
+ private var _comment:IHirobaComment; //slotID:0
+ private var _data:Object; //slotID:0
+
+ public function get comment():IHirobaComment
+ { //MethodID:860, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comment;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/hiroba/events/hiroba_setter) function set comment(hug1:IHirobaComment):void
+ { //MethodID:861, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._comment = hug1;
+ }
+
+ public function get data():Object
+ { //MethodID:862, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._data;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/hiroba/events/hiroba_setter) function set data(hug1:Object):void
+ { //MethodID:863, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._data = hug1;
+ }
+ }
+}
+
+//■script051■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:61
+ public interface IKeygen
+ {
+ //static constructor
+ public static function IKeygen$cinit()
+ { //MethodID:865, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function getPostKey(hug1:Function, hug2:String, hug3:int, hug4:Boolean):void;//MethodID:866, dispID:0
+
+ function getClickKey(hug1:Function, hug2:String, hug3:int, hug4:int):void; //MethodID:867, dispID:0
+
+ function getDeleteKey(hug1:Function, hug2:String, hug3:Array):String; //MethodID:868, dispID:0
+
+ function getWaybackKey(hug1:Function, hug2:String):void; //MethodID:869, dispID:0
+
+ function getUpdateKey(hug1:Function, hug2:String, hug3:String, hug4:Boolean):void;//MethodID:870, dispID:0
+
+ function getThreadKey(hug1:Function, hug2:String):void; //MethodID:871, dispID:0
+
+ function getHirobaPostKey(hug1:Function, hug2:String, hug3:int):void; //MethodID:872, dispID:0
+
+ //constructor
+ public function IKeygen(); //MethodID:873, dispID:0
+ }
+}
+
+//■script052■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.flashvars.PlaylistFlashVars
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.ITabManager
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:62
+ public class PlaylistErrorManager extends Object
+ {
+ //static constructor
+ public static function PlaylistErrorManager$cinit()
+ { //MethodID:875, LocalCount= 1 , MaxScope= 1, MaxStack= 11, CodeLength= 175
+ BUSY = "busy";
+ MAINTENANCE = "maintenance";
+ URGENT = "urgent";
+ LIMITED_OPEN = "limited_open";
+ NEED_LOGIN = "need_login";
+ ACCESS_LOCK = "access_lock";
+ INVALID_TOKEN = "invalid_token";
+ TOKEN_TIMEOUT = "token_timeout";
+ VIDEO_LOAD_STOP = "video_load_stop";
+ NO_LIST = "no_list";
+ THREAD_IS_NOT_IN_PLAYLIST = "thread_is_not_in_playlist";
+ VIDEO_ERROR = "video_error";
+ NO_VIDEO = "no_video";
+ NICOPLAYER_ALERT_ERRORS = [BUSY, MAINTENANCE, URGENT, LIMITED_OPEN, NEED_LOGIN, ACCESS_LOCK, INVALID_TOKEN, VIDEO_LOAD_STOP, TOKEN_TIMEOUT, NO_LIST];
+ TABWINDOW_ALERT_ERRORS = [THREAD_IS_NOT_IN_PLAYLIST, VIDEO_ERROR, NO_VIDEO];
+ }
+
+ //static variables/etc.
+ public static const BUSY:String = "busy"; //slotID:1
+ public static const MAINTENANCE:String = "maintenance"; //slotID:2
+ public static const URGENT:String = "urgent"; //slotID:3
+ public static const LIMITED_OPEN:String = "limited_open"; //slotID:4
+ public static const NEED_LOGIN:String = "need_login"; //slotID:5
+ public static const ACCESS_LOCK:String = "access_lock"; //slotID:6
+ public static const INVALID_TOKEN:String = "invalid_token"; //slotID:7
+ public static const TOKEN_TIMEOUT:String = "token_timeout"; //slotID:8
+ public static const VIDEO_LOAD_STOP:String = "video_load_stop"; //slotID:9
+ public static const NO_LIST:String = "no_list"; //slotID:10
+ public static const THREAD_IS_NOT_IN_PLAYLIST:String = "thread_is_not_in_playlist";//slotID:11
+ public static const VIDEO_ERROR:String = "video_error"; //slotID:12
+ public static const NO_VIDEO:String = "no_video"; //slotID:13
+ public static const NICOPLAYER_ALERT_ERRORS:Array; //slotID:14
+ public static const TABWINDOW_ALERT_ERRORS:Array; //slotID:15
+
+ //constructor
+ public function PlaylistErrorManager(hug1:PlaylistFlashVars, hug2:NicoConfig, hug3:String)
+ { //MethodID:876, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._playlistFlashVars = hug1;
+ this._nicoConfig = hug2;
+ this._playlistPageURL = hug3;
+ }
+
+ //variables/etc.
+ private var _playlistFlashVars:PlaylistFlashVars; //slotID:0
+ private var _nicoConfig:NicoConfig; //slotID:0
+ private var _windowManager:ITabManager; //slotID:0
+ private var _playlistPageURL:String; //slotID:0
+
+ public function show(hug1:VideoInfo, hug2:String):void
+ { //MethodID:877, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 882
+ var hug5:String = null;
+ var hug3:String = this._playlistPageURL;
+ var hug4:String = (this._nicoConfig.BASE_URL + ((hug1 != null) ? ("watch/" + hug1.watchID) : ""));
+ var hug6:String = hug2;
+
+ switch(hug6){
+ case BUSY:
+ hug5 = ("<p>" + __MSG__("ただ今、サーバーが大変混み合っております。") + "</p>" + "<p>" + __MSG__("しばらく時間をおいて再度お試しください。") + "</p>");
+ break;
+ case MAINTENANCE:
+ hug5 = ("<p>" + __MSG__("ただ今連続再生はメンテナンス中のため、ご利用になれません。") + "</p>");
+ break;
+ case URGENT:
+ hug5 = ("<p>" + __MSG__("ただ今ニコニコ動画はメンテナンス中のため、ご利用になれません。") + "</p>");
+ break;
+ case LIMITED_OPEN:
+ hug5 = ("<p>" + __MSG__("この時間帯は連続再生をご利用になれません。") + "</p>");
+ break;
+ case NEED_LOGIN:
+ hug5 = (("<p><b>" + __MSG__("動画情報の取得に失敗しました。") + "</b></p>" + "<p>" + __MSG__("ログイン状態が解除されているか、動画が非公開状態にある可能性があります。") + "<br />") + __MSG__("<a href=\"[[url]]\">リロードして再度ログイン</a>", hug3) + "</p>");
+ break;
+ case ACCESS_LOCK:
+ hug5 = ("<p>" + __MSG__("短時間での連続アクセスがあったため、連続再生のご利用を一時停止しております。") + "</p>" + "<p>" + __MSG__("しばらく時間をおいて再度お試しください。") + "</p>");
+ break;
+ case THREAD_IS_NOT_IN_PLAYLIST:
+ case VIDEO_ERROR:
+ hug5 = (("<p>" + __MSG__("「[[title]]」", hug1.title) + "</p>" + "<p>" + __MSG__("連続再生には対応していない動画です。") + "</p>" + "<p>") + __MSG__("詳しくは<u><b><a href=\"[[url]]\" target=\"_blank\">動画視聴ページ</a></b></u>をご確認ください。", hug4) + "</p>");
+ break;
+ case NO_VIDEO:
+ hug5 = (("<p>" + __MSG__("「[[title]]」", hug1.title) + "</p>" + "<p>" + __MSG__("存在しないか、または削除された動画です。") + "</p>" + "<p>") + __MSG__("詳しくは<u><b><a href=\"[[url]]\" target=\"_blank\">動画視聴ページ</a></b></u>をご確認ください。", hug4) + "</p>");
+ break;
+ case INVALID_TOKEN:
+ case TOKEN_TIMEOUT:
+ hug5 = ("<p>" + __MSG__("正常にアクセスできませんでした。ページを更新してください。") + "</p>");
+ break;
+ case VIDEO_LOAD_STOP:
+ hug5 = (("<p><b>" + __MSG__("動画の読み込みができません。") + "</b></p>" + "<p>" + __MSG__("別のタブかウィンドウで、動画をいくつか読み込み中です。") + "<br />" + __MSG__("読み込みが完了してから再度アクセスしてください。") + "<br /><br />") + __MSG__("<a href=\"[[url]]\">リロードする", hug3) + "</a>" + "</p>");
+ break;
+ case NO_LIST:
+ hug5 = ("<p>" + __MSG__("このマイリストには再生できる動画が含まれていません。") + "</p>");
+ break;
+ default:
+ hug5 = null;
+ break;
+ }
+
+ if(hug5){
+ if(NICOPLAYER_ALERT_ERRORS.indexOf(hug2) != (-1)){
+ SystemMessage.instance.alert(hug5);
+ }else if((TABWINDOW_ALERT_ERRORS.indexOf(hug2) != (-1)) && this._windowManager){
+ this._windowManager.showMessage(hug5, true);
+ }
+ }
+ }
+
+ public function set windowManager(hug1:ITabManager):void
+ { //MethodID:878, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._windowManager = hug1;
+ }
+ }
+}
+
+//■script053■
+
+package jp.nicovideo.util.events{
+
+ //■class(instance)_index:63
+ public final class EventResult extends Object
+ {
+ //static constructor
+ public static function EventResult$cinit()
+ { //MethodID:880, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ THROUGH = this;
+ BREAK = this;
+ }
+
+ //static variables/etc.
+ public static const THROUGH:EventResult; //slotID:1
+ public static const BREAK:EventResult; //slotID:2
+
+ public static function replace(hug1:Array):EventResult
+ { //dispID:3, MethodID:881, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return new EventResult().replace(hug1);
+ }
+
+ public static function rename(hug1:String):EventResult
+ { //dispID:4, MethodID:882, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return new EventResult().rename(hug1);
+ }
+
+ //constructor
+ public function EventResult()
+ { //MethodID:883, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var _replaced:Array; //slotID:0
+ public var _renamed:String; //slotID:0
+
+ public function replace(hug1:Array):EventResult
+ { //MethodID:884, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._replaced = hug1;
+ return this;
+ }
+
+ public function rename(hug1:String):EventResult
+ { //MethodID:885, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._renamed = hug1;
+ return this;
+ }
+ }
+}
+
+//■script054■
+
+package jp.nicovideo.nicoplayer.config{
+
+ //■class(instance)_index:64
+ public class DebugMode extends Object
+ {
+ //static constructor
+ public static function DebugMode$cinit()
+ { //MethodID:887, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 75
+ NON = 0;
+ LOCAL = 1;
+ DEV = 2;
+ EXTDEV = 3;
+ TEST = 4;
+ LOCAL_EACHENV = 5;
+ GADEV = 6;
+ NICOAPP_DEV = 7;
+ WEB = 8;
+ }
+
+ //static variables/etc.
+ public static const NON:uint = 0; //slotID:1
+ public static const LOCAL:uint = 1; //slotID:2
+ public static const DEV:uint = 2; //slotID:3
+ public static const EXTDEV:uint = 3; //slotID:4
+ public static const TEST:uint = 4; //slotID:5
+ public static const LOCAL_EACHENV:uint = 5; //slotID:6
+ public static const GADEV:uint = 6; //slotID:7
+ public static const NICOAPP_DEV:uint = 7; //slotID:8
+ public static const WEB:uint = 8; //slotID:9
+
+ //constructor
+ public function DebugMode()
+ { //MethodID:888, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script055■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:65
+ public interface IGetSponsorInfo
+ {
+ //static constructor
+ public static function IGetSponsorInfo$cinit()
+ { //MethodID:890, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get sponsorInfoList():Vector.<ISponsorInfo>; //MethodID:891, dispID:0
+
+ function get bgType():String; //MethodID:892, dispID:0
+
+ function get bgColor():int; //MethodID:893, dispID:0
+
+ function get bgVpos():Number; //MethodID:894, dispID:0
+
+ //constructor
+ public function IGetSponsorInfo(); //MethodID:895, dispID:0
+ }
+}
+
+//■script056■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:66
+ public interface ISponsorInfo
+ {
+ //static constructor
+ public static function ISponsorInfo$cinit()
+ { //MethodID:897, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get rank():uint; //MethodID:898, dispID:0
+
+ function get nickname():String; //MethodID:899, dispID:0
+
+ function get message():String; //MethodID:900, dispID:0
+
+ //constructor
+ public function ISponsorInfo(); //MethodID:901, dispID:0
+ }
+}
+
+//■script057■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import __AS3__.vec.Vector
+ import jp.nicovideo.nicoplayer.views.SponsorVideoBGType
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:67
+ public class GetSponsorInfo extends Object implements IGetSponsorInfo
+ {
+ //static constructor
+ public static function GetSponsorInfo$cinit()
+ { //MethodID:903, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function GetSponsorInfo(hug1:String, hug2:Function)
+ { //MethodID:904, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ this._bgType = SponsorVideoBGType.DEFAULT;
+
+ super();
+
+ this._apiURL = hug1;
+ this._onLoaded = hug2;
+ }
+
+ //variables/etc.
+ private var _infoList:Vector.<ISponsorInfo>; //slotID:0
+ private var _apiURL:String; //slotID:0
+ private var _onLoaded:Function; //slotID:0
+ private var _bgType:String; //slotID:0
+ private var _bgColor:int = -1; //slotID:0
+ private var _bgVpos:Number = -1.0; //slotID:0
+
+ private function _load():void
+ { //MethodID:906, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 38
+ internal var defFlag:Boolean; //slotID:1
+
+ defFlag = false;
+ defFlag = XML.ignoreWhitespace;
+
+ HTTPUtils.loadXML(function(hug1:XML):void{ //MethodID:905, LocalCount= 8 , MaxScope= 0, MaxStack= 3, CodeLength= 206
+ var hug4:XML = null;
+ var hug5:_SponsorInfo = null;
+ XML.ignoreWhitespace = true;
+
+ if(!hug1){
+ _onLoaded(false);
+
+ return;
+ }
+
+ var hug2:uint = 1;
+ var hug3:Number = 0;
+ _infoList = new Vector.<ISponsorInfo>();
+
+ for each(hug4 in hug1.Result){
+ hug5 = new _SponsorInfo(hug2, hug4);
+
+ if(hug2 == 1){
+ hug3 = hug5.points;
+
+ _determineBGType(hug4);
+ }else if((hug2 == 2) && (hug3 > (hug5.points * 2))){
+ break;
+ }
+
+ _infoList.push(hug5);
+
+ hug2++;
+
+ if(_infoList.length == 4) break;
+ }
+
+ XML.ignoreWhitespace = defFlag;
+
+ _onLoaded(true);
+ }, this._apiURL, {});
+ }
+
+ private function _determineBGType(hug1:XML):void
+ { //MethodID:907, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 223
+ var hug2:Number = NaN;
+ var hug3:Number = NaN;
+ this._bgType = SponsorVideoBGType.DEFAULT;
+
+ if((hug1.bgkeyframe != undefined) && (hug1.bgkeyframe != "")){
+ hug2 = Number(hug1.bgkeyframe);
+
+ if(!isNaN(hug2) && (hug2 >= 0) && isFinite(hug2)){
+ this._bgType = SponsorVideoBGType.CAPTURE;
+ this._bgVpos = hug2;
+ return;
+ }
+ }
+
+ if((hug1.bgcolor != undefined) && (hug1.bgcolor != "") && (hug1.bgcolor >= 0)){
+ hug3 = Number(hug1.bgcolor);
+
+ if(!isNaN(hug3) && (hug3 >= 0) && (hug3 <= 0xFFFFFF) && isFinite(hug3)){
+ this._bgType = SponsorVideoBGType.COLOR;
+ this._bgColor = hug3;
+ }
+ }
+ }
+
+ public function get sponsorInfoList():Vector.<ISponsorInfo>
+ { //MethodID:908, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._infoList;
+ }
+
+ public function get bgType():String
+ { //MethodID:909, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._bgType;
+ }
+
+ public function get bgColor():int
+ { //MethodID:910, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._bgColor;
+ }
+
+ public function get bgVpos():Number
+ { //MethodID:911, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._bgVpos;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStarted():EventResult
+ { //MethodID:912, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._load();
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+
+//■class(instance)_index:68
+//private
+class _SponsorInfo extends Object implements ISponsorInfo
+{
+ //static constructor
+ public static function _SponsorInfo$cinit()
+ { //MethodID:913, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SponsorInfo(hug1:uint, hug2:XML)
+ { //MethodID:914, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 50
+ super();
+
+ this._rank = hug1;
+ this._nickname = this._decodeHTMLEntities(hug2.contact);
+ this._message = this._decodeHTMLEntities(hug2.campaignname);
+ this._points = Number(hug2.revenue);
+ }
+
+ //variables/etc.
+ private var _rank:uint; //slotID:0
+ private var _nickname:String; //slotID:0
+ private var _message:String; //slotID:0
+ private var _points:Number; //slotID:0
+
+ public function get rank():uint
+ { //MethodID:915, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._rank;
+ }
+
+ public function get nickname():String
+ { //MethodID:916, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nickname;
+ }
+
+ public function get message():String
+ { //MethodID:917, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._message;
+ }
+
+ public function get points():Number
+ { //MethodID:918, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._points;
+ }
+
+ private function _decodeHTMLEntities(hug1:String):String
+ { //MethodID:919, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 89
+ hug1 = hug1.split("&").join("&");
+ hug1 = hug1.split(""").join("\"");
+ hug1 = hug1.split("'").join("'");
+ hug1 = hug1.split("<").join("<");
+ hug1 = hug1.split(">").join(">");
+ return hug1;
+ }
+}
+
+//■script058■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+ //■class(instance)_index:69
+ public class PlaylistFlashVars extends Object
+ {
+ //static constructor
+ public static function PlaylistFlashVars$cinit()
+ { //MethodID:921, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlaylistFlashVars(hug1:Object)
+ { //MethodID:922, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 196
+ super();
+
+ if(hug1.playlistId){
+ nico_flashvars.playlistID = hug1.playlistId;
+ }else{
+ throw new Error("WatchFlashVars.WatchFlashVars. invalid variable:v=" + hug1.v);
+ }
+
+ if(hug1.playlistFrom) hug1.playlistFrom = String(playlistFrom);
+
+ if(hug1.playlistSort) hug1.playlistSort = int(playlistSort);
+
+ if(hug1.playlistToken) hug1.playlistToken = String(playlistToken);
+
+ if(hug1.useVideoEnder) hug1.useVideoEnder = Boolean(useVideoEnder);
+ }
+
+ //variables/etc.
+ private var _playlistID:String; //slotID:0
+ private var _playlistFrom:String; //slotID:0
+ private var _playlistSort:Number = Number.NaN; //slotID:0
+ private var _playlistToken:String; //slotID:0
+ private var _useVideoEnder:Boolean = false; //slotID:0
+
+ public function get playlistID():String
+ { //MethodID:923, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistID;
+ }
+
+ internal function set playlistID(hug1:String):void
+ { //MethodID:924, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playlistID = hug1;
+ }
+
+ public function get playlistFrom():String
+ { //MethodID:925, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistFrom;
+ }
+
+ internal function set playlistFrom(hug1:String):void
+ { //MethodID:926, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playlistFrom = hug1;
+ }
+
+ public function get playlistSort():Number
+ { //MethodID:927, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistSort;
+ }
+
+ internal function set playlistSort(hug1:Number):void
+ { //MethodID:928, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playlistSort = hug1;
+ }
+
+ public function get playlistToken():String
+ { //MethodID:929, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistToken;
+ }
+
+ internal function set playlistToken(hug1:String):void
+ { //MethodID:930, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playlistToken = hug1;
+ }
+
+ public function get useVideoEnder():Boolean
+ { //MethodID:931, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._useVideoEnder;
+ }
+
+ internal function set useVideoEnder(hug1:Boolean):void
+ { //MethodID:932, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._useVideoEnder = hug1;
+ }
+ }
+}
+
+//■script059■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:70
+ public class StringUtils extends Object
+ {
+ //static constructor
+ public static function StringUtils$cinit()
+ { //MethodID:934, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function gsub(hug1:Function, hug2:RegExp, hug3:String):String
+ { //dispID:3, MethodID:936, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 82
+ internal var f:Function; //slotID:1
+ internal var pattern:RegExp; //slotID:2
+ internal var s:String; //slotID:3
+ internal var s_:String; //slotID:4
+ internal var i:int; //slotID:5
+
+ s_ = null;
+ i = 0;
+ f = hug1;
+ pattern = hug2;
+ s = hug3;
+ s_ = "";
+ i = 0;
+
+ __scan_0(function(hug1:Object, hug2:int):void{ //MethodID:935, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 50
+ s_ += s.substring(i, hug1.index);
+ s_ += f(hug1);
+ i = hug2;
+ }, pattern, s);
+
+ return (s_ + s.substring(i));
+ }
+
+ public static function scan(hug1:Function, hug2:RegExp, hug3:String):void
+ { //dispID:4, MethodID:938, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 41
+ internal var f:Function; //slotID:1
+ internal var pattern:RegExp; //slotID:2
+ internal var s:String; //slotID:3
+
+ f = hug1;
+ pattern = hug2;
+ s = hug3;
+
+ __scan_0(function(hug1:Object, hug2:int):void{ //MethodID:937, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ f(hug1);
+ }, pattern, s);
+ }
+
+ private static function __scan_0(hug1:Function, hug2:RegExp, hug3:String):void
+ { //dispID:5, MethodID:939, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 72
+ var hug4:Object = null;
+
+ if(!hug2.global) throw new ArgumentError("gオプションを付けて欲しいがな。");
+
+ hug2.lastIndex = 0;
+
+ while(true){
+ hug4 = hug2.exec(hug3);
+
+ if(!hug4) break;
+ hug1(hug4, hug2.lastIndex);
+ }
+ }
+
+ public static function queryString(hug1:Object, hug2:Array=null):String
+ { //dispID:6, MethodID:940, LocalCount= 11 , MaxScope= 1, MaxStack= 4, CodeLength= 215
+ var hug4:String = null;
+ var hug5:* = undefined;
+ var hug6:String = null;
+ var hug3:Array = [];
+
+ for(hug4 in hug1){
+ if(hug4 == ""){
+ trace("WARNING: Empty key name.");
+ }else{
+ hug5 = hug1[hug4];
+
+ for each(hug6 in [hug5]){
+ hug3.push((encodeURIComponent(hug4) + "=") + encodeURIComponent(hug6));
+ }
+ }
+ }
+
+ if((hug5 as Array) || hug2){
+ for each(hug6 in hug2){
+ hug3.push(encodeURIComponent(hug6));
+ }
+ }
+
+ return hug3.join("&");
+ }
+
+ public static function joinQuery(hug1:String, hug2:Object):String
+ { //dispID:7, MethodID:941, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 30
+ var hug3:String = queryString(hug2);
+
+ if(hug3 != "") hug1 += ("?" + hug3);
+
+ return hug1;
+ }
+
+ public static function compare(hug1:String, hug2:String):Number
+ { //dispID:8, MethodID:942, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ return ((hug1 == hug2) ? 0 : ((hug1 < hug2) ? (-1) : 0));
+ }
+
+ public static function checkCode(hug1:String, hug2:uint, hug3:uint):Boolean
+ { //dispID:9, MethodID:943, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 62
+ var hug5:uint = 0;
+ var hug4:uint = hug1.length;
+
+ while(hug4--){
+ hug5 = hug1.charCodeAt(hug4);
+
+ if((hug5 < hug2) || (hug5 > hug3)) return false;
+ }
+
+ return true;
+ }
+
+ public static function multiple(hug1:String, hug2:uint):String
+ { //dispID:10, MethodID:944, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 49
+ var hug3:String = "";
+
+ while(hug2 != 0){
+ if((hug2 % 2) == 0){
+ hug2 /= 2;
+ hug1 += hug1;
+ }
+
+ hug3 += hug1;
+ hug2--;
+ }
+
+ return hug3;
+ }
+
+ public static function trim(hug1:String):String
+ { //dispID:11, MethodID:945, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 18
+ return hug1.replace(new RegExp("^[\s ]*(.*?)[\s\t]*$"), "$1");
+ }
+
+ public static function isValidVideoID(hug1:String):Boolean
+ { //dispID:12, MethodID:946, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ return new RegExp("^([a-z]{2})?(?!0)\d+$").test(hug1);
+ }
+
+ public static function isPureVideoID(hug1:String):Boolean
+ { //dispID:13, MethodID:947, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ return new RegExp("^[a-z]{2}(?!0)\d+$").test(hug1);
+ }
+
+ public static function replace(hug1:String, hug2:String, hug3:String):String
+ { //dispID:14, MethodID:948, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return hug3.split(hug1).join(hug2);
+ }
+
+ public static function hex(hug1:uint, hug2:uint=4):String
+ { //dispID:15, MethodID:949, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 71
+ if(!hug1 || (hug2 > 4)) return "0";
+
+ var hug3:String = "";
+ var hug4:uint = ((1 << hug2) - 1);
+
+ do{
+ hug3 = ("0123456789abcdef".charAt(hug1 & hug4) + hug3);
+ var hug5:uint = (hug1 >> hug2);
+ hug1 = hug5;
+
+ }while(hug5);
+
+ return hug3;
+ }
+
+ public static function float(hug1:Number, hug2:int):String
+ { //dispID:16, MethodID:950, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 78
+ var hug3:int = int(hug1);
+ var hug4:String = (hug3 + ".");
+
+ while(0 < (hug2--)){
+ hug1 -= hug3;
+ var hug5:Number = (hug1 * 10);
+ hug1 = hug5;
+ hug3 = int(hug5);
+ hug4 += String(int(hug5));
+ }
+
+ return hug4;
+ }
+
+ public static function sprintf(hug1:String, ...rest):String
+ { //dispID:17, MethodID:954, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 47
+ internal var format:String; //slotID:1
+ public var args:Array; //slotID:2
+ internal var i:int; //slotID:3
+
+ format = hug1;
+ internal var args:Object = rest;
+ i = 0;
+ return gsub(function(hug1:Object):String{ //MethodID:953, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 583
+ internal var result:Object; //slotID:1
+ internal var specifier:*; //slotID:2
+ internal var flags:*; //slotID:3
+ internal var is_numeric:*; //slotID:4
+ internal var head:*; //slotID:5
+ internal var tail:*; //slotID:6
+ internal var need:*; //slotID:7
+ internal var get_arg:Function; //slotID:8
+ internal var mod:*; //slotID:9
+ internal var tmp:*; //slotID:10
+ internal var left_side:*; //slotID:11
+
+ specifier = undefined;
+ flags = undefined;
+ head = undefined;
+ mod = undefined;
+ tmp = undefined;
+ left_side = undefined;
+ result = hug1;
+ get_arg = function(hug1:int):*{ //MethodID:952, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 93
+ var hug2:* = (result[hug1] ? Number(result[hug1] - 1) : (i++));
+
+ if(hug2 >= args.length) throw new ArgumentError(hug2 + " >= " + args.length);
+
+ return args[hug2];
+ };
+
+ specifier = result[9];
+
+ if(specifier == "%") return "%";
+
+ flags = result[2];
+ is_numeric = true;
+ head = "";
+ tail = function():String{ //MethodID:951, LocalCount= 5 , MaxScope= 0, MaxStack= 5, CodeLength= 706
+ var hug1:* = undefined;
+ var hug3:* = undefined;
+ hug1 = get_arg(1);
+
+ switch(specifier){
+ case "s":
+ case "c":
+ is_numeric = false;
+ hug1 = String(hug1);
+ return ((specifier != "c") ? hug1 : hug1.charAt(0));
+ default:
+ break;
+ }
+
+ hug1 = Number(hug1);
+
+ if(Number(hug1) < 0){
+ hug1 *= (-1);
+ head += "-";
+ }else if(new RegExp("\+").test(flags)){
+ head += "+";
+ }
+
+ switch(specifier){
+ case "d":
+ return String(int(hug1));
+ case "X":
+ return hex(int(hug1)).toUpperCase();
+ case "x":
+ return hex(int(hug1));
+ case "O":
+ return hex(int(hug1), 3).toUpperCase();
+ case "o":
+ return hex(int(hug1), 3);
+ default:
+ break;
+ }
+
+ if(isNaN(hug1) || (hug1 == Infinity)){
+ is_numeric = false;
+ return String(hug1);
+ }
+
+ var hug2:* = (result[6] ? Number(get_arg(8)) : 6);
+
+ switch(specifier){
+ case "e":
+ case "g":
+ hug3 = int(Math.log(hug1) / Math.log(10));
+ return (float((hug1 / Math.pow(10, hug3)), hug2) + "e" + hug3);
+ }
+
+ case "f":
+ return float(hug1, hug2);
+ default:
+ break;
+ }
+
+ throw new Error("BUG: Unknown specifier=" + specifier);
+ }.call(null);
+
+ if(is_numeric && new RegExp("#").test(flags) && (tail != "0")) head += "0x".slice(0, (("OoXx".indexOf(specifier) / 2) + 1));
+
+ if((specifier == "d") && new RegExp(",").test(flags)){
+ mod = (tail.length % 3);
+ tmp = tail.slice(0, mod);
+
+ if(0 < mod) tmp += ",";
+
+ tail = (tmp + tail.slice(mod).replace(new RegExp("(\d{3})(?=.)", "g"), "$1,"));
+ is_numeric = false;
+ }
+
+ need = ((result[7] || ((specifier != "g") || ((hug3 >= (-4)) && (hug3 <= hug2)))) ? (result[3] ? (Number(get_arg(5)) - head.length + tail.length) : 0);
+ left_side = new RegExp("\-").test(flags);
+
+ if(left_side || new RegExp(" ").test(flags)){
+ if(left_side){
+ tail += multiple(" ", need);
+ }else{
+ head += multiple(" ", need);
+ }
+ }else if(is_numeric){
+ head += multiple("0", need);
+ }
+ }
+
+ return (head + tail);
+ }, new RegExp("%(?:(\d+)\$)?([-+# 0,]*)((\d+)|\*(?:(\d+)\$)?)?(\.(\d+)|\*(\d+)\$)?([dOoXxfegcs%])", "sgx"), format);
+ }
+
+ public static function parseURL(hug1:String):Object
+ { //dispID:18, MethodID:956, LocalCount= 3 , MaxScope= 2, MaxStack= 15, CodeLength= 239
+ internal var url:String; //slotID:1
+ internal var status:Array; //slotID:2
+ internal var parser:RegExp; //slotID:3
+ internal var m:Object; //slotID:4
+ internal var parseURL:Object; //slotID:5
+ internal var i:uint; //slotID:6
+ internal var quaryKeyName:String; //slotID:7
+
+ parseURL = null;
+ quaryKeyName = null;
+ url = hug1;
+ status = ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"];
+ parser = new RegExp("^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)");
+ m = parser.exec(url);
+ parseURL = {};
+ i = 14;
+ i -= 1;
+
+ while(i){
+ parseURL[status[i]] = (m[i] || "");
+ }
+
+ quaryKeyName = "queryObject";
+ parseURL[quaryKeyName] = {};
+
+ parseURL[status[12]].replace(new RegExp("(?:^|&)([^&=]*)=?([^&]*)", "g"), function(... args):void{ //MethodID:955, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 35
+ if(args[1]) parseURL[quaryKeyName][args[1]] = args[2];
+ });
+
+ return parseURL;
+ }
+
+ //constructor
+ public function StringUtils()
+ { //MethodID:957, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script060■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ //■class(instance)_index:71
+ public interface ICommentLayer
+ {
+ //static constructor
+ public static function ICommentLayer$cinit()
+ { //MethodID:959, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function set visibleEnabled(hug1:Boolean):void; //MethodID:960, dispID:0
+
+ //constructor
+ public function ICommentLayer(); //MethodID:961, dispID:0
+ }
+}
+
+//■script061■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import flash.display.DisplayObjectContainer
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:72
+ public class CommentLayer extends Object implements ICommentLayer
+ {
+ //static constructor
+ public static function CommentLayer$cinit()
+ { //MethodID:963, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentLayer(hug1:Sprite, hug2:IPlayerConfig, hug3:Boolean)
+ { //MethodID:964, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ this.__layers = {};
+
+ super();
+
+ this.__baseLayer = hug1;
+ this.__isPremium = hug3;
+ this._playerConfig = hug2;
+ this.__baseLayer.visible = hug2.commentVisible;
+ }
+
+ //variables/etc.
+ private var __baseLayer:Sprite; //slotID:0
+ private var __isPremium:Boolean; //slotID:0
+ private var __optionalCommentLayer:Sprite; //slotID:0
+ private var __isAnotherPlayerMode:Boolean = false; //slotID:0
+ private var __layers:Object; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _visibleEnabled:Boolean = true; //slotID:0
+
+ public function addLayer(hug1:String, hug2:int=-1):DisplayObjectContainer
+ { //MethodID:965, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 78
+ if(this.__layers[hug1]) throw new ArgumentError();
+
+ this.__layers[hug1] = new Sprite();
+ var hug3:Sprite = new Sprite();
+
+ if(hug2 >= 0){
+ this.__baseLayer.addChildAt(hug3, hug2);
+ }else{
+ this.__baseLayer.addChild(hug3);
+ }
+
+ return hug3;
+ }
+
+ public function getLayer(hug1:String):DisplayObjectContainer
+ { //MethodID:966, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return this.__layers[hug1];
+ }
+
+ public function setOptionalLayer(hug1:String):void
+ { //MethodID:967, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 58
+ if(!this.__layers[hug1]) throw new ArgumentError();
+
+ this.__optionalCommentLayer = this.__layers[hug1];
+ this.__optionalCommentLayer.alpha = 0.5;
+ this.__optionalCommentLayer.visible = this._playerConfig.optionalCommentVisible;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStarted():EventResult
+ { //MethodID:968, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigCommentVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:969, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(!this.__isAnotherPlayerMode && this._visibleEnabled) this.__baseLayer.visible = hug1;
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigOptionalCommentVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:970, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ if(this.__optionalCommentLayer) this.__optionalCommentLayer.visible = hug1;
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:971, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ this.__isAnotherPlayerMode = hug1;
+
+ this._updateVisible();
+
+ return EventResult.THROUGH;
+ }
+
+ public function set visibleEnabled(hug1:Boolean):void
+ { //MethodID:972, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._visibleEnabled = hug1;
+
+ this._updateVisible();
+ }
+
+ private function _updateVisible():void
+ { //MethodID:973, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 40
+ this.__baseLayer.visible = (this._visibleEnabled && !this.__isAnotherPlayerMode && this._playerConfig.commentVisible);
+ }
+ }
+}
+
+//■script062■
+
+package jp.nicovideo.nicoplayer.videoender{
+
+ //■class(instance)_index:73
+ public interface IVideoenderTesterConfig
+ {
+ //static constructor
+ public static function IVideoenderTesterConfig$cinit()
+ { //MethodID:975, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isTestable():Boolean; //MethodID:976, dispID:0
+
+ function get isTester():Boolean; //MethodID:977, dispID:0
+
+ function set isTester(hug1:Boolean):void; //MethodID:978, dispID:0
+
+ //constructor
+ public function IVideoenderTesterConfig(); //MethodID:979, dispID:0
+ }
+}
+
+//■script063■
+
+package jp.nicovideo.nicoplayer.views.framerate{
+
+ //■class(instance)_index:74
+ public interface IFrameRateBooster
+ {
+ //static constructor
+ public static function IFrameRateBooster$cinit()
+ { //MethodID:981, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function initialize(hug1:String, hug2:Array):void; //MethodID:982, dispID:0
+
+ //constructor
+ public function IFrameRateBooster(); //MethodID:983, dispID:0
+ }
+}
+
+//■script064■
+
+package jp.nicovideo.nicoplayer.views.framerate{
+
+ import flash.display.Stage
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.nicoplayer.models.video.VideoType
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:76
+ public class FrameRateBooster extends Object implements IFrameRateBooster
+ {
+ //static constructor
+ public static function FrameRateBooster$cinit()
+ { //MethodID:987, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function FrameRateBooster(hug1:Stage)
+ { //MethodID:988, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ this._readyStateList = {};
+
+ super();
+
+ this._stage = hug1;
+ }
+
+ //variables/etc.
+ private var _stage:Stage; //slotID:0
+ private var _currentScreenMode:uint; //slotID:0
+ private var _readyStateList:Object; //slotID:0
+
+ private function _setFPS(hug1:uint):void
+ { //MethodID:989, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ this._stage.frameRate = hug1;
+ }
+
+ public function initialize(hug1:String, hug2:Array):void
+ { //MethodID:992, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 76
+ internal var videoType:String; //slotID:1
+ internal var bgmVideos:Array; //slotID:2
+ internal var hasSwfVideo:Function; //slotID:3
+
+ videoType = hug1;
+ bgmVideos = hug2;
+ hasSwfVideo = function(hug1:Array):Boolean{ //MethodID:991, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 32
+ internal var bgms:Array; //slotID:1
+
+ bgms = hug1;
+
+ if(bgms){
+ return (!bgms.every(function(hug1:Object, hug2:int, hug3:Array):Boolean{ //MethodID:990, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 13
+ return (hug1.type != VideoType.SWF);
+ }));
+ }
+
+ return false;
+ };
+
+ this._readyStateList[(_FrameRateBoostReadyState).INITIALIZED_STATE] = ((videoType != VideoType.SWF) && !hasSwfVideo(bgmVideos));
+
+ this._setCurrentStateFPS();
+ }
+
+ private function _setCurrentStateFPS():void
+ { //MethodID:993, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 112
+ var hug2:Boolean = false;
+ var hug1:Boolean = false;
+
+ if((this._currentScreenMode == ScreenMode.DISPLAY_FULL) || (this._currentScreenMode == ScreenMode.BROWSER_FULL)){
+ hug1 = true;
+
+ for each(hug2 in this._readyStateList){
+ if(!hug2){
+ hug1 = false;
+ break;
+ }
+ }
+ }
+
+ this._setFPS(hug1 ? FrameRateMode.HIGH : FrameRateMode.NORMAL);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:994, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ this._currentScreenMode = hug1;
+
+ this._setCurrentStateFPS();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoMenuControllerOpened():EventResult
+ { //MethodID:995, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ this._readyStateList[(_FrameRateBoostReadyState).VIDEO_MENU_CONTROLLER_STATE] = false;
+
+ this._setCurrentStateFPS();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoMenuControllerClosed():EventResult
+ { //MethodID:996, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ this._readyStateList[(_FrameRateBoostReadyState).VIDEO_MENU_CONTROLLER_STATE] = true;
+
+ this._setCurrentStateFPS();
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+
+//■class(instance)_index:75
+//private
+class _FrameRateBoostReadyState extends Object
+{
+ //static constructor
+ public static function _FrameRateBoostReadyState$cinit()
+ { //MethodID:985, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ INITIALIZED_STATE = "FrameRateBooster.initialized_state";
+ VIDEO_MENU_CONTROLLER_STATE = "VideoMenuControllerState";
+ }
+
+ //static variables/etc.
+ public static const INITIALIZED_STATE:String = "FrameRateBooster.initialized_state";//slotID:1
+ public static const VIDEO_MENU_CONTROLLER_STATE:String = "VideoMenuControllerState";//slotID:2
+
+ //constructor
+ public function _FrameRateBoostReadyState()
+ { //MethodID:986, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script065■
+
+package jp.nicovideo.nicoplayer.tpls{
+
+ import flash.display.MovieClip
+ import jp.nicovideo.nicoplayer.models.video.IVposWatcher
+
+ //■class(instance)_index:77
+ public interface INicoViewController
+ {
+ //static constructor
+ public static function INicoViewController$cinit()
+ { //MethodID:998, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function startInit(hug1:INicoViewControllerClient):void; //MethodID:999, dispID:0
+
+ function get videoBase():MovieClip; //MethodID:1000, dispID:0
+
+ function get marqueeBase():MovieClip; //MethodID:1001, dispID:0
+
+ function onCommentListInitialized(hug1:Boolean):void; //MethodID:1002, dispID:0
+
+ function onVideoInitialized(hug1:Boolean):void; //MethodID:1003, dispID:0
+
+ function onHirobaInitialized():void; //MethodID:1004, dispID:0
+
+ function initVideoEventPipe(hug1:IVposWatcher):void; //MethodID:1005, dispID:0
+
+ function initCommentEventPipe():void; //MethodID:1006, dispID:0
+
+ function initializeVideoSettings(hug1:Function):void; //MethodID:1007, dispID:0
+
+ //constructor
+ public function INicoViewController(); //MethodID:1008, dispID:0
+ }
+}
+
+//■script066■
+
+package jp.nicovideo.nicoplayer.app{
+
+ import jp.nicovideo.nicoplayer.app.view.IApplibarContainer
+ import jp.nicovideo.nicoplayer.plugin.IPluginClient
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.ITabManager
+
+ //■class(instance)_index:78
+ public interface IApplibarLoader
+ {
+ //static constructor
+ public static function IApplibarLoader$cinit()
+ { //MethodID:1010, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function closeBalloon():void; //MethodID:1011, dispID:0
+
+ function setContainer(hug1:IApplibarContainer, hug2:ITabManager):void; //MethodID:1012, dispID:0
+
+ function setPluginClient(hug1:IPluginClient):void; //MethodID:1013, dispID:0
+
+ //constructor
+ public function IApplibarLoader(); //MethodID:1014, dispID:0
+ }
+}
+
+//■script067■
+
+package jp.nicovideo.nicoplayer.app{
+
+ import flash.display.DisplayObject
+ import flash.events.Event
+ import jp.nicovideo.app.applibar.IApplibar
+ import jp.nicovideo.app.applibar.externals.events.ApplibarEvent
+ import jp.nicovideo.nicoplayer.app.api.APIObjectProviderSwitcher
+ import jp.nicovideo.nicoplayer.app.view.IApplibarContainer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.plugin.IPluginClient
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.ITabManager
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowViewConstants
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:80
+ public class ApplibarLoader extends Object
+ implements EventSender, IApplibarLoader
+ {
+ //static constructor
+ public static function ApplibarLoader$cinit()
+ { //MethodID:1018, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ApplibarLoader(hug1:String, hug2:Object, hug3:String, hug4:String, hug5:IPlayerConfig, hug6:Number, hug7:Boolean)
+ { //MethodID:1019, LocalCount= 8 , MaxScope= 1, MaxStack= 4, CodeLength= 84
+ this.onLoaded = new Functions();
+ this.onPageOpen = new Functions();
+ this.onBalloonVisibleChanged = new Functions();
+ this._eventNames = ["onBalloonVisibleChanged"];
+
+ super();
+ HTTPUtils.loadSWF(this._onLoaded, hug1, hug2);
+
+ this._userID = hug3;
+ this._bootApp = hug4;
+ this._playerConfig = hug5;
+ this._appliInstalled = hug6;
+ this._isWelcomeBalloonOpenDefault = hug7;
+ }
+
+ //variables/etc.
+ public const onLoaded:Functions; //slotID:0
+ public const onPageOpen:Functions; //slotID:0
+ private const _BALLOON_LIMIT_WIDTH:Number = 260.0; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onBalloonVisibleChanged:Functions;//slotID:0
+ private var _applibar:IApplibar; //slotID:0
+ private var _client:ApplibarClient; //slotID:0
+ private var _container:IApplibarContainer; //slotID:0
+ private var _providerSwitcher:APIObjectProviderSwitcher; //slotID:0
+ private var _userID:String; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _aspectForceChanged:Boolean = false; //slotID:0
+ private var _lastAspect:uint; //slotID:0
+ private var _bootApp:String; //slotID:0
+ private var _windowManager:ITabManager; //slotID:0
+ private var _appliInstalled:Number; //slotID:0
+ private var _isWelcomeBalloonOpenDefault:Boolean; //slotID:0
+ private var _eventNames:Array; //slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:1020, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._eventNames;
+ }
+
+ private function _onLoaded(hug1:*):void
+ { //MethodID:1021, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 30
+ this._applibar = IApplibar(hug1);
+
+ this.onLoaded.apply(this._applibar != null);
+ }
+
+ private function _checkPreparing():Boolean
+ { //MethodID:1022, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ return (this._container && this._providerSwitcher);
+ }
+
+ public function setContainer(hug1:IApplibarContainer, hug2:ITabManager):void
+ { //MethodID:1023, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ this._windowManager = hug2;
+ this._container = hug1;
+
+ this._container.container.addChild(this._applibar as DisplayObject);
+ this._onSetSource();
+ }
+
+ public function setPluginClient(hug1:IPluginClient):void
+ { //MethodID:1024, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 20
+ this._providerSwitcher = new APIObjectProviderSwitcher(hug1);
+
+ this._onSetSource();
+ }
+
+ private function _onSetSource():void
+ { //MethodID:1026, LocalCount= 2 , MaxScope= 2, MaxStack= 7, CodeLength= 91
+ if(!this._container || !this._providerSwitcher) return;
+
+ this._client = new ApplibarClient(this._container, this._providerSwitcher, this._userID, this._appliInstalled, this._isWelcomeBalloonOpenDefault);
+
+ this._applibar.start(this._client, this._bootApp);
+ this._applibar.addEventListener(Event.INIT, function(hug1:Event):void{ //MethodID:1025, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 99
+ _container.onInitApplibar(_applibar);
+ _onBarOpenUpdated();
+ _applibar.addEventListener(Event.OPEN, _onBarOpenUpdated);
+ _applibar.addEventListener(Event.CLOSE, _onBarOpenUpdated);
+ _applibar.balloonController.addEventListener(Event.OPEN, _onBalloonVisibleChanged);
+ _applibar.balloonController.addEventListener(Event.CLOSE, _onBalloonVisibleChanged);
+ _applibar.addEventListener(ApplibarEvent.PAGE_OPEN, _onPageOpen);
+ });
+ }
+
+ private function _onBarOpenUpdated(hug1:Event=null):void
+ { //MethodID:1027, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 82
+ this._container.onBarBaseSizeUpdate();
+
+ var hug2:Number = 4;
+
+ this._windowManager.updateWindowHeight(WindowViewConstants.CONTENT_HEIGHT_FULL - this._applibar.baseHeight - hug2);
+
+ if(this._applibar.balloonController.isShowing) onBalloonVisibleChanged.apply(this._applibar.isOpen);
+ }
+
+ private function _onBalloonVisibleChanged(hug1:Event):void
+ { //MethodID:1028, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 154
+ var hug2:Boolean = false;
+
+ if(!this._applibar.isOpen) return;
+
+ if(hug1.type == Event.OPEN){
+ hug2 = true;
+ }else if(hug1.type == Event.CLOSE){
+ hug2 = false;
+ }else{
+ return;
+ }
+
+ if(this._applibar.balloonController.containerWidth > this._BALLOON_LIMIT_WIDTH){
+ this._lastAspect = this._playerConfig.aspectRatio;
+ this._aspectForceChanged = true;
+ this._playerConfig.aspectRatio = ScreenAspectRatio.NORMAL;
+ }else{
+ if(this._aspectForceChanged) this._playerConfig.aspectRatio = this._lastAspect;
+
+ this._aspectForceChanged = false;
+ }
+
+ onBalloonVisibleChanged.apply(hug2);
+ }
+
+ private function _onPageOpen(hug1:ApplibarEvent):void
+ { //MethodID:1029, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this.onPageOpen.apply();
+ }
+
+ public function closeBalloon():void
+ { //MethodID:1030, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 14
+ this._applibar.balloonController.close();
+ }
+ }
+}
+
+
+//■class(instance)_index:79
+//private
+class _Guard extends Object
+{
+ //static constructor
+ public static function _Guard$cinit()
+ { //MethodID:1016, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Guard()
+ { //MethodID:1017, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script068■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.storages.transmitter.HTTPTransmitter
+ import jp.nicovideo.nicoplayer.storages.transmitter.ITransmitter
+ import jp.nicovideo.nicoplayer.storages.transmitter.XMLSocketTransmitter
+ import jp.nicovideo.nicoplayer.storages.transmitter.useMsgXML
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:81
+ public class MessageServerClient extends Object
+ {
+ //static constructor
+ public static function MessageServerClient$cinit()
+ { //MethodID:1032, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 437
+ NIWAVIDE_PACKET_VERSION = "20061206";
+ NIWAVIDE_PACKET_LEAF_VERSION = "20090904";
+ THREAD_FOUND = 0;
+ THREAD_NOT_FOUND = 1;
+ THREAD_INVALID = 2;
+ THREAD_VERSION = 3;
+ THREAD_INVALID_WAYBACKKEY = 4;
+ THREAD_TOO_OLD_WAYBACKKEY = 5;
+ THREAD_INVALID_ADMINKEY = 6;
+ THREAD_TOO_OLD_ADMINKEY = 7;
+ THREAD_INVALID_THREADKEY = 8;
+ THREAD_TOO_OLD_THREADKEY = 9;
+ THREAD_NOT_IMPLEMENTED = 10;
+ THREAD_LEAF_NOT_ACTIVATED = 11;
+ THREAD_LEAF_LOADING = 12;
+ POST_SUCCESS = 0;
+ POST_FAILURE = 1;
+ POST_INVALID_THREAD = 2;
+ POST_INVALID_TICKET = 3;
+ POST_INVALID_POSTKEY = 4;
+ POST_LOCKED = 5;
+ POST_READONLY = 6;
+ POST_NOT_IMPLEMENTED = 7;
+ LOCK_SUCCESS = 0;
+ LOCK_FAILURE = 1;
+ LOCK_ALREADY = 2;
+ LOCK_INVALID_LOCKKEY = 3;
+ DELETE_SUCCESS = 0;
+ DELETE_FAILURE = 1;
+ DELETE_INVALID_DELETEKEY = 2;
+ DELETE_LOCKED = 3;
+ DELETE_REVISED = 4;
+ COPY_SUCCESS = 0;
+ COPY_FAILURE = 1;
+ COPY_INVALID_PARAM = 2;
+ COPY_INVALID_COPYKEY = 3;
+ COPY_LOCKED = 4;
+ COPY_LEAF_NOT_ACTIVATED = 5;
+ BAN_SUCCESS = 0;
+ BAN_INVALID_BANKEY = 1;
+ UNBAN_SUCCESS = 0;
+ UNBAN_INVALID_BANKEY = 1;
+ UPDATE_SUCCESS = 0;
+ UPDATE_FAILURE = 1;
+ UPDATE_LOCKED = 2;
+ UPDATE_INVALID_TICKET = 3;
+ UPDATE_INVALID_UPDATEKEY = 4;
+ UPDATE_INVALID_THREAD = 5;
+ UPDATE_COUNT_MISSMATCH = 6;
+ CLICK_SUCCESS = 0;
+ CLICK_FAILURE = 1;
+ CLICK_INVALID_CLICKKEY = 2;
+ FORK_MAIN = 0;
+ FORK_OWNER = 1;
+ }
+
+ //static variables/etc.
+ public static const NIWAVIDE_PACKET_VERSION:String = 20061206; //slotID:1
+ public static const NIWAVIDE_PACKET_LEAF_VERSION:String = 20090904;//slotID:2
+ public static const THREAD_FOUND:uint = 0; //slotID:3
+ public static const THREAD_NOT_FOUND:uint = 1; //slotID:4
+ public static const THREAD_INVALID:uint = 2; //slotID:5
+ public static const THREAD_VERSION:uint = 3; //slotID:6
+ public static const THREAD_INVALID_WAYBACKKEY:uint = 4; //slotID:7
+ public static const THREAD_TOO_OLD_WAYBACKKEY:uint = 5; //slotID:8
+ public static const THREAD_INVALID_ADMINKEY:uint = 6; //slotID:9
+ public static const THREAD_TOO_OLD_ADMINKEY:uint = 7; //slotID:10
+ public static const THREAD_INVALID_THREADKEY:uint = 8; //slotID:11
+ public static const THREAD_TOO_OLD_THREADKEY:uint = 9; //slotID:12
+ public static const THREAD_NOT_IMPLEMENTED:uint = 10; //slotID:13
+ public static const THREAD_LEAF_NOT_ACTIVATED:uint = 11; //slotID:14
+ public static const THREAD_LEAF_LOADING:uint = 12; //slotID:15
+ public static const POST_SUCCESS:uint = 0; //slotID:16
+ public static const POST_FAILURE:uint = 1; //slotID:17
+ public static const POST_INVALID_THREAD:uint = 2; //slotID:18
+ public static const POST_INVALID_TICKET:uint = 3; //slotID:19
+ public static const POST_INVALID_POSTKEY:uint = 4; //slotID:20
+ public static const POST_LOCKED:uint = 5; //slotID:21
+ public static const POST_READONLY:uint = 6; //slotID:22
+ public static const POST_NOT_IMPLEMENTED:uint = 7; //slotID:23
+ public static const LOCK_SUCCESS:uint = 0; //slotID:24
+ public static const LOCK_FAILURE:uint = 1; //slotID:25
+ public static const LOCK_ALREADY:uint = 2; //slotID:26
+ public static const LOCK_INVALID_LOCKKEY:uint = 3; //slotID:27
+ public static const DELETE_SUCCESS:uint = 0; //slotID:28
+ public static const DELETE_FAILURE:uint = 1; //slotID:29
+ public static const DELETE_INVALID_DELETEKEY:uint = 2; //slotID:30
+ public static const DELETE_LOCKED:uint = 3; //slotID:31
+ public static const DELETE_REVISED:uint = 4; //slotID:32
+ public static const COPY_SUCCESS:uint = 0; //slotID:33
+ public static const COPY_FAILURE:uint = 1; //slotID:34
+ public static const COPY_INVALID_PARAM:uint = 2; //slotID:35
+ public static const COPY_INVALID_COPYKEY:uint = 3; //slotID:36
+ public static const COPY_LOCKED:uint = 4; //slotID:37
+ public static const COPY_LEAF_NOT_ACTIVATED:uint = 5; //slotID:38
+ public static const BAN_SUCCESS:uint = 0; //slotID:39
+ public static const BAN_INVALID_BANKEY:uint = 1; //slotID:40
+ public static const UNBAN_SUCCESS:uint = 0; //slotID:41
+ public static const UNBAN_INVALID_BANKEY:uint = 1; //slotID:42
+ public static const UPDATE_SUCCESS:uint = 0; //slotID:43
+ public static const UPDATE_FAILURE:uint = 1; //slotID:44
+ public static const UPDATE_LOCKED:uint = 2; //slotID:45
+ public static const UPDATE_INVALID_TICKET:uint = 3; //slotID:46
+ public static const UPDATE_INVALID_UPDATEKEY:uint = 4; //slotID:47
+ public static const UPDATE_INVALID_THREAD:uint = 5; //slotID:48
+ public static const UPDATE_COUNT_MISSMATCH:uint = 6; //slotID:49
+ public static const CLICK_SUCCESS:uint = 0; //slotID:50
+ public static const CLICK_FAILURE:uint = 1; //slotID:51
+ public static const CLICK_INVALID_CLICKKEY:uint = 2; //slotID:52
+ public static const FORK_MAIN:uint = 0; //slotID:53
+ public static const FORK_OWNER:uint = 1; //slotID:54
+
+ //constructor
+ public function MessageServerClient(hug1:String, hug2:uint=0, hug3:Boolean=false)
+ { //MethodID:1056, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 193
+ this.__connected = new Functions();
+ this.__connectionLost = new Functions();
+ this.__requestBegan = new Functions();
+ this.onCMsgGetThreadResult = new Functions();
+ this.onCMsgViewCounter = new Functions();
+ this.onCMsgLeaveThread = new Functions();
+ this.onCMsgPostChatResult = new Functions();
+ this.onCMsgChat = new Functions();
+ this.onCMsgPing = new Functions();
+ this.onCMsgError = new Functions();
+ this.onCMsgDeleteCommentsResult = new Functions();
+ this.onCMsgUpdateThreadResult = new Functions();
+ this.onCMsgClickResult = new Functions();
+ this.onCMsgNumberOfClick = new Functions();
+ this.onCMsgUnloadThreadResult = new Functions();
+ this.onCMsgLeaf = new Functions();
+ this.onCMsgClose = new Functions();
+
+ super();
+
+ XML.ignoreWhitespace = false;
+ XML.prettyIndent = 0;
+ XML.prettyPrinting = false;
+ this.__host = hug1;
+ this.__port = hug2;
+ this.__isPingEnabled = hug3;
+ }
+
+ //variables/etc.
+ public const __connected:Functions; //slotID:0
+ public const __connectionLost:Functions; //slotID:0
+ public const __requestBegan:Functions; //slotID:0
+ public const onCMsgGetThreadResult:Functions; //slotID:0
+ public const onCMsgViewCounter:Functions; //slotID:0
+ public const onCMsgLeaveThread:Functions; //slotID:0
+ public const onCMsgPostChatResult:Functions; //slotID:0
+ public const onCMsgChat:Functions; //slotID:0
+ public const onCMsgPing:Functions; //slotID:0
+ public const onCMsgError:Functions; //slotID:0
+ public const onCMsgDeleteCommentsResult:Functions; //slotID:0
+ public const onCMsgUpdateThreadResult:Functions; //slotID:0
+ public const onCMsgClickResult:Functions; //slotID:0
+ public const onCMsgNumberOfClick:Functions; //slotID:0
+ public const onCMsgUnloadThreadResult:Functions; //slotID:0
+ public const onCMsgLeaf:Functions; //slotID:0
+ public const onCMsgClose:Functions; //slotID:0
+ private var __host:String = null; //slotID:0
+ private var __port:uint = 0; //slotID:0
+ private var __transmitter:ITransmitter = null; //slotID:0
+ private var __XMLBuffer:XML = null; //slotID:0
+ private var __isPingEnabled:Boolean; //slotID:0
+
+ public function get connected():Functions
+ { //MethodID:1033, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__connected;
+ }
+
+ public function get connectionLost():Functions
+ { //MethodID:1034, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__connectionLost;
+ }
+
+ public function get requestBegan():Functions
+ { //MethodID:1035, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__requestBegan;
+ }
+
+ public function sendCMsgGetThread(hug1:int=0, hug2:String=null, hug3:int=0, hug4:String=null, hug5:int=0, hug6:String=null, hug7:int=0, hug8:int=0, hug9:String=null, hug10:int=0, hug11:String=null, hug12:int=0):void
+ { //MethodID:1037, LocalCount= 14 , MaxScope= 2, MaxStack= 2, CodeLength= 87
+ internal var threadid:int = 0; //slotID:1
+ internal var version:String = null; //slotID:2
+ internal var resfrom:int = 0; //slotID:3
+ internal var waybackkey:String = null; //slotID:4
+ internal var when:int = 0; //slotID:5
+ internal var user:String = null; //slotID:6
+ internal var nocompress:int = 0; //slotID:7
+ internal var fork:int = 0; //slotID:8
+ internal var adminkey:String = null; //slotID:9
+ internal var clickrevision:int = 0; //slotID:10
+ internal var threadkey:String = null; //slotID:11
+ internal var force184:int = 0; //slotID:12
+
+ threadid = hug1;
+ version = hug2;
+ resfrom = hug3;
+ waybackkey = hug4;
+ when = hug5;
+ user = hug6;
+ nocompress = hug7;
+ fork = hug8;
+ adminkey = hug9;
+ clickrevision = hug10;
+ threadkey = hug11;
+ force184 = hug12;
+
+ useMsgXML(function():void{ //MethodID:1036, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 207
+ var hug1:XML = new XML("<thread/>");
+
+ if(threadid != 0) hug1.@thread = threadid;
+
+ if(version != null) hug1.@version = version;
+
+ if(resfrom != 0) hug1.@res_from = resfrom;
+
+ if(waybackkey != null) hug1.@waybackkey = waybackkey;
+
+ if(when != 0) hug1.@when = when;
+
+ if(user != null) hug1.@user_id = user;
+
+ if(nocompress != 0) hug1.@no_compress = nocompress;
+
+ if(fork != FORK_MAIN) hug1.@fork = fork;
+
+ if(adminkey != null) hug1.@adminkey = adminkey;
+
+ if(clickrevision != 0) hug1.@click_revision = clickrevision;
+
+ if(threadkey != null) hug1.@threadkey = threadkey;
+
+ if(force184 != 0) hug1.@force_184 = force184;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgGetThreadLeaves(hug1:String, hug2:int, hug3:String=null, hug4:int=0, hug5:String=null, hug6:int=0, hug7:String=null, hug8:int=0, hug9:int=0):void
+ { //MethodID:1039, LocalCount= 11 , MaxScope= 2, MaxStack= 2, CodeLength= 69
+ internal var leavesfrom:String; //slotID:1
+ internal var threadid:int; //slotID:2
+ internal var waybackkey:String = null; //slotID:3
+ internal var when:int = 0; //slotID:4
+ internal var user:String = null; //slotID:5
+ internal var nocompress:int = 0; //slotID:6
+ internal var threadkey:String = null; //slotID:7
+ internal var force184:int = 0; //slotID:8
+ internal var resbefore:int = 0; //slotID:9
+
+ leavesfrom = hug1;
+ threadid = hug2;
+ waybackkey = hug3;
+ when = hug4;
+ user = hug5;
+ nocompress = hug6;
+ threadkey = hug7;
+ force184 = hug8;
+ resbefore = hug9;
+
+ useMsgXML(function():void{ //MethodID:1038, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 144
+ var hug1:XML = new XML("<thread_leaves>" + leavesfrom + "</thread_leaves>");
+ hug1.@thread = threadid;
+
+ if(waybackkey != null) hug1.@waybackkey = waybackkey;
+
+ if(when != 0) hug1.@when = when;
+
+ if(user != null) hug1.@user_id = user;
+
+ if(nocompress != 0) hug1.@no_compress = nocompress;
+
+ if(threadkey != null) hug1.@threadkey = threadkey;
+
+ if(force184 != 0) hug1.@force_184 = force184;
+
+ if(resbefore != 0) hug1.@res_before = resbefore;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgLeaveThread(hug1:int=0, hug2:int=0):void
+ { //MethodID:1041, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 27
+ internal var threadid:int = 0; //slotID:1
+ internal var reason:int = 0; //slotID:2
+
+ threadid = hug1;
+ reason = hug2;
+
+ useMsgXML(function():void{ //MethodID:1040, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 51
+ var hug1:XML = new XML("<leave_thread/>");
+
+ if(threadid != 0) hug1.@thread = threadid;
+
+ if(reason != 0) hug1.@reason = reason;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgPostChat(hug1:String, hug2:int, hug3:int, hug4:String=null, hug5:String=null, hug6:String=null, hug7:int=0, hug8:String=null, hug9:String=null, hug10:int=0, hug11:int=0, hug12:int=0, hug13:int=0):void
+ { //MethodID:1043, LocalCount= 15 , MaxScope= 2, MaxStack= 2, CodeLength= 93
+ internal var message:String; //slotID:1
+ internal var threadid:int; //slotID:2
+ internal var videoposition:int; //slotID:3
+ internal var mail:String = null; //slotID:4
+ internal var name:String = null; //slotID:5
+ internal var ticket:String = null; //slotID:6
+ internal var sage:int = 0; //slotID:7
+ internal var user:String = null; //slotID:8
+ internal var postkey:String = null; //slotID:9
+ internal var premium:int = 0; //slotID:10
+ internal var yugi:int = 0; //slotID:11
+ internal var staff:int = 0; //slotID:12
+ internal var sex:int = 0; //slotID:13
+
+ message = hug1;
+ threadid = hug2;
+ videoposition = hug3;
+ mail = hug4;
+ name = hug5;
+ ticket = hug6;
+ sage = hug7;
+ user = hug8;
+ postkey = hug9;
+ premium = hug10;
+ yugi = hug11;
+ staff = hug12;
+ sex = hug13;
+
+ useMsgXML(function():void{ //MethodID:1042, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 269
+ message = message.replace(new RegExp("&", "g"), "&").replace(new RegExp("<", "g"), "<").replace(new RegExp(">", "g"), ">");
+ var hug1:XML = new XML("<chat>" + message + "</chat>");
+
+ if(threadid != 0) hug1.@thread = threadid;
+
+ hug1.@vpos = videoposition;
+
+ if(mail != null) hug1.@mail = mail;
+
+ if(name != null) hug1.@name = name;
+
+ if(ticket != null) hug1.@ticket = ticket;
+
+ if(sage != 0) hug1.@sage = sage;
+
+ if(user != null) hug1.@user_id = user;
+
+ if(postkey != null) hug1.@postkey = postkey;
+
+ if(premium != 0) hug1.@premium = premium;
+
+ if(yugi != 0) hug1.@yugi = yugi;
+
+ if(staff != 0) hug1.@staff = staff;
+
+ if(sex != 0) hug1.@sex = sex;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgDebug(hug1:String):void
+ { //MethodID:1045, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 22
+ internal var message:String; //slotID:1
+
+ message = hug1;
+
+ useMsgXML(function():void{ //MethodID:1044, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 28
+ var hug1:XML = new XML("<debug>" + message + "</debug>");
+
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgDeleteComments(hug1:int, hug2:String, hug3:String, hug4:String, hug5:int=0, hug6:int=0, hug7:int=0):void
+ { //MethodID:1047, LocalCount= 9 , MaxScope= 2, MaxStack= 2, CodeLength= 57
+ internal var threadid:int; //slotID:1
+ internal var userid:String; //slotID:2
+ internal var deletekey:String; //slotID:3
+ internal var list:String; //slotID:4
+ internal var undelete:int = 0; //slotID:5
+ internal var revision:int = 0; //slotID:6
+ internal var admin:int = 0; //slotID:7
+
+ threadid = hug1;
+ userid = hug2;
+ deletekey = hug3;
+ list = hug4;
+ undelete = hug5;
+ revision = hug6;
+ admin = hug7;
+
+ useMsgXML(function():void{ //MethodID:1046, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 97
+ var hug1:XML = new XML("<delete_comments>" + list + "</delete_comments>");
+ hug1.@thread = threadid;
+ hug1.@user_id = userid;
+ hug1.@deletekey = deletekey;
+
+ if(undelete != 0) hug1.@undelete = undelete;
+
+ if(revision != 0) hug1.@revision = revision;
+
+ if(admin != 0) hug1.@admin = admin;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgAddThreadItem(hug1:String, hug2:int, hug3:String=null, hug4:String=null):void
+ { //MethodID:1049, LocalCount= 6 , MaxScope= 2, MaxStack= 2, CodeLength= 39
+ internal var message:String; //slotID:1
+ internal var videoposition:int; //slotID:2
+ internal var mail:String = null; //slotID:3
+ internal var name:String = null; //slotID:4
+
+ message = hug1;
+ videoposition = hug2;
+ mail = hug3;
+ name = hug4;
+
+ useMsgXML(function():void{ //MethodID:1048, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 128
+ message = message.replace(new RegExp("&", "g"), "&").replace(new RegExp("<", "g"), "<").replace(new RegExp(">", "g"), ">");
+ var hug1:XML = new XML("<add_thread_item>" + message + "</add_thread_item>");
+ hug1.@vpos = videoposition;
+
+ if(mail != null) hug1.@mail = mail;
+
+ if(name != null) hug1.@name = name;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgUpdateThread(hug1:int, hug2:String, hug3:int, hug4:String, hug5:String, hug6:int=0):void
+ { //MethodID:1051, LocalCount= 8 , MaxScope= 2, MaxStack= 2, CodeLength= 51
+ internal var threadid:int; //slotID:1
+ internal var user:String; //slotID:2
+ internal var count:int; //slotID:3
+ internal var ticket:String; //slotID:4
+ internal var updatekey:String; //slotID:5
+ internal var premium:int = 0; //slotID:6
+
+ threadid = hug1;
+ user = hug2;
+ count = hug3;
+ ticket = hug4;
+ updatekey = hug5;
+ premium = hug6;
+
+ useMsgXML(function():void{ //MethodID:1050, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 79
+ var hug1:XML = new XML("<update_thread/>");
+ hug1.@thread = threadid;
+ hug1.@user_id = user;
+
+ if(count != 0) hug1.@count = count;
+
+ hug1.@ticket = ticket;
+ hug1.@updatekey = updatekey;
+
+ if(premium != 0) hug1.@premium = premium;
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgClick(hug1:int, hug2:int, hug3:String, hug4:String):void
+ { //MethodID:1053, LocalCount= 6 , MaxScope= 2, MaxStack= 2, CodeLength= 39
+ internal var threadid:int; //slotID:1
+ internal var number:int; //slotID:2
+ internal var user:String; //slotID:3
+ internal var clickkey:String; //slotID:4
+
+ threadid = hug1;
+ number = hug2;
+ user = hug3;
+ clickkey = hug4;
+
+ useMsgXML(function():void{ //MethodID:1052, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 47
+ var hug1:XML = new XML("<click/>");
+ hug1.@thread = threadid;
+ hug1.@no = number;
+ hug1.@user_id = user;
+ hug1.@clickkey = clickkey;
+
+ __sendXML(hug1);
+ });
+ }
+
+ public function sendCMsgUnloadThread(hug1:int, hug2:String, hug3:String, hug4:String):void
+ { //MethodID:1055, LocalCount= 6 , MaxScope= 2, MaxStack= 2, CodeLength= 39
+ internal var threadid:int; //slotID:1
+ internal var ticket:String; //slotID:2
+ internal var user:String; //slotID:3
+ internal var unloadkey:String; //slotID:4
+
+ threadid = hug1;
+ ticket = hug2;
+ user = hug3;
+ unloadkey = hug4;
+
+ useMsgXML(function():void{ //MethodID:1054, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 47
+ var hug1:XML = new XML("<unload_thread/>");
+ hug1.@thread = threadid;
+ hug1.@ticket = ticket;
+ hug1.@user_id = user;
+ hug1.@unloadkey = unloadkey;
+
+ __sendXML(hug1);
+ });
+ }
+
+ public function get connectionType():String
+ { //MethodID:1057, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 25
+ return (this.__transmitter ? this.__transmitter.type : null);
+ }
+
+ public function get isConnecting():Boolean
+ { //MethodID:1058, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ return (this.__transmitter && this.__transmitter.isConnecting);
+ }
+
+ public function connect(hug1:Function):void
+ { //MethodID:1062, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 141
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ if(this.__transmitter != null) throw new IllegalOperationError("MessageServerClient.connect: Already connected.");
+
+ this.__transmitter = ((this.__port == 0) ? new HTTPTransmitter(this.__host) : new XMLSocketTransmitter(this.__host, this.__port, this.__isPingEnabled));
+
+ this.__transmitter.connected.add(function():void{ //MethodID:1059, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ __connected.apply();
+ });
+ this.__transmitter.xmlReceived.add(function(hug1:XML):void{ //MethodID:1060, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ __XMLReceived(hug1);
+ });
+ this.__transmitter.errorOccured.add(function(hug1:String):void{ //MethodID:1061, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 16
+ __transmitter = null;
+
+ __connectionLost.apply(hug1);
+ });
+ this.__transmitter.connect(f);
+ }
+
+ public function disconnect():void
+ { //MethodID:1063, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(this.__transmitter == null) throw new IllegalOperationError("MessageServerClient.disconnect: Already disconnected.");
+ this.__transmitter.disconnect();
+
+ this.__transmitter = null;
+ }
+
+ public function chunk(hug1:Function):void
+ { //MethodID:1064, LocalCount= 5 , MaxScope= 7, MaxStack= 4, CodeLength= 156
+ internal var f:Function; //slotID:1
+ internal var b:Boolean; //slotID:2
+
+ f = hug1;
+ b = false;
+
+ if(this.__XMLBuffer == null){
+ this.__XMLBuffer = new XML("<packet/>");
+ b = true;
+ }
+
+ try{
+ f(this);
+ }
+ finally{
+ if(b){
+ if(this.__XMLBuffer.children().length() != 0) this.__sendXML_0(this.__XMLBuffer);
+
+ this.__XMLBuffer = null;
+ }
+ }
+ }
+
+ private function __sendXML(hug1:XML):void
+ { //MethodID:1065, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(this.__XMLBuffer != null){
+ this.__XMLBuffer.appendChild(hug1);
+
+ return;
+ }
+
+ this.__requestBegan.apply();
+ this.__sendXML_0(hug1);
+ }
+
+ private function __sendXML_0(hug1:XML):void
+ { //MethodID:1066, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.__transmitter.send(hug1);
+ }
+
+ public function __XMLReceived(hug1:XML):void
+ { //MethodID:1067, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 195
+ var hug4:XML = null;
+ var hug5:int = 0;
+ var hug6:* = undefined;
+ var hug2:XML = new XML("<close/>");
+
+ if(hug1.name().localName != "packet"){
+ hug2.@thread = hug1.@thread;
+
+ this.__XMLReceived_0(hug1);
+
+ return;
+ }
+
+ var hug3:Array = [];
+
+ for each(hug4 in hug1.children()){
+ if(hug4.name().localName == "thread") hug3.push([hug4.@thread, hug4.@fork]);
+ this.__XMLReceived_0(hug4);
+ }
+
+ hug5 = 0;
+
+ while(hug5 < hug3.length){
+ hug6 = hug3[hug5];
+ hug2.@thread = hug6[0];
+ hug2.@fork = hug6[1];
+
+ this.__XMLReceived_0(hug2);
+
+ hug5++;
+ }
+ }
+
+ private function __XMLReceived_0(hug1:XML):void
+ { //MethodID:1068, LocalCount= 3 , MaxScope= 1, MaxStack= 18, CodeLength= 988
+ switch(hug1.name().localName){
+ case "thread":
+ this.onCMsgGetThreadResult.apply(int(hug1.@resultcode), int(hug1.@thread), int(hug1.@last_res), String(hug1.@ticket), String(hug1.text()[0]), int(hug1.@locked), int(hug1.@revision), int(hug1.@res_offset), int(hug1.@fork), int(hug1.@server_time), int(hug1.@button_ignored), int(hug1.@click_revision), int(hug1.@num_clicks));
+ break;
+ case "view_counter":
+ this.onCMsgViewCounter.apply(int(hug1.@video), String(hug1.@id), int(hug1.@mylist));
+ break;
+ case "leave_thread":
+ this.onCMsgLeaveThread.apply(int(hug1.@thread), int(hug1.@reason));
+ break;
+ case "chat_result":
+ this.onCMsgPostChatResult.apply(int(hug1.@thread), int(hug1.@status), int(hug1.@no), int(hug1.@leaf));
+ break;
+ case "chat":
+ this.onCMsgChat.apply(String(hug1.text()[0]), int(hug1.@thread), int(hug1.@no), int(hug1.@vpos), int(hug1.@date), String(hug1.@mail), String(hug1.@name), int(hug1.@yourpost), String(hug1.@user_id), String(hug1.@raw_user_id), int(hug1.@deleted), int(hug1.@premium), int(hug1.@anonymity), int(hug1.@fork), String(hug1.@remote), int(hug1.@leaf));
+ break;
+ case "message_error":
+ this.onCMsgError.apply(String(hug1.@reason));
+ break;
+ case "delete_comments":
+ this.onCMsgDeleteCommentsResult.apply(int(hug1.@thread), int(hug1.@status), int(hug1.@revision), int(hug1.@undelete));
+ break;
+ case "update_thread":
+ this.onCMsgUpdateThreadResult.apply(int(hug1.@status), String(hug1.@ticket));
+ break;
+ case "click":
+ this.onCMsgClickResult.apply(int(hug1.@status));
+ break;
+ case "num_click":
+ this.onCMsgNumberOfClick.apply(int(hug1.@thread), int(hug1.@no), int(hug1.@count));
+ break;
+ case "unload_thread":
+ this.onCMsgUnloadThreadResult.apply(int(hug1.@thread), int(hug1.@status));
+ break;
+ case "leaf":
+ this.onCMsgLeaf.apply(int(hug1.@leaf), int(hug1.@thread), int(hug1.@count));
+ break;
+ case "close":
+ this.onCMsgClose.apply(int(hug1.@thread), int(hug1.@fork));
+ break;
+ case "ping":
+ break;
+ default:
+ throw new Error("MessageServerClient.__XMLReceived_0: unknwon packet. name=" + hug1.name());
+ break;
+ }
+ }
+ }
+}
+
+//■script069■
+
+package jp.nicovideo.hiroba.events{
+
+ import flash.events.ErrorEvent
+
+ //■class(instance)_index:82
+ public class HirobaErrorEvent extends ErrorEvent
+ {
+ //static constructor
+ public static function HirobaErrorEvent$cinit()
+ { //MethodID:1070, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ DISCONNECTED = "disconnected";
+ CONNECTION_FAIL = "connectionFail";
+ }
+
+ //static variables/etc.
+ public static const DISCONNECTED:String = "disconnected"; //slotID:1
+ public static const CONNECTION_FAIL:String = "connectionFail"; //slotID:2
+
+ //constructor
+ public function HirobaErrorEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false, hug4:String, hug5:String)
+ { //MethodID:1071, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 17
+ super(hug1, hug2, hug3, hug4);
+
+ this._referer = hug5;
+ }
+
+ //variables/etc.
+ private var _referer:String = ""; //slotID:0
+
+ public function get referer():String
+ { //MethodID:1072, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._referer;
+ }
+ }
+}
+
+//■script070■
+
+package jp.nicovideo.nicoscript.macro.parsers{
+
+ //■class(instance)_index:83
+ public interface IMacroParserResult
+ {
+ //static constructor
+ public static function IMacroParserResult$cinit()
+ { //MethodID:1074, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get macroName():String; //MethodID:1075, dispID:0
+
+ function get label():String; //MethodID:1076, dispID:0
+
+ function get argLength():int; //MethodID:1077, dispID:0
+
+ function arg(hug1:int, hug2:String=null):String; //MethodID:1078, dispID:0
+
+ function argArray(hug1:int, hug2:Array=null):Array; //MethodID:1079, dispID:0
+
+ //constructor
+ public function IMacroParserResult(); //MethodID:1080, dispID:0
+ }
+}
+
+//■script071■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.ITabManager
+
+ //■class(instance)_index:84
+ public interface IPlaylistController
+ {
+ //static constructor
+ public static function IPlaylistController$cinit()
+ { //MethodID:1082, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function play(hug1:String=null, hug2:Function=null, hug3:Boolean=false, hug4:Boolean=false):Boolean;//MethodID:1083, dispID:0
+
+ function goNext(hug1:Function=null, hug2:Boolean=false, hug3:String=null):void;//MethodID:1084, dispID:0
+
+ function goPrev(hug1:Function=null, hug2:String=null):void; //MethodID:1085, dispID:0
+
+ function countReset():void; //MethodID:1086, dispID:0
+
+ function countUp():void; //MethodID:1087, dispID:0
+
+ function checkSkip(hug1:String):Boolean; //MethodID:1088, dispID:0
+
+ function stopVideo():void; //MethodID:1089, dispID:0
+
+ function get threadID():String; //MethodID:1090, dispID:0
+
+ function get playlist():IPlaylist; //MethodID:1091, dispID:0
+
+ function set windowManager(hug1:ITabManager):void; //MethodID:1092, dispID:0
+
+ function set isAutoPlayAfterLoadSeq(hug1:Function):void; //MethodID:1093, dispID:0
+
+ //constructor
+ public function IPlaylistController(); //MethodID:1094, dispID:0
+ }
+}
+
+//■script072■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.marquee.MarqueeClient
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.flashvars.PlaylistFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.models.video.VideoConstants
+ import jp.nicovideo.nicoplayer.tpls.INicoViewController
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.ITabManager
+ import jp.nicovideo.nicoplayer.tpls.shutter.CommentShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.ControllerShutter
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.EventSequence
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:86
+ public class PlaylistController extends Object implements IPlaylistController
+ {
+ //static constructor
+ public static function PlaylistController$cinit()
+ { //MethodID:1104, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlaylistController(hug1:Array, hug2:Function, hug3:IPlaylist, hug4:PlaylistFlashVars, hug5:NicoConfig, hug6:int, hug7:Function, hug8:Boolean, hug9:String)
+ { //MethodID:1106, LocalCount= 10 , MaxScope= 1, MaxStack= 5, CodeLength= 178
+ this.onPlaylistTargetUpdated = new Functions();
+ this.onPlaylistInterrupted = new Functions();
+ this.onVideoChanged = new Functions();
+ this.onPlaylistVideoError = new Functions();
+ this.onPlaylistEnded = new Functions();
+ this._sequenceArray = [];
+ this._callback = new Functions();
+ this._isAutoPlayAfterLoadSeq = function():Boolean{ //MethodID:1105, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 2
+ return true;
+ };
+ this._sequenceStartTimer = new Timer(this._DEDAULT_SEQUENCE_DELAY, 1);
+
+ super();
+
+ this._sequenceArray = hug1;
+ this._initializePlaylist = hug2;
+ this._playlist = hug3;
+ this._playlistFlashVars = hug4;
+ this._nicoConfig = hug5;
+ this._reset = hug7;
+ this._from = hug4.playlistFrom;
+ this._limit = hug6;
+
+ if(hug8) this._randomList = new _RandomList(this._playlist);
+
+ this._errorManager = new PlaylistErrorManager(this._playlistFlashVars, this._nicoConfig, hug9);
+ }
+
+ //variables/etc.
+ private const _DEDAULT_SEQUENCE_DELAY:Number = 1000.0; //slotID:0
+ private const _ERROR_SEQUENCE_DELAY:Number = 3000.0; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistTargetUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistInterrupted:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoChanged:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistVideoError:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistEnded:Functions;//slotID:0
+ private var _count:int = 0; //slotID:0
+ private var _countLock:Boolean = false; //slotID:0
+ private var _limit:int = 0; //slotID:0
+ private var _threadID:String = ""; //slotID:0
+ private var _from:String = ""; //slotID:0
+ private var _sequenceArray:Array; //slotID:0
+ private var _initializePlaylist:Function; //slotID:0
+ private var _playlistFlashVars:PlaylistFlashVars; //slotID:0
+ private var _nicoConfig:NicoConfig; //slotID:0
+ private var _reset:Function; //slotID:0
+ private var _callback:Functions; //slotID:0
+ private var _errorCount:uint = 0; //slotID:0
+ private var _randomList:_RandomList; //slotID:0
+ private var _isAutoPlayAfterLoadSeq:Function; //slotID:0
+ private var _isVideoUpdating:Boolean = false; //slotID:0
+ private var _isTantalize:Boolean = false; //slotID:0
+ private var _isInvalidToken:Boolean = false; //slotID:0
+ private var _isLockedVideoEndedGoNext:Boolean = false; //slotID:0
+ private var _isFinishedFirstSequence:Boolean = false; //slotID:0
+ private var _isStopVideoNext:Boolean = false; //slotID:0
+ private var _sequenceStartTimer:Timer; //slotID:0
+ private var _playlist:IPlaylist; //slotID:0
+ private var _marqueeClient:MarqueeClient; //slotID:0
+ private var _videoController:IVideoController; //slotID:0
+ private var _nicoViewController:INicoViewController; //slotID:0
+ private var _commentShutter:ControllerShutter; //slotID:0
+ private var _errorManager:PlaylistErrorManager; //slotID:0
+
+ public function goNext(hug1:Function=null, hug2:Boolean=false, hug3:String=null):void
+ { //MethodID:1107, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 266
+ var hug4:VideoInfo = null;
+ var hug5:String = null;
+
+ if(this._isVideoUpdating) return;
+
+ if(this._randomList){
+ hug4 = (this._randomList.hasNext ? this.playlist.getVideoInfo(this._randomList.next()) : null);
+ }else{
+ hug5 = (hug3 ? hug3 : this._threadID);
+ hug4 = this.playlist.getNextVideoInfo(hug5);
+ }
+
+ if(!hug4){
+ if(this._videoController) this._videoController.stop(VideoConstants.OPERATION_OTHER);
+ onPlaylistEnded.apply();
+
+ if(!this._isFinishedFirstSequence) this._errorManager.show(null, PlaylistErrorManager.NO_LIST);
+
+ return;
+ }
+
+ if(this.checkSkip(hug4.threadID)){
+ this._errorManager.show(hug4, hug4.errorMessage);
+ onPlaylistVideoError.apply(hug4, hug4.errorMessage);
+ this.goNext(hug1, hug2, hug4.threadID);
+ }else{
+ this.play(hug4.threadID, hug1, hug2);
+ }
+ }
+
+ public function goPrev(hug1:Function=null, hug2:String=null):void
+ { //MethodID:1108, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 208
+ var hug3:VideoInfo = null;
+ var hug4:String = null;
+
+ if(this._isVideoUpdating) return;
+
+ if(this._randomList){
+ hug3 = (this._randomList.hasPrev ? this.playlist.getVideoInfo(this._randomList.prev()) : null);
+ }else{
+ hug4 = (hug2 ? hug2 : this._threadID);
+ hug3 = this.playlist.getPrevVideoInfo(hug4);
+ }
+
+ if(!hug3){
+ if(this._videoController) this._videoController.stop(VideoConstants.OPERATION_OTHER);
+
+ return;
+ }
+
+ if(this.checkSkip(hug3.threadID)){
+ this._errorManager.show(hug3, hug3.errorMessage);
+ onPlaylistVideoError.apply(hug3, hug3.errorMessage);
+ this.goPrev(hug1, hug3.threadID);
+ }else{
+ this.play(hug3.threadID, hug1);
+ }
+ }
+
+ public function countReset():void
+ { //MethodID:1109, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ if(!this._countLock) this._count = 0;
+ }
+
+ public function onError(hug1:String):void
+ { //MethodID:1110, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 81
+ this._isVideoUpdating = false;
+ var hug2:VideoInfo = this.playlist.getVideoInfo(this._threadID);
+ this._sequenceStartTimer.delay = this._ERROR_SEQUENCE_DELAY;
+
+ this.playlist.setErrorInfo(this._threadID, hug1);
+ this._errorManager.show(hug2, hug1);
+ onPlaylistVideoError.apply(hug2, hug1);
+ }
+
+ public function play(hug1:String=null, hug2:Function=null, hug3:Boolean=false, hug4:Boolean=false):Boolean
+ { //MethodID:1111, LocalCount= 7 , MaxScope= 1, MaxStack= 3, CodeLength= 542
+ var hug6:VideoInfo = null;
+
+ if(this._playlist.list.length <= 0){
+ this._errorManager.show(null, PlaylistErrorManager.NO_LIST);
+
+ return false;
+ }
+
+ if(hug1 == null){
+ if(this._randomList){
+ if(!this._randomList.hasNext || (this._randomList.current() == this._threadID)) this._randomList.shuffle();
+
+ hug1 = this._randomList.current();
+ }else if(this._from){
+ hug1 = this._from;
+ }else{
+ hug6 = this._playlist.list[0];
+ hug1 = hug6.threadID;
+ }
+ }else if(this._randomList){
+ if(hug4){
+ this._randomList.shuffle(hug1);
+
+ hug1 = this._randomList.current();
+ }
+ }
+
+ if(this._threadID && this._videoController && !this._isInvalidToken && (this._threadID == hug1)){
+ this._isLockedVideoEndedGoNext = false;
+
+ this._videoController.seek(0);
+
+ return true;
+ }
+
+ if(this._isVideoUpdating && !this._isInvalidToken){
+ this._isLockedVideoEndedGoNext = false;
+ return false;
+ }
+
+ if(this._sequenceStartTimer.running){
+ this._sequenceStartTimer.stop();
+ this._sequenceStartTimer.removeEventListener(TimerEvent.TIMER, this.play_0);
+ }
+
+ this._threadID = hug1;
+ this._isTantalize = hug3;
+ var hug5:VideoInfo = this.playlist.getVideoInfo(this._threadID);
+
+ onPlaylistTargetUpdated.apply(hug5);
+
+ if(this.checkSkip(this._threadID)){
+ this.goNext(hug2, hug3);
+
+ if(hug5){
+ this._errorManager.show(hug5, hug5.errorMessage);
+ onPlaylistVideoError.apply(hug5, hug5.errorMessage);
+ }
+
+ this._isLockedVideoEndedGoNext = false;
+ return false;
+ }else{
+ if(hug2 != null) this._callback.add(hug2);
+
+ if(this._videoController) this._videoController.stop(VideoConstants.OPERATION_OTHER);
+
+ if(!this._isFinishedFirstSequence && this._commentShutter) this._commentShutter.close(CommentShutterConstants.SHUTTER_COMMENT_LOADING, "");
+ this._sequenceStartTimer.addEventListener(TimerEvent.TIMER, this.play_0);
+ this._sequenceStartTimer.start();
+
+ return true;
+ }
+ }
+
+ private function play_0(hug1:TimerEvent):void
+ { //MethodID:1115, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 220
+ internal var evt:TimerEvent; //slotID:1
+ internal var _sequence:EventSequence; //slotID:2
+
+ _sequence = null;
+ evt = hug1;
+
+ this.countUp();
+
+ this._isVideoUpdating = true;
+
+ if(this._videoController) this._videoController.stop();
+
+ if(this._marqueeClient && this._marqueeClient.marqueePlayer) this._marqueeClient.marqueePlayer.initialize(this._marqueeClient);
+ this._reset.apply();
+
+ if(this._isInterrupt){
+ this._countLock = true;
+
+ onPlaylistInterrupted.apply();
+ }
+
+ _sequence = new EventSequence(this);
+
+ if(this._isInvalidToken){
+ _sequence.add(this._initializePlaylist);
+
+ this._isInvalidToken = false;
+ }
+
+ this._sequenceArray.forEach(function(hug1:Function, hug2:int, hug3:Array):void{ //MethodID:1112, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ _sequence.add(hug1);
+ });
+ _sequence.add(function():void{ //MethodID:1113, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 208
+ _callback.apply();
+ _callback.clear();
+
+ errorCount = 0;
+ _isLockedVideoEndedGoNext = false;
+ _isStopVideoNext = false;
+ _isVideoUpdating = false;
+
+ onVideoChanged.apply(_playlist.getVideoInfo(_threadID));
+ _sequenceStartTimer.stop();
+ _sequenceStartTimer.reset();
+
+ _sequenceStartTimer.delay = _DEDAULT_SEQUENCE_DELAY;
+ var hug1:Boolean = ((!_isInterrupt && !_isTantalize && !_isStopVideoNext && _videoController) && _isAutoPlayAfterLoadSeq());
+
+ if(_videoController){
+ if(!_isFinishedFirstSequence){
+ _videoController.startToPlay(hug1);
+ }else if(hug1){
+ _videoController.play(VideoConstants.OPERATION_OTHER);
+ }
+ }
+
+ _isFinishedFirstSequence = true;
+ _countLock = false;
+ });
+
+ if(!this._isFinishedFirstSequence){
+ _sequence.next();
+ }else{
+ this._nicoViewController.initializeVideoSettings(function():void{ //MethodID:1114, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _sequence.next();
+ });
+ }
+ }
+
+ public function countUp():void
+ { //MethodID:1116, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ this._count++;
+ }
+
+ public function checkSkip(hug1:String):Boolean
+ { //MethodID:1117, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 44
+ var hug2:VideoInfo = this.playlist.getVideoInfo(hug1);
+
+ if(!hug2) return true;
+
+ var hug3:Boolean = ((hug2.deleted != 0) || hug2.errorMessage);
+ return hug3;
+ }
+
+ public function stopVideo():void
+ { //MethodID:1118, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ this._isStopVideoNext = this._isVideoUpdating;
+
+ if(this._videoController) this._videoController.stop(VideoConstants.OPERATION_OTHER);
+ }
+
+ public function get threadID():String
+ { //MethodID:1119, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ public function get playlist():IPlaylist
+ { //MethodID:1120, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlist;
+ }
+
+ public function set videoController(hug1:IVideoController):void
+ { //MethodID:1121, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoController = hug1;
+ }
+
+ public function set marqueeClient(hug1:MarqueeClient):void
+ { //MethodID:1122, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 11
+ this._marqueeClient = (hug1 as MarqueeClient);
+ }
+
+ public function set nicoViewController(hug1:INicoViewController):void
+ { //MethodID:1123, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._nicoViewController = hug1;
+ }
+
+ private function get _isInterrupt():Boolean
+ { //MethodID:1124, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return (this._count > this._limit);
+ }
+
+ public function set commentShutter(hug1:ControllerShutter):void
+ { //MethodID:1125, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentShutter = hug1;
+ }
+
+ public function set windowManager(hug1:ITabManager):void
+ { //MethodID:1126, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ this._errorManager.windowManager = hug1;
+ }
+
+ public function get isInvalidToken():Boolean
+ { //MethodID:1127, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInvalidToken;
+ }
+
+ public function set isInvalidToken(hug1:Boolean):void
+ { //MethodID:1128, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isInvalidToken = hug1;
+ }
+
+ public function get isVideoUpdating():Boolean
+ { //MethodID:1129, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isVideoUpdating;
+ }
+
+ public function set isVideoUpdating(hug1:Boolean):void
+ { //MethodID:1130, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isVideoUpdating = hug1;
+ }
+
+ public function get errorCount():uint
+ { //MethodID:1131, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorCount;
+ }
+
+ public function set errorCount(hug1:uint):void
+ { //MethodID:1132, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._errorCount = hug1;
+ }
+
+ public function set isAutoPlayAfterLoadSeq(hug1:Function):void
+ { //MethodID:1133, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isAutoPlayAfterLoadSeq = hug1;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:1134, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 125
+ if(this._isLockedVideoEndedGoNext) return EventResult.THROUGH;
+
+ this._isLockedVideoEndedGoNext = true;
+
+ if(this._randomList && this._randomList.hasNext){
+ this.goNext();
+ }else if(this.playlist.getNextVideoInfo(this._threadID)){
+ this.goNext();
+ }else{
+ this._isLockedVideoEndedGoNext = false;
+
+ this._videoController.stop(VideoConstants.OPERATION_OTHER);
+ onPlaylistEnded.apply();
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsPlaylistRandomPlayUpdated(hug1:Boolean):EventResult
+ { //MethodID:1135, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 49
+ if(hug1){
+ this._randomList = new _RandomList(this._playlist);
+
+ this._randomList.shuffle(this._threadID);
+ }else{
+ this._randomList = null;
+ }
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.playlist.IPlaylist
+import jp.nicovideo.nicoplayer.models.playlist.VideoInfo
+
+//■class(instance)_index:85
+//private
+class _RandomList extends Object
+{
+ //static constructor
+ public static function _RandomList$cinit()
+ { //MethodID:1096, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ _IS_INITIAL_INDEX_0_MODE = false;
+ }
+
+ //static variables/etc.
+ private static const _IS_INITIAL_INDEX_0_MODE:Boolean = false; //slotID:1
+
+ //constructor
+ public function _RandomList(hug1:IPlaylist):void
+ { //MethodID:1097, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 70
+ super();
+
+ this._playlist = hug1;
+
+ if(this._playlist.list.length <= 0){
+ this._list = [];
+ return;
+ }
+
+ this.shuffle(_IS_INITIAL_INDEX_0_MODE ? VideoInfo(hug1.list[0]).threadID : null);
+ }
+
+ //variables/etc.
+ private var _list:Array; //slotID:0
+ private var _curIdx:int; //slotID:0
+ private var _playlist:IPlaylist; //slotID:0
+
+ public function shuffle(hug1:String=null):void
+ { //MethodID:1098, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 299
+ var hug3:VideoInfo = null;
+ var hug4:int = 0;
+ var hug5:int = 0;
+ var hug6:int = 0;
+
+ if(hug1 == null){
+ hug4 = ((this._playlist.list.length == this._curIdx) ? (this._curIdx - 1) : this._curIdx);
+
+ do{
+ hug5 = (Math.random() * this._playlist.list.length);
+ hug1 = VideoInfo(this._playlist.list[hug5]).threadID;
+
+ }while((this._list && (this._playlist.list.length > 1)) && (hug1 == this._list[hug4]));
+ }
+
+ this._list = [];
+ var hug2:Array = [];
+
+ for each(hug3 in this._playlist.list){
+ if(hug3.threadID != hug1){
+ hug2.push(hug3.threadID);
+ }else{
+ this._list.push(hug3.threadID);
+ }
+ }
+
+ while(hug2.length > 0){
+ hug6 = (Math.random() * hug2.length);
+
+ this._list.push(hug2[hug6]);
+ hug2.splice(hug6, 1);
+ }
+
+ this._curIdx = 0;
+ }
+
+ public function current():String
+ { //MethodID:1099, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return this._list[this._curIdx];
+ }
+
+ public function next():String
+ { //MethodID:1100, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 28
+ return this[++this._curIdx];
+ }
+
+ public function prev():String
+ { //MethodID:1101, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 28
+ return this[--this._curIdx];
+ }
+
+ public function get hasNext():Boolean
+ { //MethodID:1102, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ return (this._curIdx < this._list.length);
+ }
+
+ public function get hasPrev():Boolean
+ { //MethodID:1103, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ return (this._curIdx > 0);
+ }
+}
+
+//■script073■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:87
+ public interface IOwnerCommentList implements ICommentList
+ {
+ //static constructor
+ public static function IOwnerCommentList$cinit()
+ { //MethodID:1137, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function replace(hug1:uint, hug2:IComment):void; //MethodID:1138, dispID:0
+
+ function edit(hug1:Array, hug2:Array=null, hug3:Boolean=false):void; //MethodID:1139, dispID:0
+
+ function sync(hug1:Function):void; //MethodID:1140, dispID:0
+
+ //constructor
+ public function IOwnerCommentList(); //MethodID:1141, dispID:0
+ }
+}
+
+//■script074■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.api.IRegisterBGM
+ import jp.nicovideo.nicoplayer.storages.CommentStorageError
+ import jp.nicovideo.nicoplayer.storages.ICommentStorage
+ import jp.nicovideo.nicoplayer.storages.ICommentStorageHandle
+ import jp.nicovideo.nicoscript.NicoSClient
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventBarrier
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:88
+ public class OwnerCommentList extends Object implements IOwnerCommentList
+ {
+ //static constructor
+ public static function OwnerCommentList$cinit()
+ { //MethodID:1143, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function OwnerCommentList(hug1:String, hug2:ICommentStorage, hug3:NicoSClient, hug4:IRegisterBGM)
+ { //MethodID:1144, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 52
+ this.__comments = [];
+ this.onCommentListUpdated = new Functions();
+
+ super();
+
+ this.__threadID = hug1;
+ this.__commentStorage = hug2;
+ this.__nicosClient = hug3;
+ this.__registerBGM = hug4;
+ this.__handle = hug2.attach(hug1);
+ }
+
+ //variables/etc.
+ private var __threadID:String; //slotID:0
+ private var __comments:Array; //slotID:0
+ private var __saved:Boolean = false; //slotID:0
+ private var __when:Date = null; //slotID:0
+ private var __commentStorage:ICommentStorage; //slotID:0
+ private var __handle:ICommentStorageHandle; //slotID:0
+ private var __nicosClient:NicoSClient; //slotID:0
+ private var __registerBGM:IRegisterBGM; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentListUpdated:Functions;//slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:1145, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return ["onCommentListUpdated"];
+ }
+
+ public function initialize(hug1:Function):void
+ { //MethodID:1147, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 26
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ this.__handle.getOwnerThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1146, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 56
+ if(hug1){
+ f(hug1);
+
+ return;
+ }
+
+ __comments = hug2.concat();
+ __saved = true;
+
+ __reflect(null, __comments, null, true);
+ f(null);
+ }, 1000);
+ }
+
+ public function reload(hug1:Function):void
+ { //MethodID:1148, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 9
+ hug1(null);
+ }
+
+ public function update(hug1:Function):void
+ { //MethodID:1149, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 9
+ hug1(null);
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:1150, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 55
+ var hug2:CommentBuilder = new CommentBuilder(hug1);
+ hug2.resNo = (this.__comments.length + 1);
+ hug1 = hug2.make();
+
+ this.__comments.push(hug1);
+ this.__reflect(null, [hug1]);
+ }
+
+ public function replace(hug1:uint, hug2:IComment):void
+ { //MethodID:1151, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 59
+ if((this.__comments.length < hug1) || (hug1 == 0)) return;
+
+ var hug3:IComment = this.__comments[hug1];
+ this.__comments[hug1] = hug2;
+
+ this.__reflect(null, [hug2], [hug3]);
+ }
+
+ public function edit(hug1:Array, hug2:Array=null, hug3:Boolean=false):void
+ { //MethodID:1154, LocalCount= 7 , MaxScope= 2, MaxStack= 5, CodeLength= 652
+ internal var additionals:Array; //slotID:1
+ internal var removes:Array = null; //slotID:2
+ internal var clear:Boolean = false; //slotID:3
+ internal var a:Array; //slotID:4
+ internal var excluded:Array; //slotID:5
+ internal var prev:uint; //slotID:6
+ internal var no:uint; //slotID:7
+ internal var i:int; //slotID:8
+ internal var comment:IComment; //slotID:9
+ internal var builder:CommentBuilder; //slotID:10
+
+ a = null;
+ excluded = null;
+ prev = 0;
+ no = 0;
+ i = 0;
+ comment = null;
+ builder = null;
+ additionals = hug1;
+ removes = hug2;
+ clear = hug3;
+
+ if(clear){
+ this.__comments.splice(0, this.__comments.length);
+ }else if(removes && (removes.length != 0)){
+ a = removes.sort(function(hug1:uint, hug2:uint):Number{ //MethodID:1152, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 4
+ return (hug1 - hug2);
+ });
+
+ if((a[0] == 0) || (a[a.length - 1] > this.__comments.length)) return;
+
+ excluded = [];
+ prev = 0;
+
+ for each(no in a){
+ if(no == prev){
+ }else{
+ excluded.push(this.__comments.splice((no - excluded.length - 1), 1)[0]);
+
+ prev = no;
+ }
+ }
+ }
+
+ if(additionals && (additionals.length != 0)){
+ additionals = additionals.sort(function(hug1:IComment, hug2:IComment):Number{ //MethodID:1153, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ return (hug1.resNo - hug2.resNo);
+ });
+
+ i = 0;
+
+ while(i < additionals.length){
+ comment = additionals[i];
+
+ if(comment.resNo == 0){
+ builder = new CommentBuilder(comment);
+ builder.resNo = (this.__comments.length + 1);
+ additionals[i] = builder.make();
+ comment = builder.make();
+
+ this.__comments.push(comment);
+ }else if(this.__comments.length < comment.resNo){
+ if((comment.resNo - 1) != this.__comments.length){
+ builder = new CommentBuilder(comment);
+ builder.resNo = (this.__comments.length + 1);
+ additionals[i] = builder.make();
+ comment = builder.make();
+ }
+
+ this.__comments.push(comment);
+ }else{
+ this.__comments[comment.resNo - 1] = comment;
+ }
+
+ i++;
+ }
+ }
+
+ this.__reflect(null, additionals, excluded, clear);
+ }
+
+ public function get currentList():Array
+ { //MethodID:1155, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ return this.__comments.concat();
+ }
+
+ public function serveCommentList():void
+ { //MethodID:1156, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 36
+ onCommentListUpdated.apply(this.__comments, [], true, this.name);
+ }
+
+ public function get name():String
+ { //MethodID:1157, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return CommentConstants.CL_OWNER;
+ }
+
+ public function clickButtonComment(hug1:IComment):void
+ { //MethodID:1158, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ throw new IllegalOperationError("サポートしてないッ~ス(発音不可)");
+ }
+
+ public function isClickable(hug1:IComment):Boolean
+ { //MethodID:1159, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return false;
+ }
+
+ public function sync(hug1:Function):void
+ { //MethodID:1164, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 51
+ internal var f:Function; //slotID:1
+ internal var do_register_BGM:Function; //slotID:2
+
+ f = hug1;
+ do_register_BGM = function():void{ //MethodID:1162, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 138
+ internal var barrier:EventBarrier; //slotID:1
+ internal var succeeded_all:Boolean; //slotID:2
+ internal var BGMVideoIDs:Array; //slotID:3
+ internal var CMVideoIDs:Array; //slotID:4
+ internal var on_result:Function; //slotID:5
+
+ succeeded_all = false;
+ on_result = null;
+ on_result = function(hug1:Boolean, hug2:String):void{ //MethodID:1160, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 19
+ succeeded_all = (succeeded_all && hug1);
+ };
+
+ barrier = new EventBarrier();
+ succeeded_all = true;
+ BGMVideoIDs = __nicosClient.player.BGMVideoIDs;
+
+ __registerBGM.registerBGMVideoIDs(barrier.bind(on_result), __threadID, BGMVideoIDs);
+
+ CMVideoIDs = __nicosClient.player.CMVideoIDs;
+
+ __registerBGM.registerCMVideoIDs(barrier.bind(on_result), __threadID, CMVideoIDs);
+ barrier.finish(function():void{ //MethodID:1161, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 12
+ f(succeeded_all);
+ });
+ };
+
+ this.__saved = true;
+
+ this.__handle.updateOwnerThread(function(hug1:CommentStorageError):void{ //MethodID:1163, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 24
+ if(hug1){
+ f(false);
+
+ return;
+ }
+
+ do_register_BGM();
+ }, this.__comments, this.__nicosClient.player.isNicosThreadRequired);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onTimeMachineDateUpdated(hug1:Boolean, hug2:Date=null):EventResult
+ { //MethodID:1166, LocalCount= 5 , MaxScope= 2, MaxStack= 5, CodeLength= 146
+ internal var goPast:Boolean; //slotID:1
+ internal var when:Date = null; //slotID:2
+
+ goPast = hug1;
+ when = hug2;
+
+ if(goPast){
+ if(this.__when && (this.__when.getTime() == when.getTime())) return EventResult.THROUGH;
+
+ when = new Date(when.time);
+ this.__when = new Date(when.time);
+
+ this.__handle.waybackOwnerThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1165, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 66
+ var hug3:String = null;
+
+ if(__when !== when) return;
+
+ if(hug1){
+ hug3 = (__MSG__("過去ログの取得に失敗:" + hug1.status) + "<br />");
+
+ SystemMessage.instance.informStatusBar(hug3, hug3);
+
+ return;
+ }
+
+ __reflect(when, hug2, null, true);
+ }, int(when.getTime() / 1000));
+ }else{
+ this.__when = null;
+
+ this.__reflect(null, this.__comments, null, true);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsEnabledLeafMode(hug1:Boolean):EventResult
+ { //MethodID:1167, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ private function __reflect(hug1:Date, hug2:Array, hug3:Array=null, hug4:Boolean=false):void
+ { //MethodID:1168, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 50
+ if(this.__when == hug1) onCommentListUpdated.apply(hug2, [], hug4, this.name);
+ }
+
+ public function get leavesNum():String
+ { //MethodID:1169, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return "";
+ }
+
+ public function get threadID():String
+ { //MethodID:1170, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return "";
+ }
+ }
+}
+
+//■script075■
+
+package jp.nicovideo.util.events{
+
+
+ public const event_sender:* = "http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender";//slotID:0
+
+}
+
+//■script076■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.DisplayObject
+ import flash.display.Sprite
+ import flash.events.TimerEvent
+ import flash.media.Video
+ import flash.utils.Timer
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.stream.StreamSource
+ import jp.nicovideo.util.stream.events.StreamErrorEvent
+ import jp.nicovideo.util.stream.events.StreamEvent
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:90
+ public class FLVVideo extends Object implements IChildVideo
+ {
+ //static constructor
+ public static function FLVVideo$cinit()
+ { //MethodID:1175, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function FLVVideo(hug1:String, hug2:Sprite, hug3:Number=-1.0, hug4:Number=0.0, hug5:Number=0.0, hug6:String="http", hug7:String, hug8:String=null)
+ { //MethodID:1176, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 239
+ this.seekInfo = new SeekInfo();
+ this._onVideoEnded = new Functions();
+ this._onVideoSeeked = new Functions();
+ this._onVideoSeekError = new Functions();
+ this._onVideoSeeking = new Functions();
+ this._onVideoPlayed = new Functions();
+ this._onVideoStopped = new Functions();
+ this._onVideoBufferingStarted = new Functions();
+ this.onVideoLengthFixed = new Functions();
+ this._onVideoLoadComplete = new Functions();
+ this._onInitMetaInfo = new Functions();
+ this._onVideoError = new Functions();
+ this._vposWatcher = new Timer(250);
+
+ super();
+
+ this._width = (!hug4 ? hug2.width : hug4);
+ this._height = (!hug5 ? hug2.height : hug5);
+ this._url = hug1;
+ this._fileName = hug7;
+ this._videoLayer = hug2;
+ this._length = hug3;
+ this._protocol = hug6;
+ this._fmsToken = hug8;
+ this._stream = new StreamSource(this._videoLayer);
+ this._stream.length = hug3;
+ this._video = this._stream.video;
+ }
+
+ //variables/etc.
+ private var _stream:StreamSource; //slotID:0
+ private var _url:String; //slotID:0
+ private var _protocol:String; //slotID:0
+ private var _connectURL:String; //slotID:0
+ private var _fileName:String; //slotID:0
+ private var _fmsToken:String; //slotID:0
+ private var _length:Number = 0.0; //slotID:0
+ private var _isLoaded:Boolean = false; //slotID:0
+ private var _video:Video; //slotID:0
+ private var _initialized:Boolean = false; //slotID:0
+ private var seekInfo:SeekInfo; //slotID:0
+ private var _videoLayer:Sprite; //slotID:0
+ private var _isLoop:Boolean; //slotID:0
+ private const _onVideoEnded:Functions; //slotID:0
+ private const _onVideoSeeked:Functions; //slotID:0
+ private const _onVideoSeekError:Functions; //slotID:0
+ private const _onVideoSeeking:Functions; //slotID:0
+ private const _onVideoPlayed:Functions; //slotID:0
+ private const _onVideoStopped:Functions; //slotID:0
+ private const _onVideoBufferingStarted:Functions; //slotID:0
+ public const onVideoLengthFixed:Functions; //slotID:0
+ private const _onVideoLoadComplete:Functions; //slotID:0
+ private const _onInitMetaInfo:Functions; //slotID:0
+ private const _onVideoError:Functions; //slotID:0
+ private var _isLoading:Boolean = false; //slotID:0
+ private var _isPlaying:Boolean = false; //slotID:0
+ private var _isPausing:Boolean = false; //slotID:0
+ private var _isEnd:Boolean = false; //slotID:0
+ private var _isBuffering:Boolean = false; //slotID:0
+ private var _onVideoLoadHandler:Function; //slotID:0
+ private var _vposWatcher:Timer; //slotID:0
+ private var _hasLengthSet:Boolean; //slotID:0
+ private var _width:Number; //slotID:0
+ private var _height:Number; //slotID:0
+
+ public function load(hug1:Function):void
+ { //MethodID:1190, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 252
+ internal var f:Function; //slotID:1
+ internal var _errCode:String; //slotID:2
+ internal var loadCallback:Function; //slotID:3
+
+ _errCode = null;
+ f = hug1;
+ loadCallback = function(hug1:Boolean):void{ //MethodID:1177, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 32
+ if(!hug1){
+ _stream.close();
+ _onVideoError.apply(_errCode);
+ }
+
+ f(hug1);
+ };
+
+ this._stream.addEventListener(StreamEvent.CONNECTED, function(hug1:StreamEvent):void{ //MethodID:1178, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ loadCallback(true);
+ });
+ this._stream.addEventListener(StreamEvent.NET_STATUS, function(hug1:StreamEvent):void{ //MethodID:1179, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 98
+ switch(hug1.info.code){
+ case "NetConnection.Connect.IdleTimeOut":
+ _stream.close();
+ _onVideoError.apply(VideoConstants.ERROR_TIMEOUT);
+
+ return;
+ case "NetConnection.Connect.Closed":
+ return;
+ default:
+ break;
+ }
+ });
+ this._stream.addEventListener(StreamErrorEvent.ERROR, function(hug1:StreamErrorEvent):void{ //MethodID:1181, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 547
+ internal var event:StreamErrorEvent; //slotID:1
+ internal var protocol:String; //slotID:2
+ internal var regExp:RegExp; //slotID:3
+ internal var connectURL:String; //slotID:4
+ internal var timer:Timer; //slotID:5
+
+ protocol = null;
+ regExp = null;
+ connectURL = null;
+ timer = null;
+ event = hug1;
+ _errCode = ((event.info.code + ":") + event.info.description);
+
+ switch(event.info.code){
+ case "NetStream.Seek.InvalidTime":
+ seekInfo.isSeeking = false;
+
+ seek((seekInfo.targetVpos < 100) ? 0 : (seekInfo.targetVpos - 100));
+
+ return;
+ case "NetStream.Play.StreamNotFound":
+ loadCallback(false);
+
+ return;
+ case "NetConnection.Connect.Rejected":
+ switch(event.info.application.message){
+ case "max connected":
+ _errCode = VideoConstants.ERROR_CONNECTION_LIMIT;
+
+ loadCallback(false);
+
+ return;
+ case "connection failed by protocol check":
+ case "connection failed by referrer check":
+ case "connection failed by hash check":
+ case "connection failed by hash generated time":
+ _errCode = VideoConstants.ERROR_AUTHENTICATION;
+
+ loadCallback(false);
+
+ return;
+ default:
+ break;
+ }
+ break;
+ default:
+ break;
+ }
+
+ if(isRTMP(_protocol)){
+ if((_protocol != "rtmpt") && (_protocol != "rtmpte")){
+ protocol = "rtmpt";
+
+ if(_protocol == "rtmpe") protocol = "rtmpte";
+
+ regExp = new RegExp("^(rtmpe|rtmp)");
+ connectURL = _connectURL.replace(regExp, protocol);
+ _protocol = protocol;
+ timer = new Timer(1000, 1);
+
+ timer.addEventListener(TimerEvent.TIMER, function():void{ //MethodID:1180, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 45
+ if(isRTMP(_protocol)){
+ _stream.connect(_url, _fileName, _fmsToken);
+ }else{
+ _stream.connect(_url);
+ }
+ });
+ timer.start();
+
+ return;
+ }
+ }
+ });
+ this._stream.addEventListener(StreamEvent.PLAYED, function(hug1:StreamEvent):void{ //MethodID:1182, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ _isPlaying = true;
+ _isPausing = false;
+
+ _onVideoPlayed.apply();
+ });
+ this._stream.addEventListener(StreamEvent.PAUSED, function(hug1:StreamEvent):void{ //MethodID:1183, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ _isPausing = true;
+
+ _onVideoStopped.apply();
+ });
+ this._stream.addEventListener(StreamEvent.SEEKED, function(hug1:StreamEvent):void{ //MethodID:1184, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ seekInfo.isSeeking = false;
+
+ _onVideoSeeked.apply(this.vpos);
+ });
+ this._stream.addEventListener(StreamEvent.ENDED, function(hug1:StreamEvent):void{ //MethodID:1185, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 63
+ _isPlaying = _isPausing = false;
+ _isEnd = !_isLoop;
+
+ if(vpos >= (length - 2000)){
+ _isEnd = !_isLoop;
+
+ _onVideoEnded.apply(_isLoop);
+ }
+ });
+ this._stream.addEventListener(StreamEvent.SET_LENGTH, function(hug1:StreamEvent):void{ //MethodID:1186, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ _hasLengthSet = true;
+
+ onVideoLengthFixed.apply(this.length);
+ });
+ this._stream.addEventListener(StreamEvent.START_LOAD, function(hug1:StreamEvent):void{ //MethodID:1187, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ _isBuffering = true;
+
+ _onVideoBufferingStarted.apply();
+ });
+ this._stream.addEventListener(StreamEvent.COMPLETE_LOAD, function(hug1:StreamEvent):void{ //MethodID:1188, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 48
+ _isLoaded = true;
+ _isLoading = false;
+ _isBuffering = false;
+
+ _stream.resize(_width, _height);
+ _onVideoLoadComplete.apply(_stream.bytesTotal);
+ });
+ this._stream.addEventListener(StreamEvent.INIT_META_INFO, function(hug1:StreamEvent):void{ //MethodID:1189, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _onInitMetaInfo.apply();
+ });
+
+ if(this.isRTMP(this._protocol)){
+ this._stream.connect(this._url, this._fileName, this._fmsToken);
+ }else{
+ this._stream.connect(this._url);
+ }
+ }
+
+ public function resize(hug1:Number, hug2:Number):void
+ { //MethodID:1191, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 23
+ this._width = hug1;
+ this._height = hug2;
+
+ this._stream.resize(hug1, hug2);
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:1192, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 52
+ if(!this._stream.isConnected) throw new Error("FLVVideo.startToPlay: video has null initialized.");
+
+ if((hug1 < 0) || (hug1 > 1)) return;
+
+ this._stream.volume = hug1;
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:1193, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPlaying;
+ }
+
+ public function get isPausing():Boolean
+ { //MethodID:1194, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPausing;
+ }
+
+ public function get isSeeking():Boolean
+ { //MethodID:1195, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.seekInfo.isSeeking;
+ }
+
+ public function get isEnd():Boolean
+ { //MethodID:1196, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isEnd;
+ }
+
+ public function get isBuffering():Boolean
+ { //MethodID:1197, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isBuffering;
+ }
+
+ public function set isLoop(hug1:Boolean):void
+ { //MethodID:1198, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isLoop = hug1;
+ }
+
+ public function play():void
+ { //MethodID:1199, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._stream.play();
+ }
+
+ public function stop():void
+ { //MethodID:1200, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._stream.pause();
+ }
+
+ public function close():void
+ { //MethodID:1201, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._stream.close();
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:1202, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 83
+ var hug2:Number = NaN;
+ this._isEnd = false;
+
+ if(!this._isLoaded){
+ hug2 = ((this.length / this._stream.bytesTotal) * this._stream.bytesLoaded);
+
+ if(hug2 < hug1) hug1 = hug2;
+ }
+
+ this.seekInfo.isSeeking = true;
+ this.seekInfo.targetVpos = hug1;
+
+ this._onVideoSeeking.apply(hug1);
+ this._stream.seek(hug1);
+ }
+
+ public function get length():Number
+ { //MethodID:1203, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.length;
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:1204, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.loadedLength;
+ }
+
+ public function get vpos():Number
+ { //MethodID:1205, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 31
+ var hug1:Number = this.getVpos();
+
+ if(this.seekInfo.isSeeking) hug1 = this.seekInfo.targetVpos;
+
+ return hug1;
+ }
+
+ private function getVpos():Number
+ { //MethodID:1206, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.vpos;
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:1207, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.isConnected;
+ }
+
+ public function get hasLengthSet():Boolean
+ { //MethodID:1208, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasLengthSet;
+ }
+
+ public function get isControllable():Boolean
+ { //MethodID:1209, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.isConnected;
+ }
+
+ public function get onVideoSeeked():Functions
+ { //MethodID:1210, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoSeeked;
+ }
+
+ public function get onVideoSeeking():Functions
+ { //MethodID:1211, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoSeeking;
+ }
+
+ public function get onVideoEnded():Functions
+ { //MethodID:1212, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoEnded;
+ }
+
+ public function get onVideoPlayed():Functions
+ { //MethodID:1213, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoPlayed;
+ }
+
+ public function get onVideoStopped():Functions
+ { //MethodID:1214, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoStopped;
+ }
+
+ public function get onVideoBufferingStarted():Functions
+ { //MethodID:1215, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoBufferingStarted;
+ }
+
+ public function get onVideoError():Functions
+ { //MethodID:1216, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoError;
+ }
+
+ public function get onVideoLoadComplete():Functions
+ { //MethodID:1217, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoLoadComplete;
+ }
+
+ public function get onInitMetaInfo():Functions
+ { //MethodID:1218, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onInitMetaInfo;
+ }
+
+ public function get videoPlayerStatus():String
+ { //MethodID:1219, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 87
+ if(this._isEnd) return VideoPlayerStatus.END;
+
+ if(this.seekInfo.isSeeking) return VideoPlayerStatus.SEEKING;
+
+ if(this._isPausing) return VideoPlayerStatus.PAUSED;
+
+ if(this._isPlaying) return VideoPlayerStatus.PLAYING;
+
+ if(this._isLoading) return VideoPlayerStatus.LOADING;
+
+ return VideoPlayerStatus.STOPPED;
+ }
+
+ public function get layer():DisplayObject
+ { //MethodID:1220, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayer;
+ }
+
+ public function get source():DisplayObject
+ { //MethodID:1221, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function get contentWidth():int
+ { //MethodID:1222, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ return ((this._video == null) ? 0 : this._video.width);
+ }
+
+ public function get contentHeight():int
+ { //MethodID:1223, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ return ((this._video == null) ? 0 : this._video.height);
+ }
+
+ public function isRTMP(hug1:String):Boolean
+ { //MethodID:1224, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ if((hug1 == "rtmp") || (hug1 == "rtmpe") || (hug1 == "rtmpt") || (hug1 == "rtmpte")) return true;
+
+ return false;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get videoLayer():Sprite
+ { //MethodID:1225, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayer;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get volume():Number
+ { //MethodID:1226, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._stream.volume;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get video():Video
+ { //MethodID:1227, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get isLoop():Boolean
+ { //MethodID:1228, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isLoop;
+ }
+ }
+}
+
+
+//■class(instance)_index:89
+//private
+class SeekInfo extends Object
+{
+ //static constructor
+ public static function SeekInfo$cinit()
+ { //MethodID:1173, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function SeekInfo()
+ { //MethodID:1174, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var isSeeking:Boolean = false; //slotID:0
+ public var targetVpos:Number; //slotID:0
+}
+
+//■script077■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:91
+ public interface IPlayerInfo
+ {
+ //static constructor
+ public static function IPlayerInfo$cinit()
+ { //MethodID:1230, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get ecoExLinkData():Object; //MethodID:1231, dispID:0
+
+ function get noBannerWatchIDList():Array; //MethodID:1232, dispID:0
+
+ function get leafFilter():Array; //MethodID:1233, dispID:0
+
+ function get playlistLimit():int; //MethodID:1234, dispID:0
+
+ function get getThreadError():XMLList; //MethodID:1235, dispID:0
+
+ function get isNoLeadOnSlider():Boolean; //MethodID:1236, dispID:0
+
+ function getDefaultComment(hug1:String):String; //MethodID:1237, dispID:0
+
+ //constructor
+ public function IPlayerInfo(); //MethodID:1238, dispID:0
+ }
+}
+
+//■script078■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import __AS3__.vec.Vector
+ import flash.utils.unescapeMultiByte
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.api.IAPICacheProxy
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:93
+ public class PlayerInfo extends Object implements IPlayerInfo
+ {
+ //static constructor
+ public static function PlayerInfo$cinit()
+ { //MethodID:1244, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlayerInfo(hug1:Function, hug2:IAPICacheProxy)
+ { //MethodID:1248, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 74
+ internal var callback:Function; //slotID:1
+ internal var apiCacheProxy:IAPICacheProxy; //slotID:2
+ internal var defaultIgnoreWhiteSpace:Boolean; //slotID:3
+ internal var onLoadError:Function; //slotID:4
+
+ defaultIgnoreWhiteSpace = false;
+ callback = hug1;
+ apiCacheProxy = hug2;
+ this._noBannerTargets = [];
+ this._leafFilter = [];
+
+ super();
+
+ onLoadError = function():void{ //MethodID:1246, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 35
+ SystemMessage.instance.inform(__MSG__("プレイヤー情報の取得に失敗しました。"));
+ ObjectUtils.callLater(function():void{ //MethodID:1245, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ callback(false);
+ });
+ };
+
+ defaultIgnoreWhiteSpace = XML.ignoreWhitespace;
+ XML.ignoreWhitespace = true;
+
+ apiCacheProxy.load(function(hug1:Boolean, hug2:*):void{ //MethodID:1247, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 108
+ if(!hug1){
+ onLoadError();
+
+ XML.ignoreWhitespace = defaultIgnoreWhiteSpace;
+ return;
+ }
+
+ _playerInfoXML = XML(hug2);
+
+ _initNoBannerTargets();
+ _initLeafFilter();
+ _initPlayStatsCount();
+ _initGetThreadError();
+ _initializePlaylistLimit();
+ _initializeIsNoLoadAdsLiveBanner();
+ _initializeLeadOnSliderFlag();
+ _initializeDefaultComment();
+
+ XML.ignoreWhitespace = defaultIgnoreWhiteSpace;
+
+ callback(true);
+ }, false);
+ }
+
+ //variables/etc.
+ private var _playerInfoXML:XML; //slotID:0
+ private var _noBannerTargets:Array; //slotID:0
+ private var _leafFilter:Array; //slotID:0
+ private var _playStatsCount:int; //slotID:0
+ private var _getThreadError:XMLList = null; //slotID:0
+ private var _playlistLimit:int = 0; //slotID:0
+ private var _defaultCommentTargets:Vector.<_DefaultCommentTarget>;//slotID:0
+ private var _isNoLoadAdsLiveBanner:Boolean = false; //slotID:0
+ private var _isNoLeadOnSlider:Boolean = false; //slotID:0
+
+ public function get ecoExLinkData():Object
+ { //MethodID:1250, LocalCount= 2 , MaxScope= 2, MaxStack= 5, CodeLength= 318
+ internal var obj:Object; //slotID:1
+ internal var xmlCheck:Function; //slotID:2
+ internal var start:Date; //slotID:3
+ internal var end:Date; //slotID:4
+ internal var color:uint; //slotID:5
+
+ start = null;
+ end = null;
+ color = 0;
+ xmlCheck = function(hug1:XML):Boolean{ //MethodID:1249, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 110
+ if(!hug1) return false;
+
+ if(hug1.eco_ex_link == undefined) return false;
+
+ if((hug1.eco_ex_link[0].start == undefined) || (hug1.eco_ex_link[0].end == undefined) || (hug1.eco_ex_link[0].text == undefined) || (hug1.eco_ex_link[0].link == undefined)) return false;
+
+ return true;
+ };
+
+ if(!this._playerInfoXML) return null;
+
+ obj = {};
+
+ if(xmlCheck(this._playerInfoXML)){
+ start = this._getDateFromString(String(this._playerInfoXML.eco_ex_link[0].start));
+ end = this._getDateFromString(String(this._playerInfoXML.eco_ex_link[0].end));
+ color = (this._playerInfoXML.eco_ex_link[0].text.color ? uint(this._playerInfoXML.eco_ex_link[0].text.color) : 0xFFFFFF);
+
+ if((start == null) || (end == null)) return null;
+
+ obj.start = start;
+ obj.end = end;
+ obj.text = String(this._playerInfoXML.eco_ex_link[0].text);
+ obj.color = color;
+ obj.link = unescapeMultiByte(String(this._playerInfoXML.eco_ex_link[0].link));
+ return obj;
+ }else{
+ return null;
+ }
+ }
+
+ private function _getDateFromString(hug1:String):Date
+ { //MethodID:1251, LocalCount= 5 , MaxScope= 1, MaxStack= 7, CodeLength= 70
+ var hug2:RegExp = new RegExp("^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})$");
+ var hug3:Array = hug2.exec(hug1);
+
+ if(!hug3) return null;
+
+ var hug4:Date = new Date(hug3[1], (hug3[2] - 1), hug3[3], hug3[4], hug3[5]);
+ return hug4;
+ }
+
+ private function _initNoBannerTargets():void
+ { //MethodID:1252, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 119
+ var hug1:XML = null;
+ var hug2:String = null;
+
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.no_banner_targets == undefined) return;
+
+ if(this._playerInfoXML.no_banner_targets.watch_id == undefined) return;
+
+ for each(hug1 in this._playerInfoXML.no_banner_targets.watch_id){
+ hug2 = hug1.toString();
+
+ if(StringUtils.isValidVideoID(hug2)) this._noBannerTargets.push(hug2);
+ }
+ }
+
+ private function _initLeafFilter():void
+ { //MethodID:1253, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 107
+ var hug1:XML = null;
+ var hug2:String = null;
+
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.leaf_filter == undefined) return;
+
+ if(this._playerInfoXML.leaf_filter.disable == undefined) return;
+
+ for each(hug1 in this._playerInfoXML.leaf_filter.disable){
+ hug2 = hug1.toString();
+
+ this._leafFilter.push(hug2);
+ }
+ }
+
+ private function _initPlayStatsCount():void
+ { //MethodID:1254, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.playstats_count == undefined) return;
+
+ this._playStatsCount = this._playerInfoXML.playstats_count;
+ }
+
+ private function _initGetThreadError():void
+ { //MethodID:1255, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.get_thread_error == undefined) return;
+
+ this._getThreadError = this._playerInfoXML.get_thread_error;
+ }
+
+ private function _initializePlaylistLimit():void
+ { //MethodID:1256, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 43
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.playlist_limit == undefined) return;
+
+ this._playlistLimit = int(this._playerInfoXML.playlist_limit);
+ }
+
+ private function _initializeIsNoLoadAdsLiveBanner():void
+ { //MethodID:1257, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 41
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.no_load_adslivebanner == undefined) return;
+
+ this._isNoLoadAdsLiveBanner = (this._playerInfoXML.no_load_adslivebanner == 1);
+ }
+
+ private function _initializeLeadOnSliderFlag():void
+ { //MethodID:1258, LocalCount= 11 , MaxScope= 1, MaxStack= 4, CodeLength= 491
+ var hug1:Array = null;
+ var hug2:int = 0;
+ var hug3:String = null;
+ var hug4:int = 0;
+ var hug5:Number = NaN;
+ var hug6:Array = null;
+ var hug7:Array = null;
+ var hug8:Array = null;
+ var hug9:Date = null;
+ var hug10:Date = null;
+
+ if(!this._playerInfoXML || (this._playerInfoXML.no_lead_on_slider == undefined) || (this._playerInfoXML.no_lead_on_slider != 1)){
+ this._isNoLeadOnSlider = false;
+ return;
+ }
+
+ if((this._playerInfoXML.no_lead_on_slider.d == undefined) && (this._playerInfoXML.no_lead_on_slider.t == undefined)){
+ this._isNoLeadOnSlider = true;
+ return;
+ }
+
+ if(this._playerInfoXML.no_lead_on_slider.d != undefined){
+ hug1 = String(this._playerInfoXML.no_lead_on_slider.d).split(",");
+ hug2 = hug1.length;
+ hug3 = TimeUtils.now().day.toString();
+ hug4 = 0;
+
+ while(hug4 < hug2){
+ if(String(hug1[hug4]) == hug3){
+ this._isNoLeadOnSlider = true;
+ return;
+ }
+
+ hug4++;
+ }
+ }
+
+ if(this._playerInfoXML.no_lead_on_slider.t != undefined){
+ hug5 = TimeUtils.time;
+ hug6 = String(this._playerInfoXML.no_lead_on_slider.t).split("-");
+ hug7 = hug6[0].split(":");
+ hug8 = hug6[1].split(":");
+ hug9 = new Date(hug5);
+ hug10 = new Date(hug5);
+ hug9.hours = Number(hug7[0]);
+ hug9.minutes = Number(hug7[1]);
+ hug10.hours = Number(hug8[0]);
+ hug10.minutes = Number(hug8[1]);
+
+ if(hug9 < hug10){
+ this._isNoLeadOnSlider = ((hug5 >= hug9.time) && (hug5 <= hug10.time));
+ }else if(hug9 > hug10){
+ this._isNoLeadOnSlider = ((hug5 >= hug9.time) || (hug5 <= hug10.time));
+ }
+ }
+ }
+
+ private function _initializeDefaultComment():void
+ { //MethodID:1259, LocalCount= 9 , MaxScope= 1, MaxStack= 4, CodeLength= 281
+ var hug1:XML = null;
+ var hug2:String = null;
+ var hug3:Vector.<String> = null;
+ var hug4:XML = null;
+ this._defaultCommentTargets = new Vector.<_DefaultCommentTarget>();
+
+ if(!this._playerInfoXML) return;
+
+ if(this._playerInfoXML.default_comment_targets == undefined) return;
+
+ if(this._playerInfoXML.default_comment_targets.target == undefined) return;
+
+ for each(hug1 in this._playerInfoXML.default_comment_targets.target){
+ if((hug1.comment == undefined) || (hug1.watch_id == undefined)){
+ }else{
+ hug2 = hug1.comment.toString();
+ hug3 = new Vector.<String>();
+
+ for each(hug4 in hug1.watch_id){
+ if(StringUtils.isValidVideoID(hug4.toString())) hug3.push(hug4.toString());
+ }
+
+ if((hug2 != null) && (hug2 != "") && (hug3.length > 0)) this._defaultCommentTargets.push(new _DefaultCommentTarget(hug2, hug3));
+ }
+ }
+ }
+
+ public function getDefaultComment(hug1:String):String
+ { //MethodID:1260, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 67
+ var hug2:_DefaultCommentTarget = null;
+
+ for each(hug2 in this._defaultCommentTargets){
+ if(hug2.watchIDList.indexOf(hug1) < 0){
+ }else{
+ return hug2.comment;
+ }
+ }
+
+ return null;
+ }
+
+ public function get noBannerWatchIDList():Array
+ { //MethodID:1261, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noBannerTargets;
+ }
+
+ public function get playStatsCount():int
+ { //MethodID:1262, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playStatsCount;
+ }
+
+ public function get getThreadError():XMLList
+ { //MethodID:1263, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._getThreadError;
+ }
+
+ public function get leafFilter():Array
+ { //MethodID:1264, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._leafFilter;
+ }
+
+ public function get playlistLimit():int
+ { //MethodID:1265, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistLimit;
+ }
+
+ public function get isNoLoadAdsLiveBanner():Boolean
+ { //MethodID:1266, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoLoadAdsLiveBanner;
+ }
+
+ public function get isNoLeadOnSlider():Boolean
+ { //MethodID:1267, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoLeadOnSlider;
+ }
+ }
+}
+
+import __AS3__.vec.Vector
+
+//■class(instance)_index:92
+//private
+class _DefaultCommentTarget extends Object
+{
+ //static constructor
+ public static function _DefaultCommentTarget$cinit()
+ { //MethodID:1240, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _DefaultCommentTarget(hug1:String, hug2:Vector.<String>)
+ { //MethodID:1241, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._defaultComment = hug1;
+ this._watchIDList = hug2;
+ }
+
+ //variables/etc.
+ private var _defaultComment:String; //slotID:0
+ private var _watchIDList:Vector.<String>; //slotID:0
+
+ public function get comment():String
+ { //MethodID:1242, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._defaultComment;
+ }
+
+ public function get watchIDList():Vector.<String>
+ { //MethodID:1243, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchIDList;
+ }
+}
+
+//■script079■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.nicoplayer.models.api.IJumper
+ import jp.nicovideo.nicoplayer.models.api.Jumper
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+
+ //■class(instance)_index:94
+ public class StartVposConfig extends Object
+ {
+ //static constructor
+ public static function StartVposConfig$cinit()
+ { //MethodID:1269, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 18
+ PERMISSIBLE_JUMPING_DELAY = ((2 * 60) * 1000);
+ }
+
+ //static variables/etc.
+ private static const PERMISSIBLE_JUMPING_DELAY:Number = 0x1D4C0;//slotID:1
+
+ //constructor
+ public function StartVposConfig(hug1:IJumper, hug2:NicoFlashVars)
+ { //MethodID:1270, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._jumper = hug1;
+ this._flashVars = hug2;
+
+ this._initialize();
+ }
+
+ //variables/etc.
+ private var _fromMsec:Number; //slotID:0
+ private var _type:String; //slotID:0
+ private var _isHalfway:Boolean = false; //slotID:0
+ private var _isAutoPlay:Boolean = false; //slotID:0
+ private var _flashVars:NicoFlashVars; //slotID:0
+ private var _jumper:IJumper; //slotID:0
+ private var _video:IVideo; //slotID:0
+
+ private function _initialize():void
+ { //MethodID:1272, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 409
+ internal var vposKey:String; //slotID:1
+ internal var dateKey:String; //slotID:2
+ internal var __flushJumperObj:Function; //slotID:3
+ internal var clicked:Number; //slotID:4
+ internal var now:Number; //slotID:5
+
+ vposKey = null;
+ dateKey = null;
+ clicked = NaN;
+ now = NaN;
+ __flushJumperObj = function():void{ //MethodID:1271, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 80
+ if(_jumper && _jumper.tossedObject){
+ if(_jumper.tossedObject[vposKey]) _jumper.tossedObject[vposKey] = null;
+
+ if(_jumper.tossedObject[dateKey]) _jumper.tossedObject[dateKey] = null;
+ }
+ };
+
+ this._cleanFlags();
+
+ vposKey = Jumper.KEY_OF_PLAY_FROM_VPOS_SEC;
+ dateKey = Jumper.KEY_OF_PLAY_FROM_CLICKED_DATE;
+ this._fromMsec = -1;
+
+ if(this._jumper.tossedObject){
+ if(this._jumper.tossedObject[vposKey]){
+ if(this._jumper.tossedObject[dateKey]){
+ clicked = this._jumper.tossedObject[dateKey];
+ now = new Date().getTime();
+
+ if((clicked < now) && (now < (clicked + PERMISSIBLE_JUMPING_DELAY))){
+ this._fromMsec = (this._jumper.tossedObject[vposKey] * 1000);
+ this._type = StartVposType.EXT;
+ this._isAutoPlay = Boolean(this._jumper.tossedObject[Jumper.KEY_OF_PLAY_FROM_IS_AUTO_PLAY]);
+ }else{
+ __flushJumperObj();
+ }
+ }else{
+ __flushJumperObj();
+ }
+ }else if(this._jumper.tossedObject.jumpFrom && this._flashVars.watchFlashVars){
+ this._fromMsec = (this._flashVars.watchFlashVars.jumpVPosPlayFrom * 1000);
+ this._isAutoPlay = true;
+ this._type = StartVposType.ATJUMP;
+ }
+ }else if(this._flashVars.watchFlashVars && (this._flashVars.watchFlashVars.jumpVPosPlayFrom > 0)){
+ this._fromMsec = (this._flashVars.watchFlashVars.jumpVPosPlayFrom * 1000);
+ this._isAutoPlay = false;
+ this._type = StartVposType.URL;
+ }
+
+ this._isHalfway = (0 < this._fromMsec);
+ }
+
+ private function _cleanFlags():void
+ { //MethodID:1273, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this._isHalfway = false;
+ this._isAutoPlay = false;
+ this._type = null;
+ this._fromMsec = -1;
+ }
+
+ public function judgebyVideoLength(hug1:IVideo):void
+ { //MethodID:1274, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 54
+ if(!hug1) return;
+
+ this._video = hug1;
+ this._isHalfway = (this._isHalfway && (this._fromMsec < this._video.length));
+
+ if(!this._isHalfway) this._cleanFlags();
+ }
+
+ public function get fromMsec():Number
+ { //MethodID:1275, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._fromMsec;
+ }
+
+ public function get halfwayStartEnabled():Boolean
+ { //MethodID:1276, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isHalfway;
+ }
+
+ public function get isAutoPlay():Boolean
+ { //MethodID:1277, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAutoPlay;
+ }
+
+ public function get type():String
+ { //MethodID:1278, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._type;
+ }
+ }
+}
+
+//■script080■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:95
+ public interface IGetFLV
+ {
+ //static constructor
+ public static function IGetFLV$cinit()
+ { //MethodID:1280, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get threadID():String; //MethodID:1281, dispID:0
+
+ function get videoLength():Number; //MethodID:1282, dispID:0
+
+ function get videoURL():String; //MethodID:1283, dispID:0
+
+ function get videoProtocol():String; //MethodID:1284, dispID:0
+
+ function get videoFileName():String; //MethodID:1285, dispID:0
+
+ function get smilevideoLink():String; //MethodID:1286, dispID:0
+
+ function get messageServerURL():String; //MethodID:1287, dispID:0
+
+ function get accessTimestamp():uint; //MethodID:1288, dispID:0
+
+ function get closed():Boolean; //MethodID:1289, dispID:0
+
+ function get optionalThreadID():String; //MethodID:1290, dispID:0
+
+ function get commentExpire():Boolean; //MethodID:1291, dispID:0
+
+ function get nicoSThreadID():String; //MethodID:1292, dispID:0
+
+ function get isAS3():Boolean; //MethodID:1293, dispID:0
+
+ function get channelFilter():String; //MethodID:1294, dispID:0
+
+ function get ownerFilter():String; //MethodID:1295, dispID:0
+
+ function get fmsToken():String; //MethodID:1296, dispID:0
+
+ function get deleted():uint; //MethodID:1297, dispID:0
+
+ //constructor
+ public function IGetFLV(); //MethodID:1298, dispID:0
+ }
+}
+
+//■script081■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import com.adobe.serialization.json.JSON
+ import flash.net.URLVariables
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:96
+ public class GetFLV extends Object implements IGetFLV
+ {
+ //static constructor
+ public static function GetFLV$cinit()
+ { //MethodID:1300, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function GetFLV(hug1:String, hug2:Object=null, hug3:Function=null)
+ { //MethodID:1301, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 34
+ super();
+
+ this._apiURL = hug1;
+
+ if(hug2 && (hug3 != null)) this.getInfo(hug2, hug3);
+ }
+
+ //variables/etc.
+ private var _apiURL:String; //slotID:0
+ private var _messageServerURL:String; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _optionalThreadID:String; //slotID:0
+ private var _nicoSThreadID:String; //slotID:0
+ private var _smilevideoLink:String; //slotID:0
+ private var _videoURL:String = ""; //slotID:0
+ private var _videoProtocol:String = ""; //slotID:0
+ private var _videoFileName:String = ""; //slotID:0
+ private var _videoLength:Number; //slotID:0
+ private var _accessTimestamp:uint = 0; //slotID:0
+ private var _deleted:uint; //slotID:0
+ private var _fmsToken:String; //slotID:0
+ private var _ownerFilter:String = ""; //slotID:0
+ private var _channelFilter:String; //slotID:0
+ private var _initializeInfo:InitializeInfo; //slotID:0
+ private var _closed:Boolean = false; //slotID:0
+ private var _commentExpire:Boolean = true; //slotID:0
+ private var _isAS3:Boolean = false; //slotID:0
+ private var _hirobaHost:String; //slotID:0
+ private var _hirobaPort:uint; //slotID:0
+ private var _hirobaThreadID:String; //slotID:0
+ private var _hirobaThreadKey:String; //slotID:0
+
+ public function getInfo(hug1:Object, hug2:Function):void
+ { //MethodID:1303, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 35
+ internal var apiParam:Object; //slotID:1
+ internal var callbackFunc:Function; //slotID:2
+
+ apiParam = hug1;
+ callbackFunc = hug2;
+
+ HTTPUtils.sendPostData(function(hug1:URLVariables):void{ //MethodID:1302, LocalCount= 4 , MaxScope= 0, MaxStack= 10, CodeLength= 649
+ var hug3:Object = null;
+
+ if(!hug1 || hug1.error){
+ callbackFunc(false);
+
+ return;
+ }
+
+ _threadID = hug1.thread_id;
+ _videoLength = (hug1.l * 1000);
+ _videoURL = hug1.url;
+ _hirobaHost = (hug1.hms ? hug1.hms : null);
+ _hirobaPort = hug1.hmsp;
+ _hirobaThreadID = (hug1.hmst ? hug1.hmst : null);
+ _hirobaThreadKey = hug1.hmstk;
+ var hug2:Object = StringUtils.parseURL(_videoURL);
+ _videoProtocol = hug2.protocol;
+
+ if((_videoProtocol == "rtmp") || (_videoProtocol == "rtmpe") || (_videoProtocol == "rtmpt") || (_videoProtocol == "rtmpte")){
+ _videoURL = (_videoProtocol + "://" + hug2.host + hug2.directory + hug2.file);
+ hug3 = hug2.queryObject;
+
+ if(hug3.m != null){
+ _videoFileName = hug3.m;
+ }else if(hug3.v != null){
+ _videoFileName = hug3.v;
+ }else if(hug3.s != null){
+ _videoFileName = hug3.s;
+ }else{
+ callbackFunc(false);
+
+ return;
+ }
+ }
+
+ _fmsToken = hug1.fmst;
+ _smilevideoLink = hug1.link;
+ _messageServerURL = hug1.ms;
+ _accessTimestamp = hug1.time;
+ TimeUtils.time = (_accessTimestamp * 1000);
+
+ if(hug1.closed) _closed = Boolean(parseInt(hug1.closed, 10));
+
+ if(hug1.ng_up) _ownerFilter = hug1.ng_up;
+
+ if(hug1.ce) _commentExpire = ((hug1.ce == 0) ? false : true);
+
+ if(hug1.nicos_id) _nicoSThreadID = hug1.nicos_id;
+
+ if(hug1.optional_thread_id) _optionalThreadID = hug1.optional_thread_id;
+
+ if(hug1.as3) _isAS3 = (hug1.as3 == "1");
+
+ if(hug1.ng_ch) _channelFilter = hug1.ng_ch;
+
+ if(hug1.deleted) _deleted = parseInt(hug1.deleted);
+
+ _initializeInfo = InitializeInfo.init(hug1.user_id, hug1.nickname, (hug1.is_premium == "1"), parseInt(hug1.ng_rv, 10), (hug1.ng_maintenance == "1"), hug1.feedrev, ((hug1.rpu != null) ? JSON.decode(hug1.rpu) : null));
+
+ callbackFunc(true);
+ }, this._apiURL, apiParam);
+ }
+
+ public function get threadID():String
+ { //MethodID:1304, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ public function get videoLength():Number
+ { //MethodID:1305, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLength;
+ }
+
+ public function get videoURL():String
+ { //MethodID:1306, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoURL;
+ }
+
+ public function get fmsToken():String
+ { //MethodID:1307, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._fmsToken;
+ }
+
+ public function get smilevideoLink():String
+ { //MethodID:1308, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._smilevideoLink;
+ }
+
+ public function get messageServerURL():String
+ { //MethodID:1309, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._messageServerURL;
+ }
+
+ public function get accessTimestamp():uint
+ { //MethodID:1310, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._accessTimestamp;
+ }
+
+ public function get closed():Boolean
+ { //MethodID:1311, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._closed;
+ }
+
+ public function get ownerFilter():String
+ { //MethodID:1312, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ownerFilter;
+ }
+
+ public function get commentExpire():Boolean
+ { //MethodID:1313, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentExpire;
+ }
+
+ public function get nicoSThreadID():String
+ { //MethodID:1314, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoSThreadID;
+ }
+
+ public function get optionalThreadID():String
+ { //MethodID:1315, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._optionalThreadID;
+ }
+
+ public function get isAS3():Boolean
+ { //MethodID:1316, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAS3;
+ }
+
+ public function get videoProtocol():String
+ { //MethodID:1317, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoProtocol;
+ }
+
+ public function get videoFileName():String
+ { //MethodID:1318, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoFileName;
+ }
+
+ public function get channelFilter():String
+ { //MethodID:1319, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelFilter;
+ }
+
+ public function get deleted():uint
+ { //MethodID:1320, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deleted;
+ }
+
+ public function get hirobaHost():String
+ { //MethodID:1321, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaHost;
+ }
+
+ public function get hirobaPort():uint
+ { //MethodID:1322, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaPort;
+ }
+
+ public function get hirobaThreadID():String
+ { //MethodID:1323, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaThreadID;
+ }
+
+ public function get hirobaThreadKey():String
+ { //MethodID:1324, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaThreadKey;
+ }
+ }
+}
+
+//■script082■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:97
+ public interface IJumper
+ {
+ //static constructor
+ public static function IJumper$cinit()
+ { //MethodID:1326, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get tossedObject():Object; //MethodID:1327, dispID:0
+
+ function jump(hug1:String, hug2:Object, hug3:Boolean=false, hug4:Object=null):void;//MethodID:1328, dispID:0
+
+ //constructor
+ public function IJumper(); //MethodID:1329, dispID:0
+ }
+}
+
+//■script083■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import flash.net.URLRequest
+ import flash.net.navigateToURL
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.external.JSConnector
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:98
+ public class Jumper extends Object implements IJumper
+ {
+ //static constructor
+ public static function Jumper$cinit()
+ { //MethodID:1331, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 70
+ KEY_OF_PLAY_FROM_VPOS_SEC = "play_from_vpos_sec";
+ KEY_OF_PLAY_FROM_CLICKED_DATE = "play_from_clicked_date";
+ KEY_OF_PLAY_FROM_IS_AUTO_PLAY = "play_from_and_auto_play";
+ __SO_NAME = "jp.nicovideo.nicoplayer.api.Jumper";
+ __TOSS_EXPIRES = (1000 * 60 * 3);
+ __sharedObj = CrossSharedObject.getStorage(__SO_NAME);
+ }
+
+ //static variables/etc.
+ public static const KEY_OF_PLAY_FROM_VPOS_SEC:String = "play_from_vpos_sec";//slotID:1
+ public static const KEY_OF_PLAY_FROM_CLICKED_DATE:String = "play_from_clicked_date";//slotID:2
+ public static const KEY_OF_PLAY_FROM_IS_AUTO_PLAY:String = "play_from_and_auto_play";//slotID:3
+ private static const __SO_NAME:String = "jp.nicovideo.nicoplayer.api.Jumper";//slotID:4
+ private static const __TOSS_EXPIRES:int = 0x2BF20; //slotID:5
+ private static var __sharedObj:LocalStorage; //slotID:6
+
+ //constructor
+ public function Jumper(hug1:NicoConfig, hug2:String)
+ { //MethodID:1332, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 34
+ this.__JUMP_WINDOW_ID = ("UNK_" + this.__getCurrentTimeMillis());
+
+ super();
+
+ this.__cfg = hug1;
+ this.__videoID = hug2;
+
+ this.__initialize();
+ }
+
+ //variables/etc.
+ private var __cfg:NicoConfig; //slotID:0
+ private var __tossedObject:Object; //slotID:0
+ private var __videoID:String; //slotID:0
+ private var __JUMP_WINDOW_ID:String; //slotID:0
+
+ private function __initialize():void
+ { //MethodID:1333, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 118
+ var hug1:Object = null;
+
+ if(!__sharedObj) throw new Error("Jumper: SharedObject.getLocal failed.");
+
+ if("tossedObjects" in __sharedObj.data){
+ this.__sweepExpiredTossedObjects();
+
+ hug1 = __sharedObj.data.tossedObjects[this.__videoID];
+
+ if(hug1){
+ this.__tossedObject = hug1.obj;
+
+ delete __sharedObj.data.tossedObjects[this.__videoID];
+ __sharedObj.flush();
+
+ if(hug1.focus) JSConnector.call("window.focus");
+ }
+ }
+ }
+
+ public function get tossedObject():Object
+ { //MethodID:1334, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__tossedObject;
+ }
+
+ public function jump(hug1:String, hug2:Object, hug3:Boolean=false, hug4:Object=null):void
+ { //MethodID:1335, LocalCount= 6 , MaxScope= 1, MaxStack= 8, CodeLength= 163
+ __sharedObj.data.tossedObjects = (__sharedObj.data.tossedObjects || {});
+ __sharedObj.data.tossedObjects[hug1] = {obj:hug4, time:this.__getCurrentTimeMillis(), focus:hug3};
+
+ __sharedObj.flush();
+
+ hug2.p = (new RegExp("^\d{10}$").test(hug1) ? ("watch/" + hug1) : hug1);
+ var hug5:String = StringUtils.joinQuery(this.__cfg.REDIRECTOR_URL, hug2);
+
+ if(hug3){
+ navigateToURL(new URLRequest(hug5), "_blank");
+ }else{
+ navigateToURL(new URLRequest(hug5), "_self");
+ }
+ }
+
+ private function __getCurrentTimeMillis():Number
+ { //MethodID:1336, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 12
+ return new Date().getTime();
+ }
+
+ private function __sweepExpiredTossedObjects():void
+ { //MethodID:1337, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 89
+ var hug2:String = null;
+ var hug1:Number = this.__getCurrentTimeMillis();
+
+ for(hug2 in __sharedObj.data.tossedObjects){
+ if(__TOSS_EXPIRES < (hug1 - __sharedObj.data.tossedObjects[hug2].time)) delete __sharedObj.data.tossedObjects[hug2];
+ }
+ }
+ }
+}
+
+//■script084■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:99
+ public interface IPlayerVersion
+ {
+ //static constructor
+ public static function IPlayerVersion$cinit()
+ { //MethodID:1339, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get nicoplayer():String; //MethodID:1340, dispID:0
+
+ function get nicoscriptPlayer():String; //MethodID:1341, dispID:0
+
+ function get nicoplayerTemplate():String; //MethodID:1342, dispID:0
+
+ function get nicoplayerViewController():String; //MethodID:1343, dispID:0
+
+ function get hirobaMovie():String; //MethodID:1344, dispID:0
+
+ function get userSponsorMovie():String; //MethodID:1345, dispID:0
+
+ function get thumbplayerView():String; //MethodID:1346, dispID:0
+
+ function get thumbplayerController():String; //MethodID:1347, dispID:0
+
+ function get marqueePlayer():String; //MethodID:1348, dispID:0
+
+ function get updatedLogs():Array; //MethodID:1349, dispID:0
+
+ function get hirobaconnector():String; //MethodID:1350, dispID:0
+
+ function get videoMenu():String; //MethodID:1351, dispID:0
+
+ function get videoEnder():String; //MethodID:1352, dispID:0
+
+ function get jsconnector():String; //MethodID:1353, dispID:0
+
+ function get remoconAlert():String; //MethodID:1354, dispID:0
+
+ //constructor
+ public function IPlayerVersion(); //MethodID:1355, dispID:0
+ }
+}
+
+//■script085■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.api.IAPICacheProxy
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:100
+ public class PlayerVersion extends Object implements IPlayerVersion
+ {
+ //static constructor
+ public static function PlayerVersion$cinit()
+ { //MethodID:1357, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ SO_PLAYERVERSION = "jp.nicovideo.nicoplayer.models.playerVersion";
+ }
+
+ //static variables/etc.
+ public static const SO_PLAYERVERSION:String = "jp.nicovideo.nicoplayer.models.playerVersion";//slotID:1
+
+ //constructor
+ public function PlayerVersion(hug1:Function, hug2:IAPICacheProxy)
+ { //MethodID:1362, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 77
+ internal var callback:Function; //slotID:1
+ internal var apiCacheProxy:IAPICacheProxy; //slotID:2
+ internal var defaultIgnoreWhiteSpace:Boolean; //slotID:3
+ internal var onLoadError:Function; //slotID:4
+ internal var setLogDateFormat:Function; //slotID:5
+
+ defaultIgnoreWhiteSpace = false;
+ callback = hug1;
+ apiCacheProxy = hug2;
+ this._updatedLogs = [];
+
+ super();
+
+ onLoadError = function():void{ //MethodID:1359, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 35
+ SystemMessage.instance.inform(__MSG__("プレイヤー情報の取得に失敗しました。"));
+ ObjectUtils.callLater(function():void{ //MethodID:1358, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ callback(false);
+ });
+ };
+
+ setLogDateFormat = function(hug1:String):String{ //MethodID:1360, LocalCount= 2 , MaxScope= 0, MaxStack= 8, CodeLength= 47
+ return StringUtils.sprintf("%02d/%02d %02d:%02d", hug1.substr(4, 2), hug1.substr(6, 2), hug1.substr(8, 2), hug1.substr(10, 2));
+ };
+
+ defaultIgnoreWhiteSpace = XML.ignoreWhitespace;
+ XML.ignoreWhitespace = true;
+
+ apiCacheProxy.load(function(hug1:Boolean, hug2:*):void{ //MethodID:1361, LocalCount= 7 , MaxScope= 0, MaxStack= 3, CodeLength= 365
+ var hug4:XML = null;
+
+ if(!hug1){
+ onLoadError();
+
+ XML.ignoreWhitespace = defaultIgnoreWhiteSpace;
+ return;
+ }
+
+ var hug3:XML = XML(hug2);
+ _nicoplayer = hug3.swf.nicoplayer;
+ _nicoscriptPlayer = hug3.swf.nicoscript_player;
+ _nicoplayerTemplate = hug3.swf.nicoplayer_template;
+ _nicoplayerViewController = hug3.swf.nicoplayer_view_controller;
+ _hirobaMovie = hug3.swf.hiroba_movie;
+ _userSponsorMovie = hug3.swf.user_sponsor_movie;
+ _marqueePlayer = hug3.swf.marquee_player;
+ _thumbplayerView = hug3.swf.thumbplayer_view;
+ _thumbplayerController = hug3.swf.thumbplayer_controller;
+ _hirobaconnector = hug3.swf.hirobaconnector;
+ _larquee = hug3.swf.larquee;
+ _videoMenu = hug3.swf.video_menu;
+ _videoEnder = hug3.swf.video_ender;
+ _pluginloader = hug3.swf.pluginloader;
+ _crossSharedObject = hug3.swf.cross_sharedobject;
+ _applibar = hug3.swf.applibar;
+ _jsconnector = hug3.swf.jsconnector;
+ _remoconAlert = hug3.swf.remocon_alert;
+ _updatedLogs = [];
+
+ for each(hug4 in hug3.updated_logs.log){
+ _updatedLogs.push((setLogDateFormat(hug4.@date) + " ") + hug4.valueOf());
+ }
+
+ XML.ignoreWhitespace = defaultIgnoreWhiteSpace;
+
+ callback(true);
+ }, false);
+ }
+
+ //variables/etc.
+ private var _nicoplayer:String; //slotID:0
+ private var _nicoscriptPlayer:String; //slotID:0
+ private var _nicoplayerTemplate:String; //slotID:0
+ private var _nicoplayerViewController:String; //slotID:0
+ private var _hirobaMovie:String; //slotID:0
+ private var _userSponsorMovie:String; //slotID:0
+ private var _thumbplayerView:String; //slotID:0
+ private var _thumbplayerController:String; //slotID:0
+ private var _marqueePlayer:String; //slotID:0
+ private var _hirobaconnector:String; //slotID:0
+ private var _larquee:String; //slotID:0
+ private var _videoMenu:String; //slotID:0
+ private var _videoEnder:String; //slotID:0
+ private var _pluginloader:String; //slotID:0
+ private var _crossSharedObject:String; //slotID:0
+ private var _applibar:String; //slotID:0
+ private var _jsconnector:String; //slotID:0
+ private var _remoconAlert:String; //slotID:0
+ private var _updatedLogs:Array; //slotID:0
+
+ public function get nicoplayer():String
+ { //MethodID:1363, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoplayer;
+ }
+
+ public function get nicoplayerViewController():String
+ { //MethodID:1364, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoplayerViewController;
+ }
+
+ public function get nicoscriptPlayer():String
+ { //MethodID:1365, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoscriptPlayer;
+ }
+
+ public function get nicoplayerTemplate():String
+ { //MethodID:1366, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoplayerTemplate;
+ }
+
+ public function get hirobaMovie():String
+ { //MethodID:1367, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaMovie;
+ }
+
+ public function get userSponsorMovie():String
+ { //MethodID:1368, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userSponsorMovie;
+ }
+
+ public function get thumbplayerView():String
+ { //MethodID:1369, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbplayerView;
+ }
+
+ public function get thumbplayerController():String
+ { //MethodID:1370, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbplayerController;
+ }
+
+ public function get marqueePlayer():String
+ { //MethodID:1371, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueePlayer;
+ }
+
+ public function get updatedLogs():Array
+ { //MethodID:1372, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._updatedLogs;
+ }
+
+ public function get hirobaconnector():String
+ { //MethodID:1373, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaconnector;
+ }
+
+ public function get larquee():String
+ { //MethodID:1374, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._larquee;
+ }
+
+ public function get videoMenu():String
+ { //MethodID:1375, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoMenu;
+ }
+
+ public function get videoEnder():String
+ { //MethodID:1376, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoEnder;
+ }
+
+ public function get crossSharedObject():String
+ { //MethodID:1377, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._crossSharedObject;
+ }
+
+ public function get pluginloader():String
+ { //MethodID:1378, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._pluginloader;
+ }
+
+ public function get applibar():String
+ { //MethodID:1379, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._applibar;
+ }
+
+ public function get jsconnector():String
+ { //MethodID:1380, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jsconnector;
+ }
+
+ public function get remoconAlert():String
+ { //MethodID:1381, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._remoconAlert;
+ }
+ }
+}
+
+//■script086■
+
+package jp.nicovideo.hiroba.events{
+
+ //■class(instance)_index:101
+ public class HirobaEventReferer extends Object
+ {
+ //static constructor
+ public static function HirobaEventReferer$cinit()
+ { //MethodID:1383, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ NICO_PLAYER = "nicoPlayer";
+ HIROBA_AGENT = "hirobaAgent";
+ LOCAL_CONNECTION = "localConnection";
+ MESSAGE_SERVER = "messageServer";
+ }
+
+ //static variables/etc.
+ public static const NICO_PLAYER:String = "nicoPlayer"; //slotID:1
+ public static const HIROBA_AGENT:String = "hirobaAgent"; //slotID:2
+ public static const LOCAL_CONNECTION:String = "localConnection";//slotID:3
+ public static const MESSAGE_SERVER:String = "messageServer"; //slotID:4
+
+ //constructor
+ public function HirobaEventReferer()
+ { //MethodID:1384, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script087■
+
+package jp.nicovideo.nicoplayer.hiroba{
+
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:102
+ public interface IHirobaPlayer
+ {
+ //static constructor
+ public static function IHirobaPlayer$cinit()
+ { //MethodID:1386, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get onClickedLink():Functions; //MethodID:1387, dispID:0
+
+ function inializeView(hug1:Sprite):void; //MethodID:1388, dispID:0
+
+ function get visible():Boolean; //MethodID:1389, dispID:0
+
+ function post(hug1:IComment):void; //MethodID:1390, dispID:0
+
+ function postSystemMessage(hug1:IComment):void; //MethodID:1391, dispID:0
+
+ function updateVisible(hug1:Boolean):void; //MethodID:1392, dispID:0
+
+ function get optionalCommentVisible():Boolean; //MethodID:1393, dispID:0
+
+ function set optionalCommentVisible(hug1:Boolean):void; //MethodID:1394, dispID:0
+
+ //constructor
+ public function IHirobaPlayer(); //MethodID:1395, dispID:0
+ }
+}
+
+//■script088■
+
+package jp.nicovideo.nicoplayer.hiroba{
+
+ import flash.display.Sprite
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.hiroba.IHirobaConnector
+ import jp.nicovideo.hiroba.events.HirobaErrorEvent
+ import jp.nicovideo.hiroba.events.HirobaEvent
+ import jp.nicovideo.hiroba.models.IHirobaComment
+ import jp.nicovideo.marquee.models.info.IMarqueeInfo
+ import jp.nicovideo.nicoplayer.hiroba.models.HirobaComment
+ import jp.nicovideo.nicoplayer.hiroba.view.HirobaCommentListName
+ import jp.nicovideo.nicoplayer.hiroba.view.HirobaCommentPlayer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_receiver
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+ import jp.nicovideo.util.storage.LocalStorage
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:103
+ public class HirobaPlayer extends Object
+ implements EventSender, IHirobaPlayer
+ {
+ //static constructor
+ public static function HirobaPlayer$cinit()
+ { //MethodID:1397, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HirobaPlayer(hug1:IPlayerConfig, hug2:Boolean)
+ { //MethodID:1398, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 111
+ this.onHirobaPlayerInitialized = new Functions();
+ this.onHirobaPlayerVisibleUpdated = new Functions();
+ this.onHirobaPlayerOptionalCommentVisibleUpdated = new Functions();
+ this.onHirobaPlayerError = new Functions();
+ this._onClickedLink = new Functions();
+ this._so = CrossSharedObject.getStorage("jp.nicovideo.nicoplayer.hiroba.HirobaPlayer");
+
+ super();
+
+ this._playerConfig = hug1;
+ this._isPremium = hug2;
+
+ if(this._so.data.optionalCommentVisible == undefined){
+ this._so.data.optionalCommentVisible = true;
+
+ this._so.flush();
+ }
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onHirobaPlayerInitialized:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onHirobaPlayerVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onHirobaPlayerOptionalCommentVisibleUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onHirobaPlayerError:Functions;//slotID:0
+ private const _onClickedLink:Functions; //slotID:0
+ private var _so:LocalStorage; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _activeNicowari:IMarqueeInfo; //slotID:0
+ private var _isInitialized:Boolean = false; //slotID:0
+ private var _visible:Boolean = false; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _isNicowariFull:Boolean = false; //slotID:0
+ private var _isVisibleByNicowari:Boolean = false; //slotID:0
+ private var _connector:IHirobaConnector; //slotID:0
+ private var _commentPlayer:HirobaCommentPlayer; //slotID:0
+
+ private function getListName(hug1:IComment):String
+ { //MethodID:1399, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return HirobaCommentListName.HIROBA;
+ }
+
+ public function inializeView(hug1:Sprite):void
+ { //MethodID:1400, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 51
+ this._commentPlayer = new HirobaCommentPlayer(hug1, this._playerConfig, this._isPremium);
+
+ this._commentPlayer.commentLayer.onPlayerConfigOptionalCommentVisibleUpdated(this.optionalCommentVisible);
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:1402, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 67
+ internal var comment:IComment; //slotID:1
+
+ comment = hug1;
+
+ if(!this._isInitialized) throw new IllegalOperationError("HirobaPlayer.post: HirobaPlayer is not initialized.");
+ Assert.assert(this._connector, "HirobaPlayer.post: hirobaAgent has been set yet.");
+ this._connector.post(function(hug1:Boolean):void{ //MethodID:1401, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 45
+ var hug2:String = (hug1 ? __MSG__("広場へのコメントに成功") : __MSG__("広場へのコメントに失敗"));
+
+ SystemMessage.instance.informln(hug2);
+ }, new HirobaComment(comment));
+ }
+
+ public function postSystemMessage(hug1:IComment):void
+ { //MethodID:1404, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 67
+ internal var comment:IComment; //slotID:1
+
+ comment = hug1;
+
+ if(!this._isInitialized) throw new IllegalOperationError("HirobaPlayer.postSystemMessage: HirobaPlayer is not initialized.");
+ Assert.assert(this._connector, "HirobaPlayer.post: hirobaAgent has been set yet.");
+ this._connector.post(function(hug1:Boolean):void{ //MethodID:1403, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }, new HirobaComment(comment));
+ }
+
+ public function updateVisible(hug1:Boolean):void
+ { //MethodID:1405, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 107
+ if(!this._isInitialized) throw new IllegalOperationError("HirobaPlayer.updateVisible: HirobaPlayer is not initialized.");
+
+ if(this._visible == hug1) return;
+
+ this._visible = hug1;
+
+ this.updateVolume();
+
+ this._commentPlayer.commentLayer.visibleEnabled = hug1;
+
+ onHirobaPlayerVisibleUpdated.apply(hug1);
+ this._commentPlayer.commentLayer.onPlayerConfigCommentVisibleUpdated(this._playerConfig.commentVisible);
+ }
+
+ private function updateVolume(hug1:Number=-1.0):void
+ { //MethodID:1406, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 75
+ if(!this._isInitialized) return;
+
+ if(!this._visible || this._isNicowariFull){
+ hug1 = 0;
+ }else if(hug1 < 0){
+ hug1 = (this._playerConfig.isMute ? 0 : this._playerConfig.volume);
+ }
+ }
+
+ public function get eventNames():Array
+ { //MethodID:1407, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 21
+ var hug1:Array = ["onHirobaPlayerInitialized", "onHirobaPlayerVisibleUpdated", "onHirobaPlayerOptionalCommentVisibleUpdated", "onHirobaPlayerError"];
+ return hug1;
+ }
+
+ public function get visible():Boolean
+ { //MethodID:1408, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._visible;
+ }
+
+ public function get optionalCommentVisible():Boolean
+ { //MethodID:1409, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._so.data.optinalCommentVisible;
+ }
+
+ public function set optionalCommentVisible(hug1:Boolean):void
+ { //MethodID:1410, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 47
+ this._so.data.optinalCommentVisible = hug1;
+
+ this._so.flush();
+ this._commentPlayer.commentLayer.onPlayerConfigOptionalCommentVisibleUpdated(hug1);
+ }
+
+ public function get onClickedLink():Functions
+ { //MethodID:1411, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onClickedLink;
+ }
+
+ public function set connector(hug1:IHirobaConnector):void
+ { //MethodID:1415, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 146
+ internal var connector:IHirobaConnector; //slotID:1
+ internal var onErrorOccurred:Function; //slotID:2
+
+ onErrorOccurred = null;
+ connector = hug1;
+ onErrorOccurred = function():void{ //MethodID:1412, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 38
+ if(_visible) updateVisible(false);
+ onHirobaPlayerError.apply();
+ };
+
+ this._connector = connector;
+
+ this._connector.addEventListener(HirobaEvent.RECEIVED_COMMENT, function(hug1:HirobaEvent):void{ //MethodID:1413, LocalCount= 8 , MaxScope= 0, MaxStack= 4, CodeLength= 243
+ var hug7:String = null;
+
+ if(!hug1.comment) return;
+
+ var hug2:IHirobaComment = hug1.comment;
+ var hug3:CommentBuilder = new CommentBuilder();
+ hug3.message = hug2.message;
+ hug3.command = new Command(hug2.mail, hug2.isPremium);
+ hug3.isPremium = hug2.isPremium;
+ hug3.date = hug2.date;
+ hug3.justPosted = hug2.yourpost;
+ var hug4:IComment = hug3.make();
+ hug3 = new CommentBuilder(hug4);
+ hug3.vpos = TimeUtils.now().time;
+ var hug5:IComment = hug3.make();
+ var hug6:String = getListName(hug5);
+
+ if(_commentPlayer && _visible) _commentPlayer.addComment(hug5, hug6);
+
+ if(!_visible && _playerConfig.clockMessageVisible && (hug6 == HirobaCommentListName.HIROBA)){
+ hug7 = hug4.message.substr(0, 10);
+
+ if(hug4.message.length > 10) hug7 += "...";
+ }
+ });
+ this._connector.addEventListener(HirobaEvent.RECEIVED_DATA, function(hug1:HirobaEvent):void{ //MethodID:1414, LocalCount= 3 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ var hug2:Object = hug1.data;
+ });
+ this._connector.addEventListener(HirobaErrorEvent.CONNECTION_FAIL, onErrorOccurred);
+ this._connector.addEventListener(HirobaErrorEvent.DISCONNECTED, onErrorOccurred);
+
+ this._isInitialized = true;
+
+ if(this._activeNicowari != null) onMarqueeClientNicowariStarted(this._activeNicowari);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsMuteUpdated(hug1:Boolean):EventResult
+ { //MethodID:1416, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ this.updateVolume(hug1 ? 0 : this._playerConfig.volume);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigVolumeUpdated(hug1:Number):EventResult
+ { //MethodID:1417, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ this.updateVolume(this._playerConfig.isMute ? 0 : hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigCommentVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:1418, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ return this._commentPlayer.commentLayer.onPlayerConfigCommentVisibleUpdated(hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onMarqueeClientNicowariStarted(hug1:IMarqueeInfo):EventResult
+ { //MethodID:1419, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 78
+ this._activeNicowari = hug1;
+
+ if(this._isInitialized){
+ if(hug1.jumpToHirobaEnabled){
+ if(!this._visible) this.updateVisible(true);
+
+ this._isNicowariFull = true;
+
+ this.updateVolume(0);
+ }else if(this._visible){
+ this._isVisibleByNicowari = true;
+
+ this.updateVisible(false);
+ }
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onMarqueeClientNicowariEnded(hug1:IMarqueeInfo):EventResult
+ { //MethodID:1420, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 65
+ this._activeNicowari = null;
+
+ if(this._isInitialized){
+ if(hug1.jumpToHirobaEnabled && this._visible){
+ this.updateVisible(false);
+ }else if(this._isVisibleByNicowari){
+ this.updateVisible(true);
+ }
+ }
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script089■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:104
+ public interface IVideoTag
+ {
+ //static constructor
+ public static function IVideoTag$cinit()
+ { //MethodID:1422, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get tag():String; //MethodID:1423, dispID:0
+
+ function get hasLocked():Boolean; //MethodID:1424, dispID:0
+
+ function get isCategory():Boolean; //MethodID:1425, dispID:0
+
+ //constructor
+ public function IVideoTag(); //MethodID:1426, dispID:0
+ }
+}
+
+//■script090■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:105
+ public interface IVideoDetail
+ {
+ //static constructor
+ public static function IVideoDetail$cinit()
+ { //MethodID:1428, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get title():String; //MethodID:1429, dispID:0
+
+ function get description():String; //MethodID:1430, dispID:0
+
+ function get postedAt():Date; //MethodID:1431, dispID:0
+
+ function get tags():Array; //MethodID:1432, dispID:0
+
+ function get viewCount():Number; //MethodID:1433, dispID:0
+
+ //constructor
+ public function IVideoDetail(); //MethodID:1434, dispID:0
+ }
+}
+
+//■script091■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.util.external.JSConnector
+
+ //■class(instance)_index:106
+ public class VideoDetail extends Object implements IVideoDetail
+ {
+ //static constructor
+ public static function VideoDetail$cinit()
+ { //MethodID:1436, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ EXTERNAL_VIDEO_NAME = "Video";
+ }
+
+ //static variables/etc.
+ public static const EXTERNAL_VIDEO_NAME:String = "Video"; //slotID:1
+
+ //constructor
+ public function VideoDetail(hug1:String=null, hug2:Object=null)
+ { //MethodID:1437, LocalCount= 10 , MaxScope= 1, MaxStack= 10, CodeLength= 308
+ var hug3:* = undefined;
+ var hug6:String = null;
+ var hug7:Array = null;
+ this._tags = [];
+
+ super();
+
+ if(hug2){
+ hug3 = hug2;
+ }else{
+ hug3 = JSConnector.call("function() {return " + EXTERNAL_VIDEO_NAME + ";}");
+ }
+
+ if(hug3 == null) return;
+
+ this._title = hug3.title;
+ this._description = hug3.description;
+ this._viewCount = parseInt(hug3.viewCount);
+ var hug4:Array = hug3.tags;
+ var hug5:Array = hug3.lockedTags;
+
+ for each(hug6 in hug4){
+ this._tags.push(new _VideoTag(hug6, (hug5.indexOf(hug6) >= 0), (hug1 == hug6)));
+ }
+
+ hug7 = new RegExp("^(\d{4})\/(\d{2})\/(\d{2})\s(\d{2}):(\d{2}):(\d{2})$").exec(hug3.postedAt);
+
+ if(hug7 && (hug7.length >= 7)) this._postedAt = new Date(parseInt(hug7[1]), (parseInt(hug7[2]) - 1), parseInt(hug7[3]), parseInt(hug7[4]), parseInt(hug7[5]), parseInt(hug7[6]));
+ }
+
+ //variables/etc.
+ private var _title:String; //slotID:0
+ private var _description:String; //slotID:0
+ private var _postedAt:Date; //slotID:0
+ private var _tags:Array; //slotID:0
+ private var _viewCount:Number; //slotID:0
+
+ public function get title():String
+ { //MethodID:1438, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._title;
+ }
+
+ public function get description():String
+ { //MethodID:1439, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._description;
+ }
+
+ public function get postedAt():Date
+ { //MethodID:1440, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._postedAt;
+ }
+
+ public function get tags():Array
+ { //MethodID:1441, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._tags;
+ }
+
+ public function get viewCount():Number
+ { //MethodID:1442, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._viewCount;
+ }
+ }
+}
+
+
+//■class(instance)_index:107
+//private
+class _VideoTag extends Object implements IVideoTag
+{
+ //static constructor
+ public static function _VideoTag$cinit()
+ { //MethodID:1443, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _VideoTag(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:1444, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._tag = hug1;
+ this._hasLocked = hug2;
+ this._isCategory = hug3;
+ }
+
+ //variables/etc.
+ private var _tag:String; //slotID:0
+ private var _hasLocked:Boolean; //slotID:0
+ private var _isCategory:Boolean; //slotID:0
+
+ public function get tag():String
+ { //MethodID:1445, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._tag;
+ }
+
+ public function get hasLocked():Boolean
+ { //MethodID:1446, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasLocked;
+ }
+
+ public function get isCategory():Boolean
+ { //MethodID:1447, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isCategory;
+ }
+}
+
+//■script092■
+
+package jp.nicovideo.nicoscript{
+
+ import flash.display.DisplayObjectContainer
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.comment.ICommand
+ import jp.nicovideo.nicoplayer.models.video.IChildVideo
+ import jp.nicovideo.nicoplayer.views.comment.ICommentLayerView
+
+ //■class(instance)_index:108
+ public interface INicoSClient
+ {
+ //static constructor
+ public static function INicoSClient$cinit()
+ { //MethodID:1449, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get graphicsLayer():DisplayObjectContainer; //MethodID:1450, dispID:0
+
+ function get graphicsMaskLayer():DisplayObjectContainer; //MethodID:1451, dispID:0
+
+ function get commentLayer():DisplayObjectContainer; //MethodID:1452, dispID:0
+
+ function get ownerCommentLayer():DisplayObjectContainer; //MethodID:1453, dispID:0
+
+ function get BGMLayer():DisplayObjectContainer; //MethodID:1454, dispID:0
+
+ function get postDisabled():Boolean; //MethodID:1455, dispID:0
+
+ function set postDisabled(hug1:Boolean):void; //MethodID:1456, dispID:0
+
+ function get seekDisabled():Boolean; //MethodID:1457, dispID:0
+
+ function set seekDisabled(hug1:Boolean):void; //MethodID:1458, dispID:0
+
+ function get commentLayerView():ICommentLayerView; //MethodID:1459, dispID:0
+
+ function seek(hug1:int, hug2:Function=null):void; //MethodID:1460, dispID:0
+
+ function createEmptySprite():Sprite; //MethodID:1461, dispID:0
+
+ function showJumpMessage(hug1:Function, hug2:String, hug3:Boolean=false):void;//MethodID:1462, dispID:0
+
+ function jumpVideo(hug1:String, hug2:String, hug3:String, hug4:int, hug5:int, hug6:String, hug7:Boolean, hug8:Object):void;//MethodID:1463, dispID:0
+
+ function pause(hug1:Function, hug2:Function, hug3:int):void; //MethodID:1464, dispID:0
+
+ function showButtons(hug1:Array):void; //MethodID:1465, dispID:0
+
+ function getBGMVideo(hug1:String):IChildVideo; //MethodID:1466, dispID:0
+
+ function setCommentReverseEnabled(hug1:String, hug2:Boolean):void; //MethodID:1467, dispID:0
+
+ function parseCommand(hug1:String):ICommand; //MethodID:1468, dispID:0
+
+ function postButtonComment(hug1:String, hug2:String, hug3:Boolean):void; //MethodID:1469, dispID:0
+
+ function playCM(hug1:String, hug2:String, hug3:Boolean, hug4:Number):void; //MethodID:1470, dispID:0
+
+ function updateWideNicoSLayer(hug1:Boolean=false):void; //MethodID:1471, dispID:0
+
+ function updateVideoMask(hug1:Boolean=false):void; //MethodID:1472, dispID:0
+
+ //constructor
+ public function INicoSClient(); //MethodID:1473, dispID:0
+ }
+}
+
+//■script093■
+
+package jp.nicovideo.nicoscript{
+
+ import flash.display.DisplayObjectContainer
+ import flash.display.MovieClip
+ import flash.display.Sprite
+ import flash.events.MouseEvent
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import flash.utils.clearTimeout
+ import flash.utils.setTimeout
+ import jp.nicovideo.marquee.INicoMarqueePlayer
+ import jp.nicovideo.marquee.MarqueeInterruptType
+ import jp.nicovideo.marquee.models.MarqueePriorityConstants
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.api.IJumper
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.ICommand
+ import jp.nicovideo.nicoplayer.models.comment.ICommentList
+ import jp.nicovideo.nicoplayer.models.comment.ICommentRouter
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IChildVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.tpls.shutter.AudioShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.CommentShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.nicoplayer.views.VideoLayerManager
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayer
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayerID
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayerView
+ import jp.nicovideo.nicoplayer.views.comment.ICommentLayerView
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:109
+ public class NicoSClient extends Object implements INicoSClient
+ {
+ //static constructor
+ public static function NicoSClient$cinit()
+ { //MethodID:1475, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ _PLAY_FROM_DELAY_FOR_IGNORING_NICOS_JUMP = (5 * 1000);
+ _USER_NICOWARI_PRIORITY = MarqueePriorityConstants.USER_NICOWARI;
+ }
+
+ //static variables/etc.
+ private static const _PLAY_FROM_DELAY_FOR_IGNORING_NICOS_JUMP:Number = 5000.0;//slotID:1
+ private static const _USER_NICOWARI_PRIORITY:Number = 3.0; //slotID:2
+
+ //constructor
+ public function NicoSClient(hug1:INicoSPlayer, hug2:IVideoController, hug3:VideoLayerManager, hug4:IJumper, hug5:NicoFlashVars, hug6:IControllerShutter, hug7:CommentLayerView, hug8:ICommentList, hug9:IPlayerConfig, hug10:Boolean)
+ { //MethodID:1476, LocalCount= 12 , MaxScope= 1, MaxStack= 3, CodeLength= 179
+ this._bgmVideos = {};
+ this._cmVideos = {};
+ this._jumpHistory = {};
+ this._timer = new Timer(40);
+ this._delayedActionsToVideo = {};
+
+ super();
+
+ this._scriptPlayer = hug1;
+ this._videoController = hug2;
+ this._layerMgr = hug3;
+ this._jumper = hug4;
+ this._flashvars = hug5;
+ this._commentShutter = hug6;
+ this._clv = hug7;
+ this._nicosCommentList = hug8;
+ this._playerConfig = hug9;
+ this._isPlaylist = hug10;
+ var hug11:Object = (this._jumper.tossedObject as Object);
+
+ if(hug11 && hug11.jumpHistory) this._jumpHistory = hug11.jumpHistory;
+ this._timer.addEventListener(TimerEvent.TIMER, this._nicosPlayerSeekHandler);
+ this._layerMgr.nicosLayer.parent.addEventListener(MouseEvent.CLICK, this._nicosLayerClickHandler);
+ }
+
+ //variables/etc.
+ private var _scriptPlayer:INicoSPlayer; //slotID:0
+ private var _bgmVideos:Object; //slotID:0
+ private var _cmVideos:Object; //slotID:0
+ private var _layerMgr:VideoLayerManager; //slotID:0
+ private var _jumper:IJumper; //slotID:0
+ private var _jumpHistory:Object; //slotID:0
+ private var _commentShutter:IControllerShutter; //slotID:0
+ private var _audioShutter:IControllerShutter; //slotID:0
+ private var _flashvars:NicoFlashVars; //slotID:0
+ private var _clv:CommentLayerView; //slotID:0
+ private var _commentLayer:CommentLayer; //slotID:0
+ private var _timer:Timer; //slotID:0
+ private var _delayedActionsToVideo:Object; //slotID:0
+ private var _nicosCommentList:ICommentList; //slotID:0
+ private var _commentRouter:ICommentRouter; //slotID:0
+ private var _marqueePlayer:INicoMarqueePlayer; //slotID:0
+ private var _videoController:IVideoController; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _isPlaylist:Boolean = false; //slotID:0
+
+ private function _nicosPlayerSeekHandler(hug1:TimerEvent):void
+ { //MethodID:1477, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._seekNicoSPlayer(this._currentVpos);
+ }
+
+ private function _nicosLayerClickHandler(hug1:MouseEvent):void
+ { //MethodID:1478, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 16
+ this._callDelayedAction(null, "@ポーズ", this._delayedActionsToVideo);
+ }
+
+ public function setup():void
+ { //MethodID:1479, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this._scriptPlayer.setup(this);
+
+ this._scriptPlayer.volume = (this._playerConfig.isMute ? 0 : this._playerConfig.volume);
+ }
+
+ public function clear():void
+ { //MethodID:1480, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 151
+ this._bgmVideos = null;
+ this._cmVideos = null;
+
+ this._commentShutter.open(CommentShutterConstants.SHUTTER_NICOS_ATPAUSE);
+ this._commentShutter.open(CommentShutterConstants.SHUTTER_NICOS_COMMENT_DISABLED);
+ this._audioShutter.open(AudioShutterConstants.SHUTTER_SEEK);
+
+ if(this._timer.hasEventListener(TimerEvent.TIMER)){
+ this._timer.stop();
+ this._timer.reset();
+ this._timer.removeEventListener(TimerEvent.TIMER, this._nicosPlayerSeekHandler);
+ }
+
+ if(this._layerMgr.nicosLayer.parent.hasEventListener(MouseEvent.CLICK)) this._layerMgr.nicosLayer.parent.removeEventListener(MouseEvent.CLICK, this._nicosLayerClickHandler);
+ }
+
+ public function setBGMVideos(hug1:Object, hug2:Object):void
+ { //MethodID:1481, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._bgmVideos = hug1;
+ this._cmVideos = hug2;
+ }
+
+ public function seek(hug1:int, hug2:Function=null):void
+ { //MethodID:1482, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ if(!this._isPlaylist) this._videoController.seek(hug1);
+ }
+
+ public function createEmptySprite():Sprite
+ { //MethodID:1483, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return new Sprite();
+ }
+
+ public function showJumpMessage(hug1:Function, hug2:String, hug3:Boolean=false):void
+ { //MethodID:1485, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 84
+ internal var f:Function; //slotID:1
+ internal var msg:String; //slotID:2
+ internal var play:Boolean = false; //slotID:3
+ internal var isStopped:Boolean; //slotID:4
+ internal var func:Function; //slotID:5
+
+ isStopped = false;
+ f = hug1;
+ msg = hug2;
+ play = hug3;
+ isStopped = false;
+
+ if(this._videoController.isPlaying){
+ isStopped = true;
+
+ this._videoController.stop();
+ }
+
+ func = function():void{ //MethodID:1484, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 34
+ f();
+
+ if(isStopped && play) _videoController.play();
+ };
+
+ SystemMessage.instance.informJumpMessage(func, msg);
+ }
+
+ public function jumpVideo(hug1:String, hug2:String, hug3:String, hug4:int, hug5:int, hug6:String, hug7:Boolean, hug8:Object):void
+ { //MethodID:1487, LocalCount= 10 , MaxScope= 2, MaxStack= 3, CodeLength= 225
+ internal var msg:String; //slotID:1
+ internal var jumpHash:String; //slotID:2
+ internal var videoID:String; //slotID:3
+ internal var from:int; //slotID:4
+ internal var length:int; //slotID:5
+ internal var returnMsg:String; //slotID:6
+ internal var newWindow:Boolean; //slotID:7
+ internal var obj:Object; //slotID:8
+ internal var do_jump:Function; //slotID:9
+
+ do_jump = null;
+ msg = hug1;
+ jumpHash = hug2;
+ videoID = hug3;
+ from = hug4;
+ length = hug5;
+ returnMsg = hug6;
+ newWindow = hug7;
+ obj = hug8;
+ do_jump = function():void{ //MethodID:1486, LocalCount= 2 , MaxScope= 0, MaxStack= 12, CodeLength= 140
+ var hug1:Object = {};
+
+ if(from > 0) hug1.from = from;
+
+ if(length > 0){
+ hug1.returnid = _flashvars.watchID;
+ hug1.length = length;
+ hug1.returnto = (_currentVpos / 1000);
+
+ if(returnMsg != "") hug1.returnmsg = returnMsg;
+
+ _jumpHistory[videoID] = true;
+ }else{
+ _jumpHistory = {};
+ }
+
+ _jumper.jump(videoID, hug1, newWindow, {jumpObj:obj, jumpFrom:_flashvars.watchID, jumpHistory:_jumpHistory, jumpHash:jumpHash});
+ };
+
+ if(this._flashvars.thumbFlashVars || this._isPlaylist || (videoID == this._flashvars.watchID) || this._jumpHistory.hasOwnProperty(videoID)) return;
+
+ if(this._flashvars.watchFlashVars && this._flashvars.watchFlashVars.isOwnerThreadEditMode){
+ SystemMessage.instance.alert(videoID + " へのジャンプが発生しました。");
+
+ return;
+ }
+
+ this._videoController.stop();
+
+ if(msg != ""){
+ this.showJumpMessage(do_jump, msg);
+ }else{
+ do_jump();
+ }
+ }
+
+ public function pause(hug1:Function, hug2:Function, hug3:int):void
+ { //MethodID:1490, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 193
+ internal var startHandler:Function; //slotID:1
+ internal var finishHandler:Function; //slotID:2
+ internal var wait:int; //slotID:3
+ internal var timerID:uint; //slotID:4
+
+ timerID = 0;
+ startHandler = hug1;
+ finishHandler = hug2;
+ wait = hug3;
+
+ if(this._isPlaylist) return;
+ startHandler();
+ this._videoController.stop();
+ this._commentShutter.close(CommentShutterConstants.SHUTTER_NICOS_ATPAUSE, __MSG__("投稿者にポーズされたため、コメントできません"));
+
+ if(this._commentLayer.getLayer(CommentLayerID.MAIN)) this._commentLayer.getLayer(CommentLayerID.MAIN).visible = false;
+
+ if(this._commentLayer.getLayer(CommentLayerID.OPTION)) this._commentLayer.getLayer(CommentLayerID.OPTION).visible = false;
+
+ this._delayedActionsToVideo["@ポーズ"] = function(hug1:*):Boolean{ //MethodID:1488, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 123
+ if(hug1 == "stop") return false;
+ clearTimeout(timerID);
+
+ if(!hug1) _videoController.play();
+ _commentShutter.open(CommentShutterConstants.SHUTTER_NICOS_ATPAUSE);
+
+ if(_commentLayer.getLayer(CommentLayerID.MAIN)) _commentLayer.getLayer(CommentLayerID.MAIN).visible = true;
+
+ if(_commentLayer.getLayer(CommentLayerID.OPTION)) _commentLayer.getLayer(CommentLayerID.OPTION).visible = true;
+ finishHandler();
+
+ return true;
+ };
+
+ if(wait > 0){
+ timerID = setTimeout(function():void{ //MethodID:1489, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 15
+ _callDelayedAction(null, "@ポーズ", _delayedActionsToVideo);
+ }, wait);
+ }
+ }
+
+ public function showButtons(hug1:Array):void
+ { //MethodID:1491, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function getBGMVideo(hug1:String):IChildVideo
+ { //MethodID:1492, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ return (this._bgmVideos[hug1] || null);
+ }
+
+ public function getCMVideo(hug1:String):MovieClip
+ { //MethodID:1493, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ return (this._cmVideos[hug1] || null);
+ }
+
+ public function setCommentReverseEnabled(hug1:String, hug2:Boolean):void
+ { //MethodID:1494, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ this._clv.setReverseMode(hug1, hug2);
+ }
+
+ public function parseCommand(hug1:String):ICommand
+ { //MethodID:1495, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return new Command(hug1);
+ }
+
+ public function postButtonComment(hug1:String, hug2:String, hug3:Boolean):void
+ { //MethodID:1496, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 89
+ var hug4:CommentBuilder = new CommentBuilder();
+ hug4.message = hug1;
+ hug4.command = new Command("from_button " + hug2 + (hug3 ? "" : " invisible"));
+ hug4.vpos = this._currentVpos;
+ hug4.date = TimeUtils.now();
+
+ this._commentRouter.post(hug4.make());
+ }
+
+ public function playCM(hug1:String, hug2:String, hug3:Boolean, hug4:Number):void
+ { //MethodID:1500, LocalCount= 6 , MaxScope= 2, MaxStack= 7, CodeLength= 302
+ internal var videoID:String; //slotID:1
+ internal var link:String; //slotID:2
+ internal var pause:Boolean; //slotID:3
+ internal var volume:Number; //slotID:4
+ internal var cm:MovieClip; //slotID:5
+ internal var clickHandler:Function; //slotID:6
+ internal var finishHandler:Function; //slotID:7
+
+ clickHandler = null;
+ finishHandler = null;
+ videoID = hug1;
+ link = hug2;
+ pause = hug3;
+ volume = hug4;
+ clickHandler = function():void{ //MethodID:1497, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 31
+ if(link == "") return;
+ _videoController.stop();
+ _jumper.jump(link, {}, true);
+ };
+
+ finishHandler = function():void{ //MethodID:1498, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 22
+ if(pause) _callDelayedAction(null, "@CM", _delayedActionsToVideo);
+ };
+
+ if(this._flashvars.thumbFlashVars) return;
+
+ if(this._flashvars.watchFlashVars && this._flashvars.watchFlashVars.isOwnerThreadEditMode){
+ SystemMessage.instance.alert("ユーザーニコ割 " + videoID + " の再生が発生しました。");
+
+ return;
+ }
+
+ cm = this.getCMVideo(videoID);
+
+ if(!cm) return;
+
+ if(!this._marqueePlayer){
+ SystemMessage.instance.informln(__MSG__("マーキーの準備が完了していません"));
+
+ return;
+ }
+
+ if(this._playerConfig.aspectRatio == ScreenAspectRatio.NORMAL){
+ SystemMessage.instance.informClockMessage(__MSG__("ユーザーニコ割:[[videoID]]", videoID));
+ }else{
+ SystemMessage.instance.informClockMessage(videoID);
+ }
+
+ this._marqueePlayer.interruptContent(MarqueeInterruptType.CM, cm, (volume / 100), clickHandler, finishHandler, _USER_NICOWARI_PRIORITY);
+
+ if(pause){
+ this._videoController.stop();
+
+ this._delayedActionsToVideo["@CM"] = function(hug1:*):Boolean{ //MethodID:1499, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 31
+ if(hug1 == "stop") return false;
+
+ pause = false;
+
+ if(!hug1) _videoController.play();
+
+ return true;
+ };
+ }
+ }
+
+ public function updateWideNicoSLayer(hug1:Boolean=false):void
+ { //MethodID:1501, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._layerMgr.updateWideNicoSLayer(hug1);
+ }
+
+ public function updateVideoMask(hug1:Boolean=false):void
+ { //MethodID:1502, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._layerMgr.updateVideoMask(hug1);
+ }
+
+ private function _seekNicoSPlayer(hug1:Number):void
+ { //MethodID:1503, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._scriptPlayer.seek(hug1);
+ }
+
+ private function _clearDelayedActions(hug1:*, hug2:Object):void
+ { //MethodID:1504, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 45
+ var hug3:String = null;
+
+ for(hug3 in hug2){
+ this._callDelayedAction(hug1, hug3, hug2);
+ }
+ }
+
+ private function _callDelayedAction(hug1:*, hug2:String, hug3:Object):void
+ { //MethodID:1506, LocalCount= 5 , MaxScope= 2, MaxStack= 2, CodeLength= 33
+ internal var ctrl:*; //slotID:1
+ internal var id:String; //slotID:2
+ internal var delayedActions:Object; //slotID:3
+
+ ctrl = hug1;
+ id = hug2;
+ delayedActions = hug3;
+
+ ObjectUtils.callLater(function():void{ //MethodID:1505, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 45
+ var hug1:Function = delayedActions[id];
+
+ if((hug1 is Function) && hug1(ctrl)) delete delayedActions[id];
+ });
+ }
+
+ public function get player():INicoSPlayer
+ { //MethodID:1507, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._scriptPlayer;
+ }
+
+ public function get jumper():IJumper
+ { //MethodID:1508, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumper;
+ }
+
+ public function get commentLayer():DisplayObjectContainer
+ { //MethodID:1509, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._layerMgr.commentLayer;
+ }
+
+ public function get ownerCommentLayer():DisplayObjectContainer
+ { //MethodID:1510, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this._commentLayer.getLayer(CommentLayerID.OWNER);
+ }
+
+ public function get graphicsLayer():DisplayObjectContainer
+ { //MethodID:1511, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._layerMgr.nicosLayer;
+ }
+
+ public function get graphicsMaskLayer():DisplayObjectContainer
+ { //MethodID:1512, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._layerMgr.nicosMaskLayer;
+ }
+
+ public function get BGMLayer():DisplayObjectContainer
+ { //MethodID:1513, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._layerMgr.nicosBGMLayer;
+ }
+
+ private function get _currentVpos():Number
+ { //MethodID:1514, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._videoController.videoWrapper.vpos;
+ }
+
+ public function get commentLayerView():ICommentLayerView
+ { //MethodID:1515, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._clv;
+ }
+
+ public function set commentLayerView_(hug1:CommentLayerView):void
+ { //MethodID:1516, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._clv = hug1;
+ }
+
+ public function get postDisabled():Boolean
+ { //MethodID:1517, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this._commentShutter.isClosing(CommentShutterConstants.SHUTTER_NICOS_COMMENT_DISABLED);
+ }
+
+ public function set postDisabled(hug1:Boolean):void
+ { //MethodID:1518, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 74
+ if(hug1){
+ this._commentShutter.close(CommentShutterConstants.SHUTTER_NICOS_COMMENT_DISABLED, __MSG__("投稿者によってコメントが禁止されています。"));
+ }else{
+ this._commentShutter.open(CommentShutterConstants.SHUTTER_NICOS_COMMENT_DISABLED);
+ }
+
+ this._commentLayer.visibleEnabled = (this._scriptPlayer.isCommentInvisible && !hug1);
+ }
+
+ public function get seekDisabled():Boolean
+ { //MethodID:1519, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this._audioShutter.isClosing(AudioShutterConstants.SHUTTER_SEEK);
+ }
+
+ public function set seekDisabled(hug1:Boolean):void
+ { //MethodID:1520, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 50
+ if(hug1){
+ this._audioShutter.close(AudioShutterConstants.SHUTTER_SEEK, __MSG__("投稿者によってシークが禁止されています。"));
+ }else{
+ this._audioShutter.open(AudioShutterConstants.SHUTTER_SEEK);
+ }
+ }
+
+ public function set commentShutter(hug1:IControllerShutter):void
+ { //MethodID:1521, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentShutter = hug1;
+ }
+
+ public function set audioShutter(hug1:IControllerShutter):void
+ { //MethodID:1522, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._audioShutter = hug1;
+ }
+
+ public function set commentLayer_(hug1:CommentLayer):void
+ { //MethodID:1523, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentLayer = hug1;
+ }
+
+ public function set marqueePlayer(hug1:INicoMarqueePlayer):void
+ { //MethodID:1524, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._marqueePlayer = hug1;
+ }
+
+ public function set commentRouter(hug1:ICommentRouter):void
+ { //MethodID:1525, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentRouter = hug1;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:1526, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ this._clearDelayedActions("play", this._delayedActionsToVideo);
+ this._timer.start();
+ this._scriptPlayer.play();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:1527, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ this._clearDelayedActions("stop", this._delayedActionsToVideo);
+ this._timer.stop();
+ this._scriptPlayer.pause();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:1528, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 26
+ this._clearDelayedActions("seek", this._delayedActionsToVideo);
+ this._seekNicoSPlayer(hug1);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:1529, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 60
+ this._clearDelayedActions("seek", this._delayedActionsToVideo);
+ this._seekNicoSPlayer(0x7FFFFFFF);
+
+ if(!hug1){
+ this._clearDelayedActions("end", this._delayedActionsToVideo);
+ this._timer.stop();
+ this._scriptPlayer.pause();
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsMuteUpdated(hug1:Boolean):EventResult
+ { //MethodID:1530, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 54
+ if(!this._scriptPlayer) return EventResult.THROUGH;
+
+ if(hug1){
+ this._scriptPlayer.volume = 0;
+ }else{
+ this._scriptPlayer.volume = this._playerConfig.volume;
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigVolumeUpdated(hug1:Number):EventResult
+ { //MethodID:1531, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ if(!this._scriptPlayer) return EventResult.THROUGH;
+
+ this._scriptPlayer.volume = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:1532, LocalCount= 6 , MaxScope= 1, MaxStack= 6, CodeLength= 101
+ var hug5:Array = this._scriptPlayer.commit(hug4, hug1, hug2, hug3);
+
+ if(this._videoController.videoWrapper.isInitialized && this._flashvars.watchFlashVars && this._flashvars.watchFlashVars.isOwnerThreadEditMode) this._scriptPlayer.seek(this._videoController.videoWrapper.vpos);
+
+ return EventResult.replace([hug1, hug2, hug5, hug3, hug4]);
+ }
+ }
+}
+
+//■script094■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:110
+ public interface IVideoContainer
+ {
+ //static constructor
+ public static function IVideoContainer$cinit()
+ { //MethodID:1534, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get vpos():Number; //MethodID:1535, dispID:0
+
+ function get currentChildVideoName():String; //MethodID:1536, dispID:0
+
+ function childVideoNameOf(hug1:Number):String; //MethodID:1537, dispID:0
+
+ function get onChildVideoChanged():Functions; //MethodID:1538, dispID:0
+
+ //constructor
+ public function IVideoContainer(); //MethodID:1539, dispID:0
+ }
+}
+
+//■script095■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:111
+ public interface ICapturableVideoContainer implements IVideoContainer
+ {
+ //static constructor
+ public static function ICapturableVideoContainer$cinit()
+ { //MethodID:1541, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function getCapture(hug1:Function, hug2:Number=Number.NaN):void; //MethodID:1542, dispID:0
+
+ function get mainVideoLength():Number; //MethodID:1543, dispID:0
+
+ //constructor
+ public function ICapturableVideoContainer(); //MethodID:1544, dispID:0
+ }
+}
+
+//■script096■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.BitmapData
+ import flash.display.DisplayObject
+ import flash.display.Sprite
+ import flash.events.Event
+ import flash.geom.Matrix
+ import flash.utils.setTimeout
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.test
+ import jp.nicovideo.util.events.EventBarrier
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:114
+ public class VideoWrapper extends Object
+ implements IVideo, IVideoContainer, ICapturableVideoContainer, EventSender
+ {
+ //static constructor
+ public static function VideoWrapper$cinit()
+ { //MethodID:1556, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ _GET_CAPTURE_DELAY_FRAMES = 10;
+ }
+
+ //static variables/etc.
+ private static const _GET_CAPTURE_DELAY_FRAMES:int = 10; //slotID:1
+
+ //constructor
+ public function VideoWrapper(hug1:Sprite, hug2:IGetFLV, hug3:NicoConfig, hug4:NicoFlashVars, hug5:Number=0.0, hug6:Number=0.0)
+ { //MethodID:1557, LocalCount= 7 , MaxScope= 1, MaxStack= 10, CodeLength= 429
+ this.onChangedVideoStatus = new Functions();
+ this._onVideoLoadError = new Functions();
+ this._onChildVideoChanged = new Functions();
+ this.onVideoStarted = new Functions();
+ this.onVideoPlayed = new Functions();
+ this.onVideoStopped = new Functions();
+ this.onVideoEnded = new Functions();
+ this.onVideoSeeked = new Functions();
+ this.onVideoSeeking = new Functions();
+ this.onVideoLengthFixed = new Functions();
+ this.onVideoError = new Functions();
+ this.onInitMetaInfo = new Functions();
+ this.__CHILDREN_ORDER = [ChildVideoName.MAIN_VIDEO, ChildVideoName.USER_SPONSOR];
+ this._childVideos = [];
+
+ super();
+
+ this._getFLV = hug2;
+ this._videoURL = hug2.videoURL;
+ this._isDeleted = ((hug2.deleted != 8) && (hug2.deleted != 0));
+ this._flashVars = hug4;
+
+ if(hug4.watchFlashVars && hug4.watchFlashVars.isNoMovie){
+ this._mainVideo = new DummyVideo(hug2.videoLength);
+ }else if((hug4.videoType == VideoType.SWF) && !this._isDeleted){
+ if(hug4.waitsSWFVideoInit){
+ this._mainVideo = new SWFVideo(hug2.videoURL, hug1, hug2.videoLength, true, hug4.videoTitle, hug3, hug4.originalVideoID, hug2.isAS3);
+ }else{
+ this._mainVideo = new SWFVideo(hug2.videoURL, hug1, hug2.videoLength, false, "", null, "", hug2.isAS3);
+ }
+ }else{
+ this._mainVideo = new FLVVideo(hug2.videoURL, hug1, hug2.videoLength, hug5, hug6, hug2.videoProtocol, hug2.videoFileName, hug2.fmsToken);
+ }
+
+ this._mainVideo.layer.visible = false;
+
+ this._initializeVideoEventHandler(this._mainVideo);
+ this._childVideos.push(new _ChildVideoContainer(ChildVideoName.MAIN_VIDEO, this._mainVideo));
+
+ this._seekLocker = new _SeekLocker(this.seek);
+ }
+
+ //variables/etc.
+ public const onChangedVideoStatus:Functions; //slotID:0
+ private const _onVideoLoadError:Functions; //slotID:0
+ private const _onChildVideoChanged:Functions; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoStarted:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoPlayed:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoStopped:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoEnded:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoSeeked:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoSeeking:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoLengthFixed:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoError:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onInitMetaInfo:Functions;//slotID:0
+ private const __CHILDREN_ORDER:Array; //slotID:0
+ private var _childVideos:Array; //slotID:0
+ private var _currentChildIndex:uint = 0; //slotID:0
+ private var _currentVolume:Number = 0.0; //slotID:0
+ private var _videoURL:String = ""; //slotID:0
+ private var _mainVideo:IChildVideo; //slotID:0
+ private var _errorVideo:IChildVideo; //slotID:0
+ private var _getFLV:IGetFLV; //slotID:0
+ private var _flashVars:NicoFlashVars; //slotID:0
+ private var _seekLocker:_SeekLocker; //slotID:0
+ private var _captureVPos:Number = Number.NaN; //slotID:0
+ private var _lastCapturedVPos:Number = Number.NaN; //slotID:0
+ private var _capturedBitmapData:BitmapData; //slotID:0
+ private var _hasPlayed:Boolean = false; //slotID:0
+ private var _isDeleted:Boolean = false; //slotID:0
+ private var _hasSponsorVideo:Boolean = false; //slotID:0
+ private var _isShowSponsorVideoOnLoop:Boolean = false; //slotID:0
+ private var _isLoop:Boolean = false; //slotID:0
+ private var _hasLoaded:Boolean = false; //slotID:0
+ private var _isLoadRetryable:Boolean = false; //slotID:0
+ private var _hasTimeOutError:Boolean = false; //slotID:0
+ private var _isNoSeekEvent:Boolean = false; //slotID:0
+
+ public function play():void
+ { //MethodID:1558, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ if(!this._hasPlayed){
+ this._hasPlayed = true;
+
+ onVideoStarted.apply();
+ }
+
+ this.__currentChild.layer.visible = true;
+
+ this.__currentChild.play();
+ }
+
+ public function stop():void
+ { //MethodID:1559, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this.__currentChild.stop();
+ }
+
+ public function close():void
+ { //MethodID:1560, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 51
+ var hug1:_ChildVideoContainer = null;
+
+ this.killEvents();
+
+ for each(hug1 in this._childVideos){
+ hug1.video.close();
+ }
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:1561, LocalCount= 7 , MaxScope= 1, MaxStack= 3, CodeLength= 168
+ var hug5:IChildVideo = null;
+ var hug6:IChildVideo = null;
+
+ if(this._seekLocker.isLock){
+ this._seekLocker.stockSeek(hug1);
+
+ return;
+ }
+
+ var hug2:int = this._childVideoIndexOf(hug1);
+
+ if(hug2 < 0) return;
+
+ if(this._currentChildIndex != hug2){
+ hug5 = this._childVideos[this._currentChildIndex].video;
+
+ this._setCurrentChildIndex(hug2);
+ hug5.stop();
+ }
+
+ var hug3:Number = 0;
+ var hug4:uint = 0;
+
+ while(hug4 < hug2){
+ hug6 = this._childVideos[hug4].video;
+ hug3 += hug6.length;
+ hug4++;
+ }
+
+ this.__currentChild.seek(hug1 - hug3);
+ this._setEveryVideoSilent();
+
+ this.__currentChild.volume = this._currentVolume;
+ }
+
+ public function load(hug1:Function):void
+ { //MethodID:1572, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 204
+ internal var f:Function; //slotID:1
+ internal var wholeSucceeded:Boolean; //slotID:2
+ internal var barrier:EventBarrier; //slotID:3
+ internal var retryCounter:uint; //slotID:4
+ internal var container:_ChildVideoContainer; //slotID:5
+ internal var mainBarrier:Function; //slotID:6
+ internal var onMainVideoLoaded:Function; //slotID:7
+ internal var initializeSuplimentionVideo:Function; //slotID:8
+
+ wholeSucceeded = false;
+ container = null;
+ mainBarrier = null;
+ onMainVideoLoaded = null;
+ f = hug1;
+ onMainVideoLoaded = function(hug1:Boolean):void{ //MethodID:1567, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 302
+ internal var succeeded:Boolean; //slotID:1
+ internal var dummyVideo:DummyVideo; //slotID:2
+ internal var mainIndex:int; //slotID:3
+ internal var dummyContainer:_ChildVideoContainer; //slotID:4
+ internal var flvVideo:FLVVideo; //slotID:5
+
+ flvVideo = null;
+ succeeded = hug1;
+
+ if(succeeded){
+ if(!_isDeleted){
+ mainBarrier.apply(null, null);
+
+ return;
+ }
+
+ flvVideo = (_mainVideo as FLVVideo);
+
+ if(flvVideo.hasLengthSet){
+ initializeSuplimentionVideo(flvVideo, mainBarrier);
+ }else{
+ flvVideo.onVideoLengthFixed.add(function(hug1:Number):void{ //MethodID:1563, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 43
+ if((_getFLV.videoLength - hug1) > 1000){
+ initializeSuplimentionVideo(flvVideo, mainBarrier);
+ }else{
+ mainBarrier.apply(null, null);
+ }
+ });
+ }
+
+ return;
+ }
+
+ if(_isLoadRetryable && ((retryCounter++) < VideoConstants.RETRY_LOADING_COUNT)){
+ setTimeout(function():void{ //MethodID:1564, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ mainVideo.load(onMainVideoLoaded);
+ }, VideoConstants.RETRY_LOADING_INTERVAL);
+
+ return;
+ }
+
+ wholeSucceeded = false;
+ dummyVideo = new DummyVideo(_getFLV.videoLength);
+ mainIndex = -1;
+
+ _childVideos.every(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):Boolean{ //MethodID:1565, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ if(hug1.name == ChildVideoName.MAIN_VIDEO){
+ mainIndex = hug2;
+ return false;
+ }
+
+ return true;
+ });
+
+ if(mainIndex < 0) throw new Error("VideoWrapper.load:onMainVideoLoaded:");
+
+ dummyContainer = new _ChildVideoContainer(ChildVideoName.MAIN_VIDEO, dummyVideo);
+ _childVideos.splice(mainIndex, 1, dummyContainer);
+ _initializeVideoEventHandler(dummyVideo);
+
+ _errorVideo = _mainVideo;
+ _mainVideo = dummyVideo;
+
+ _mainVideo.load(function(hug1:Boolean):void{ //MethodID:1566, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 10
+ mainBarrier.apply(null, null);
+ });
+ };
+
+ initializeSuplimentionVideo = function(hug1:FLVVideo, hug2:Function):void{ //MethodID:1569, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 123
+ internal var mainVideo:FLVVideo; //slotID:1
+ internal var callback:Function; //slotID:2
+ internal var rest:Number; //slotID:3
+ internal var supplemention:DummyVideo; //slotID:4
+ internal var container:_ChildVideoContainer; //slotID:5
+
+ mainVideo = hug1;
+ callback = hug2;
+ rest = (_getFLV.videoLength - length);
+
+ if(rest <= 0){
+ callback.apply(null, null);
+
+ return;
+ }
+
+ supplemention = new DummyVideo(rest);
+ container = new _ChildVideoContainer(ChildVideoName.DELETED_SUPPLEMENTION, supplemention);
+
+ _initializeVideoEventHandler(supplemention);
+ _childVideos.push(container);
+ supplemention.load(function(hug1:Boolean):void{ //MethodID:1568, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 10
+ callback.apply(null, null);
+ });
+ };
+
+ wholeSucceeded = true;
+ barrier = new EventBarrier();
+ retryCounter = 0;
+ this._hasLoaded = true;
+
+ for each(container in this._childVideos){
+ if(container.video == this.mainVideo) break;
+ container.video.load(barrier.bind(function(hug1:Boolean):void{ //MethodID:1570, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 13
+ if(!hug1) wholeSucceeded = false;
+ }));
+ }
+
+ this.mainVideo.load(onMainVideoLoaded);
+
+ mainBarrier = barrier.bind(function():void{ //MethodID:1562, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+ barrier.finish(function():void{ //MethodID:1571, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 35
+ if(!wholeSucceeded) onVideoLoadError.apply();
+
+ volume = _currentVolume;
+
+ f(wholeSucceeded);
+ });
+ }
+
+ public function appendVideo(hug1:String, hug2:IChildVideo):void
+ { //MethodID:1573, LocalCount= 8 , MaxScope= 1, MaxStack= 5, CodeLength= 219
+ var hug7:_ChildVideoContainer = null;
+ var hug3:int = this.__CHILDREN_ORDER.indexOf(hug1);
+
+ if(hug3 == (-1)) throw new ArgumentError("VideoWrapper.appendVideo: invalid videoName.");
+
+ if(hug1 == ChildVideoName.USER_SPONSOR) this._hasSponsorVideo = true;
+
+ hug2.volume = this._currentVolume;
+
+ this._initializeVideoEventHandler(hug2);
+
+ var hug4:_ChildVideoContainer = new _ChildVideoContainer(hug1, hug2);
+ var hug5:Boolean = false;
+ var hug6:uint = 0;
+
+ while(hug6 < this._childVideos.length){
+ hug7 = this._childVideos[hug6];
+
+ if(hug3 < this.__CHILDREN_ORDER.indexOf(hug7.name)){
+ this._childVideos.splice(hug6, 1, hug4, hug7);
+
+ hug5 = true;
+ break;
+ }
+
+ hug6++;
+ }
+
+ if(!hug5) this._childVideos.push(hug4);
+ this._setCurrentChildIndex(this._currentChildIndex);
+ onVideoLengthFixed.apply(this.length, this._hasSponsorVideo);
+ }
+
+ public function killEvents():void
+ { //MethodID:1574, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 233
+ this.onChangedVideoStatus.clear();
+ onVideoStarted.clear();
+ onVideoPlayed.clear();
+ onVideoStopped.clear();
+ onVideoEnded.clear();
+ onVideoSeeked.clear();
+ onVideoSeeking.clear();
+ onVideoLengthFixed.clear();
+ onVideoError.clear();
+ onInitMetaInfo.clear();
+ this.onVideoBufferingStarted.clear();
+ this.onVideoLoadComplete.clear();
+ this.onVideoLoadError.clear();
+ }
+
+ private function _initializeVideoEventHandler(hug1:IChildVideo):void
+ { //MethodID:1584, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 286
+ internal var video:IChildVideo; //slotID:1
+ internal var _onChildVideoEnded:Function; //slotID:2
+
+ video = hug1;
+ _onChildVideoEnded = function(hug1:IChildVideo):void{ //MethodID:1575, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 136
+ if(!__nextContainer){
+ onVideoEnded.apply(_isLoop);
+
+ return;
+ }
+
+ var hug2:IChildVideo = _childVideos[_currentChildIndex].video;
+ var hug3:IChildVideo = _childVideos[_currentChildIndex + 1].video;
+
+ hug3.seek(0);
+ _setCurrentChildIndex(_currentChildIndex + 1);
+
+ hug2.layer.visible = false;
+ hug3.layer.visible = true;
+
+ hug2.stop();
+ hug3.play();
+ hug2.seek(0);
+ _setEveryVideoSilent();
+
+ __currentChild.volume = _currentVolume;
+ };
+
+ video.onVideoEnded.clear();
+ video.onVideoSeeked.clear();
+ video.onVideoSeeking.clear();
+ video.onVideoPlayed.clear();
+ video.onVideoStopped.clear();
+ video.onVideoError.clear();
+
+ if(video is DummyVideo) DummyVideo(video).initEvent();
+
+ if(video is FLVVideo){
+ FLVVideo(video).onVideoLengthFixed.clear();
+ FLVVideo(video).onInitMetaInfo.clear();
+ }
+
+ video.onVideoEnded.add(function(hug1:Boolean):void{ //MethodID:1576, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ _onChildVideoEnded(video);
+ onChangedVideoStatus.apply(video.videoPlayerStatus);
+ });
+ video.onVideoSeeked.add(function(hug1:Number):void{ //MethodID:1577, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 44
+ if(_isNoSeekEvent) return;
+
+ if(__currentChild == video) onVideoSeeked.apply(vpos);
+ });
+ video.onVideoSeeking.add(function(hug1:Number):void{ //MethodID:1578, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 57
+ if(_isNoSeekEvent) return;
+
+ if(__currentChild == video){
+ onVideoSeeking.apply(vpos);
+ onChangedVideoStatus.apply(video.videoPlayerStatus);
+ }
+ });
+ video.onVideoPlayed.add(function():void{ //MethodID:1579, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 46
+ if(__currentChild == video){
+ onVideoPlayed.apply();
+ onChangedVideoStatus.apply(video.videoPlayerStatus);
+ }
+ });
+ video.onVideoStopped.add(function():void{ //MethodID:1580, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 46
+ if(__currentChild == video){
+ onVideoStopped.apply();
+ onChangedVideoStatus.apply(video.videoPlayerStatus);
+ }
+ });
+ video.onVideoError.add(function(hug1:String):void{ //MethodID:1581, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 24
+ onVideoError.apply(hug1);
+ });
+
+ if(video is FLVVideo){
+ (video as FLVVideo).onInitMetaInfo.add(function():void{ //MethodID:1582, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ onInitMetaInfo.apply();
+ });
+ (video as FLVVideo).onVideoLengthFixed.add(function(hug1:Number):void{ //MethodID:1583, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 29
+ onVideoLengthFixed.apply(length, _hasSponsorVideo);
+ });
+ }
+ }
+
+ private function _setCurrentChildIndex(hug1:int):void
+ { //MethodID:1586, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 98
+ internal var index:int; //slotID:1
+ internal var container:_ChildVideoContainer; //slotID:2
+
+ container = null;
+ index = hug1;
+
+ for each(container in this._childVideos){
+ container.video.layer.visible = false;
+ }
+
+ this._currentChildIndex = index;
+ this.__currentChild.layer.visible = true;
+
+ ObjectUtils.callLater(function():void{ //MethodID:1585, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ _onChildVideoChanged.apply(currentChildVideoName);
+ });
+ }
+
+ private function _setEveryVideoSilent():void
+ { //MethodID:1588, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 18
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1587, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 21
+ if(hug1.video.isInitialized) hug1.video.volume = 0;
+ });
+ }
+
+ public function resize(hug1:Number, hug2:Number):void
+ { //MethodID:1589, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ this.__currentChild.resize(hug1, hug2);
+ }
+
+ public function getCapture(hug1:Function, hug2:Number=Number.NaN):void
+ { //MethodID:1592, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 308
+ internal var callback:Function; //slotID:1
+ internal var vpos:Number = Number.NaN; //slotID:2
+ internal var takeABitmapData:Function; //slotID:3
+ internal var childIdx:int; //slotID:4
+ internal var targetVideo_:IChildVideo; //slotID:5
+ internal var bmpData:BitmapData; //slotID:6
+ internal var targetChildVideoIndex:int; //slotID:7
+ internal var targetVideo:IChildVideo; //slotID:8
+ internal var count:int; //slotID:9
+
+ childIdx = 0;
+ targetVideo_ = null;
+ bmpData = null;
+ targetChildVideoIndex = 0;
+ targetVideo = null;
+ count = 0;
+ callback = hug1;
+ vpos = hug2;
+ takeABitmapData = function(hug1:IChildVideo):BitmapData{ //MethodID:1590, LocalCount= 6 , MaxScope= 0, MaxStack= 7, CodeLength= 249
+ if((hug1.layer == null) || (hug1.source == null) || (hug1.contentWidth <= 0) || (hug1.contentHeight <= 0)) return null;
+
+ var hug2:BitmapData = new BitmapData(hug1.contentWidth, hug1.contentHeight, false, 0);
+ var hug3:Number = hug1.source.scaleX;
+ var hug4:Number = hug1.source.scaleY;
+
+ if((hug1.source.width == hug1.layer.width) && (hug1.source.height == hug1.layer.height)){
+ hug3 = 1;
+ hug4 = 1;
+ }
+
+ var hug5:Number = hug1.vpos;
+
+ hug2.draw(hug1.source, new Matrix(hug3, 0, 0, hug4));
+
+ if(!_capturedBitmapData){
+ _lastCapturedVPos = hug5;
+ _capturedBitmapData = hug2;
+ }else if(Math.abs(_captureVPos - _lastCapturedVPos) > Math.abs(_captureVPos - hug5)){
+ _lastCapturedVPos = hug5;
+ _capturedBitmapData = hug2;
+ }
+
+ _seekLocker.endLock();
+
+ return _capturedBitmapData;
+ };
+
+ if(!isNaN(vpos)){
+ childIdx = this._childVideoIndexOf(vpos);
+
+ if(childIdx < 0) throw new ArgumentError("VideoWrapper.getCapture: vpos(2nd argument) does not exist in this video container.");
+
+ if(childIdx == this._currentChildIndex) throw new ArgumentError("VideoWrapper.getCapture: You cannot get capture whose vpos is current playing child. Use methods of 'currentChildVideoName' and 'childVideoNameOf'.");
+ }
+
+ this._seekLocker.startLock();
+
+ if(isNaN(vpos)){
+ targetVideo_ = _ChildVideoContainer(this._childVideos[this._currentChildIndex]).video;
+ bmpData = takeABitmapData(targetVideo_);
+
+ callback.apply(null, [bmpData]);
+
+ return;
+ }
+
+ this._captureVPos = vpos;
+ targetChildVideoIndex = this._childVideoIndexOf(vpos);
+ this._isNoSeekEvent = true;
+ targetVideo = _ChildVideoContainer(this._childVideos[targetChildVideoIndex]).video;
+
+ targetVideo.seek(vpos);
+
+ count = 0;
+
+ targetVideo.layer.addEventListener(Event.ENTER_FRAME, function(hug1:Event, ...args):void{ //MethodID:1591, LocalCount= 6 , MaxScope= 0, MaxStack= 3, CodeLength= 83
+ if((count++) <= _GET_CAPTURE_DELAY_FRAMES) return;
+ targetVideo.layer.removeEventListener(Event.ENTER_FRAME, args.callee);
+
+ var hug3:BitmapData = takeABitmapData(targetVideo);
+
+ callback.apply(null, [hug3]);
+
+ _isNoSeekEvent = false;
+ });
+ }
+
+ private function _childVideoIndexOf(hug1:Number):int
+ { //MethodID:1593, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 77
+ var hug4:IChildVideo = null;
+ var hug2:Number = 0;
+ var hug3:uint = 0;
+
+ while(hug3 < this._childVideos.length){
+ hug4 = this._childVideos[hug3].video;
+
+ if(hug1 <= (hug2 + hug4.length)) return hug3;
+
+ hug2 += hug4.length;
+ hug3++;
+ }
+
+ return -1;
+ }
+
+ public function childVideoNameOf(hug1:Number):String
+ { //MethodID:1594, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ var hug2:int = this._childVideoIndexOf(hug1);
+
+ if(hug2 < 0) return null;
+
+ return this.__CHILDREN_ORDER[hug2];
+ }
+
+ public function get eventNames():Array
+ { //MethodID:1595, LocalCount= 2 , MaxScope= 1, MaxStack= 8, CodeLength= 33
+ var hug1:Array = ["onVideoStarted", "onVideoPlayed", "onVideoStopped", "onVideoSeeked", "onVideoSeeking", "onVideoEnded", "onVideoError", "onInitMetaInfo"];
+ return hug1;
+ }
+
+ public function get url():String
+ { //MethodID:1596, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoURL;
+ }
+
+ public function get length():Number
+ { //MethodID:1598, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 34
+ internal var length:Number; //slotID:1
+
+ length = NaN;
+ length = 0;
+
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1597, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ length += hug1.video.length;
+ });
+
+ return length;
+ }
+
+ public function get mainVideo():IVideo
+ { //MethodID:1599, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mainVideo;
+ }
+
+ public function get mainVideoLength():Number
+ { //MethodID:1600, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._mainVideo.length;
+ }
+
+ public function get errorVideo():IVideo
+ { //MethodID:1601, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorVideo;
+ }
+
+ public function get hasLoaded():Boolean
+ { //MethodID:1602, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasLoaded;
+ }
+
+ public function get hasPlayed():Boolean
+ { //MethodID:1603, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasPlayed;
+ }
+
+ public function set sponsorVisibleOnLoop(hug1:Boolean):void
+ { //MethodID:1604, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isShowSponsorVideoOnLoop = hug1;
+ }
+
+ public function set isRetryable(hug1:Boolean):void
+ { //MethodID:1605, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isLoadRetryable = hug1;
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:1606, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isPlaying;
+ }
+
+ public function get isPausing():Boolean
+ { //MethodID:1607, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isPausing;
+ }
+
+ public function get isSeeking():Boolean
+ { //MethodID:1608, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isSeeking;
+ }
+
+ public function get isEnd():Boolean
+ { //MethodID:1609, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isEnd;
+ }
+
+ public function get isBuffering():Boolean
+ { //MethodID:1610, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isBuffering;
+ }
+
+ public function get mainTotalLength():Number
+ { //MethodID:1612, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 50
+ internal var length:Number; //slotID:1
+
+ length = NaN;
+
+ if(!this._isDeleted) return this._mainVideo.length;
+
+ length = 0;
+
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1611, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 33
+ if(hug1.name == ChildVideoName.USER_SPONSOR) return;
+
+ length += hug1.video.length;
+ });
+
+ return length;
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:1614, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 34
+ internal var loaded:Number; //slotID:1
+
+ loaded = NaN;
+ loaded = 0;
+
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1613, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ loaded += hug1.video.loadedLength;
+ });
+
+ return loaded;
+ }
+
+ public function get vpos():Number
+ { //MethodID:1615, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 70
+ if(!this.isInitialized) return 0;
+
+ var hug1:Number = 0;
+ var hug2:uint = 0;
+
+ while(hug2 < this._currentChildIndex){
+ hug1 += (this._childVideos[hug2].video as IChildVideo).length;
+ hug2++;
+ }
+
+ return (hug1 + this.__currentChild.vpos);
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:1617, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 32
+ internal var ret:Boolean; //slotID:1
+
+ ret = false;
+ ret = true;
+
+ this._childVideos.every(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):Boolean{ //MethodID:1616, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ ret = hug1.video.isInitialized;
+ return ret;
+ });
+
+ return ret;
+ }
+
+ public function get isControllable():Boolean
+ { //MethodID:1618, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.isControllable;
+ }
+
+ public function set isLoop(hug1:Boolean):void
+ { //MethodID:1620, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 42
+ internal var flag:Boolean; //slotID:1
+
+ flag = hug1;
+
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1619, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ hug1.video.isLoop = false;
+ });
+
+ this.__lastChild.isLoop = flag;
+
+ this._isLoop = flag;
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:1622, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 40
+ internal var vol:Number; //slotID:1
+
+ vol = hug1;
+ this._currentVolume = vol;
+
+ if(!this.isInitialized) return;
+ this._childVideos.forEach(function(hug1:_ChildVideoContainer, hug2:int, hug3:Array):void{ //MethodID:1621, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ if(hug1.video.isInitialized) hug1.video.volume = _currentVolume;
+ });
+ }
+
+ public function get videoPlayerStatus():String
+ { //MethodID:1623, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.videoPlayerStatus;
+ }
+
+ public function get layer():DisplayObject
+ { //MethodID:1624, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.layer;
+ }
+
+ public function get nakedDisplayObject():DisplayObject
+ { //MethodID:1625, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__currentChild.source;
+ }
+
+ public function get onVideoBufferingStarted():Functions
+ { //MethodID:1626, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._mainVideo.onVideoBufferingStarted;
+ }
+
+ public function get onVideoLoadComplete():Functions
+ { //MethodID:1627, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._mainVideo.onVideoLoadComplete;
+ }
+
+ public function get onVideoLoadError():Functions
+ { //MethodID:1628, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoLoadError;
+ }
+
+ private function get __currentChild():IChildVideo
+ { //MethodID:1629, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 40
+ var hug1:IChildVideo = null;
+
+ if(this._childVideos[this._currentChildIndex]) hug1 = this._childVideos[this._currentChildIndex].video;
+
+ return hug1;
+ }
+
+ private function get __nextContainer():_ChildVideoContainer
+ { //MethodID:1630, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 77
+ var hug1:int = (this._currentChildIndex + 1);
+
+ if(this._childVideos.length <= hug1) return null;
+
+ var hug2:_ChildVideoContainer = this._childVideos[hug1];
+
+ if(this._isLoop && !this._isShowSponsorVideoOnLoop && (hug2.name == ChildVideoName.USER_SPONSOR)) return null;
+
+ return hug2;
+ }
+
+ private function get __lastChild():IChildVideo
+ { //MethodID:1631, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ return this._childVideos[this._childVideos.length - 1].video;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get volume():Number
+ { //MethodID:1632, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ return this.__currentChild.volume;
+ }
+
+ public function get contentWidth():int
+ { //MethodID:1633, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._mainVideo.contentWidth;
+ }
+
+ public function get contentHeight():int
+ { //MethodID:1634, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._mainVideo.contentHeight;
+ }
+
+ public function get onChildVideoChanged():Functions
+ { //MethodID:1635, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onChildVideoChanged;
+ }
+
+ public function get currentChildVideoName():String
+ { //MethodID:1636, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return this.__CHILDREN_ORDER[this._currentChildIndex];
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+import jp.nicovideo.nicoplayer.models.video.IChildVideo
+
+//■class(instance)_index:112
+//private
+class _ChildVideoContainer extends Object
+{
+ //static constructor
+ public static function _ChildVideoContainer$cinit()
+ { //MethodID:1546, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ChildVideoContainer(hug1:String, hug2:IChildVideo)
+ { //MethodID:1547, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._name = hug1;
+ this._video = hug2;
+ }
+
+ //variables/etc.
+ private var _name:String; //slotID:0
+ private var _video:IChildVideo; //slotID:0
+
+ public function get video():IChildVideo
+ { //MethodID:1548, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function get name():String
+ { //MethodID:1549, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+}
+
+//■class(instance)_index:113
+//private
+class _SeekLocker extends Object
+{
+ //static constructor
+ public static function _SeekLocker$cinit()
+ { //MethodID:1550, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ _MAX_COUNT_OF_STORE = 400;
+ }
+
+ //static variables/etc.
+ private static const _MAX_COUNT_OF_STORE:int = 400; //slotID:1
+
+ //constructor
+ public function _SeekLocker(hug1:Function)
+ { //MethodID:1551, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ super();
+
+ if(hug1 == null) throw new ArgumentError("_SeekLocker._SeekLock: You have to set a valid function");
+
+ this._seekFunction = hug1;
+ }
+
+ //variables/etc.
+ private var _isLock:Boolean = false; //slotID:0
+ private var _lastVpos:Number = -1.0; //slotID:0
+ private var _count:int = 0; //slotID:0
+ private var _seekFunction:Function; //slotID:0
+
+ public function startLock():void
+ { //MethodID:1552, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isLock = true;
+ }
+
+ public function stockSeek(hug1:Number):void
+ { //MethodID:1553, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 55
+ this._count++;
+
+ if(this._count > _MAX_COUNT_OF_STORE) throw new ArgumentError("_SeekLock.stockSeek: You can not stock seek vpos more than " + _MAX_COUNT_OF_STORE + " times.");
+
+ this._lastVpos = hug1;
+ }
+
+ public function endLock():void
+ { //MethodID:1554, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ if(!this._isLock) throw new IllegalOperationError("_SeekLock.endLock: You have not called startLock() yet.");
+
+ if(this._count > 0) this._seekFunction.apply(null, [this._lastVpos]);
+
+ this._count = 0;
+ this._lastVpos = -1;
+ this._isLock = false;
+ }
+
+ public function get isLock():Boolean
+ { //MethodID:1555, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isLock;
+ }
+}
+
+//■script097■
+
+package jp.nicovideo.nicoplayer.tpls{
+
+ import flash.display.MovieClip
+ import jp.nicovideo.ext.config.IThumbConfig
+ import jp.nicovideo.marquee.INicoMarqueeClient
+ import jp.nicovideo.nicoplayer.app.IApplibarLoader
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.external.IExternalClient
+ import jp.nicovideo.nicoplayer.hiroba.IHirobaPlayer
+ import jp.nicovideo.nicoplayer.models.IMyList
+ import jp.nicovideo.nicoplayer.models.IObsevableContainer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.IPlayerInfo
+ import jp.nicovideo.nicoplayer.models.IPlayerVersion
+ import jp.nicovideo.nicoplayer.models.IRelatedVideoList
+ import jp.nicovideo.nicoplayer.models.StartVposConfig
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.IGetSponsorInfo
+ import jp.nicovideo.nicoplayer.models.api.IJumper
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.nicoplayer.models.comment.ICommentRouter
+ import jp.nicovideo.nicoplayer.models.comment.ITimeMachine
+ import jp.nicovideo.nicoplayer.models.filter.IDeleteFilter
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.nicoplayer.models.filter.IReplacer
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.flashvars.PlaylistFlashVars
+ import jp.nicovideo.nicoplayer.models.log.ILogManager
+ import jp.nicovideo.nicoplayer.models.mylist.IDefaultMylistAppendable
+ import jp.nicovideo.nicoplayer.models.playlist.IPlaylistController
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.models.video.VideoLoadWatcher
+ import jp.nicovideo.nicoplayer.remocon.IRemoconClient
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+ import jp.nicovideo.nicoplayer.views.IJumpMessageLayer
+ import jp.nicovideo.nicoplayer.views.IVideoLayerManager
+ import jp.nicovideo.nicoplayer.views.comment.ICommentLayer
+ import jp.nicovideo.nicoplayer.views.framerate.IFrameRateBooster
+ import jp.nicovideo.nicoscript.INicoSClient
+ import jp.nicovideo.util.events.EventSender
+
+ //■class(instance)_index:115
+ public interface INicoViewControllerClient
+ {
+ //static constructor
+ public static function INicoViewControllerClient$cinit()
+ { //MethodID:1638, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function addSetUpHandler(hug1:Array, hug2:Function):void; //MethodID:1639, dispID:0
+
+ function get nicoConfig():NicoConfig; //MethodID:1640, dispID:0
+
+ function get playerVersion():IPlayerVersion; //MethodID:1641, dispID:0
+
+ function get playerInfo():IPlayerInfo; //MethodID:1642, dispID:0
+
+ function get playerConfig():IPlayerConfig; //MethodID:1643, dispID:0
+
+ function get flashVars():NicoFlashVars; //MethodID:1644, dispID:0
+
+ function get viewRoot():MovieClip; //MethodID:1645, dispID:0
+
+ function get getFLVData():IGetFLV; //MethodID:1646, dispID:0
+
+ function get video():IVideo; //MethodID:1647, dispID:0
+
+ function get commentListContainer():Object; //MethodID:1648, dispID:0
+
+ function get ngFilter():INGComment; //MethodID:1649, dispID:0
+
+ function get relatedList():IRelatedVideoList; //MethodID:1650, dispID:0
+
+ function get deleteFilter():IDeleteFilter; //MethodID:1651, dispID:0
+
+ function get commentShutter():IControllerShutter; //MethodID:1652, dispID:0
+
+ function get audioShutter():IControllerShutter; //MethodID:1653, dispID:0
+
+ function get commentRouter():ICommentRouter; //MethodID:1654, dispID:0
+
+ function get videoController():IVideoController; //MethodID:1655, dispID:0
+
+ function get jumpMessageLayer():IJumpMessageLayer; //MethodID:1656, dispID:0
+
+ function get commentLayer():ICommentLayer; //MethodID:1657, dispID:0
+
+ function get commentLayerView():*; //MethodID:1658, dispID:0
+
+ function get commentViewTransformer():*; //MethodID:1659, dispID:0
+
+ function get videoLayerManager():IVideoLayerManager; //MethodID:1660, dispID:0
+
+ function get timeMachine():ITimeMachine; //MethodID:1661, dispID:0
+
+ function get nicoSClient():INicoSClient; //MethodID:1662, dispID:0
+
+ function get marqueeClient():INicoMarqueeClient; //MethodID:1663, dispID:0
+
+ function get commentStorageEvents():EventSender; //MethodID:1664, dispID:0
+
+ function get replacer():IReplacer; //MethodID:1665, dispID:0
+
+ function get externalClient():IExternalClient; //MethodID:1666, dispID:0
+
+ function get thumbConfig():IThumbConfig; //MethodID:1667, dispID:0
+
+ function get hirobaPlayer():IHirobaPlayer; //MethodID:1668, dispID:0
+
+ function get jumper():IJumper; //MethodID:1669, dispID:0
+
+ function get channelReplacer():*; //MethodID:1670, dispID:0
+
+ function get getSponsorInfo():IGetSponsorInfo; //MethodID:1671, dispID:0
+
+ function get myList():IMyList; //MethodID:1672, dispID:0
+
+ function get defaultMylistAppender():IDefaultMylistAppendable; //MethodID:1673, dispID:0
+
+ function get pluginClient():IObsevableContainer; //MethodID:1674, dispID:0
+
+ function get applibarLoader():IApplibarLoader; //MethodID:1675, dispID:0
+
+ function get lockedComment():*; //MethodID:1676, dispID:0
+
+ function get initializeInfo():InitializeInfo; //MethodID:1677, dispID:0
+
+ function get playlistController():IPlaylistController; //MethodID:1678, dispID:0
+
+ function get playlistFlashVars():PlaylistFlashVars; //MethodID:1679, dispID:0
+
+ function get logManager():ILogManager; //MethodID:1680, dispID:0
+
+ function get startVposConfig():StartVposConfig; //MethodID:1681, dispID:0
+
+ function get filteredCommentPoolContainers():Array; //MethodID:1682, dispID:0
+
+ function get videoLoadWatcher():VideoLoadWatcher; //MethodID:1683, dispID:0
+
+ function get remoconClient():IRemoconClient; //MethodID:1684, dispID:0
+
+ function get playerPageMyselfURL():String; //MethodID:1685, dispID:0
+
+ function get videoenderTesterConfig():IVideoenderTesterConfig; //MethodID:1686, dispID:0
+
+ function get frameRateBooster():IFrameRateBooster; //MethodID:1687, dispID:0
+
+ //constructor
+ public function INicoViewControllerClient(); //MethodID:1688, dispID:0
+ }
+}
+
+//■script098■
+
+package jp.nicovideo.nicoplayer.tpls{
+
+ import flash.display.MovieClip
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.ext.config.IThumbConfig
+ import jp.nicovideo.marquee.INicoMarqueeClient
+ import jp.nicovideo.nicoplayer.app.IApplibarLoader
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.external.IExternalClient
+ import jp.nicovideo.nicoplayer.hiroba.IHirobaPlayer
+ import jp.nicovideo.nicoplayer.models.IMyList
+ import jp.nicovideo.nicoplayer.models.IObsevableContainer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.IPlayerInfo
+ import jp.nicovideo.nicoplayer.models.IPlayerVersion
+ import jp.nicovideo.nicoplayer.models.IRelatedVideoList
+ import jp.nicovideo.nicoplayer.models.StartVposConfig
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.IGetSponsorInfo
+ import jp.nicovideo.nicoplayer.models.api.IJumper
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.nicoplayer.models.comment.ICommentRouter
+ import jp.nicovideo.nicoplayer.models.comment.ITimeMachine
+ import jp.nicovideo.nicoplayer.models.filter.IDeleteFilter
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.nicoplayer.models.filter.IReplacer
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.flashvars.PlaylistFlashVars
+ import jp.nicovideo.nicoplayer.models.log.ILogManager
+ import jp.nicovideo.nicoplayer.models.mylist.IDefaultMylistAppendable
+ import jp.nicovideo.nicoplayer.models.playlist.IPlaylistController
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.models.video.VideoLoadWatcher
+ import jp.nicovideo.nicoplayer.remocon.IRemoconClient
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+ import jp.nicovideo.nicoplayer.views.IJumpMessageLayer
+ import jp.nicovideo.nicoplayer.views.IVideoLayerManager
+ import jp.nicovideo.nicoplayer.views.comment.ICommentLayer
+ import jp.nicovideo.nicoplayer.views.framerate.IFrameRateBooster
+ import jp.nicovideo.nicoscript.INicoSClient
+ import jp.nicovideo.util.events.EventSender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:117
+ public class NicoViewControllerClient extends Object implements INicoViewControllerClient
+ {
+ //static constructor
+ public static function NicoViewControllerClient$cinit()
+ { //MethodID:1695, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _viewRoot:MovieClip; //slotID:0
+ private var _nicoConfig:NicoConfig; //slotID:0
+ private var _playerVersion:IPlayerVersion; //slotID:0
+ private var _playerInfo:IPlayerInfo; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _flashVars:NicoFlashVars; //slotID:0
+ private var _getFLVData:IGetFLV; //slotID:0
+ private var _video:IVideo; //slotID:0
+ private var _commentListContainer:Object; //slotID:0
+ private var _ngFilter:INGComment; //slotID:0
+ private var _relatedList:IRelatedVideoList; //slotID:0
+ private var _deleteFilter:IDeleteFilter; //slotID:0
+ private var _videoController:IVideoController; //slotID:0
+ private var _videoLayerManager:IVideoLayerManager; //slotID:0
+ private var _commentShutter:IControllerShutter; //slotID:0
+ private var _audioShutter:IControllerShutter; //slotID:0
+ private var _commentRouter:ICommentRouter; //slotID:0
+ private var _timeMachine:ITimeMachine; //slotID:0
+ private var _jumpMessageLayer:IJumpMessageLayer; //slotID:0
+ private var _nicoSClient:INicoSClient; //slotID:0
+ private var _marqueeClient:INicoMarqueeClient; //slotID:0
+ private var _commentStorageEvents:EventSender; //slotID:0
+ private var _setUpCheckers:Array; //slotID:0
+ private var _replacer:IReplacer; //slotID:0
+ private var _commentLayer:ICommentLayer; //slotID:0
+ private var _commentLayerView:*; //slotID:0
+ private var _commentViewTransformer:*; //slotID:0
+ private var _externalClient:IExternalClient; //slotID:0
+ private var _thumbConfig:IThumbConfig; //slotID:0
+ private var _hirobaPlayer:IHirobaPlayer; //slotID:0
+ private var _jumper:IJumper; //slotID:0
+ private var _channelReplacer:*; //slotID:0
+ private var _getSponsorInfo:IGetSponsorInfo; //slotID:0
+ private var _myList:IMyList; //slotID:0
+ private var _pluginClient:IObsevableContainer; //slotID:0
+ private var _lockedComment:*; //slotID:0
+ private var _applibarLoader:IApplibarLoader; //slotID:0
+ private var _initializeInfo:InitializeInfo; //slotID:0
+ private var _playlistController:IPlaylistController; //slotID:0
+ private var _startVposConfig:StartVposConfig; //slotID:0
+ private var _playlistFlashVars:PlaylistFlashVars; //slotID:0
+ private var _logManager:ILogManager; //slotID:0
+ private var _filteredCommentPoolContainers:Array; //slotID:0
+ private var _videoLoadWatcher:VideoLoadWatcher; //slotID:0
+ private var _remoconClient:IRemoconClient; //slotID:0
+ private var _playerPageMyselfURL:String; //slotID:0
+ private var _defaultMylistAppender:IDefaultMylistAppendable; //slotID:0
+ private var _videoenderTesterConfig:IVideoenderTesterConfig; //slotID:0
+ private var _frameRateBooster:IFrameRateBooster; //slotID:0
+ private var _hasSetList:Array; //slotID:0
+
+ public function get viewRoot():MovieClip
+ { //MethodID:1696, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._viewRoot;
+ }
+
+ public function set viewRoot(hug1:MovieClip):void
+ { //MethodID:1697, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("viewRoot", hug1);
+ }
+
+ public function get nicoConfig():NicoConfig
+ { //MethodID:1698, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoConfig;
+ }
+
+ public function set nicoConfig(hug1:NicoConfig):void
+ { //MethodID:1699, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("nicoConfig", hug1);
+ }
+
+ public function get playerVersion():IPlayerVersion
+ { //MethodID:1700, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerVersion;
+ }
+
+ public function set playerVersion(hug1:IPlayerVersion):void
+ { //MethodID:1701, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playerVersion", hug1);
+ }
+
+ public function get playerInfo():IPlayerInfo
+ { //MethodID:1702, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerInfo;
+ }
+
+ public function set playerInfo(hug1:IPlayerInfo):void
+ { //MethodID:1703, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playerInfo", hug1);
+ }
+
+ public function get playerConfig():IPlayerConfig
+ { //MethodID:1704, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerConfig;
+ }
+
+ public function set playerConfig(hug1:IPlayerConfig):void
+ { //MethodID:1705, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playerConfig", hug1);
+ }
+
+ public function get flashVars():NicoFlashVars
+ { //MethodID:1706, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._flashVars;
+ }
+
+ public function set flashVars(hug1:NicoFlashVars):void
+ { //MethodID:1707, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("flashVars", hug1);
+ }
+
+ public function get getFLVData():IGetFLV
+ { //MethodID:1708, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._getFLVData;
+ }
+
+ public function set getFLVData(hug1:IGetFLV):void
+ { //MethodID:1709, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("getFLVData", hug1);
+ }
+
+ public function get video():IVideo
+ { //MethodID:1710, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function set video(hug1:IVideo):void
+ { //MethodID:1711, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("video", hug1);
+ }
+
+ public function get commentListContainer():Object
+ { //MethodID:1712, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentListContainer;
+ }
+
+ public function set commentListContainer(hug1:Object):void
+ { //MethodID:1713, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentListContainer", hug1);
+ }
+
+ public function get jumpMessageLayer():IJumpMessageLayer
+ { //MethodID:1714, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpMessageLayer;
+ }
+
+ public function set jumpMessageLayer(hug1:IJumpMessageLayer):void
+ { //MethodID:1715, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("jumpMessageLayer", hug1);
+ }
+
+ public function get ngFilter():INGComment
+ { //MethodID:1716, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ngFilter;
+ }
+
+ public function set ngFilter(hug1:INGComment):void
+ { //MethodID:1717, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("ngFilter", hug1);
+ }
+
+ public function get relatedList():IRelatedVideoList
+ { //MethodID:1718, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._relatedList;
+ }
+
+ public function set relatedList(hug1:IRelatedVideoList):void
+ { //MethodID:1719, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("relatedList", hug1);
+ }
+
+ public function get deleteFilter():IDeleteFilter
+ { //MethodID:1720, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deleteFilter;
+ }
+
+ public function set deleteFilter(hug1:IDeleteFilter):void
+ { //MethodID:1721, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("deleteFilter", hug1);
+ }
+
+ public function get timeMachine():ITimeMachine
+ { //MethodID:1722, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._timeMachine;
+ }
+
+ public function set timeMachine(hug1:ITimeMachine):void
+ { //MethodID:1723, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("timeMachine", hug1);
+ }
+
+ public function get commentShutter():IControllerShutter
+ { //MethodID:1724, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentShutter;
+ }
+
+ public function set commentShutter(hug1:IControllerShutter):void
+ { //MethodID:1725, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentShutter", hug1);
+ }
+
+ public function get audioShutter():IControllerShutter
+ { //MethodID:1726, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._audioShutter;
+ }
+
+ public function set audioShutter(hug1:IControllerShutter):void
+ { //MethodID:1727, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("audioShutter", hug1);
+ }
+
+ public function get commentRouter():ICommentRouter
+ { //MethodID:1728, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentRouter;
+ }
+
+ public function set commentRouter(hug1:ICommentRouter):void
+ { //MethodID:1729, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentRouter", hug1);
+ }
+
+ public function get videoController():IVideoController
+ { //MethodID:1730, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoController;
+ }
+
+ public function set videoController(hug1:IVideoController):void
+ { //MethodID:1731, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("videoController", hug1);
+ }
+
+ public function get videoLayerManager():IVideoLayerManager
+ { //MethodID:1732, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLayerManager;
+ }
+
+ public function set videoLayerManager(hug1:IVideoLayerManager):void
+ { //MethodID:1733, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("videoLayerManager", hug1);
+ }
+
+ public function get commentLayer():ICommentLayer
+ { //MethodID:1734, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentLayer;
+ }
+
+ public function set commentLayer(hug1:ICommentLayer):void
+ { //MethodID:1735, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentLayer", hug1);
+ }
+
+ public function get commentLayerView():*
+ { //MethodID:1736, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentLayerView;
+ }
+
+ public function set commentLayerView(hug1:*):void
+ { //MethodID:1737, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentLayerView", hug1);
+ }
+
+ public function get commentViewTransformer():*
+ { //MethodID:1738, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentViewTransformer;
+ }
+
+ public function set commentViewTransformer(hug1:*):void
+ { //MethodID:1739, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentViewTransformer", hug1);
+ }
+
+ public function get nicoSClient():INicoSClient
+ { //MethodID:1740, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nicoSClient;
+ }
+
+ public function set nicoSClient(hug1:INicoSClient):void
+ { //MethodID:1741, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("nicoSClient", hug1);
+ }
+
+ public function get marqueeClient():INicoMarqueeClient
+ { //MethodID:1742, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueeClient;
+ }
+
+ public function set marqueeClient(hug1:INicoMarqueeClient):void
+ { //MethodID:1743, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("marqueeClient", hug1);
+ }
+
+ public function get commentStorageEvents():EventSender
+ { //MethodID:1744, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentStorageEvents;
+ }
+
+ public function set commentStorageEvents(hug1:EventSender):void
+ { //MethodID:1745, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("commentStorageEvents", hug1);
+ }
+
+ public function get replacer():IReplacer
+ { //MethodID:1746, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._replacer;
+ }
+
+ public function set replacer(hug1:IReplacer):void
+ { //MethodID:1747, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("replacer", hug1);
+ }
+
+ public function get externalClient():IExternalClient
+ { //MethodID:1748, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._externalClient;
+ }
+
+ public function set externalClient(hug1:IExternalClient):void
+ { //MethodID:1749, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("externalClient", hug1);
+ }
+
+ public function get thumbConfig():IThumbConfig
+ { //MethodID:1750, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbConfig;
+ }
+
+ public function set thumbConfig(hug1:IThumbConfig):void
+ { //MethodID:1751, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("thumbConfig", hug1);
+ }
+
+ public function get hirobaPlayer():IHirobaPlayer
+ { //MethodID:1752, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hirobaPlayer;
+ }
+
+ public function set hirobaPlayer(hug1:IHirobaPlayer):void
+ { //MethodID:1753, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("hirobaPlayer", hug1);
+ }
+
+ public function get jumper():IJumper
+ { //MethodID:1754, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumper;
+ }
+
+ public function set jumper(hug1:IJumper):void
+ { //MethodID:1755, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("jumper", hug1);
+ }
+
+ public function get channelReplacer():*
+ { //MethodID:1756, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelReplacer;
+ }
+
+ public function set channelReplacer(hug1:*):void
+ { //MethodID:1757, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("channelReplacer", hug1);
+ }
+
+ public function get getSponsorInfo():IGetSponsorInfo
+ { //MethodID:1758, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._getSponsorInfo;
+ }
+
+ public function set getSponsorInfo(hug1:IGetSponsorInfo):void
+ { //MethodID:1759, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("getSponsorInfo", hug1);
+ }
+
+ public function get myList():IMyList
+ { //MethodID:1760, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._myList;
+ }
+
+ public function set myList(hug1:IMyList):void
+ { //MethodID:1761, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("myList", hug1);
+ }
+
+ public function get defaultMylistAppender():IDefaultMylistAppendable
+ { //MethodID:1762, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._defaultMylistAppender;
+ }
+
+ public function set defaultMylistAppender(hug1:IDefaultMylistAppendable):void
+ { //MethodID:1763, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("defaultMylistAppender", hug1);
+ }
+
+ public function get pluginClient():IObsevableContainer
+ { //MethodID:1764, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._pluginClient;
+ }
+
+ public function set pluginClient(hug1:IObsevableContainer):void
+ { //MethodID:1765, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("pluginClient", hug1);
+ }
+
+ public function get lockedComment():*
+ { //MethodID:1766, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._lockedComment;
+ }
+
+ public function set lockedComment(hug1:*):void
+ { //MethodID:1767, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("lockedComment", hug1);
+ }
+
+ public function get initializeInfo():InitializeInfo
+ { //MethodID:1768, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._initializeInfo;
+ }
+
+ public function set initializeInfo(hug1:InitializeInfo):void
+ { //MethodID:1769, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("initializeInfo", hug1);
+ }
+
+ public function get applibarLoader():IApplibarLoader
+ { //MethodID:1770, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._applibarLoader;
+ }
+
+ public function set applibarLoader(hug1:IApplibarLoader):void
+ { //MethodID:1771, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("applibarLoader", hug1);
+ }
+
+ public function get playlistController():IPlaylistController
+ { //MethodID:1772, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistController;
+ }
+
+ public function set playlistController(hug1:IPlaylistController):void
+ { //MethodID:1773, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playlistController", hug1);
+ }
+
+ public function get playlistFlashVars():PlaylistFlashVars
+ { //MethodID:1774, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playlistFlashVars;
+ }
+
+ public function set playlistFlashVars(hug1:PlaylistFlashVars):void
+ { //MethodID:1775, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playlistFlashVars", hug1);
+ }
+
+ public function addSetUpHandler(hug1:Array, hug2:Function):void
+ { //MethodID:1776, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 116
+ var hug5:String = null;
+ var hug3:_SetUpChecker = new _SetUpChecker(hug1, hug2);
+ var hug4:Boolean = false;
+
+ for each(hug5 in hug1){
+ if(this["_" + hug5]) hug4 = hug3.check(hug5);
+
+ if(hug4) break;
+ }
+
+ if(hug4){
+ hug3.handler.apply();
+ }else{
+ this._setUpCheckers.push(hug3);
+ }
+ }
+
+ public function get startVposConfig():StartVposConfig
+ { //MethodID:1777, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._startVposConfig;
+ }
+
+ public function set startVposConfig(hug1:StartVposConfig):void
+ { //MethodID:1778, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("startVposConfig", hug1);
+ }
+
+ public function get logManager():ILogManager
+ { //MethodID:1779, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._logManager;
+ }
+
+ public function set logManager(hug1:ILogManager):void
+ { //MethodID:1780, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("logManager", hug1);
+ }
+
+ public function get filteredCommentPoolContainers():Array
+ { //MethodID:1781, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._filteredCommentPoolContainers;
+ }
+
+ public function set filteredCommentPoolContainers(hug1:Array):void
+ { //MethodID:1782, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("filteredCommentPoolContainers", hug1);
+ }
+
+ public function get videoLoadWatcher():VideoLoadWatcher
+ { //MethodID:1783, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoLoadWatcher;
+ }
+
+ public function set videoLoadWatcher(hug1:VideoLoadWatcher):void
+ { //MethodID:1784, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("videoLoadWatcher", hug1);
+ }
+
+ public function get remoconClient():IRemoconClient
+ { //MethodID:1785, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._remoconClient;
+ }
+
+ public function set remoconClient(hug1:*):void
+ { //MethodID:1786, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("remoconClient", hug1);
+ }
+
+ public function get playerPageMyselfURL():String
+ { //MethodID:1787, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerPageMyselfURL;
+ }
+
+ public function set playerPageMyselfURL(hug1:String):void
+ { //MethodID:1788, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("playerPageMyselfURL", hug1);
+ }
+
+ public function get videoenderTesterConfig():IVideoenderTesterConfig
+ { //MethodID:1789, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoenderTesterConfig;
+ }
+
+ public function set videoenderTesterConfig(hug1:IVideoenderTesterConfig):void
+ { //MethodID:1790, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("videoenderTesterConfig", hug1);
+ }
+
+ public function get frameRateBooster():IFrameRateBooster
+ { //MethodID:1791, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._frameRateBooster;
+ }
+
+ public function set frameRateBooster(hug1:IFrameRateBooster):void
+ { //MethodID:1792, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ this._setProperty("frameRateBooster", hug1);
+ }
+
+ private function _setProperty(hug1:String, hug2:*):void
+ { //MethodID:1793, LocalCount= 10 , MaxScope= 1, MaxStack= 3, CodeLength= 241
+ var hug5:_SetUpChecker = null;
+ var hug6:uint = 0;
+ var hug7:_SetUpChecker = null;
+
+ if(hug2 == null){
+ this._removeProperty(hug1);
+
+ return;
+ }
+
+ var hug3:String = ("_" + hug1);
+
+ if(this._hasSetList.indexOf(hug1) != (-1)) throw new IllegalOperationError("NicoViewControllerClient._setProperty: _" + hug1 + " has set already.");
+
+ this[hug3] = hug2;
+
+ this._hasSetList.push(hug1);
+
+ var hug4:Array = [];
+
+ for each(hug5 in this._setUpCheckers){
+ if(hug5.check(hug1)) hug4.push(this._setUpCheckers.indexOf(hug5));
+ }
+
+ hug4.sort(Array.NUMERIC | Array.DESCENDING);
+
+ for each(hug6 in hug4){
+ hug7 = this._setUpCheckers[hug6];
+
+ this._setUpCheckers.splice(hug6, 1);
+ hug7.handler.apply();
+ }
+ }
+
+ private function _removeProperty(hug1:String):void
+ { //MethodID:1794, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 48
+ var hug3:String = null;
+ var hug2:int = this._hasSetList.indexOf(hug1);
+
+ if(hug2 >= 0){
+ this._hasSetList.splice(hug2, 1);
+
+ hug3 = ("_" + hug1);
+ this[hug3] = null;
+ }
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get setUpCounters():Array
+ { //MethodID:1795, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._setUpCheckers;
+ }
+
+ //constructor
+ public function NicoViewControllerClient()
+ { //MethodID:1796, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ this._setUpCheckers = [];
+ this._hasSetList = [];
+
+ super();
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+
+//■class(instance)_index:116
+//private
+class _SetUpChecker extends Object
+{
+ //static constructor
+ public static function _SetUpChecker$cinit()
+ { //MethodID:1690, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SetUpChecker(hug1:Array, hug2:Function)
+ { //MethodID:1691, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ super();
+
+ this._names = hug1.concat();
+ this._flags = [];
+ this._handler = hug2;
+ }
+
+ //variables/etc.
+ private var _names:Array; //slotID:0
+ private var _handler:Function; //slotID:0
+ private var _flags:Array; //slotID:0
+ private var _finised:Boolean = false; //slotID:0
+
+ public function check(hug1:String):Boolean
+ { //MethodID:1692, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 96
+ if(this._finised) throw new IllegalOperationError("_SetUpCounter.check: check has finised.");
+
+ var hug2:int = this._names.indexOf(hug1);
+
+ if(hug2 == (-1)) return false;
+
+ this._flags[hug2] = true;
+ var hug3:uint = 0;
+
+ while(hug3 < this.names.length){
+ if(!this._flags[hug3]) return false;
+
+ hug3++;
+ }
+
+ this._finised = true;
+ return true;
+ }
+
+ public function get handler():Function
+ { //MethodID:1693, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._handler;
+ }
+
+ public function get names():Array
+ { //MethodID:1694, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._names;
+ }
+}
+
+//■script099■
+
+package jp.nicovideo.hiroba{
+
+ import jp.nicovideo.hiroba.models.IHirobaComment
+
+ //■class(instance)_index:118
+ public interface IHirobaConnector implements IEventDispatcher
+ {
+ //static constructor
+ public static function IHirobaConnector$cinit()
+ { //MethodID:1798, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function initialize(hug1:IHirobaConnectorClient):void; //MethodID:1799, dispID:0
+
+ function connect(hug1:Function):void; //MethodID:1800, dispID:0
+
+ function post(hug1:Function, hug2:IHirobaComment):void; //MethodID:1801, dispID:0
+
+ //constructor
+ public function IHirobaConnector(); //MethodID:1802, dispID:0
+ }
+}
+
+//■script100■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import flash.events.Event
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.models.video.VideoWrapper
+ import jp.nicovideo.util.LC
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:119
+ public class VideoLoadGuardian extends Object
+ {
+ //static constructor
+ public static function VideoLoadGuardian$cinit()
+ { //MethodID:1804, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ LC_LOAD_MAX = 2;
+ }
+
+ //static variables/etc.
+ private static const LC_LOAD_MAX:uint = 2; //slotID:1
+
+ //constructor
+ public function VideoLoadGuardian(hug1:VideoWrapper, hug2:Boolean)
+ { //MethodID:1805, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 46
+ this._lc = new LC("jp.nicovideo.nicoplayer.models.LoadController");
+
+ super();
+
+ this._video = hug1;
+ this._isPremium = hug2;
+ this._loadLCList = {};
+
+ if(!hug2) this._init();
+ }
+
+ //variables/etc.
+ private var _lc:LC; //slotID:0
+ private var _video:VideoWrapper; //slotID:0
+ private var _isPremium:Boolean; //slotID:0
+ private var _lcName:String; //slotID:0
+ private var _loadLCList:Object; //slotID:0
+ private var _resultFunc:Function; //slotID:0
+ private var isLoadStart:Boolean = false; //slotID:0
+ private var _destroyFunc:Function; //slotID:0
+
+ private function _init():void
+ { //MethodID:1815, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 51
+ this._lcName = ("Mr." + TimeUtils.now().getTime());
+
+ this._lc.join(function():void{ //MethodID:1813, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 112
+ internal var timer:Timer; //slotID:1
+ internal var onTimer:Function; //slotID:2
+ internal var timerStart:Function; //slotID:3
+ internal var loadEnd:Function; //slotID:4
+ internal var sendLoadLCName:Function; //slotID:5
+
+ timer = null;
+ onTimer = null;
+
+ if(_lc.isMaster){
+ onTimer = function():void{ //MethodID:1806, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 101
+ var hug2:String = null;
+ var hug1:Boolean = false;
+
+ for(hug2 in _loadLCList){
+ hug1 = true;
+
+ if((TimeUtils.now().getTime() - _loadLCList[hug2]) > 3000) loadEnd(hug2);
+ }
+
+ if(!hug1){
+ timer.removeEventListener(TimerEvent.TIMER, onTimer);
+
+ timer = null;
+ }
+ };
+
+ timerStart = function():void{ //MethodID:1807, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 37
+ timer = new Timer(1000);
+
+ timer.addEventListener(TimerEvent.TIMER, onTimer);
+ timer.start();
+ };
+
+ loadEnd = function(hug1:String):void{ //MethodID:1808, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ delete _loadLCList[hug1];
+ };
+
+ sendLoadLCName = function():void{ //MethodID:1809, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 15
+ _lc.send(null, "loadName", _loadLCList);
+ };
+
+ timerStart();
+ _lc.receive(function(hug1:Object):void{ //MethodID:1810, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 9
+ sendLoadLCName();
+ }, "confirm");
+ _lc.receive(function(hug1:Object):void{ //MethodID:1811, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 51
+ var hug2:String = String(hug1);
+
+ if(timer == null) timerStart();
+
+ _loadLCList[hug2] = TimeUtils.now().getTime();
+
+ sendLoadLCName();
+ }, "loading");
+ _lc.receive(function(hug1:Object):void{ //MethodID:1812, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 15
+ loadEnd(String(hug1));
+ }, "complete");
+ }
+ });
+ this._lc.receive(function(hug1:Object):void{ //MethodID:1814, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ _loadLCList = hug1;
+
+ if(!isLoadStart) _loadStart();
+ }, "loadName");
+ }
+
+ public function loadStart(hug1:Function):void
+ { //MethodID:1816, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 59
+ if(this._isPremium){
+ hug1(true);
+
+ return;
+ }
+
+ this._resultFunc = hug1;
+
+ if(this._lc.isMaster){
+ this._loadStart();
+ }else{
+ this._lc.send(null, "confirm", this._lcName);
+ }
+ }
+
+ public function destroy():void
+ { //MethodID:1817, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ if(this._destroyFunc != null) this._destroyFunc();
+ }
+
+ private function _loadStart():void
+ { //MethodID:1820, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 227
+ internal var timer:Timer; //slotID:1
+ internal var onTimer:Function; //slotID:2
+ internal var loadEnd:Function; //slotID:3
+ internal var count:uint; //slotID:4
+ internal var key:String; //slotID:5
+
+ timer = null;
+ onTimer = null;
+ loadEnd = null;
+ count = 0;
+ key = null;
+ onTimer = function(hug1:Event):void{ //MethodID:1818, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 63
+ if(_lc.isMaster){
+ _loadLCList[_lcName] = TimeUtils.now().getTime();
+
+ _lc.send(null, "loadName", _loadLCList);
+ }else{
+ _lc.send(null, "loading", _lcName);
+ }
+ };
+
+ loadEnd = function():void{ //MethodID:1819, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 87
+ if(_lc.isMaster){
+ delete _loadLCList[_lcName];
+ }else{
+ _lc.send(null, "complete", _lcName);
+ }
+
+ _lc.close();
+ timer.removeEventListener(TimerEvent.TIMER, onTimer);
+ _video.onVideoLoadComplete.remove(loadEnd);
+ _video.onVideoLoadError.remove(loadEnd);
+ };
+
+ this.isLoadStart = true;
+
+ if(!this._lc.isMaster){
+ count = 0;
+
+ for(key in this._loadLCList){
+ count += 1;
+ }
+
+ if(count >= LC_LOAD_MAX){
+ this._resultFunc(false);
+
+ return;
+ }
+ }
+
+ timer = new Timer(1000);
+
+ timer.addEventListener(TimerEvent.TIMER, onTimer);
+
+ this._destroyFunc = loadEnd;
+
+ this._video.onVideoLoadComplete.add(loadEnd);
+ this._video.onVideoLoadError.add(loadEnd);
+ timer.start();
+ this._resultFunc(true);
+ }
+ }
+}
+
+//■script101■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:120
+ public interface IGetRelation
+ {
+ //static constructor
+ public static function IGetRelation$cinit()
+ { //MethodID:1822, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function load(hug1:Function, hug2:Vector.<String>, hug3:Vector.<String>=null, hug4:uint=1, hug5:String=null, hug6:String=null, hug7:uint=1):void;//MethodID:1823, dispID:0
+
+ //constructor
+ public function IGetRelation(); //MethodID:1824, dispID:0
+ }
+}
+
+//■script102■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import __AS3__.vec.Vector
+ import flash.net.URLRequestMethod
+ import jp.nicovideo.nicoplayer.models.RelatedConstants
+ import jp.nicovideo.nicoplayer.models.api.relation.GetRelationResultFactory
+ import jp.nicovideo.nicoplayer.models.api.relation.GetRelationTarget
+ import jp.nicovideo.nicoplayer.models.api.relation.IGetRelationResult
+ import jp.nicovideo.nicoplayer.models.api.relation.ILiveDJInfo
+ import jp.nicovideo.util.ObjectUtils
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:123
+ public class GetRelation extends Object implements IGetRelation
+ {
+ //static constructor
+ public static function GetRelation$cinit()
+ { //MethodID:1836, LocalCount= 1 , MaxScope= 1, MaxStack= 10, CodeLength= 129
+ LOAD_TARGETS = Vector.<String>([GetRelationTarget.RELATED_VIDEO, GetRelationTarget.OWNER_VIDEO, GetRelationTarget.LIVE_DJ]);
+ LOAD_SORT_VALUES = Vector.<String>([RelatedConstants.SORT_ENTRYDATE, RelatedConstants.SORT_RELATEDPOINT, RelatedConstants.SORT_VIEWCOUNTER, RelatedConstants.SORT_ENTRYDATE, RelatedConstants.SORT_RESDATE, RelatedConstants.SORT_RESNUM, RelatedConstants.SORT_MYLISTCOUNTER]);
+ LOAD_ORDER_VALUES = Vector.<String>([RelatedConstants.ORDER_UP, RelatedConstants.ORDER_DOWN]);
+ }
+
+ //static variables/etc.
+ public static const LOAD_TARGETS:Vector.<String>; //slotID:1
+ public static const LOAD_SORT_VALUES:Vector.<String>; //slotID:2
+ public static const LOAD_ORDER_VALUES:Vector.<String>; //slotID:3
+
+ //constructor
+ public function GetRelation(hug1:Function, hug2:String, hug3:String=null, hug4:String=null)
+ { //MethodID:1837, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 51
+ super();
+
+ if((hug1 == null) || (hug2 == null)) throw new ArgumentError("GetRelation.GetRelation: invalid parameters.");
+
+ this._loadFunc = hug1;
+ this._apiURL = hug2;
+
+ this.initialize(hug3, hug4);
+ }
+
+ //variables/etc.
+ private var _loadFunc:Function; //slotID:0
+ private var _watchID:String; //slotID:0
+ private var _apiURL:String; //slotID:0
+ private var _category:String; //slotID:0
+ private var _loadedInfoContainer:_LoadedInfoContainer; //slotID:0
+
+ public function initialize(hug1:String, hug2:String):void
+ { //MethodID:1838, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this._watchID = hug1;
+ this._category = hug2;
+ this._loadedInfoContainer = new _LoadedInfoContainer();
+ }
+
+ public function load(hug1:Function, hug2:Vector.<String>, hug3:Vector.<String>=null, hug4:uint=0, hug5:String=null, hug6:String=null, hug7:uint=1):void
+ { //MethodID:1842, LocalCount= 9 , MaxScope= 2, MaxStack= 10, CodeLength= 552
+ internal var onLoaded:Function; //slotID:1
+ internal var targets:Vector.<String>; //slotID:2
+ internal var extTargets:Vector.<String> = null; //slotID:3
+ internal var extTargetCount:uint = 0; //slotID:4
+ internal var sort:String = null; //slotID:5
+ internal var order:String = null; //slotID:6
+ internal var page:uint = 1; //slotID:7
+ internal var options:Object; //slotID:8
+ internal var extTargetsLength:uint; //slotID:9
+ internal var loadedResultMap:Object; //slotID:10
+ internal var targets2Load:Vector.<String>; //slotID:11
+ internal var extTargets2Load:Vector.<String>; //slotID:12
+ internal var extTargetCount2Load:uint; //slotID:13
+ internal var i:uint; //slotID:14
+ internal var filterTargets2UseCache:Function; //slotID:15
+ internal var createResult:Function; //slotID:16
+
+ options = null;
+ loadedResultMap = null;
+ targets2Load = null;
+ extTargets2Load = null;
+ extTargetCount2Load = 0;
+ onLoaded = hug1;
+ targets = hug2;
+ extTargets = hug3;
+ extTargetCount = hug4;
+ sort = hug5;
+ order = hug6;
+ page = hug7;
+ filterTargets2UseCache = function(hug1:Vector.<String>, hug2:Object, hug3:Object):Vector.<String>{ //MethodID:1839, LocalCount= 9 , MaxScope= 0, MaxStack= 3, CodeLength= 97
+ var hug5:String = null;
+ var hug6:IGetRelationResult = null;
+ var hug4:Vector.<String> = new Vector.<String>();
+
+ for each(hug5 in hug1){
+ hug6 = _loadedInfoContainer.getResult(hug5, hug3);
+
+ if(hug6 == null){
+ hug4.push(hug5);
+ }else{
+ hug2[hug5] = hug6;
+ }
+ }
+
+ return hug4;
+ };
+
+ createResult = function(hug1:Object, hug2:IGetRelationResult=null):IGetRelationResult{ //MethodID:1840, LocalCount= 12 , MaxScope= 0, MaxStack= 5, CodeLength= 312
+ var hug3:Vector.<RelatedVideo> = null;
+ var hug4:Vector.<IOwnerOtherVideo> = null;
+ var hug5:String = null;
+ var hug6:ILiveDJInfo = null;
+ var hug7:String = null;
+ var hug8:IGetRelationResult = null;
+
+ for(hug7 in hug1){
+ hug8 = hug1[hug7];
+ var hug11:String = hug7;
+
+ switch(hug11){
+ case GetRelationTarget.RELATED_VIDEO:
+ hug3 = hug8.recommendedVideoList;
+ break;
+ case GetRelationTarget.OWNER_VIDEO:
+ hug4 = hug8.ownerOtherVideoList;
+ hug5 = hug8.ownerOtherVideoURL;
+ break;
+ case GetRelationTarget.LIVE_DJ:
+ hug6 = hug8.liveDJInfo;
+ break;
+ default:
+ break;
+ }
+ }
+
+ if(hug2 != null){
+ if(hug2.recommendedVideoList != null) hug3 = hug2.recommendedVideoList;
+
+ if(hug2.ownerOtherVideoList != null) hug4 = hug2.ownerOtherVideoList;
+
+ if(hug2.ownerOtherVideoURL != null) hug5 = hug2.ownerOtherVideoURL;
+
+ if(hug2.liveDJInfo != null) hug6 = hug2.liveDJInfo;
+ }
+
+ return GetRelationResultFactory.createByValues(hug3, hug4, hug5, hug6);
+ };
+
+ if(((targets == null) || (targets.length == 0)) && ((extTargets == null) || (extTargets.length == 0))) throw new ArgumentError("GetRelation.load: no targets to load.");
+
+ if(((extTargets == null) && (extTargetCount > 0)) || ((extTargets != null) && (extTargets.length < extTargetCount))) throw new ArgumentError("GetRelation.load: invalid extTargets or extTargetCount.");
+
+ options = {sort:sort, order:order, page:page};
+ extTargetsLength = ((extTargets == null) ? 0 : extTargets.length);
+ loadedResultMap = {};
+ targets2Load = filterTargets2UseCache(targets, loadedResultMap, options);
+ extTargets2Load = filterTargets2UseCache(extTargets, loadedResultMap, options);
+ extTargetCount2Load = extTargetCount;
+ i = 0;
+
+ while(i < extTargetCount){
+ if(this._loadedInfoContainer.getResult(extTargets[i], options) != null) extTargetCount2Load -= 1;
+
+ i += 1;
+ }
+
+ if(extTargetCount2Load <= 0){
+ extTargetCount2Load = 0;
+ extTargets2Load = null;
+ }
+
+ if((targets2Load.length == 0) && (extTargetCount2Load == 0)){
+ ObjectUtils.callLater(onLoaded, true, createResult(loadedResultMap));
+
+ return;
+ }
+
+ this._loadFunc(function(hug1:XML):void{ //MethodID:1841, LocalCount= 4 , MaxScope= 3, MaxStack= 6, CodeLength= 138
+ internal var response:XML; //slotID:1
+ internal var succeeded:Boolean; //slotID:2
+ internal var result:IGetRelationResult; //slotID:3
+ internal var result0:IGetRelationResult; //slotID:4
+
+ result = null;
+ result0 = null;
+ response = hug1;
+ succeeded = true;
+
+ try{
+ result0 = GetRelationResultFactory.createByResponse(response, targets2Load, extTargets2Load, extTargetCount2Load);
+
+ _loadedInfoContainer.update(result0, options);
+ }
+ catch(error:Error){
+ succeeded = false;
+ }
+
+ if(succeeded) result = createResult(loadedResultMap, result0);
+ onLoaded.apply(null, [succeeded, result]);
+ }, this._apiURL, this._createRequestParameters(targets2Load, extTargets2Load, extTargetCount, sort, order, page), URLRequestMethod.GET);
+ }
+
+ private function _createRequestParameters(hug1:Vector.<String>, hug2:Vector.<String>=null, hug3:uint=1, hug4:String=null, hug5:String=null, hug6:uint=1):Object
+ { //MethodID:1843, LocalCount= 8 , MaxScope= 1, MaxStack= 4, CodeLength= 312
+ if(((hug1 == null) || (hug1.length == 0)) && ((hug2 == null) || (hug2.length == 0))) throw new ArgumentError("GetRelation._createParametes: invalid targets or extTargets.");
+
+ if(hug6 == 0) throw new ArgumentError("GetRelation._createParameters: invalid page.");
+
+ var hug7:Object = {};
+ hug7["video"] = this._watchID;
+
+ if((hug1 != null) && (hug1.length > 0)) hug7["target"] = hug1.join(",");
+
+ if((hug2 != null) && (hug2.length > 0)){
+ if((hug2.length < hug3) || (hug3 == 0)) throw new ArgumentError("GetRelation._createParameters. invalid extTargetCount.");
+
+ hug7["ext_target"] = hug2.join(",");
+ hug7["ext_target_count"] = hug3;
+ }
+
+ if(hug4 != null){
+ if(LOAD_SORT_VALUES.indexOf(hug4) == (-1)) throw new ArgumentError("GetRelation._createParameters. invalid sort.");
+
+ hug7["sort"] = hug4;
+ }
+
+ if(hug5 != null){
+ if(LOAD_ORDER_VALUES.indexOf(hug5) == (-1)) throw new ArgumentError("GetRelation._createParameters. invalid order.");
+
+ hug7["order"] = hug5;
+ }
+
+ if(hug6 > 1) hug7["page"] = hug6;
+
+ return hug7;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function createRequestParameters(hug1:Vector.<String>, hug2:Vector.<String>=null, hug3:uint=1, hug4:String=null, hug5:String=null, hug6:uint=1, ...args):Object
+ { //MethodID:1844, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 14
+ return this._createRequestParameters.apply(this, args);
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.api.relation.GetRelationTarget
+import jp.nicovideo.nicoplayer.models.api.relation.IGetRelationResult
+
+//■class(instance)_index:121
+//private
+class _LoadedInfoContainer extends Object
+{
+ //static constructor
+ public static function _LoadedInfoContainer$cinit()
+ { //MethodID:1826, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _infoMap:Object; //slotID:0
+
+ public function update(hug1:IGetRelationResult, hug2:Object):void
+ { //MethodID:1827, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 127
+ var hug3:String = null;
+
+ if(hug1.recommendedVideoList != null){
+ hug3 = GetRelationTarget.RELATED_VIDEO;
+ this._infoMap[this._createKey(hug3, hug2)] = new _LoadedInfo(hug3, hug1, hug2);
+ }
+
+ if(hug1.ownerOtherVideoList != null){
+ hug3 = GetRelationTarget.OWNER_VIDEO;
+ this._infoMap[this._createKey(hug3, hug2)] = new _LoadedInfo(hug3, hug1);
+ }
+
+ if(hug1.liveDJInfo != null){
+ hug3 = GetRelationTarget.LIVE_DJ;
+ this._infoMap[this._createKey(hug3, hug2)] = new _LoadedInfo(hug3, hug1);
+ }
+ }
+
+ public function getResult(hug1:String, hug2:Object):IGetRelationResult
+ { //MethodID:1828, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 48
+ var hug3:_LoadedInfo = this._infoMap[this._createKey(hug1, hug2)];
+
+ if((hug3 != null) && (hug3.data != null)) return hug3.data;
+
+ return null;
+ }
+
+ private function _createKey(hug1:String, hug2:Object=null):String
+ { //MethodID:1829, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 92
+ var hug4:String = null;
+
+ if((hug2 == null) || (hug1 != GetRelationTarget.RELATED_VIDEO)) return hug1;
+
+ var hug3:String = ("target:" + hug1);
+
+ for(hug4 in hug2){
+ hug3 += ("," + hug4 + ":" + hug2[hug4]);
+ }
+
+ return hug3;
+ }
+
+ //constructor
+ public function _LoadedInfoContainer()
+ { //MethodID:1830, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._infoMap = {};
+
+ super();
+ }
+}
+
+//■class(instance)_index:122
+//private
+class _LoadedInfo extends Object
+{
+ //static constructor
+ public static function _LoadedInfo$cinit()
+ { //MethodID:1831, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _LoadedInfo(hug1:String, hug2:IGetRelationResult, hug3:*=null)
+ { //MethodID:1832, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 72
+ super();
+
+ if((GetRelation).LOAD_TARGETS.indexOf(hug1) == (-1)) throw new ArgumentError("_LoadedInfo._LoadedInfo: invalid parameters. requestTarget: \"" + hug1 + "\"");
+
+ if(hug2 == null) throw new ArgumentError("_LoadedInfo._LoadedInfo: invalid parameters: data.");
+
+ this._requestTarget = hug1;
+ this._requestOptions = hug3;
+ this._data = hug2;
+ }
+
+ //variables/etc.
+ private var _requestTarget:String; //slotID:0
+ private var _requestOptions:*; //slotID:0
+ private var _data:IGetRelationResult; //slotID:0
+
+ public function get requestTarget():String
+ { //MethodID:1833, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._requestTarget;
+ }
+
+ public function get requestOptions():*
+ { //MethodID:1834, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._requestOptions;
+ }
+
+ public function get data():IGetRelationResult
+ { //MethodID:1835, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._data;
+ }
+}
+
+//■script103■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.nicoplayer.storages.ICommentStorage
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:124
+ public class CommentStorageEvents extends Object implements EventSender
+ {
+ //static constructor
+ public static function CommentStorageEvents$cinit()
+ { //MethodID:1846, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentStorageEvents(hug1:ICommentStorage)
+ { //MethodID:1849, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 70
+ internal var commentStorage:ICommentStorage; //slotID:1
+
+ commentStorage = hug1;
+ this.onWatchCountUpdated = new Functions();
+ this.onMylistCountUpdated = new Functions();
+ this.onServerTimeUpdated = new Functions();
+
+ super();
+
+ this.__commentStorage = commentStorage;
+ commentStorage.onServerTimeUpdated = function(hug1:int):void{ //MethodID:1847, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 24
+ onServerTimeUpdated.apply(hug1);
+ };
+
+ commentStorage.onViewCounterUpdated = function(hug1:int, hug2:int):void{ //MethodID:1848, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 47
+ onWatchCountUpdated.apply(hug1);
+ onMylistCountUpdated.apply(hug2);
+ };
+ }
+
+ //variables/etc.
+ private var __commentStorage:ICommentStorage; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) var onWatchCountUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) var onMylistCountUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) var onServerTimeUpdated:Functions;//slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:1850, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 14
+ return ["onWatchCountUpdated", "onMylistCountUpdated", "onServerTimeUpdated"];
+ }
+ }
+}
+
+//■script104■
+
+package jp.nicovideo.util{
+
+ import flash.display.Loader
+ import flash.display.LoaderInfo
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import flash.net.URLRequestMethod
+ import flash.net.URLVariables
+ import flash.system.ApplicationDomain
+ import flash.system.LoaderContext
+ import flash.system.Security
+ import flash.system.SecurityDomain
+
+ //■class(instance)_index:125
+ public final class HTTPUtils extends Object
+ {
+ //static constructor
+ public static function HTTPUtils$cinit()
+ { //MethodID:1852, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function sendQuery(hug1:Function, hug2:String, hug3:Object):void
+ { //dispID:3, MethodID:1854, LocalCount= 5 , MaxScope= 2, MaxStack= 5, CodeLength= 45
+ internal var f:Function; //slotID:1
+ internal var url:String; //slotID:2
+ internal var param:Object; //slotID:3
+
+ f = hug1;
+ url = hug2;
+ param = hug3;
+
+ _loadData(function(hug1:String):URLVariables{ //MethodID:1853, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 39
+ internal var data:String; //slotID:1
+
+ data = hug1;
+
+ try{
+ return new URLVariables(data);
+ }
+ catch(e:Error){
+ }
+
+ return null;
+ }, f, url, param);
+ }
+
+ public static function sendPostData(hug1:Function, hug2:String, hug3:Object):void
+ { //dispID:4, MethodID:1856, LocalCount= 5 , MaxScope= 2, MaxStack= 6, CodeLength= 51
+ internal var f:Function; //slotID:1
+ internal var url:String; //slotID:2
+ internal var param:Object; //slotID:3
+
+ f = hug1;
+ url = hug2;
+ param = hug3;
+
+ _loadData(function(hug1:String):URLVariables{ //MethodID:1855, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 39
+ internal var data:String; //slotID:1
+
+ data = hug1;
+
+ try{
+ return new URLVariables(data);
+ }
+ catch(e:Error){
+ }
+
+ return null;
+ }, f, url, param, URLRequestMethod.POST);
+ }
+
+ public static function loadXML(hug1:Function, hug2:String, hug3:Object, hug4:String=null):void
+ { //dispID:5, MethodID:1858, LocalCount= 6 , MaxScope= 2, MaxStack= 6, CodeLength= 55
+ internal var f:Function; //slotID:1
+ internal var url:String; //slotID:2
+ internal var param:Object; //slotID:3
+ internal var method:String = null; //slotID:4
+
+ f = hug1;
+ url = hug2;
+ param = hug3;
+ method = hug4;
+
+ _loadData(function(hug1:String):XML{ //MethodID:1857, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 39
+ internal var data:String; //slotID:1
+
+ data = hug1;
+
+ try{
+ return new XML(data);
+ }
+ catch(e:Error){
+ }
+
+ return null;
+ }, f, url, param, method);
+ }
+
+ public static function loadJSON(hug1:Function, hug2:String, hug3:Object, hug4:String=null):void
+ { //dispID:6, MethodID:1860, LocalCount= 6 , MaxScope= 2, MaxStack= 6, CodeLength= 55
+ internal var f:Function; //slotID:1
+ internal var url:String; //slotID:2
+ internal var param:Object; //slotID:3
+ internal var method:String = null; //slotID:4
+
+ f = hug1;
+ url = hug2;
+ param = hug3;
+ method = hug4;
+
+ _loadData(function(hug1:String):Object{ //MethodID:1859, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 41
+ internal var data:String; //slotID:1
+
+ data = hug1;
+
+ try{
+ return JSON.decode(data);
+ }
+ catch(e:Error){
+ }
+
+ return null;
+ }, f, url, param, method);
+ }
+
+ private static function _loadData(hug1:Function, hug2:Function, hug3:String, hug4:Object, hug5:String=null):void
+ { //dispID:7, MethodID:1863, LocalCount= 7 , MaxScope= 2, MaxStack= 5, CodeLength= 276
+ internal var convert:Function; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var url:String; //slotID:3
+ internal var param:Object; //slotID:4
+ internal var method:String = null; //slotID:5
+ internal var loader:URLLoader; //slotID:6
+ internal var request:URLRequest; //slotID:7
+ internal var error_handler:Function; //slotID:8
+
+ error_handler = null;
+ convert = hug1;
+ f = hug2;
+ url = hug3;
+ param = hug4;
+ method = hug5;
+ error_handler = function(hug1:Event):void{ //MethodID:1861, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ f(null);
+ };
+
+ if(method == null) method = URLRequestMethod.GET;
+
+ loader = new URLLoader();
+ request = new URLRequest();
+
+ if(method == URLRequestMethod.GET){
+ request = new URLRequest(StringUtils.joinQuery(url, param));
+ request.method = URLRequestMethod.GET;
+ }
+
+ if(method == URLRequestMethod.POST){
+ request = new URLRequest(url);
+ request.method = URLRequestMethod.POST;
+ request.data = new URLVariables(StringUtils.queryString(param));
+ }
+
+ loader.load(request);
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:1862, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 23
+ f(convert(hug1.target.data));
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, error_handler);
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, error_handler);
+ }
+
+ public static function loadSWF(hug1:Function, hug2:String, hug3:Object):void
+ { //dispID:8, MethodID:1866, LocalCount= 6 , MaxScope= 5, MaxStack= 7, CodeLength= 226
+ internal var f:Function; //slotID:1
+ internal var url:String; //slotID:2
+ internal var params:Object; //slotID:3
+ internal var loader:Loader; //slotID:4
+ internal var loaderInfo:LoaderInfo; //slotID:5
+ internal var error_handler:Function; //slotID:6
+
+ error_handler = null;
+ f = hug1;
+ url = hug2;
+ params = hug3;
+ error_handler = function(hug1:Event):void{ //MethodID:1864, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ f(null);
+ };
+
+ loader = new Loader();
+ loaderInfo = loader.contentLoaderInfo;
+
+ loaderInfo.addEventListener(Event.INIT, function(hug1:Event):void{ //MethodID:1865, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 16
+ f(hug1.target.content);
+ });
+ loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, error_handler);
+ loaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, error_handler);
+
+ try{
+ loader.load(new URLRequest(StringUtils.joinQuery(url, params)), new LoaderContext(false, ApplicationDomain.currentDomain, ((Security.sandboxType == Security.REMOTE) ? SecurityDomain.currentDomain : null)));
+ }
+ catch(error:Error){
+ ObjectUtils.callLater(f, null);
+ }
+ }
+
+ //constructor
+ public function HTTPUtils()
+ { //MethodID:1867, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script105■
+
+package{
+
+ //■class(instance)_index:126
+ //private
+ class _CommentTokenParam extends Object
+ {
+ //static constructor
+ public static function _CommentTokenParam$cinit()
+ { //MethodID:1882, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ SALT = "nimocon";
+ }
+
+ //static variables/etc.
+ public static const SALT:String = "nimocon"; //slotID:1
+
+ //constructor
+ public function _CommentTokenParam()
+ { //MethodID:1883, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+import jp.nicovideo.remocon.AlertState
+
+//■class(instance)_index:127
+//private
+class _SeekPlusLevel extends Object
+{
+ //static constructor
+ public static function _SeekPlusLevel$cinit()
+ { //MethodID:1884, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ LEVEL1 = "LV1";
+ LEVEL2 = "LV2";
+ LEVEL3 = "LV3";
+ }
+
+ //static variables/etc.
+ public static const LEVEL1:String = "LV1"; //slotID:1
+ public static const LEVEL2:String = "LV2"; //slotID:2
+ public static const LEVEL3:String = "LV3"; //slotID:3
+
+ public static function getState(hug1:Number, hug2:String):String
+ { //dispID:3, MethodID:1885, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 208
+ if(isNaN(hug1)) throw new ArgumentError("_SeekPlusLevel.convertState: invalid param offset: " + hug1);
+
+ var hug3:String = hug2;
+
+ switch(hug3){
+ case LEVEL1:
+ return ((hug1 > 0) ? AlertState.FAST_FOWARD_LV1 : AlertState.REWIND_LV1);
+ case LEVEL2:
+ return ((hug1 > 0) ? AlertState.FAST_FOWARD_LV2 : AlertState.REWIND_LV2);
+ case LEVEL3:
+ return ((hug1 > 0) ? AlertState.FAST_FOWARD_LV3 : AlertState.REWIND_LV3);
+ default:
+ throw new ArgumentError("_SeekPlusLevel.convertState: invalid param level: " + hug2);
+ break;
+ }
+ }
+
+ //constructor
+ public function _SeekPlusLevel()
+ { //MethodID:1886, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+
+public function defineRemoconMethods(hug1:IRemoconReceiver):void
+{ //dispID:2, MethodID:1881, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 208
+ internal var receiver:IRemoconReceiver; //slotID:1
+ internal var createArgErrorText:Function; //slotID:2
+
+ receiver = hug1;
+ createArgErrorText = function(hug1:String, hug2:String, hug3:Object):String{ //MethodID:1869, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 42
+ return (("defineRemoconMethods: invalid params. " + "method name: \"" + hug1 + "\"" + "param name: \"" + hug2 + "\"" + "value \"") + hug3[hug2].toString() + "\"");
+ };
+
+ receiver.defineMethod(RemoconSystemMethodName.CHANGE_STATUS, function(hug1:Object):void{ //MethodID:1870, LocalCount= 5 , MaxScope= 0, MaxStack= 2, CodeLength= 213
+ RemoconState.instance.updateState(hug1.toString());
+
+ var hug2:String = hug1.toString();
+ var hug3:String = null;
+ var hug4:String = hug2;
+
+ switch(hug4){
+ case RemoconState.COMPLETE:
+ hug3 = AlertState.REMOCON_CONNECT;
+ break;
+ case RemoconState.CLOSE:
+ hug3 = AlertState.REMOCON_HALT;
+ break;
+ case RemoconState.ERROR:
+ hug3 = AlertState.REMOCON_ERROR;
+ break;
+ case RemoconState.MAINTENANCE:
+ hug3 = AlertState.REMOCON_MAINTENANCE;
+ break;
+ default:
+ return;
+ break;
+ }
+
+ RemoconNotifier(this.notifier).showAlert(hug3);
+ });
+ receiver.defineMethod(RemoconMethodName.SET_VOL, function(hug1:Object):void{ //MethodID:1871, LocalCount= 5 , MaxScope= 4, MaxStack= 7, CodeLength= 252
+ internal var params:Object; //slotID:1
+ internal var newVolume:Number; //slotID:2
+ internal var config:IPlayerConfig; //slotID:3
+
+ params = hug1;
+ newVolume = (parseFloat(params[RemoconMethodParamName.VOLUME]) / 100);
+
+ if(isNaN(newVolume)) throw new ArgumentError(createArgErrorText(RemoconMethodName.SET_VOL, RemoconMethodParamName.VOLUME, params));
+
+ newVolume = Math.max(0, newVolume);
+ newVolume = Math.min(1, newVolume);
+ config = IPlayerConfig(this.playerConfig);
+
+ try{
+ config.isMute = false;
+ config.volume = newVolume;
+ }
+ finally{
+ RemoconNotifier(this.notifier).showAlert(AlertState.VOLUME, {value:(newVolume * 100).toString()});
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.SEEK_TO, function(hug1:Object):void{ //MethodID:1872, LocalCount= 9 , MaxScope= 0, MaxStack= 5, CodeLength= 241
+ var hug2:RemoconPlayerStateObserver = this.stateObserver;
+
+ if(hug2.isHirobaMode || hug2.isNicowariMode) return;
+
+ if(IControllerShutter(this.audioShutter).isClosing(AudioShutterConstants.SHUTTER_SEEK) || IControllerShutter(this.audioShutter).isClosing(AudioShutterConstants.SHUTTER_PLUGIN)) return;
+
+ var hug3:IVideoController = this.videoController;
+ var hug4:IVideo = hug3.videoWrapper;
+ var hug5:Number = hug4.vpos;
+ var hug6:Number = hug4.length;
+ var hug7:Number = parseFloat(hug1[RemoconMethodParamName.VPOS]);
+
+ if(isNaN(hug7)) throw new ArgumentError(createArgErrorText(RemoconMethodName.SEEK_TO, RemoconMethodParamName.VPOS, hug1));
+
+ var hug8:Number = (hug7 * 1000);
+ hug8 = Math.max(0, hug8);
+ hug8 = Math.min(hug6, hug8);
+
+ if(hug8 == hug5) return;
+ hug3.seek(hug8);
+ RemoconNotifier(this.notifier).prepareVideoSeekSignal(hug5);
+ });
+ receiver.defineMethod(RemoconMethodName.SEEK_PLUS, function(hug1:Object):void{ //MethodID:1873, LocalCount= 5 , MaxScope= 4, MaxStack= 7, CodeLength= 413
+ internal var params:Object; //slotID:1
+ internal var observer:RemoconPlayerStateObserver; //slotID:2
+ internal var controller:IVideoController; //slotID:3
+ internal var video:IVideo; //slotID:4
+ internal var currentVpos:Number; //slotID:5
+ internal var videoLength:Number; //slotID:6
+ internal var paramSec:Number; //slotID:7
+ internal var targetVpos:Number; //slotID:8
+ internal var state:String; //slotID:9
+
+ state = null;
+ params = hug1;
+ observer = this.stateObserver;
+
+ if(observer.isHirobaMode || observer.isNicowariMode) return;
+
+ if(IControllerShutter(this.audioShutter).isClosing(AudioShutterConstants.SHUTTER_SEEK) || IControllerShutter(this.audioShutter).isClosing(AudioShutterConstants.SHUTTER_PLUGIN)) return;
+
+ controller = this.videoController;
+ video = controller.videoWrapper;
+ currentVpos = video.vpos;
+ videoLength = video.length;
+ paramSec = parseFloat(params[RemoconMethodParamName.OFFSET]);
+
+ if(isNaN(paramSec)) throw new ArgumentError(createArgErrorText(RemoconMethodName.SEEK_PLUS, RemoconMethodParamName.OFFSET, params));
+
+ targetVpos = ((paramSec * 1000) + currentVpos);
+ targetVpos = Math.max(0, targetVpos);
+ targetVpos = Math.min(videoLength, targetVpos);
+
+ if(targetVpos == currentVpos) return;
+
+ try{
+ controller.seek(targetVpos);
+ }
+ finally{
+ state = (_SeekPlusLevel).getState(paramSec, params[RemoconMethodParamName.LEVEL]);
+
+ RemoconNotifier(this.notifier).showAlert(state);
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.SEEK_TO_ALERT, function(hug1:Object):void{ //MethodID:1874, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 22
+ RemoconNotifier(this.notifier).showAlert(AlertState.SEEK_CHANGE);
+ });
+ receiver.defineMethod(RemoconMethodName.TOGGLE_PLAY, function(hug1:Object):void{ //MethodID:1875, LocalCount= 5 , MaxScope= 4, MaxStack= 4, CodeLength= 268
+ internal var params:Object; //slotID:1
+ internal var observer:RemoconPlayerStateObserver; //slotID:2
+ internal var controller:IVideoController; //slotID:3
+ internal var alertState:String; //slotID:4
+
+ alertState = null;
+ params = hug1;
+ observer = this.stateObserver;
+
+ if(observer.isHirobaMode || observer.isNicowariMode) return;
+
+ if(IControllerShutter(this.audioShutter).isClosing(AudioShutterConstants.SHUTTER_PLUGIN)) return;
+
+ controller = this.videoController;
+
+ try{
+ if(controller.videoWrapper.isEnd){
+ controller.seek(0);
+ controller.play();
+
+ alertState = AlertState.PLAY;
+ }else if(controller.isPlaying){
+ controller.stop();
+
+ alertState = AlertState.PAUSE;
+ }else{
+ controller.play();
+
+ alertState = AlertState.PLAY;
+ }
+ }
+ finally{
+ RemoconNotifier(this.notifier).showAlert(alertState);
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.TOGGLE_REPEAT, function(hug1:Object):void{ //MethodID:1876, LocalCount= 5 , MaxScope= 4, MaxStack= 4, CodeLength= 183
+ internal var params:Object; //slotID:1
+ internal var observer:RemoconPlayerStateObserver; //slotID:2
+ internal var playerConfig:IPlayerConfig; //slotID:3
+ internal var newSetting:Boolean; //slotID:4
+
+ params = hug1;
+ observer = this.stateObserver;
+
+ if(observer.isHirobaMode || observer.isNicowariMode) return;
+
+ playerConfig = this.playerConfig;
+ newSetting = !playerConfig.isLoop;
+
+ try{
+ playerConfig.isLoop = newSetting;
+ }
+ finally{
+ RemoconNotifier(this.notifier).showAlert(newSetting ? AlertState.REPEAT_ON : AlertState.REPEAT_OFF);
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.TOGGLE_MUTE, function(hug1:Object):void{ //MethodID:1877, LocalCount= 5 , MaxScope= 4, MaxStack= 7, CodeLength= 173
+ internal var params:Object; //slotID:1
+ internal var playerConfig:IPlayerConfig; //slotID:2
+ internal var newSetting:Boolean; //slotID:3
+
+ params = hug1;
+ playerConfig = this.playerConfig;
+ newSetting = !playerConfig.isMute;
+
+ try{
+ playerConfig.isMute = newSetting;
+ }
+ finally{
+ if(newSetting){
+ RemoconNotifier(this.notifier).showAlert(AlertState.MUTE_ON);
+ }else{
+ RemoconNotifier(this.notifier).showAlert(AlertState.MUTE_OFF, {value:(playerConfig.volume * 100)});
+ }
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.TOGGLE_FULLSCREEN, function(hug1:Object):void{ //MethodID:1878, LocalCount= 5 , MaxScope= 4, MaxStack= 5, CodeLength= 212
+ internal var params:Object; //slotID:1
+ internal var observer:RemoconPlayerStateObserver; //slotID:2
+ internal var config:IPlayerConfig; //slotID:3
+ internal var newSetting:uint; //slotID:4
+
+ params = hug1;
+ observer = this.stateObserver;
+
+ if(observer.isNicowariMode) return;
+
+ config = this.playerConfig;
+ newSetting = ((config.screenMode == ScreenMode.NORMAL) ? ScreenMode.BROWSER_FULL : ScreenMode.NORMAL);
+
+ try{
+ RemoconFullScreenKeeper(this.fullScreenKeeper).update(newSetting);
+ }
+ finally{
+ RemoconNotifier(this.notifier).showAlert((newSetting == ScreenMode.NORMAL) ? AlertState.FULLSCREEN_OFF : AlertState.FULLSCREEN_ON);
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.TOGGLE_COMMENT_VISIBLE, function(hug1:Object):void{ //MethodID:1879, LocalCount= 5 , MaxScope= 4, MaxStack= 4, CodeLength= 145
+ internal var params:Object; //slotID:1
+ internal var config:IPlayerConfig; //slotID:2
+ internal var newSetting:Boolean; //slotID:3
+
+ params = hug1;
+ config = this.playerConfig;
+ newSetting = !config.commentVisible;
+
+ try{
+ config.commentVisible = newSetting;
+ }
+ finally{
+ RemoconNotifier(this.notifier).showAlert(newSetting ? AlertState.COMMENT_VISIBLE : AlertState.COMMENT_INVISIBLE);
+ }
+ });
+ receiver.defineMethod(RemoconMethodName.POST_COMMENT, function(hug1:Object):void{ //MethodID:1880, LocalCount= 10 , MaxScope= 0, MaxStack= 4, CodeLength= 371
+ var hug8:CommentBuilder = null;
+ var hug9:IVideoController = null;
+ var hug2:uint = 0;
+
+ while(hug2 < CommentShutterConstants.END_OF_ENUM){
+ if(IControllerShutter(this.commentShutter).isClosing(hug2)) return;
+
+ hug2++;
+ }
+
+ var hug3:RemoconPlayerStateObserver = this.stateObserver;
+
+ if(hug3.isHirobaMode || hug3.isNicowariMode) return;
+
+ var hug4:String = hug1[RemoconMethodParamName.TEXT];
+ var hug5:String = hug1[RemoconMethodParamName.COMMAND];
+ var hug6:Number = Number(hug1[RemoconMethodParamName.EXPIRE]);
+ var hug7:String = hug1[RemoconMethodParamName.TOKEN];
+
+ if(!isNaN(hug6) && (hug6 >= TimeUtils.time) && (hug4 != null) && (hug4 != "") && (hug7 == MD5.hash(((_CommentTokenParam).SALT + "." + hug4 + "." + hug5 + ".") + hug6.toString()))){
+ hug8 = new CommentBuilder();
+ hug9 = this.videoController;
+ hug8.vpos = hug9.videoWrapper.vpos;
+ hug8.message = hug4;
+ hug8.command = new Command(hug5, this.isPremium);
+ hug8.date = TimeUtils.now();
+ hug8.isPremium = this.isPremium;
+ hug8.userName = this.userName;
+ hug8.userID = this.userID;
+
+ RemoconNotifier(this.notifier).prepareCommentPostAlert();
+ ICommentRouter(this.commentRouter).post(hug8.make());
+ }
+ });
+}
+
+//■script106■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:128
+ public interface IInitializeInfo
+ {
+ //static constructor
+ public static function IInitializeInfo$cinit()
+ { //MethodID:1888, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get userID():String; //MethodID:1889, dispID:0
+
+ function get nickname():String; //MethodID:1890, dispID:0
+
+ function get isPremium():Boolean; //MethodID:1891, dispID:0
+
+ function get ngRevision():Number; //MethodID:1892, dispID:0
+
+ function get isNGMaintenance():Boolean; //MethodID:1893, dispID:0
+
+ function get feedrev():String; //MethodID:1894, dispID:0
+
+ function get recentPremiumUsers():Object; //MethodID:1895, dispID:0
+
+ //constructor
+ public function IInitializeInfo(); //MethodID:1896, dispID:0
+ }
+}
+
+//■script107■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:129
+ public class InitializeInfo extends Object implements IInitializeInfo
+ {
+ //static constructor
+ public static function InitializeInfo$cinit()
+ { //MethodID:1898, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ isInit = false;
+ }
+
+ //static variables/etc.
+ private static var _instance:InitializeInfo; //slotID:1
+ private static var isInit:Boolean = false; //slotID:2
+
+ public static function init(hug1:String, hug2:String, hug3:Boolean, hug4:Number, hug5:Boolean, hug6:String, hug7:Object):InitializeInfo
+ { //dispID:3, MethodID:1899, LocalCount= 8 , MaxScope= 1, MaxStack= 2, CodeLength= 93
+ if(!_instance) _instance = new InitializeInfo();
+
+ if(isInit) return _instance;
+
+ _instance.userID = hug1;
+ _instance.nickname = hug2;
+ _instance.isPremium = hug3;
+ _instance.ngRevision = hug4;
+ _instance.isNGMaintenance = hug5;
+ _instance.feedrev = hug6;
+ _instance.recentPremiumUsers = hug7;
+ isInit = true;
+ return _instance;
+ }
+
+ public static function getInstance():InitializeInfo
+ { //dispID:4, MethodID:1900, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ if(!isInit) throw new Error("initializeInfo not initialize");
+
+ return _instance;
+ }
+
+ //constructor
+ public function InitializeInfo()
+ { //MethodID:1901, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ super();
+
+ if(_instance) throw new Error("initializeInfo is singleton");
+ }
+
+ //variables/etc.
+ private var _userID:String; //slotID:0
+ private var _nickname:String; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _ngRevision:Number; //slotID:0
+ private var _isNGMaintenance:Boolean = false; //slotID:0
+ private var _feedrev:String; //slotID:0
+ private var _recentPremiumUsers:Object; //slotID:0
+
+ public function get userID():String
+ { //MethodID:1902, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userID;
+ }
+
+ public function set userID(hug1:String):void
+ { //MethodID:1903, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userID = hug1;
+ }
+
+ public function get nickname():String
+ { //MethodID:1904, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._nickname;
+ }
+
+ public function set nickname(hug1:String):void
+ { //MethodID:1905, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._nickname = hug1;
+ }
+
+ public function get isPremium():Boolean
+ { //MethodID:1906, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPremium;
+ }
+
+ public function set isPremium(hug1:Boolean):void
+ { //MethodID:1907, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isPremium = hug1;
+ }
+
+ public function get ngRevision():Number
+ { //MethodID:1908, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ngRevision;
+ }
+
+ public function set ngRevision(hug1:Number):void
+ { //MethodID:1909, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._ngRevision = hug1;
+ }
+
+ public function get isNGMaintenance():Boolean
+ { //MethodID:1910, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNGMaintenance;
+ }
+
+ public function set isNGMaintenance(hug1:Boolean):void
+ { //MethodID:1911, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNGMaintenance = hug1;
+ }
+
+ public function get feedrev():String
+ { //MethodID:1912, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._feedrev;
+ }
+
+ public function set feedrev(hug1:String):void
+ { //MethodID:1913, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._feedrev = hug1;
+ }
+
+ public function set recentPremiumUsers(hug1:Object):void
+ { //MethodID:1914, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._recentPremiumUsers = hug1;
+ }
+
+ public function get recentPremiumUsers():Object
+ { //MethodID:1915, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._recentPremiumUsers;
+ }
+ }
+}
+
+//■script108■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:130
+ public interface IEditableCommentList implements ICommentList
+ {
+ //static constructor
+ public static function IEditableCommentList$cinit()
+ { //MethodID:1917, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function editCommentList(hug1:Array, hug2:Array, hug3:Function):void; //MethodID:1918, dispID:0
+
+ //constructor
+ public function IEditableCommentList(); //MethodID:1919, dispID:0
+ }
+}
+
+//■script109■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.storages.CommentPostResultStatus
+ import jp.nicovideo.nicoplayer.storages.CommentStorageError
+ import jp.nicovideo.nicoplayer.storages.ICommentStorage
+ import jp.nicovideo.nicoplayer.storages.ICommentStorageHandle
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.util.ArrayUtils
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:131
+ public class CommentList extends Object implements IEditableCommentList
+ {
+ //static constructor
+ public static function CommentList$cinit()
+ { //MethodID:1921, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentList(hug1:String, hug2:Number, hug3:ICommentStorage, hug4:String, hug5:Boolean=false, hug6:Boolean=false)
+ { //MethodID:1924, LocalCount= 8 , MaxScope= 2, MaxStack= 5, CodeLength= 427
+ internal var threadID:String; //slotID:1
+ internal var videoLength:Number; //slotID:2
+ internal var commentStorage:ICommentStorage; //slotID:3
+ internal var name:String; //slotID:4
+ internal var isMymemory:Boolean = false; //slotID:5
+ internal var isLeaf:Boolean = false; //slotID:6
+ internal var leafs:uint; //slotID:7
+
+ leafs = 0;
+ threadID = hug1;
+ videoLength = hug2;
+ commentStorage = hug3;
+ name = hug4;
+ isMymemory = hug5;
+ isLeaf = hug6;
+ this._comments = [];
+ this.clickedResNoMapping = {};
+ this._pastCommentList = [];
+ this._yourPosts = {};
+ this.onCommentListInitialized = new Functions();
+ this.onCommentListUpdated = new Functions();
+ this.onCommentPost = new Functions();
+ this.onCommentPostFinished = new Functions();
+ this.onCommentCountUpdated = new Functions();
+
+ super();
+
+ this._this = this;
+ this._threadID = threadID;
+ this._storage = commentStorage;
+ this._name = name;
+ this._isMymemory = isMymemory;
+ this._leafMode = isLeaf;
+ this._leafMaxNum = this.LEAF_MAX_NUM_DEFAULT;
+
+ if(this._leafMode && (videoLength >= ((12 * 60 * 60 * 60) * 1000))){
+ leafs = Math.floor((videoLength + (10 * 1000)) / (60 * 1000));
+ this._leafMaxNum = Math.floor((this.LEAF_MAX_NUM_DEFAULT * 720) / leafs);
+ }
+
+ this._handle = this._storage.attach(this._threadID);
+ this._handle.autoSyncEnabled = true;
+ this._handle.isCommunityThread = (this._name == CommentConstants.CL_PRIVATE);
+ this._handle.onComments = this.__onComments;
+ this._handle.onNumberOfClick = function(hug1:int, hug2:int):void{ //MethodID:1923, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 178
+ internal var no:int; //slotID:1
+ internal var count:int; //slotID:2
+ internal var index:int; //slotID:3
+ internal var original:IComment; //slotID:4
+ internal var builder:CommentBuilder; //slotID:5
+
+ no = hug1;
+ count = hug2;
+ index = ArrayUtils.lowerBoundIndex(function(hug1:int, hug2:IComment):Number{ //MethodID:1922, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 7
+ return (hug1 - hug2.resNo);
+ }, no, _comments);
+
+ if((index == (-1)) || (_comments[index].resNo != no)) return;
+
+ original = _comments[index];
+
+ if(original.clickCount == count) return;
+
+ builder = new CommentBuilder(original);
+ builder.clickCount = count;
+ _comments[index] = builder.make();
+
+ __reflect(false, NaN, [_comments[index]], []);
+ };
+
+ this.commentLimit = 100;
+
+ if(this._isMymemory || (videoLength >= 0x927C0)){
+ this.commentLimit = 1000;
+ }else if(videoLength >= 0x493E0){
+ this.commentLimit = 500;
+ }else if(videoLength >= 0xEA60){
+ this.commentLimit = 250;
+ }
+
+ if(name == CommentConstants.CL_NICOS) this.commentLimit /= 2;
+ }
+
+ //variables/etc.
+ private const LEAF_MAX_NUM_DEFAULT:uint = 100; //slotID:0
+ private var _this:ICommentList; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _name:String = "commentlist:main"; //slotID:0
+ private var _comments:Array; //slotID:0
+ private var _isMymemory:Boolean; //slotID:0
+ private var _storage:ICommentStorage; //slotID:0
+ private var _handle:ICommentStorageHandle; //slotID:0
+ private var commentLimit:uint = 0; //slotID:0
+ private var clickedResNoMapping:Object; //slotID:0
+ private var _hasInitialized:Boolean = false; //slotID:0
+ private var _pastCommentList:Array; //slotID:0
+ private var _lastPastDate:Date; //slotID:0
+ private var _pastMode:Boolean; //slotID:0
+ private var _yourPosts:Object; //slotID:0
+ private var _leafMode:Boolean; //slotID:0
+ private var _leafMaxNum:uint; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentListInitialized:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentListUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentPost:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentPostFinished:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentCountUpdated:Functions;//slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:1925, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 24
+ var hug1:Array = ["onCommentListInitialized", "onCommentListUpdated", "onCommentPost", "onCommentPostFinished", "onCommentCountUpdated"];
+ return hug1;
+ }
+
+ public function initialize(hug1:Function):void
+ { //MethodID:1928, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 53
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ if(this._hasInitialized) throw new IllegalOperationError("CommentList.initialize: Already initialized.");
+ this._handle.enterThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1927, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 91
+ internal var e:CommentStorageError; //slotID:1
+ internal var comments:Array; //slotID:2
+
+ e = hug1;
+ comments = hug2;
+
+ if(e){
+ f(e);
+
+ return;
+ }
+
+ _comments = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1926, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+ return hug3.make();
+ });
+ __reflect(false, NaN, comments.concat(), [], true);
+
+ _hasInitialized = true;
+
+ f(null);
+ }, (this.commentLimit * (-1)), this._leafMode);
+ }
+
+ public function reload(hug1:Function):void
+ { //MethodID:1932, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 23
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ this._handle.leaveThread(function(hug1:CommentStorageError):void{ //MethodID:1931, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 47
+ internal var e:CommentStorageError; //slotID:1
+
+ e = hug1;
+
+ if(e){
+ f(e);
+
+ return;
+ }
+
+ _handle.enterThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1930, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 89
+ internal var e:CommentStorageError; //slotID:1
+ internal var comments:Array; //slotID:2
+
+ e = hug1;
+ comments = hug2;
+
+ if(e){
+ f(e);
+
+ return;
+ }
+
+ _comments = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1929, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+ return hug3.make();
+ });
+ __reflect(_pastMode, _handle.lastRes, comments.concat(), [], true);
+ f(null);
+ }, (commentLimit * (-1)));
+ });
+ }
+
+ public function update(hug1:Function):void
+ { //MethodID:1934, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 37
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+
+ this._handle.getThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1933, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 74
+ if(hug1){
+ SystemMessage.instance.informln((__MSG__("スレッドの更新に失敗:" + hug1.status) + "<br />"), false, true);
+ f(hug1);
+
+ return;
+ }
+
+ if(hug2.length != 0) __onComments(hug2);
+ f(null);
+ }, (this._handle.lastRes + 1), this._leafMode);
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:1936, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 68
+ internal var comment:IComment; //slotID:1
+
+ comment = hug1;
+
+ onCommentPost.apply(comment, this.name);
+ this._handle.post(function(hug1:CommentStorageError, hug2:int):void{ //MethodID:1935, LocalCount= 7 , MaxScope= 0, MaxStack= 6, CodeLength= 211
+ var hug3:String = CommentPostResultStatus.FAILURE;
+ var hug4:uint = (hug1 ? hug1.status : MessageServerClient.POST_SUCCESS);
+
+ if(hug4 < CommentPostResultStatus.SERVER_RESPONSE_MAP.length) hug3 = CommentPostResultStatus.SERVER_RESPONSE_MAP[hug4];
+ onCommentPostFinished.apply(_threadID, hug3, hug2);
+
+ if(hug1 != null){
+ __reflect(false, NaN, [], [comment], false);
+
+ return;
+ }
+
+ var hug5:CommentBuilder = new CommentBuilder(comment);
+ hug5.resNo = hug2;
+ hug5.justPosted = true;
+ hug5.commentList = _this;
+ hug5.isTrunk = true;
+ var hug6:IComment = hug5.make();
+ _comments = CommentListUtils.add(_comments, [hug6]);
+
+ __reflect(false, NaN, [hug6], [comment]);
+
+ _yourPosts[hug2] = true;
+ }, comment, (this.name == CommentConstants.CL_NICOS));
+ }
+
+ public function get currentList():Array
+ { //MethodID:1937, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ return this._comments.concat();
+ }
+
+ public function isClickable(hug1:IComment):Boolean
+ { //MethodID:1938, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ return (this._isMymemory || !this.clickedResNoMapping[hug1.resNo]);
+ }
+
+ public function clickButtonComment(hug1:IComment):void
+ { //MethodID:1940, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 84
+ internal var buttonComment:IComment; //slotID:1
+
+ buttonComment = hug1;
+
+ if(this.clickedResNoMapping[buttonComment.resNo]){
+ SystemMessage.instance.informComment(__MSG__("ボタンのクリックは1回だけです。"));
+
+ return;
+ }
+
+ this.clickedResNoMapping[buttonComment.resNo] = true;
+
+ this._handle.click(function(hug1:CommentStorageError):void{ //MethodID:1939, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 120
+ if(hug1){
+ SystemMessage.instance.informln(__MSG__("ボタンコメントのクリックに失敗"));
+
+ return;
+ }
+
+ SystemMessage.instance.informln(__MSG__("ボタンのクリックに成功"));
+
+ var hug2:CommentBuilder = new CommentBuilder(buttonComment);
+ hug2.clickCount = (buttonComment.clickCount + 1);
+ var hug3:Number = _comments.indexOf(buttonComment);
+ _comments[hug3] = hug2.make();
+
+ __reflect(false, NaN, [_comments[hug3]], []);
+ }, buttonComment.resNo);
+ }
+
+ public function serveCommentList():void
+ { //MethodID:1941, LocalCount= 1 , MaxScope= 1, MaxStack= 6, CodeLength= 92
+ if(this._pastMode){
+ this.__reflect(this._pastMode, ((this._pastCommentList.length == 0) ? 0 : this._pastCommentList[this._pastCommentList.length - 1]), this._pastCommentList.concat(), [], true);
+
+ return;
+ }
+
+ this.__reflect(this._pastMode, NaN, this._comments.concat(), [], true);
+ }
+
+ public function get name():String
+ { //MethodID:1942, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function editCommentList(hug1:Array, hug2:Array, hug3:Function):void
+ { //MethodID:1946, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 136
+ internal var deleteList:Array; //slotID:1
+ internal var undeleteList:Array; //slotID:2
+ internal var callback:Function; //slotID:3
+ internal var seq:Array; //slotID:4
+ internal var progress:Function; //slotID:5
+
+ seq = null;
+ progress = null;
+ deleteList = hug1;
+ undeleteList = hug2;
+ callback = hug3;
+ progress = function(hug1:CommentStorageError):void{ //MethodID:1943, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 56
+ if(hug1){
+ callback(false);
+ }else if(seq.length == 0){
+ callback(true);
+ }else{
+ seq.pop().apply(null);
+ }
+ };
+
+ SystemMessage.instance.informln(__MSG__("コメントの編集内容を送信:") + this.name);
+
+ seq = [];
+
+ if(deleteList.length != 0){
+ seq.push(function():void{ //MethodID:1944, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 15
+ _handle.deleteComments(progress, deleteList, false);
+ });
+ }
+
+ if(undeleteList.length != 0){
+ seq.push(function():void{ //MethodID:1945, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 15
+ _handle.deleteComments(progress, undeleteList, true);
+ });
+ }
+
+ progress(null);
+ }
+
+ private function __onComments(hug1:Array):void
+ { //MethodID:1953, LocalCount= 3 , MaxScope= 2, MaxStack= 6, CodeLength= 540
+ internal var comments:Array; //slotID:1
+ internal var removes:Array; //slotID:2
+ internal var _leavesNum:Object; //slotID:3
+ internal var maxLeafID:int; //slotID:4
+ internal var noTrunk:Array; //slotID:5
+ internal var i:uint; //slotID:6
+ internal var __comments:Array; //slotID:7
+ internal var deleteNum:uint; //slotID:8
+
+ removes = null;
+ _leavesNum = null;
+ maxLeafID = 0;
+ noTrunk = null;
+ i = 0;
+ __comments = null;
+ deleteNum = 0;
+ comments = hug1;
+ comments = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1947, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 53
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+
+ if(_yourPosts[hug1.resNo]){
+ delete _yourPosts[hug1.resNo];
+
+ hug3.justPosted = true;
+ }
+
+ return hug3.make();
+ });
+
+ this._comments = CommentListUtils.add(this._comments, comments);
+ removes = [];
+
+ if(!this._leafMode){
+ removes = ((this._comments.length > this.commentLimit) ? this._comments.splice(0, (this._comments.length - this.commentLimit)) : []);
+ }else{
+ _leavesNum = {};
+ maxLeafID = 0;
+ noTrunk = ((this._comments.length > this.commentLimit) ? this._comments.splice(0, (this._comments.length - this.commentLimit)) : []);
+ noTrunk = noTrunk.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1948, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 58
+ var hug3:* = undefined;
+
+ if(hug1.isTrunk && ((_handle.lastRes - hug1.resNo) >= commentLimit)){
+ hug3 = new CommentBuilder(hug1);
+ hug3.isTrunk = false;
+ hug1 = hug3.make();
+ }
+
+ return hug1;
+ });
+
+ this._comments = this._comments.splice(0, this.commentLimit).concat(noTrunk);
+
+ this._comments.forEach(function(hug1:IComment, ...rest):void{ //MethodID:1949, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 73
+ var hug3:int = hug1.leafID;
+
+ if((_leavesNum[hug3] == undefined) || (_leavesNum[hug3] == null)) _leavesNum[hug3] = [];
+
+ if(hug3 > maxLeafID) maxLeafID = hug3;
+ _leavesNum[hug3].push(hug1);
+ });
+
+ i = 0;
+
+ while(i <= maxLeafID){
+ if((_leavesNum[i] != undefined) && (_leavesNum[i] != null) && (_leavesNum[i].length > this._leafMaxNum)){
+ __comments = _leavesNum[i];
+
+ __comments.sortOn("resNo", Array.NUMERIC);
+
+ deleteNum = (__comments.length - this._leafMaxNum);
+ removes = removes.concat(__comments.slice(0, deleteNum));
+ }
+
+ i += 1;
+ }
+
+ removes = removes.filter(function(hug1:IComment, ...rest):Boolean{ //MethodID:1950, LocalCount= 3 , MaxScope= 0, MaxStack= 1, CodeLength= 6
+ return !hug1.isTrunk;
+ });
+
+ this._comments = this._comments.filter(function(hug1:IComment, ...rest):Boolean{ //MethodID:1952, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ internal var comment:IComment; //slotID:1
+ public var _:Array; //slotID:2
+ internal var undelete_flag:*; //slotID:3
+
+ undelete_flag = undefined;
+ comment = hug1;
+ internal var _:Object = rest;
+ undelete_flag = true;
+
+ removes.every(function(hug1:IComment, ...rest):Boolean{ //MethodID:1951, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ if(comment.resNo == hug1.resNo) undelete_flag = false;
+
+ return undelete_flag;
+ });
+
+ return undelete_flag;
+ });
+ this._comments = this._comments.sortOn("resNo", Array.NUMERIC);
+ }
+
+ this.__reflect(false, NaN, comments, removes, false);
+ }
+
+ private function __reflect(hug1:Boolean, hug2:Number, hug3:Array, hug4:Array, hug5:Boolean=false):void
+ { //MethodID:1954, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 92
+ if(this._pastMode != hug1) return;
+ onCommentCountUpdated.apply(isNaN(hug2) ? this._handle.lastRes : hug2);
+ onCommentListUpdated.apply(hug3, hug4, hug5, this.name);
+ }
+
+ public function toString():String
+ { //MethodID:1955, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.name;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAutomaticLoadingUpdated(hug1:Boolean):EventResult
+ { //MethodID:1956, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ this._handle.autoSyncEnabled = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onTimeMachineDateUpdated(hug1:Boolean, hug2:Date=null):EventResult
+ { //MethodID:1961, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 152
+ internal var pastFlag:Boolean; //slotID:1
+ internal var pastDate:Date = null; //slotID:2
+
+ pastFlag = hug1;
+ pastDate = hug2;
+ this._pastMode = pastFlag;
+
+ if(pastFlag){
+ if(!this.compareDate(this._lastPastDate, pastDate)){
+ this._lastPastDate = (pastDate ? new Date(pastDate.time) : null);
+
+ this._handle.waybackThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1958, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 133
+ internal var e:CommentStorageError; //slotID:1
+ internal var comments:Array; //slotID:2
+
+ e = hug1;
+ comments = hug2;
+
+ if(e){
+ SystemMessage.instance.informln((__MSG__("過去ログの取得に失敗:" + e.status) + "<br />"), false, true);
+
+ return;
+ }
+
+ _pastCommentList = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1957, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+ return hug3.make();
+ });
+ __reflect(true, ((comments.length != 0) ? comments[comments.length - 1].resNo : 0), comments.concat(), [], true);
+ }, int(this._lastPastDate.getTime() / 1000), this.commentLimit, this._leafMode);
+ }else{
+ ObjectUtils.callLater(function():void{ //MethodID:1959, LocalCount= 1 , MaxScope= 0, MaxStack= 6, CodeLength= 55
+ __reflect(true, ((_pastCommentList.length != 0) ? _pastCommentList[_pastCommentList.length - 1].resNo : 0), _pastCommentList.concat(), [], true);
+ });
+ }
+ }else{
+ ObjectUtils.callLater(function():void{ //MethodID:1960, LocalCount= 1 , MaxScope= 0, MaxStack= 6, CodeLength= 22
+ __reflect(false, NaN, _comments.concat(), [], true);
+ });
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ private function compareDate(hug1:Date, hug2:Date):Boolean
+ { //MethodID:1962, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 72
+ if(!hug1 && !hug2) return true;
+
+ if((!hug1 && hug2) || (hug1 && !hug2)) return false;
+
+ if(hug1.time == hug2.time) return true;
+
+ return false;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsEnabledLeafMode(hug1:Boolean):EventResult
+ { //MethodID:1967, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 110
+ internal var _enable:Boolean; //slotID:1
+
+ _enable = hug1;
+ this._leafMode = (_enable && (this._name != CommentConstants.CL_NICOS));
+
+ this._handle.getThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1964, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 97
+ internal var e:CommentStorageError; //slotID:1
+ internal var comments:Array; //slotID:2
+
+ e = hug1;
+ comments = hug2;
+
+ if(e){
+ SystemMessage.instance.informln((__MSG__("スレッドの更新に失敗:" + e.status) + "<br />"), false, true);
+
+ return;
+ }
+
+ _comments = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1963, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+ return hug3.make();
+ });
+ __reflect(false, NaN, comments.concat(), [], true);
+ }, (this.commentLimit * (-1)), this._leafMode);
+
+ if(this._pastMode){
+ this._handle.waybackThread(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:1966, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 133
+ internal var e:CommentStorageError; //slotID:1
+ internal var comments:Array; //slotID:2
+
+ e = hug1;
+ comments = hug2;
+
+ if(e){
+ SystemMessage.instance.informln((__MSG__("過去ログの取得に失敗:" + e.status) + "<br />"), false, true);
+
+ return;
+ }
+
+ _pastCommentList = comments.map(function(hug1:IComment, ...rest):IComment{ //MethodID:1965, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ var hug3:* = new CommentBuilder(hug1);
+ hug3.commentList = _this;
+ return hug3.make();
+ });
+ __reflect(true, ((comments.length != 0) ? comments[comments.length - 1].resNo : 0), comments.concat(), [], true);
+ }, int(this._lastPastDate.getTime() / 1000), this.commentLimit, this._leafMode);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ public function get leavesNum():String
+ { //MethodID:1970, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 81
+ internal var _leaves:Array; //slotID:1
+ internal var _leaves_num:String; //slotID:2
+
+ _leaves = null;
+
+ if(!this._leafMode) return "";
+
+ _leaves = [];
+
+ this._comments.forEach(function(hug1:*, hug2:int, hug3:Array):void{ //MethodID:1968, LocalCount= 8 , MaxScope= 0, MaxStack= 4, CodeLength= 62
+ var hug4:int = hug1.leafID;
+
+ if(_leaves[hug4]) _leaves[hug4] = 0;
+
+ _leaves[hug4]++;
+ });
+
+ _leaves_num = "";
+ _leaves.map(function(hug1:*, hug2:int, hug3:Array):String{ //MethodID:1969, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ return ((hug2 + 1).toString() + hug1.toString());
+ });
+
+ _leaves_num = _leaves.join(",");
+
+ return _leaves_num;
+ }
+
+ public function get threadID():String
+ { //MethodID:1971, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get threadID():String
+ { //MethodID:1972, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get _this():ICommentList
+ { //MethodID:1973, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._this;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get lastResNo():Number
+ { //MethodID:1974, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._handle.lastRes;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get comments():Array
+ { //MethodID:1975, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comments;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get isInitialized():Boolean
+ { //MethodID:1976, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasInitialized;
+ }
+ }
+}
+
+//■script110■
+
+package jp.nicovideo.marquee{
+
+ import flash.display.MovieClip
+
+ //■class(instance)_index:132
+ public interface INicoMarqueePlayer
+ {
+ //static constructor
+ public static function INicoMarqueePlayer$cinit()
+ { //MethodID:1978, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function interruptContent(hug1:String, hug2:MovieClip, hug3:Number, hug4:Function, hug5:Function, hug6:Number=0.5):Boolean;//MethodID:1979, dispID:0
+
+ function endInterruptContent(hug1:int=-1):void; //MethodID:1980, dispID:0
+
+ function updateFeedList(hug1:XML):void; //MethodID:1981, dispID:0
+
+ function updateAspect(hug1:uint):void; //MethodID:1982, dispID:0
+
+ function setRecentPremiumUsers(hug1:Object):void; //MethodID:1983, dispID:0
+
+ function updateScreenMode(hug1:uint):void; //MethodID:1984, dispID:0
+
+ function updateNicowariSkip(hug1:Boolean):void; //MethodID:1985, dispID:0
+
+ //constructor
+ public function INicoMarqueePlayer(); //MethodID:1986, dispID:0
+ }
+}
+
+//■script111■
+
+package jp.nicovideo.util{
+
+ import flash.utils.setTimeout
+
+ //■class(instance)_index:133
+ public final class ObjectUtils extends Object
+ {
+ //static constructor
+ public static function ObjectUtils$cinit()
+ { //MethodID:1988, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function callLater(hug1:Function, ...rest):void
+ { //dispID:3, MethodID:1990, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 29
+ internal var f:Function; //slotID:1
+ public var args:Array; //slotID:2
+
+ f = hug1;
+ internal var args:Object = rest;
+
+ setTimeout(function():void{ //MethodID:1989, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 12
+ f.apply(null, args);
+ }, 0);
+ }
+
+ public static function bind(hug1:Function, hug2:Object):Function
+ { //dispID:4, MethodID:1992, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 20
+ internal var f:Function; //slotID:1
+ internal var receiver:Object; //slotID:2
+
+ f = hug1;
+ receiver = hug2;
+ return function(... rest):*{ //MethodID:1991, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 12
+ return f.apply(receiver, rest);
+ };
+ }
+
+ public static function values(hug1:*):Array
+ { //dispID:5, MethodID:1993, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 49
+ var hug3:* = undefined;
+ var hug2:Array = [];
+
+ for each(hug3 in hug1){
+ hug2.push(hug3);
+ }
+
+ return hug2;
+ }
+
+ //constructor
+ public function ObjectUtils()
+ { //MethodID:1994, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script112■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:134
+ public interface IVideoController
+ {
+ //static constructor
+ public static function IVideoController$cinit()
+ { //MethodID:1996, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function startToPlay(hug1:Boolean=false):void; //MethodID:1997, dispID:0
+
+ function play(hug1:String=null):void; //MethodID:1998, dispID:0
+
+ function stop(hug1:String=null):void; //MethodID:1999, dispID:0
+
+ function seek(hug1:Number, hug2:Boolean=false):void; //MethodID:2000, dispID:0
+
+ function get isPlaying():Boolean; //MethodID:2001, dispID:0
+
+ function get videoWrapper():IVideo; //MethodID:2002, dispID:0
+
+ function get mainVideo():IVideo; //MethodID:2003, dispID:0
+
+ function get mainTotalLength():Number; //MethodID:2004, dispID:0
+
+ //constructor
+ public function IVideoController(); //MethodID:2005, dispID:0
+ }
+}
+
+//■script113■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.views.VideoLayerConstants
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:136
+ public class VideoController extends Object implements IVideoController
+ {
+ //static constructor
+ public static function VideoController$cinit()
+ { //MethodID:2011, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoController(hug1:VideoWrapper, hug2:IPlayerConfig, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:2013, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 127
+ internal var videoWrapper:VideoWrapper; //slotID:1
+ internal var playerConfig:IPlayerConfig; //slotID:2
+ internal var isPremium:Boolean = false; //slotID:3
+ internal var isPlaylist:Boolean = false; //slotID:4
+
+ videoWrapper = hug1;
+ playerConfig = hug2;
+ isPremium = hug3;
+ isPlaylist = hug4;
+ this._seekWaitTimer = new Timer(100, 1);
+ this.onVideoExpectState = new Functions();
+
+ super();
+
+ this._videoWrapper = videoWrapper;
+ this._playerConfig = playerConfig;
+ this._isPremium = isPremium;
+ this._isPlaylist = isPlaylist;
+
+ this._seekWaitTimer.addEventListener(TimerEvent.TIMER, function():void{ //MethodID:2012, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 18
+ _videoWrapper.seek(_seekTargetVpos);
+ _seekWaitTimer.stop();
+ });
+
+ this._operators = new _Operators();
+
+ this._operators.isStopped(VideoConstants.OPERATION_OTHER);
+ }
+
+ //variables/etc.
+ private var _seekTargetVpos:Number; //slotID:0
+ private var _isPlaying:Boolean = false; //slotID:0
+ private var _isSeeking:Boolean = false; //slotID:0
+ private var _hasPlayed:Boolean = false; //slotID:0
+ private var _isWaitingSeek:Boolean = false; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _isHirobaMode:Boolean = false; //slotID:0
+ private var _isPlaylist:Boolean = false; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _operators:_Operators; //slotID:0
+ private var _videoWrapper:VideoWrapper; //slotID:0
+ private var _seekWaitTimer:Timer; //slotID:0
+ private var _prevVposOnSeekLoop:Number = -1.0; //slotID:0
+ private var _initializingLastUserOperation:Function = null; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoExpectState:Functions;//slotID:0
+
+ public function play(hug1:String=null):void
+ { //MethodID:2014, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 125
+ this._isPlaying = true;
+
+ if(this._operators.isPlayed(hug1 ? hug1 : VideoConstants.OPERATION_OTHER) && !this._isSeeking){
+ if(this._videoWrapper.isControllable){
+ this._hasPlayed = true;
+
+ this._videoWrapper.play();
+ }else if(this._isPremium){
+ this._initializingLastUserOperation = this._videoWrapper.play;
+
+ onVideoExpectState.apply(VideoPlayerStatus.PLAYING);
+ }
+ }
+ }
+
+ public function stop(hug1:String=null):void
+ { //MethodID:2015, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 108
+ this._isPlaying = false;
+
+ if(this._operators.isStopped(hug1 ? hug1 : VideoConstants.OPERATION_OTHER)){
+ if(this._videoWrapper.isControllable){
+ this._videoWrapper.stop();
+ }else if(this._isPremium){
+ this._initializingLastUserOperation = this._videoWrapper.stop;
+
+ onVideoExpectState.apply(VideoPlayerStatus.PAUSED);
+ }
+ }
+ }
+
+ public function seek(hug1:Number, hug2:Boolean=false):void
+ { //MethodID:2016, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ this._isSeeking = true;
+ this._seekTargetVpos = hug1;
+ this._isWaitingSeek = hug2;
+
+ if(!this._videoWrapper.isControllable) return;
+ this._videoWrapper.seek(hug1);
+ }
+
+ public function startToPlay(hug1:Boolean=false):void
+ { //MethodID:2017, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 177
+ SystemMessage.instance.informln(__MSG__("動画の再生準備完了"), false, true);
+
+ this._hasPlayed = true;
+
+ if(hug1 || (this._playerConfig.autoPlay && this._isPremium)){
+ if((this._videoWrapper.vpos < this._seekTargetVpos) && this._isWaitingSeek){
+ this.seek(0.0);
+ this.play(VideoConstants.OPERATION_OTHER);
+ }else{
+ SystemMessage.instance.informln(__MSG__("自動再生を開始"), false, true);
+ this.play(VideoConstants.OPERATION_OTHER);
+ }
+ }else{
+ this.stop(VideoConstants.OPERATION_OTHER);
+ }
+
+ this._isWaitingSeek = false;
+
+ if(this._initializingLastUserOperation != null) this._initializingLastUserOperation();
+ }
+
+ private function _videoResize():void
+ { //MethodID:2018, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 89
+ var hug1:int = ((this._playerConfig.aspectRatio == ScreenAspectRatio.WIDE) ? VideoLayerConstants.VIDEO_LAYER_HD_WIDTH : VideoLayerConstants.VIDEO_LAYER_SD_WIDTH);
+ var hug2:int = ((this._playerConfig.aspectRatio == ScreenAspectRatio.WIDE) ? VideoLayerConstants.VIDEO_LAYER_HD_HEIGHT : VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT);
+
+ this._videoWrapper.resize(hug1, hug2);
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:2019, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPlaying;
+ }
+
+ public function get videoWrapper():IVideo
+ { //MethodID:2020, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoWrapper;
+ }
+
+ public function get mainVideo():IVideo
+ { //MethodID:2021, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoWrapper.mainVideo;
+ }
+
+ public function get mainTotalLength():Number
+ { //MethodID:2022, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoWrapper.mainTotalLength;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:2024, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 138
+ internal var vpos:Number; //slotID:1
+ internal var isVposProgressing:Function; //slotID:2
+
+ vpos = hug1;
+ isVposProgressing = function():Boolean{ //MethodID:2023, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 54
+ var hug1:Boolean = true;
+
+ if((vpos == _prevVposOnSeekLoop) && (_seekTargetVpos <= _videoWrapper.loadedLength)){
+ hug1 = false;
+ _prevVposOnSeekLoop = -1;
+ }else{
+ _prevVposOnSeekLoop = vpos;
+ }
+
+ return hug1;
+ };
+
+ if(this._isPlaying && this._videoWrapper.isControllable) this._videoWrapper.play();
+
+ if(this._isWaitingSeek && (vpos < this._seekTargetVpos) && !this._videoWrapper.hasPlayed){
+ if(isVposProgressing()){
+ this._seekWaitTimer.start();
+
+ return EventResult.BREAK;
+ }
+
+ this.seek(vpos, this._isWaitingSeek);
+ }
+
+ this._isSeeking = false;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:2025, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ if(this._isPlaylist){
+ this._videoWrapper.stop();
+ }else if(hug1){
+ this._videoWrapper.seek(0.0);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoInitialized(hug1:Boolean, hug2:IVideo):EventResult
+ { //MethodID:2026, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 152
+ if(!hug1) return EventResult.THROUGH;
+
+ this._videoWrapper.volume = (this._playerConfig.isMute ? 0.0 : this._playerConfig.volume);
+ this._videoWrapper.isLoop = this._playerConfig.isLoop;
+ this._videoWrapper.sponsorVisibleOnLoop = this._playerConfig.sponsorVisibleOnLoop;
+
+ if(!this._isHirobaMode && (this._videoWrapper.vpos < this._videoWrapper.mainVideo.length)) this._videoWrapper.mainVideo.layer.visible = true;
+
+ if(this._isSeeking) this._videoWrapper.seek(this._seekTargetVpos);
+ this._videoResize();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigVolumeUpdated(hug1:Number):EventResult
+ { //MethodID:2027, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ this._videoWrapper.volume = (this._playerConfig.isMute ? 0.0 : hug1);
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsMuteUpdated(hug1:Boolean):EventResult
+ { //MethodID:2028, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ this._videoWrapper.volume = (hug1 ? 0.0 : this._playerConfig.volume);
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigIsLoopUpdated(hug1:Boolean):EventResult
+ { //MethodID:2029, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ this._videoWrapper.isLoop = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAutoPlayUpdated(hug1:Boolean):EventResult
+ { //MethodID:2030, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 53
+ if(hug1 && !this._hasPlayed){
+ if(this._videoWrapper.isControllable){
+ this._videoWrapper.play();
+ }else{
+ this._isPlaying = true;
+ }
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigSponsorVisibleOnLoopUpdated(hug1:Boolean):EventResult
+ { //MethodID:2031, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ this._videoWrapper.sponsorVisibleOnLoop = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:2032, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 47
+ this._isHirobaMode = hug1;
+
+ if(this._isHirobaMode){
+ this.stop(VideoConstants.OPERATION_HIROBA);
+ }else{
+ this.play(VideoConstants.OPERATION_HIROBA);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAspectRatioUpdate(hug1:uint):EventResult
+ { //MethodID:2033, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._videoResize();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:2034, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._videoResize();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onInitMetaInfo():EventResult
+ { //MethodID:2035, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this._videoResize();
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+
+//■class(instance)_index:135
+//private
+dynamic class _Operators extends Object
+{
+ //static constructor
+ public static function _Operators$cinit()
+ { //MethodID:2007, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private const PLAY:String = "play"; //slotID:0
+ private const STOP:String = "stop"; //slotID:0
+
+ public function isPlayed(hug1:String):Boolean
+ { //MethodID:2008, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 61
+ var hug3:String = null;
+ this[hug1] = this.PLAY;
+ var hug2:Boolean = true;
+
+ for each(hug3 in this){
+ if(hug3 != this.PLAY) return !hug2;
+ }
+
+ return hug2;
+ }
+
+ public function isStopped(hug1:String):Boolean
+ { //MethodID:2009, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ this[hug1] = this.STOP;
+ return true;
+ }
+
+ //constructor
+ public function _Operators()
+ { //MethodID:2010, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script114■
+
+package jp.nicovideo.hiroba.models{
+
+ //■class(instance)_index:137
+ public interface IHirobaMessageServerInfo
+ {
+ //static constructor
+ public static function IHirobaMessageServerInfo$cinit()
+ { //MethodID:2037, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function refresh(hug1:Function):void; //MethodID:2038, dispID:0
+
+ function get host():String; //MethodID:2039, dispID:0
+
+ function get port():uint; //MethodID:2040, dispID:0
+
+ function get threadID():String; //MethodID:2041, dispID:0
+
+ function get threadKey():String; //MethodID:2042, dispID:0
+
+ //constructor
+ public function IHirobaMessageServerInfo(); //MethodID:2043, dispID:0
+ }
+}
+
+//■script115■
+
+package jp.nicovideo.hiroba.models{
+
+ import jp.nicovideo.nicoplayer.models.api.GetFLV
+
+ //■class(instance)_index:138
+ public class HirobaMessageServerInfo extends Object implements IHirobaMessageServerInfo
+ {
+ //static constructor
+ public static function HirobaMessageServerInfo$cinit()
+ { //MethodID:2045, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HirobaMessageServerInfo(hug1:GetFLV, hug2:String, hug3:Object)
+ { //MethodID:2046, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._getFLV = hug1;
+ this._getFLVApiURL = hug2;
+ this._getFLVApiParams = hug3;
+ }
+
+ //variables/etc.
+ private var _getFLV:GetFLV; //slotID:0
+ private var _getFLVApiURL:String; //slotID:0
+ private var _getFLVApiParams:Object; //slotID:0
+
+ public function refresh(hug1:Function):void
+ { //MethodID:2048, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 34
+ internal var callback:Function; //slotID:1
+
+ callback = hug1;
+ this._getFLV = new GetFLV(this._getFLVApiURL, this._getFLVApiParams, function(hug1:Boolean):void{ //MethodID:2047, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 40
+ callback(hug1 && (_getFLV.threadID != null) && (_getFLV.hirobaHost != null));
+ });
+ }
+
+ public function get host():String
+ { //MethodID:2049, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._getFLV.hirobaHost;
+ }
+
+ public function get port():uint
+ { //MethodID:2050, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._getFLV.hirobaPort;
+ }
+
+ public function get threadID():String
+ { //MethodID:2051, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._getFLV.hirobaThreadID;
+ }
+
+ public function get threadKey():String
+ { //MethodID:2052, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._getFLV.hirobaThreadKey;
+ }
+ }
+}
+
+//■script116■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.display.DisplayObjectContainer
+
+ //■class(instance)_index:139
+ public interface IRemoconClient implements EventSender
+ {
+ //static constructor
+ public static function IRemoconClient$cinit()
+ { //MethodID:2054, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isConnecting():Boolean; //MethodID:2055, dispID:0
+
+ function setAlertContainer(hug1:DisplayObjectContainer):void; //MethodID:2056, dispID:0
+
+ function get stateObserver():*; //MethodID:2057, dispID:0
+
+ //constructor
+ public function IRemoconClient(); //MethodID:2058, dispID:0
+ }
+}
+
+//■script117■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.display.DisplayObjectContainer
+ import flash.events.Event
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:140
+ public class RemoconClient extends Object implements IRemoconClient
+ {
+ //static constructor
+ public static function RemoconClient$cinit()
+ { //MethodID:2060, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RemoconClient(hug1:RemoconPlayerStateObserver, hug2:RemoconNotifier, hug3:RemoconState)
+ { //MethodID:2061, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ this.onRemoconClientConnectUpdated = new Functions();
+
+ super();
+
+ this._stateObserver = hug1;
+ this._notifier = hug2;
+ this._remoconState = hug3;
+
+ this._remoconState.addEventListener(Event.CONNECT, this._connectUpdateListener);
+ this._remoconState.addEventListener(Event.CLOSE, this._connectUpdateListener);
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onRemoconClientConnectUpdated:Functions;//slotID:0
+ private var _stateObserver:RemoconPlayerStateObserver; //slotID:0
+ private var _notifier:RemoconNotifier; //slotID:0
+ private var _remoconState:RemoconState; //slotID:0
+
+ private function _connectUpdateListener(hug1:Event):void
+ { //MethodID:2062, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 67
+ var hug2:Boolean = false;
+
+ if(hug1.type == Event.CONNECT){
+ hug2 = true;
+ }else if(hug1.type == Event.CLOSE){
+ hug2 = false;
+ }else{
+ return;
+ }
+
+ onRemoconClientConnectUpdated.apply(hug2);
+ }
+
+ public function get eventNames():Array
+ { //MethodID:2063, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return ["onRemoconClientConnectUpdated"];
+ }
+
+ public function get isConnecting():Boolean
+ { //MethodID:2064, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._remoconState.isConnecting;
+ }
+
+ public function setAlertContainer(hug1:DisplayObjectContainer):void
+ { //MethodID:2065, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._notifier.setContainer(hug1);
+ }
+
+ public function get stateObserver():*
+ { //MethodID:2066, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._stateObserver;
+ }
+ }
+}
+
+//■script118■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ //■class(instance)_index:141
+ public class NGType extends Object
+ {
+ //static constructor
+ public static function NGType$cinit()
+ { //MethodID:2068, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ NONE = "none";
+ MESSAGE = "message";
+ USER_ID = "user_id";
+ COMMAND = "command";
+ }
+
+ //static variables/etc.
+ public static const NONE:String = "none"; //slotID:1
+ public static const MESSAGE:String = "message"; //slotID:2
+ public static const USER_ID:String = "user_id"; //slotID:3
+ public static const COMMAND:String = "command"; //slotID:4
+
+ //constructor
+ public function NGType()
+ { //MethodID:2069, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script119■
+
+package jp.nicovideo.util.loka{
+
+ import jp.nicovideo.util.StringUtils
+
+ //■class(instance)_index:142
+ public class Loka extends Object
+ {
+ //static constructor
+ public static function Loka$cinit()
+ { //MethodID:2071, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ private static var __instance:Loka; //slotID:1
+
+ public static function get instance():Loka
+ { //dispID:3, MethodID:2072, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 32
+ var hug1:Loka = new Loka();
+ __instance = hug1;
+ return hug1;
+ }
+
+ //constructor
+ public function Loka()
+ { //MethodID:2073, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var __loka:*; //slotID:0
+ private var __debug:Boolean; //slotID:0
+
+ public function set loka(hug1:*):void
+ { //MethodID:2074, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__loka = hug1;
+ }
+
+ public function get loka():*
+ { //MethodID:2075, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__loka;
+ }
+
+ public function set debug(hug1:Boolean):void
+ { //MethodID:2076, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__debug = hug1;
+ }
+
+ public function get debug():Boolean
+ { //MethodID:2077, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__debug;
+ }
+
+ public function getMessage(hug1:String, hug2:Array):String
+ { //MethodID:2078, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 107
+ if(!this.__loka){
+ if(!this.debug) trace("Loka.getMessage: WARNING! メッセージオブジェクトが設定されていない件。");
+
+ return this.__applyParams(hug1, hug2);
+ }
+
+ if(!((hug1 in this.__loka.messages) || this.debug)) throw new Error("Loka.getMessage: おいwちゃんとしろ");
+
+ var hug3:* = this.__loka.messages[hug1];
+ return ((hug3 is Function) ? hug3.apply(null, hug2) : hug3);
+ }
+
+ private function __applyParams(hug1:String, hug2:Array):String
+ { //MethodID:2080, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 63
+ internal var id:String; //slotID:1
+ internal var params:Array; //slotID:2
+ internal var mapping:Object; //slotID:3
+ internal var i:uint; //slotID:4
+
+ mapping = null;
+ id = hug1;
+ params = hug2;
+ mapping = {};
+ i = 0;
+ return StringUtils.gsub(function(hug1:Object):String{ //MethodID:2079, LocalCount= 4 , MaxScope= 0, MaxStack= 6, CodeLength= 90
+ if(!hug1[1]) return "";
+
+ mapping[hug1[1]] = hug2;
+ return params[(hug1[1] in mapping) ? mapping[hug1[1]] : hug2];
+ }, new RegExp("\[\[\s*(?:#.*?|([^\W\d]\w*))\s*\]\]", "g"), id);
+ }
+ }
+}
+
+//■script120■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:143
+ public interface IObsevableContainer
+ {
+ //static constructor
+ public static function IObsevableContainer$cinit()
+ { //MethodID:2082, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function hasInitialized(hug1:String):Boolean; //MethodID:2083, dispID:0
+
+ function addInitListener(hug1:Array, hug2:Function):void; //MethodID:2084, dispID:0
+
+ function setProperty(hug1:String, hug2:*):void; //MethodID:2085, dispID:0
+
+ function getPropertyValue(hug1:String):*; //MethodID:2086, dispID:0
+
+ //constructor
+ public function IObsevableContainer(); //MethodID:2087, dispID:0
+ }
+}
+
+//■script121■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import flash.errors.IllegalOperationError
+
+ //■class(instance)_index:146
+ public class AbstractObservableContainer extends Object implements IObsevableContainer
+ {
+ //static constructor
+ public static function AbstractObservableContainer$cinit()
+ { //MethodID:2100, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function AbstractObservableContainer()
+ { //MethodID:2101, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._observers = [];
+
+ super();
+ }
+
+ //variables/etc.
+ private var _observers:Array; //slotID:0
+ protected var properties:Object; //slotID:0
+
+ protected function prepareProperty(hug1:String, hug2:Class):_Property
+ { //MethodID:2102, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return new _Property(hug1, hug2);
+ }
+
+ public function hasInitialized(hug1:String):Boolean
+ { //MethodID:2103, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ return (this.properties[hug1] as _Property).hasInitialized;
+ }
+
+ public function addInitListener(hug1:Array, hug2:Function):void
+ { //MethodID:2104, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 113
+ var hug5:String = null;
+ var hug3:_Observer = new _Observer(hug1, hug2);
+ var hug4:Boolean = false;
+
+ for each(hug5 in hug1){
+ if(this.hasInitialized(hug5)) hug4 = hug3.countDown(hug5);
+
+ if(hug4) break;
+ }
+
+ if(hug4){
+ hug3.listener.apply();
+ }else{
+ this._observers.push(hug3);
+ }
+ }
+
+ public function setProperty(hug1:String, hug2:*):void
+ { //MethodID:2105, LocalCount= 10 , MaxScope= 1, MaxStack= 3, CodeLength= 247
+ var hug5:_Observer = null;
+ var hug6:uint = 0;
+ var hug7:_Observer = null;
+
+ if(!this.properties.hasOwnProperty(hug1)) throw new ArgumentError("AbstractObservableContainer._setProperty: \"" + hug1 + "\" is not property.");
+
+ var hug3:_Property = this.properties[hug1];
+
+ if(hug3.hasInitialized) throw new IllegalOperationError("AbstractObservableContainer._setProperty: " + hug1 + " has set already.");
+ hug3.setValue(hug2);
+
+ var hug4:Array = [];
+
+ for each(hug5 in this._observers){
+ if(hug5.countDown(hug1)) hug4.push(this._observers.indexOf(hug5));
+ }
+
+ hug4.sort(Array.NUMERIC | Array.DESCENDING);
+
+ for each(hug6 in hug4){
+ hug7 = this._observers[hug6];
+
+ this._observers.splice(hug6, 1);
+ hug7.listener.apply();
+ }
+ }
+
+ public function getPropertyValue(hug1:String):*
+ { //MethodID:2106, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ return (this.properties[hug1] as _Property).value;
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+
+//■class(instance)_index:144
+//private
+class _Observer extends Object
+{
+ //static constructor
+ public static function _Observer$cinit()
+ { //MethodID:2089, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Observer(hug1:Array, hug2:Function)
+ { //MethodID:2090, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ super();
+
+ this._names = hug1.concat();
+ this._counter = hug1.length;
+ this._listener = hug2;
+ }
+
+ //variables/etc.
+ private var _names:Array; //slotID:0
+ private var _counter:uint; //slotID:0
+ private var _listener:Function; //slotID:0
+
+ public function countDown(hug1:String):Boolean
+ { //MethodID:2091, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 71
+ if(this._counter == 0) throw new IllegalOperationError("_Observer.countDown: count has been 0 alreay.");
+
+ if(this._names.indexOf(hug1) == (-1)) return false;
+
+ this._counter--;
+
+ if(this._counter == 0) return true;
+
+ return false;
+ }
+
+ public function get listener():Function
+ { //MethodID:2092, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._listener;
+ }
+
+ public function get names():Array
+ { //MethodID:2093, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._names;
+ }
+}
+
+//■class(instance)_index:145
+//private
+class _Property extends Object
+{
+ //static constructor
+ public static function _Property$cinit()
+ { //MethodID:2094, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Property(hug1:String, hug2:Class)
+ { //MethodID:2095, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._name = hug1;
+ this._type = hug2;
+ }
+
+ //variables/etc.
+ private var _name:String; //slotID:0
+ private var _value:*; //slotID:0
+ private var _hasInitialized:Boolean = false; //slotID:0
+ private var _type:Class; //slotID:0
+
+ public function get name():String
+ { //MethodID:2096, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function get value():*
+ { //MethodID:2097, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._value;
+ }
+
+ public function setValue(hug1:*):void
+ { //MethodID:2098, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ if(!(hug1 is this._type)) throw new ArgumentError("AbstractObservableContainer:_Property.setValue: invalid type.");
+
+ this._value = hug1;
+ this._hasInitialized = true;
+ }
+
+ public function get hasInitialized():Boolean
+ { //MethodID:2099, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasInitialized;
+ }
+}
+
+//■script122■
+
+package jp.nicovideo.nicoplayer.plugin{
+
+ import flash.display.DisplayObjectContainer
+ import jp.nicovideo.marquee.INicoMarqueeClient
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.IVideoDetail
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.nicoplayer.models.comment.CommentPoolContainer
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.nicoplayer.views.IVideoLayerManager
+
+ //■class(instance)_index:147
+ public interface IPluginClient implements IObsevableContainer
+ {
+ //static constructor
+ public static function IPluginClient$cinit()
+ { //MethodID:2108, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get videoController():IVideoController; //MethodID:2109, dispID:0
+
+ function get flashVars():NicoFlashVars; //MethodID:2110, dispID:0
+
+ function get nicoConfig():NicoConfig; //MethodID:2111, dispID:0
+
+ function get getFLV():IGetFLV; //MethodID:2112, dispID:0
+
+ function get playerConfig():IPlayerConfig; //MethodID:2113, dispID:0
+
+ function get audioShutter():IControllerShutter; //MethodID:2114, dispID:0
+
+ function get ngFilter():INGComment; //MethodID:2115, dispID:0
+
+ function get commentListContainer():Object; //MethodID:2116, dispID:0
+
+ function get filteredCommentPoolContainer():CommentPoolContainer; //MethodID:2117, dispID:0
+
+ function get videoLayerManager():IVideoLayerManager; //MethodID:2118, dispID:0
+
+ function get videoDetail():IVideoDetail; //MethodID:2119, dispID:0
+
+ function get pluginContainer():DisplayObjectContainer; //MethodID:2120, dispID:0
+
+ function get marqueeClient():INicoMarqueeClient; //MethodID:2121, dispID:0
+
+ function set onInitilized(hug1:Function):void; //MethodID:2122, dispID:0
+
+ function get initializeInfo():InitializeInfo; //MethodID:2123, dispID:0
+
+ //constructor
+ public function IPluginClient(); //MethodID:2124, dispID:0
+ }
+}
+
+//■script123■
+
+package jp.nicovideo.nicoplayer.plugin{
+
+ import flash.display.DisplayObjectContainer
+ import jp.nicovideo.marquee.INicoMarqueeClient
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.AbstractObservableContainer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.IVideoDetail
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.nicoplayer.models.comment.CommentPoolContainer
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.nicoplayer.views.IVideoLayerManager
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:148
+ public class NicoPluginClient extends AbstractObservableContainer implements IPluginClient
+ {
+ //static constructor
+ public static function NicoPluginClient$cinit()
+ { //MethodID:2126, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NicoPluginClient()
+ { //MethodID:2127, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ this._onInitialized = new Functions();
+
+ super();
+ this._NicoPluginClient();
+ }
+
+ //variables/etc.
+ private var _onInitialized:Functions; //slotID:0
+ private var _hasInitialized:Boolean = false; //slotID:0
+
+ private function _NicoPluginClient():void
+ { //MethodID:2129, LocalCount= 4 , MaxScope= 2, MaxStack= 31, CodeLength= 314
+ internal var names:Array; //slotID:1
+ internal var name:String; //slotID:2
+
+ name = null;
+ properties = {flashVars:prepareProperty("flashVars", NicoFlashVars), getFLV:prepareProperty("getFLV", IGetFLV), nicoConfig:prepareProperty("nicoConfig", NicoConfig), videoController:prepareProperty("videoController", IVideoController), audioShutter:prepareProperty("audioShutter", IControllerShutter), playerConfig:prepareProperty("playerConfig", IPlayerConfig), ngFilter:prepareProperty("ngFilter", INGComment), commentListContainer:prepareProperty("commentListContainer", Object), filteredCommentPoolContainer:prepareProperty("filteredCommentPoolContainer", CommentPoolContainer), videoLayerManager:prepareProperty("videoLayerManager", IVideoLayerManager), pluginContainer:prepareProperty("pluginContainer", DisplayObjectContainer), videoDetail:prepareProperty("videoDetail", IVideoDetail), marqueeClient:prepareProperty("marqueeClient", INicoMarqueeClient), initializeInfo:prepareProperty("initializeInfo", InitializeInfo)};
+ names = [];
+
+ for(name in properties){
+ if(name == "marqueeClient"){
+ }else{
+ names.push(name);
+ }
+ }
+
+ addInitListener(names, function():void{ //MethodID:2128, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ _onInitialized.apply();
+
+ _hasInitialized = true;
+ });
+ }
+
+ public function set onInitilized(hug1:Function):void
+ { //MethodID:2130, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(this._hasInitialized){
+ hug1.apply();
+
+ return;
+ }
+
+ this._onInitialized.add(hug1);
+ }
+
+ public function get videoController():IVideoController
+ { //MethodID:2131, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("videoController");
+ }
+
+ public function get nicoConfig():NicoConfig
+ { //MethodID:2132, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("nicoConfig");
+ }
+
+ public function get flashVars():NicoFlashVars
+ { //MethodID:2133, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("flashVars");
+ }
+
+ public function get getFLV():IGetFLV
+ { //MethodID:2134, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("getFLV");
+ }
+
+ public function get audioShutter():IControllerShutter
+ { //MethodID:2135, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("audioShutter");
+ }
+
+ public function get playerConfig():IPlayerConfig
+ { //MethodID:2136, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("playerConfig");
+ }
+
+ public function get ngFilter():INGComment
+ { //MethodID:2137, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("ngFilter");
+ }
+
+ public function get commentListContainer():Object
+ { //MethodID:2138, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("commentListContainer");
+ }
+
+ public function get filteredCommentPoolContainer():CommentPoolContainer
+ { //MethodID:2139, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("filteredCommentPoolContainer");
+ }
+
+ public function get videoLayerManager():IVideoLayerManager
+ { //MethodID:2140, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("videoLayerManager");
+ }
+
+ public function get videoDetail():IVideoDetail
+ { //MethodID:2141, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("videoDetail");
+ }
+
+ public function get marqueeClient():INicoMarqueeClient
+ { //MethodID:2142, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("marqueeClient");
+ }
+
+ public function get pluginContainer():DisplayObjectContainer
+ { //MethodID:2143, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("pluginContainer");
+ }
+
+ public function get initializeInfo():InitializeInfo
+ { //MethodID:2144, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return getPropertyValue("initializeInfo");
+ }
+ }
+}
+
+//■script124■
+
+package jp.nicovideo.nicoplayer.views{
+
+ //■class(instance)_index:149
+ public class VideoLayerConstants extends Object
+ {
+ //static constructor
+ public static function VideoLayerConstants$cinit()
+ { //MethodID:2146, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 111
+ BASE_LAYER_HD_WIDTH = 672;
+ BASE_LAYER_HD_HEIGHT = 384;
+ BASE_LAYER_SD_WIDTH = 544;
+ BASE_LAYER_SD_HEIGHT = 384;
+ COMMENT_LAYER_HD_WIDTH = BASE_LAYER_HD_WIDTH;
+ COMMENT_LAYER_HD_HEIGHT = BASE_LAYER_HD_HEIGHT;
+ COMMENT_LAYER_SD_WIDTH = BASE_LAYER_SD_WIDTH;
+ COMMENT_LAYER_SD_HEIGHT = BASE_LAYER_SD_HEIGHT;
+ VIDEO_LAYER_HD_WIDTH = 640;
+ VIDEO_LAYER_HD_HEIGHT = BASE_LAYER_HD_HEIGHT;
+ VIDEO_LAYER_SD_WIDTH = 512;
+ VIDEO_LAYER_SD_HEIGHT = BASE_LAYER_SD_HEIGHT;
+ }
+
+ //static variables/etc.
+ public static const BASE_LAYER_HD_WIDTH:Number = 672.0; //slotID:1
+ public static const BASE_LAYER_HD_HEIGHT:Number = 384.0; //slotID:2
+ public static const BASE_LAYER_SD_WIDTH:Number = 544.0; //slotID:3
+ public static const BASE_LAYER_SD_HEIGHT:Number = 384.0; //slotID:4
+ public static const COMMENT_LAYER_HD_WIDTH:Number = 672.0; //slotID:5
+ public static const COMMENT_LAYER_HD_HEIGHT:Number = 384.0; //slotID:6
+ public static const COMMENT_LAYER_SD_WIDTH:Number = 544.0; //slotID:7
+ public static const COMMENT_LAYER_SD_HEIGHT:Number = 384.0; //slotID:8
+ public static const VIDEO_LAYER_HD_WIDTH:Number = 640.0; //slotID:9
+ public static const VIDEO_LAYER_HD_HEIGHT:Number = 384.0; //slotID:10
+ public static const VIDEO_LAYER_SD_WIDTH:Number = 512.0; //slotID:11
+ public static const VIDEO_LAYER_SD_HEIGHT:Number = 384.0; //slotID:12
+
+ //constructor
+ public function VideoLayerConstants()
+ { //MethodID:2147, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script125■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ //■class(instance)_index:150
+ public class BGMVideoInfo extends Object
+ {
+ //static constructor
+ public static function BGMVideoInfo$cinit()
+ { //MethodID:2149, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ TYPE_BGM = "bgm";
+ TYPE_CM = "cm";
+ }
+
+ //static variables/etc.
+ public static const TYPE_BGM:String = "bgm"; //slotID:1
+ public static const TYPE_CM:String = "cm"; //slotID:2
+
+ //constructor
+ public function BGMVideoInfo(hug1:String, hug2:String, hug3:String, hug4:String, hug5:Number, hug6:String, hug7:Boolean, hug8:Boolean, hug9:Boolean):void
+ { //MethodID:2150, LocalCount= 10 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ super();
+
+ this._ID = hug1;
+ this._type = hug2;
+ this._videoID = hug3;
+ this._URL = hug4;
+ this._playLength = hug5;
+ this._movieType = hug6;
+ this._isDeleted = hug7;
+ this._isPrivate = hug8;
+ this._isAS3 = hug9;
+ }
+
+ //variables/etc.
+ private var _ID:String; //slotID:0
+ private var _type:String; //slotID:0
+ private var _videoID:String; //slotID:0
+ private var _URL:String; //slotID:0
+ private var _playLength:Number; //slotID:0
+ private var _movieType:String; //slotID:0
+ private var _isDeleted:Boolean; //slotID:0
+ private var _isPrivate:Boolean; //slotID:0
+ private var _isAS3:Boolean; //slotID:0
+
+ public function get ID():String
+ { //MethodID:2151, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ID;
+ }
+
+ public function get type():String
+ { //MethodID:2152, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._type;
+ }
+
+ public function get videoID():String
+ { //MethodID:2153, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoID;
+ }
+
+ public function get URL():String
+ { //MethodID:2154, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._URL;
+ }
+
+ public function get playLength():Number
+ { //MethodID:2155, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playLength;
+ }
+
+ public function get movieType():String
+ { //MethodID:2156, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._movieType;
+ }
+
+ public function get isDeleted():Boolean
+ { //MethodID:2157, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isDeleted;
+ }
+
+ public function get isPrivate():Boolean
+ { //MethodID:2158, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPrivate;
+ }
+
+ public function get isAS3():Boolean
+ { //MethodID:2159, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAS3;
+ }
+
+ public function toString():String
+ { //MethodID:2160, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 86
+ return ("[" + BGMVideoInfo + ",ID=" + this._ID + ",type=" + this._type + ",videoID=" + this._videoID + ",URL=" + this._URL + ",playLength=" + this._playLength + ",movieType=" + this._movieType + ",isDeleted=" + this._isDeleted + ",isPrivate=" + this._isPrivate + "]");
+ }
+ }
+}
+
+//■script126■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ //■class(instance)_index:151
+ public interface IRemoconFullScreenKeeper
+ {
+ //static constructor
+ public static function IRemoconFullScreenKeeper$cinit()
+ { //MethodID:2162, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isFullScreen():Boolean; //MethodID:2163, dispID:0
+
+ function set isFullScreen(hug1:Boolean):void; //MethodID:2164, dispID:0
+
+ function screenModeUpdateListener(hug1:uint):void; //MethodID:2165, dispID:0
+
+ //constructor
+ public function IRemoconFullScreenKeeper(); //MethodID:2166, dispID:0
+ }
+}
+
+//■script127■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import jp.nicovideo.nicoplayer.external.IExternalClient
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:152
+ public class RemoconFullScreenKeeper extends Object implements IRemoconFullScreenKeeper
+ {
+ //static constructor
+ public static function RemoconFullScreenKeeper$cinit()
+ { //MethodID:2168, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RemoconFullScreenKeeper(hug1:IPlayerConfig, hug2:IExternalClient)
+ { //MethodID:2169, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 33
+ this._localStorage = CrossSharedObject.getStorage("jp.nicovideo.nicoplayer.remocon.RemoconFullScreenKeeper", "/");
+
+ super();
+
+ this._playerConfig = hug1;
+ this._externalClient = hug2;
+ }
+
+ //variables/etc.
+ private var _localStorage:LocalStorage; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _externalClient:IExternalClient; //slotID:0
+
+ public function get isFullScreen():Boolean
+ { //MethodID:2170, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ return this._localStorage.data["isFullScreen"];
+ }
+
+ public function set isFullScreen(hug1:Boolean):void
+ { //MethodID:2171, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 25
+ this._localStorage.data["isFullScreen"] = hug1;
+
+ this._localStorage.flush();
+ }
+
+ public function screenModeUpdateListener(hug1:uint):void
+ { //MethodID:2172, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 72
+ if((hug1 != ScreenMode.BROWSER_FULL) && this.isFullScreen){
+ this.isFullScreen = false;
+
+ if((this._playerConfig.fullScreenMode == ScreenMode.DISPLAY_FULL) && (hug1 == ScreenMode.NORMAL)) this._externalClient.toggleMaximizePlayerSize();
+ }
+ }
+
+ public function start():void
+ { //MethodID:2173, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ if(!this.isFullScreen) return;
+ this.update(ScreenMode.BROWSER_FULL);
+ }
+
+ public function update(hug1:uint):void
+ { //MethodID:2174, LocalCount= 5 , MaxScope= 7, MaxStack= 4, CodeLength= 171
+ internal var mode:uint; //slotID:1
+ internal var bufferFullScreen:uint; //slotID:2
+
+ mode = hug1;
+
+ if((mode == ScreenMode.BROWSER_FULL) && !this.isFullScreen) this.isFullScreen = true;
+
+ if(this._playerConfig.screenMode == mode) return;
+
+ bufferFullScreen = this._playerConfig.fullScreenMode;
+ this._playerConfig.fullScreenMode = ScreenMode.BROWSER_FULL;
+
+ try{
+ this._playerConfig.screenMode = mode;
+ }
+ finally{
+ this._playerConfig.fullScreenMode = bufferFullScreen;
+ }
+ }
+ }
+}
+
+//■script128■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:153
+ public interface ITimeMachine
+ {
+ //static constructor
+ public static function ITimeMachine$cinit()
+ { //MethodID:2176, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function setPastDate(hug1:Date):Boolean; //MethodID:2177, dispID:0
+
+ function goInThePast(hug1:Date=null):Boolean; //MethodID:2178, dispID:0
+
+ function returnNow():void; //MethodID:2179, dispID:0
+
+ function get pastLimit():Date; //MethodID:2180, dispID:0
+
+ //constructor
+ public function ITimeMachine(); //MethodID:2181, dispID:0
+ }
+}
+
+//■script129■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:154
+ public class TimeMachine extends Object
+ implements EventSender, ITimeMachine
+ {
+ //static constructor
+ public static function TimeMachine$cinit()
+ { //MethodID:2183, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function TimeMachine(hug1:Date)
+ { //MethodID:2184, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ this.onTimeMachineDateUpdated = new Functions();
+
+ super();
+
+ if(!hug1) throw new Error("TimeMachine.TimeMachine: invalid entryDate");
+
+ this._entryDate = hug1;
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onTimeMachineDateUpdated:Functions;//slotID:0
+ private var _pastDate:Date; //slotID:0
+ private var _entryDate:Date; //slotID:0
+ private var _isPastDate:Boolean = false; //slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:2185, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return ["onTimeMachineDateUpdated"];
+ }
+
+ public function setPastDate(hug1:Date):Boolean
+ { //MethodID:2186, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ if(!hug1) return false;
+
+ if(hug1.time < this._entryDate.time) return false;
+
+ this._pastDate = hug1;
+ return true;
+ }
+
+ public function goInThePast(hug1:Date=null):Boolean
+ { //MethodID:2187, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 53
+ if(hug1){
+ if(!this.setPastDate(hug1)) return false;
+ }
+
+ onTimeMachineDateUpdated.apply(true, this._pastDate);
+
+ this._isPastDate = true;
+ return true;
+ }
+
+ public function returnNow():void
+ { //MethodID:2188, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 41
+ if(!this._isPastDate) return;
+ onTimeMachineDateUpdated.apply(false, null);
+
+ this._isPastDate = false;
+ }
+
+ public function get pastLimit():Date
+ { //MethodID:2189, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ return new Date(this._entryDate.time);
+ }
+ }
+}
+
+//■script130■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ //■class(instance)_index:155
+ public class NGResponseConstants extends Object
+ {
+ //static constructor
+ public static function NGResponseConstants$cinit()
+ { //MethodID:2191, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 66
+ UNSERVE = "UNSERVE";
+ OK = "OK";
+ ERROR_IO = "error_io";
+ ERROR_PARAMERROR = "PARAMERROR";
+ ERROR_NOAUTHORITY = "NOAUTHORITY";
+ ERROR_MAXNGWORD = "MAXNGWORD";
+ ERROR_MAINTENANCE = "MAINTENANCE";
+ }
+
+ //static variables/etc.
+ public static const UNSERVE:String = "UNSERVE"; //slotID:1
+ public static const OK:String = "OK"; //slotID:2
+ public static const ERROR_IO:String = "error_io"; //slotID:3
+ public static const ERROR_PARAMERROR:String = "PARAMERROR"; //slotID:4
+ public static const ERROR_NOAUTHORITY:String = "NOAUTHORITY"; //slotID:5
+ public static const ERROR_MAXNGWORD:String = "MAXNGWORD"; //slotID:6
+ public static const ERROR_MAINTENANCE:String = "MAINTENANCE"; //slotID:7
+
+ //constructor
+ public function NGResponseConstants()
+ { //MethodID:2192, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script131■
+
+package jp.nicovideo.nicoplayer.config{
+
+ //■class(instance)_index:156
+ public class DefaultInitializer extends Object
+ {
+ //static constructor
+ public static function DefaultInitializer$cinit()
+ { //MethodID:2194, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 255
+ __ADVERTISEMENT_API_URL = "http://ad.nicovideo.jp/server/get";
+ __ADVERTISEMENT_API_URL_DEV = "http://ad.dev.nicovideo.jp/server/get";
+ __ADVERTISEMENT_API_URL_DEV_GA = "http://www.ga.dev.nicovideo.jp/swf/player/sample/adtest.txt";
+ __GETSPONSOR_API_URL = "http://api.uad.nicovideo.jp/UadsVideoService/getSponsors";
+ __GETSPONSOR_API_URL_DEV = "http://api.uad.dev.nicovideo.jp/UadsVideoService/getSponsors";
+ __OTHERSPONSOR_URL = "http://uad.nicovideo.jp/ads/";
+ __OTHERSPONSOR_URL_DEV = "http://uad.dev.nicovideo.jp/ads/";
+ __PIZZA_URL = "http://info.nicovideo.jp/pizza/";
+ __CLICK_COUNTER_BASE_URL = "http://rd.nicovideo.jp/cc/";
+ __CROSSSHAREDOBJECT_SWF = "cross_sharedobject.swf";
+ __NICOSPLAYER = "nicoscript.swf";
+ __MARQUEEPLAYER = "marqueeplayer.swf";
+ __PLAYERVERSION_XML = "player_version.xml";
+ __PLAYERINFO_XML = "player_info.xml";
+ __USERSPONSOR = "user_sponsor.swf";
+ __HIROBAMOVIE = "hirobamovie.swf";
+ __PARADEMAP = "parademap.swf";
+ __VIEW_SWF = "nicoplayer_template.swf";
+ __CONTROLLER_SWF = "nicoplayer_view_controller.swf";
+ __THUMBVIEW_SWF = "thumbplayer_view.swf";
+ __THUMBCONTROLLER_SWF = "thumbplayer_controller.swf";
+ __HIROBACONNECTOR_SWF = "hirobaconnector.swf";
+ __VIDEO_MENU_SWF = "video_menu.swf";
+ __VIDEO_ENDER_SWF = "videoender.swf";
+ __PLUGINLOADER_SWF = "pluginloader.swf";
+ __JSCONNECTOR_SWF = "jsconnector.swf";
+ __APPLIBAR_SWF = "applibar.swf";
+ __REMOCON_ALERT_SWF_URL = "RemoconAlert.swf";
+ }
+
+ //static variables/etc.
+ private static const __ADVERTISEMENT_API_URL:String = "http://ad.nicovideo.jp/server/get";//slotID:1
+ private static const __ADVERTISEMENT_API_URL_DEV:String = "http://ad.dev.nicovideo.jp/server/get";//slotID:2
+ private static const __ADVERTISEMENT_API_URL_DEV_GA:String = "http://www.ga.dev.nicovideo.jp/swf/player/sample/adtest.txt";//slotID:3
+ private static const __GETSPONSOR_API_URL:String = "http://api.uad.nicovideo.jp/UadsVideoService/getSponsors";//slotID:4
+ private static const __GETSPONSOR_API_URL_DEV:String = "http://api.uad.dev.nicovideo.jp/UadsVideoService/getSponsors";//slotID:5
+ private static const __OTHERSPONSOR_URL:String = "http://uad.nicovideo.jp/ads/";//slotID:6
+ private static const __OTHERSPONSOR_URL_DEV:String = "http://uad.dev.nicovideo.jp/ads/";//slotID:7
+ private static const __PIZZA_URL:String = "http://info.nicovideo.jp/pizza/";//slotID:8
+ private static const __CLICK_COUNTER_BASE_URL:String = "http://rd.nicovideo.jp/cc/";//slotID:9
+ private static const __CROSSSHAREDOBJECT_SWF:String = "cross_sharedobject.swf";//slotID:10
+ private static const __NICOSPLAYER:String = "nicoscript.swf"; //slotID:11
+ private static const __MARQUEEPLAYER:String = "marqueeplayer.swf";//slotID:12
+ private static const __PLAYERVERSION_XML:String = "player_version.xml";//slotID:13
+ private static const __PLAYERINFO_XML:String = "player_info.xml";//slotID:14
+ private static const __USERSPONSOR:String = "user_sponsor.swf"; //slotID:15
+ private static const __HIROBAMOVIE:String = "hirobamovie.swf"; //slotID:16
+ private static const __PARADEMAP:String = "parademap.swf"; //slotID:17
+ private static const __VIEW_SWF:String = "nicoplayer_template.swf";//slotID:18
+ private static const __CONTROLLER_SWF:String = "nicoplayer_view_controller.swf";//slotID:19
+ private static const __THUMBVIEW_SWF:String = "thumbplayer_view.swf";//slotID:20
+ private static const __THUMBCONTROLLER_SWF:String = "thumbplayer_controller.swf";//slotID:21
+ private static const __HIROBACONNECTOR_SWF:String = "hirobaconnector.swf";//slotID:22
+ private static const __VIDEO_MENU_SWF:String = "video_menu.swf";//slotID:23
+ private static const __VIDEO_ENDER_SWF:String = "videoender.swf";//slotID:24
+ private static const __PLUGINLOADER_SWF:String = "pluginloader.swf";//slotID:25
+ private static const __JSCONNECTOR_SWF:String = "jsconnector.swf";//slotID:26
+ private static const __APPLIBAR_SWF:String = "applibar.swf"; //slotID:27
+ private static const __REMOCON_ALERT_SWF_URL:String = "RemoconAlert.swf";//slotID:28
+
+ public static function setConfig(hug1:NicoConfig, hug2:String, hug3:int=0):void
+ { //dispID:3, MethodID:2195, LocalCount= 39 , MaxScope= 1, MaxStack= 5, CodeLength= 2471
+ var hug4:String = null;
+ var hug5:String = null;
+ var hug6:String = null;
+ var hug7:String = null;
+ var hug8:String = null;
+ var hug13:String = null;
+ var hug14:String = null;
+ var hug15:String = null;
+ var hug16:String = null;
+ var hug17:String = null;
+ var hug18:String = null;
+ var hug19:String = null;
+ var hug20:String = null;
+ var hug21:String = null;
+ var hug22:String = null;
+ var hug23:String = null;
+ var hug24:String = null;
+ var hug25:String = null;
+ var hug26:String = null;
+ var hug27:String = null;
+ var hug28:String = null;
+ var hug29:String = null;
+ var hug30:String = null;
+ var hug31:String = null;
+ var hug32:String = null;
+ var hug35:String = null;
+ var hug36:String = null;
+ var hug37:String = null;
+ var hug9:String = "swf/player/";
+ var hug10:String = __ADVERTISEMENT_API_URL_DEV;
+ var hug11:String = __GETSPONSOR_API_URL_DEV;
+ var hug12:String = __OTHERSPONSOR_URL_DEV;
+ var hug33:Array = new RegExp("^http:\/\/((?:[\w\-]+\.)*)(nicovideo|nimg)\.jp\/", "ig").exec(hug2);
+
+ if(hug33){
+ hug5 = hug33[0];
+ hug4 = hug5.replace("nimg", "nicovideo").replace("res", "www");
+ hug4 = hug5.replace("nimg", "nicovideo").replace("res", "www").replace("nine.www.", "nine.");
+ hug36 = hug33[1].toLowerCase();
+
+ if(new RegExp("dev\.").test(hug36)){
+ if(new RegExp("ga\.dev\.").test(hug36)){
+ hug10 = __ADVERTISEMENT_API_URL_DEV_GA;
+ }else{
+ hug10 = __ADVERTISEMENT_API_URL_DEV;
+ }
+
+ hug11 = __GETSPONSOR_API_URL_DEV;
+ hug12 = __OTHERSPONSOR_URL_DEV;
+ }else{
+ hug10 = __ADVERTISEMENT_API_URL;
+ hug11 = __GETSPONSOR_API_URL;
+ hug12 = __OTHERSPONSOR_URL;
+ }
+
+ hug9 = _getPlayerPath(hug2);
+
+ if(hug9.indexOf("pre") == (-1)){
+ hug6 = (hug5 + "swf/appli/");
+ }else{
+ hug6 = (hug5 + "swf/appli_pre/");
+ }
+
+ hug7 = (hug5 + "swf/remocon/");
+ hug2 = (hug5 + hug9);
+
+ if(new RegExp("^http:\/\/(ext\.).*\/", "ig").test(hug2)){
+ hug13 = (hug2.replace(new RegExp("ext\."), "res.").replace("nicovideo", "nimg") + __CROSSSHAREDOBJECT_SWF);
+ }else{
+ hug13 = (hug2.replace(new RegExp("www\."), "res.").replace("nicovideo", "nimg") + __CROSSSHAREDOBJECT_SWF);
+ hug14 = (hug4 + hug9 + __CROSSSHAREDOBJECT_SWF);
+ }
+
+ hug15 = (hug2 + __NICOSPLAYER);
+ hug16 = (hug2 + __MARQUEEPLAYER);
+ hug17 = (hug2 + __PLAYERVERSION_XML);
+ hug18 = (hug2 + __PLAYERINFO_XML);
+ hug19 = (hug2 + __USERSPONSOR);
+ hug20 = (hug2 + __HIROBAMOVIE);
+ hug21 = (hug2 + __PARADEMAP);
+ hug22 = (hug2 + __VIEW_SWF);
+ hug23 = (hug2 + __CONTROLLER_SWF);
+ hug24 = (hug2 + __THUMBVIEW_SWF);
+ hug25 = (hug2 + __THUMBCONTROLLER_SWF);
+ hug26 = (hug2 + __HIROBACONNECTOR_SWF);
+ hug27 = (hug2 + __VIDEO_MENU_SWF);
+ hug28 = (hug2 + __VIDEO_ENDER_SWF);
+ hug29 = (hug2 + __PLUGINLOADER_SWF);
+ hug30 = (hug6 + __APPLIBAR_SWF);
+ hug32 = (hug7 + __REMOCON_ALERT_SWF_URL);
+ hug31 = (hug4 + hug9 + __JSCONNECTOR_SWF);
+ }else{
+ var hug38:int = hug3;
+
+ switch(hug38){
+ case DebugMode.GADEV:
+ hug4 = "http://www.ga.dev.nicovideo.jp/";
+ hug10 = __ADVERTISEMENT_API_URL_DEV_GA;
+ break;
+ case DebugMode.NICOAPP_DEV:
+ hug4 = "http://www.nicoapp.dev.nicovideo.jp";
+ break;
+ case DebugMode.LOCAL:
+ hug4 = "";
+ break;
+ case DebugMode.LOCAL_EACHENV:
+ hug4 = "each_env/";
+ break;
+ case DebugMode.DEV:
+ hug4 = "http://www.dev.nicovideo.jp/";
+ break;
+ case DebugMode.EXTDEV:
+ hug4 = "http://ext.dev.nicovideo.jp/";
+ break;
+ case DebugMode.TEST:
+ hug4 = "http://www.test.nicovideo.jp/";
+ hug10 = __ADVERTISEMENT_API_URL;
+ hug11 = __GETSPONSOR_API_URL;
+ hug12 = __OTHERSPONSOR_URL;
+ break;
+ case DebugMode.WEB:
+ hug4 = "http://www.nicovideo.jp/";
+ hug10 = __ADVERTISEMENT_API_URL;
+ hug11 = __GETSPONSOR_API_URL;
+ hug12 = __OTHERSPONSOR_URL;
+ break;
+ default:
+ throw new Error("NicoPlayerConfigure.Configure: Error");
+ break;
+ }
+
+ if((hug3 == DebugMode.LOCAL) || (hug3 == DebugMode.LOCAL_EACHENV)){
+ hug16 = (hug4 + __MARQUEEPLAYER);
+ hug24 = (hug4 + __THUMBVIEW_SWF);
+ hug25 = (hug4 + __THUMBCONTROLLER_SWF);
+ }else{
+ hug16 = ("../../marqueeplayer/bin-debug/" + __MARQUEEPLAYER);
+ hug24 = ("../../thumbwatch/bin-debug/" + __THUMBVIEW_SWF);
+ hug25 = ("../../thumbwatch/bin-debug/" + __THUMBCONTROLLER_SWF);
+ hug30 = ("../../appli_contents_applibar/bin-debug/" + __APPLIBAR_SWF);
+ hug32 = ("../../AlertSDK/bin/" + __REMOCON_ALERT_SWF_URL);
+ }
+
+ hug37 = "";
+
+ if(hug3 == DebugMode.EXTDEV) hug37 = "../../nicoplayer/bin-debug/";
+
+ hug13 = (hug37 + __CROSSSHAREDOBJECT_SWF);
+ hug14 = (hug37 + __CROSSSHAREDOBJECT_SWF);
+ hug15 = (hug37 + __NICOSPLAYER);
+ hug17 = (hug37 + __PLAYERVERSION_XML);
+ hug18 = (hug37 + __PLAYERINFO_XML);
+ hug19 = (hug37 + __USERSPONSOR);
+ hug20 = (hug37 + __HIROBAMOVIE);
+ hug21 = (hug37 + __PARADEMAP);
+ hug27 = (hug37 + __VIDEO_MENU_SWF);
+ hug28 = (hug37 + __VIDEO_ENDER_SWF);
+ hug29 = (hug37 + __PLUGINLOADER_SWF);
+ hug26 = (hug37 + __HIROBACONNECTOR_SWF);
+ hug31 = (hug37 + __JSCONNECTOR_SWF);
+ hug22 = __VIEW_SWF;
+ hug23 = __CONTROLLER_SWF;
+ }
+
+ hug8 = (hug4.replace(new RegExp("(www|res|nine)"), "flapi") + "api/");
+ nico_config.BASE_URL = hug4;
+ var hug34:String = hug4.replace("www", "m");
+ nico_config.MOBILE_BASE_URL = hug34;
+ nico_config.MOBILE_WATCH_URL = (hug34 + "watch/");
+
+ if(new RegExp("^http:\/\/(ext\.).*\/", "ig").test(hug2) != true){
+ hug35 = (hug4.replace("http:", "https:").replace("www", "secure") + "secure/");
+ }else{
+ hug35 = (hug4.replace("http:", "https:").replace("ext", "secure") + "secure/");
+ }
+
+ nico_config.NICOVIDEO_ACCOUNT_SETTING_URL = hug35;
+ nico_config.NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL = (hug35 + "register?transition=common");
+ nico_config.FLAPI_BASE_URL = hug8;
+ nico_config.CROSSSHAREDOBJECT_SWF_URL = hug13;
+ nico_config.CROSSSHAREDOBJECT_NONIMG_SWF_URL = hug14;
+ nico_config.MARQUEE_PLAYER_URL = hug16;
+ nico_config.THUMBPLAYER_VIEW_URL = hug24;
+ nico_config.THUMBPLAYER_CONTROLLER_URL = hug25;
+ nico_config.NICOSPLAYER_URL = hug15;
+ nico_config.PLAYERVERSION_XML_URL = hug17;
+ nico_config.PLAYERINFO_XML_URL = hug18;
+ nico_config.USERSPONSOR_MOVIE_URL = hug19;
+ nico_config.VIEW_SWF_URL = hug22;
+ nico_config.VIEWCONTROLLER_SWF_URL = hug23;
+ nico_config.HIROBA_MOVIE_URL = hug20;
+ nico_config.PARADE_MAP_URL = hug21;
+ nico_config.HIROBACONNECTOR_SWF_URL = hug26;
+ nico_config.VIDEO_MENU_URL = hug27;
+ nico_config.VIDEO_ENDER_URL = hug28;
+ nico_config.PLUGINLOADER_SWF_URL = hug29;
+ nico_config.APPLIBAR_URL = hug30;
+ nico_config.JSCONNECTOR_SWF_URL = hug31;
+ nico_config.REMOCON_ALERT_SWF_URL = hug32;
+ nico_config.RES_URL = hug4.replace("www", "res").replace("nicovideo", "nimg");
+ nico_config.CHANNEL_URL = hug4.replace("www", "ch");
+ nico_config.GETFLV_URL = (hug8 + "getflv");
+ nico_config.GETBGM_API_URL = (hug8 + "getbgm");
+ nico_config.GETPOSTKEY_URL = (hug8 + "getpostkey/");
+ nico_config.GET_CLICKKEY_URL = (hug8 + "getclickkey");
+ nico_config.GET_WAYBACKKEY_URL = (hug8 + "getwaybackkey");
+ nico_config.GET_DELETEKEY_URL = (hug8 + "getdeletekey");
+ nico_config.GET_UPDATEKEY_URL = (hug8 + "getupdatekey");
+ nico_config.GET_THREADKEY_URL = (hug8 + "getthreadkey");
+ nico_config.GET_NSKEY_URL = (hug8 + "getnskey");
+ nico_config.GETTHUMBINFO_URL = (hug4.replace("www", "ext") + "api/getthumbinfo/");
+ nico_config.GETRELATION_URL = (hug8 + "getrelation");
+ nico_config.GETGAMERANKING_URL = (hug8 + "getgameranking");
+ nico_config.GETENQUESTERESULT_URL = (hug8 + "getnicoenquete");
+ nico_config.GETCONFIGURENGCLIENT_URL = (hug8 + "configurengclient");
+ nico_config.THUMBWATCH_URL = (hug4 + "thumb_watch");
+ nico_config.GET_CONFIGURE_NGWORD = (hug8 + "configurengword");
+ nico_config.REDIRECTOR_URL = (hug4.replace("ext", "www") + "redir");
+ nico_config.adAPI_URL = hug10;
+ nico_config.REGISTERBGM_API_URL = (hug8 + "registerbgm");
+ nico_config.LOGGER_API_URL = (hug8 + "logger.php");
+ nico_config.PLAYLEN_API_URL = (hug8 + "playlen");
+ nico_config.MYLIST_ADD_API_URL = (hug8 + "deflist/add");
+ nico_config.FEED_ADD_API_URL = (hug8 + "feed/add");
+ nico_config.FEED_DEL_API_URL = (hug8 + "feed/delete");
+ nico_config.FEED_LIST_API_URL = (hug8 + "feed/list");
+ nico_config.LEAD_MOBILE_WATCH_API_URL = (hug8 + "leadmobilewatch");
+ nico_config.SMILEVIDEO_URL = "http://www.smilevideo.jp/";
+ nico_config.HOWTOUSE_URL = "http://help.nicovideo.jp/cat21/post.html";
+ nico_config.RECOMMEND_ENV_URL = "http://help.nicovideo.jp/cat18/post_1.html";
+ nico_config.DIC_NICOVIDEO_URL = "http://dic.nicovideo.jp/";
+ nico_config.DELETE_COMMENT_URL = "http://bbs.nicovideo.jp/delete/comment/";
+ nico_config.ENTRY_HANDBOOK_URL = "http://info.nicovideo.jp/smile/handbook/";
+ nico_config.RULES_URL = "http://info.nicovideo.jp/base/rule.html";
+ nico_config.NOSO_URL = "http://info.nicovideo.jp/help/player/faq/local_00.html";
+ nico_config.NOSO_BANNER_URL = (hug1.RES_URL + "img/marquee/noso.png");
+ nico_config.GETSPONSOR_API_URL = hug11;
+ nico_config.OTHERSPONSOR_URL = hug12;
+ nico_config.PIZZA_URL = __PIZZA_URL;
+ nico_config.CLICK_COUNTER_BASE_URL = __CLICK_COUNTER_BASE_URL;
+ nico_config.HIROBA_GETPOSTKEY_URL = (hug8 + "hiroba/getpostkey");
+ nico_config.PREMIUMLEAD_ON_SLIDER_LINK_URL = (hug4 + "comparison");
+ nico_config.GET_CHECKLIST_URL = (hug8 + "getchecklist");
+ nico_config.MYLIST_PAGE_URL = (hug4 + "my/mylist/");
+ nico_config.OPEN_MYLIST_URL = (hug4 + "openlist/");
+ nico_config.MYLIST_COMMENT_URL = (hug4 + "mylistcomment/video/");
+ nico_config.GET_PLAYLIST_URL = (hug8 + "getplaylist/mylist/");
+ nico_config.WATCH_API_URL = (hug4 + "watch/");
+ nico_config.PLAYLIST_PAGE_BASE_URL = (hug4 + "playlist/mylist/");
+ }
+
+ private static function _getPlayerPath(hug1:String):String
+ { //dispID:4, MethodID:2196, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 59
+ var hug2:RegExp = new RegExp("^http://[^/]+/(.*?/)[^/]+.swf");
+ var hug3:Array = hug2.exec(hug1);
+
+ if(hug3 && (hug3.length >= 2)) return hug3[1];
+
+ throw new ArgumentError("DefaultInitializer._getPlayerPath");
+ }
+
+ public static function setThumbDebugMode(hug1:NicoConfig):void
+ { //dispID:5, MethodID:2197, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 82
+ var hug2:String = "../../nicoplayer/bin-debug/";
+ nico_config.NICOSPLAYER_URL = (hug2 + __NICOSPLAYER);
+ nico_config.PLAYERVERSION_XML_URL = (hug2 + __PLAYERVERSION_XML);
+ nico_config.USERSPONSOR_MOVIE_URL = (hug2 + __USERSPONSOR);
+ nico_config.VIEW_SWF_URL = (hug2 + __VIEW_SWF);
+ nico_config.VIEWCONTROLLER_SWF_URL = (hug2 + __CONTROLLER_SWF);
+ }
+
+ //constructor
+ public function DefaultInitializer()
+ { //MethodID:2198, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script132■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import flash.net.URLVariables
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.HTTPUtils
+
+ //■class(instance)_index:157
+ public class Keygen extends Object implements IKeygen
+ {
+ //static constructor
+ public static function Keygen$cinit()
+ { //MethodID:2200, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Keygen(hug1:NicoConfig)
+ { //MethodID:2201, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.__conf = hug1;
+ }
+
+ //variables/etc.
+ private var __conf:NicoConfig; //slotID:0
+
+ public function getPostKey(hug1:Function, hug2:String, hug3:int, hug4:Boolean):void
+ { //MethodID:2203, LocalCount= 6 , MaxScope= 2, MaxStack= 9, CodeLength= 84
+ internal var f:Function; //slotID:1
+ internal var threadID:String; //slotID:2
+ internal var page:int; //slotID:3
+ internal var yugi:Boolean; //slotID:4
+
+ f = hug1;
+ threadID = hug2;
+ page = hug3;
+ yugi = hug4;
+
+ HTTPUtils.sendQuery(function(hug1:URLVariables):void{ //MethodID:2202, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 62
+ var hug2:String = hug1["postkey"];
+
+ if((hug1 != null) && hug2){
+ f(true, hug2, (hug1["yugi"] == "1"));
+ }else{
+ f(false, null, false);
+ }
+ }, this.__conf.GETPOSTKEY_URL, {thread:threadID, block_no:page, yugi:(yugi ? "1" : "")});
+ }
+
+ public function getClickKey(hug1:Function, hug2:String, hug3:int, hug4:int):void
+ { //MethodID:2204, LocalCount= 5 , MaxScope= 1, MaxStack= 10, CodeLength= 34
+ this.__getchu(hug1, this.__conf.GET_CLICKKEY_URL, "clickkey", {thread:hug2, num_res:hug3, click_revision:hug4});
+ }
+
+ public function getDeleteKey(hug1:Function, hug2:String, hug3:Array):String
+ { //MethodID:2207, LocalCount= 5 , MaxScope= 2, MaxStack= 8, CodeLength= 103
+ internal var f:Function; //slotID:1
+ internal var threadID:String; //slotID:2
+ internal var list:Array; //slotID:3
+ internal var vals:String; //slotID:4
+
+ f = hug1;
+ threadID = hug2;
+ list = hug3;
+
+ Assert.assert(list.every(function(hug1:*, hug2:int, hug3:Array):Boolean{ //MethodID:2206, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 5
+ return (hug1 is uint);
+ }));
+
+ vals = list.sort(function(hug1:uint, hug2:uint):Number{ //MethodID:2205, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 4
+ return (hug1 - hug2);
+ }).join(",");
+ this.__postchu(f, this.__conf.GET_DELETEKEY_URL, "deletekey", {thread_id:threadID, res_no:vals});
+
+ return vals;
+ }
+
+ public function getWaybackKey(hug1:Function, hug2:String):void
+ { //MethodID:2208, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 25
+ this.__getchu(hug1, this.__conf.GET_WAYBACKKEY_URL, "waybackkey", {thread:hug2});
+ }
+
+ public function getUpdateKey(hug1:Function, hug2:String, hug3:String, hug4:Boolean):void
+ { //MethodID:2209, LocalCount= 5 , MaxScope= 1, MaxStack= 10, CodeLength= 49
+ this.__getchu(hug1, this.__conf.GET_UPDATEKEY_URL, "updatekey", {thread:hug2, ticket:hug3, nicos:(hug4 ? "yes" : "")});
+ }
+
+ public function getThreadKey(hug1:Function, hug2:String):void
+ { //MethodID:2211, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 43
+ internal var f:Function; //slotID:1
+ internal var threadID:String; //slotID:2
+
+ f = hug1;
+ threadID = hug2;
+
+ HTTPUtils.sendQuery(function(hug1:URLVariables):void{ //MethodID:2210, LocalCount= 3 , MaxScope= 0, MaxStack= 5, CodeLength= 62
+ var hug2:String = hug1["threadkey"];
+
+ if((hug1 != null) && hug2){
+ f(true, hug2, (hug1["force_184"] == "1"));
+ }else{
+ f(false, null, false);
+ }
+ }, this.__conf.GET_THREADKEY_URL, {thread:threadID});
+ }
+
+ public function getHirobaPostKey(hug1:Function, hug2:String, hug3:int):void
+ { //MethodID:2212, LocalCount= 4 , MaxScope= 1, MaxStack= 8, CodeLength= 29
+ this.__getchu(hug1, this.__conf.HIROBA_GETPOSTKEY_URL, "postkey", {thread:hug2, block_no:hug3});
+ }
+
+ private function __getchu(hug1:Function, hug2:String, hug3:String, hug4:Object):void
+ { //MethodID:2214, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 47
+ internal var f:Function; //slotID:1
+ internal var apiURL:String; //slotID:2
+ internal var name:String; //slotID:3
+ internal var param:Object; //slotID:4
+
+ f = hug1;
+ apiURL = hug2;
+ name = hug3;
+ param = hug4;
+
+ HTTPUtils.sendQuery(function(hug1:URLVariables):void{ //MethodID:2213, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 53
+ if((hug1 != null) && hug1[name]){
+ f(true, hug1[name]);
+ }else{
+ f(false, null);
+ }
+ }, apiURL, param);
+ }
+
+ private function __postchu(hug1:Function, hug2:String, hug3:String, hug4:Object):void
+ { //MethodID:2216, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 47
+ internal var f:Function; //slotID:1
+ internal var apiURL:String; //slotID:2
+ internal var name:String; //slotID:3
+ internal var param:Object; //slotID:4
+
+ f = hug1;
+ apiURL = hug2;
+ name = hug3;
+ param = hug4;
+
+ HTTPUtils.sendPostData(function(hug1:URLVariables):void{ //MethodID:2215, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 53
+ if((hug1 != null) && hug1[name]){
+ f(true, hug1[name]);
+ }else{
+ f(false, null);
+ }
+ }, apiURL, param);
+ }
+ }
+}
+
+//■script133■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:158
+ public class ChildVideoName extends Object
+ {
+ //static constructor
+ public static function ChildVideoName$cinit()
+ { //MethodID:2218, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ MAIN_VIDEO = "maing_video";
+ USER_SPONSOR = "user_sponsor_video";
+ DELETED_SUPPLEMENTION = "deleted_suplemention";
+ }
+
+ //static variables/etc.
+ public static const MAIN_VIDEO:String = "maing_video"; //slotID:1
+ public static const USER_SPONSOR:String = "user_sponsor_video"; //slotID:2
+ public static const DELETED_SUPPLEMENTION:String = "deleted_suplemention";//slotID:3
+
+ //constructor
+ public function ChildVideoName()
+ { //MethodID:2219, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script134■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ //■class(instance)_index:159
+ public interface ICommentStorage
+ {
+ //static constructor
+ public static function ICommentStorage$cinit()
+ { //MethodID:2221, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get onServerTimeUpdated():Function; //MethodID:2222, dispID:0
+
+ function set onServerTimeUpdated(hug1:Function):void; //MethodID:2223, dispID:0
+
+ function get onViewCounterUpdated():Function; //MethodID:2224, dispID:0
+
+ function set onViewCounterUpdated(hug1:Function):void; //MethodID:2225, dispID:0
+
+ function get forceLeafOff():Boolean; //MethodID:2226, dispID:0
+
+ function set forceLeafOff(hug1:Boolean):void; //MethodID:2227, dispID:0
+
+ function get leafNum():int; //MethodID:2228, dispID:0
+
+ function set leafNum(hug1:int):void; //MethodID:2229, dispID:0
+
+ function connect():void; //MethodID:2230, dispID:0
+
+ function attach(hug1:String):ICommentStorageHandle; //MethodID:2231, dispID:0
+
+ function disconnect():void; //MethodID:2232, dispID:0
+
+ //constructor
+ public function ICommentStorage(); //MethodID:2233, dispID:0
+ }
+}
+
+//■script135■
+
+package jp.nicovideo.nicoscript{
+
+ import jp.nicovideo.nicoplayer.views.VideoLayerConstants
+
+ //■class(instance)_index:160
+ public final class NicoSConstants extends Object
+ {
+ //static constructor
+ public static function NicoSConstants$cinit()
+ { //MethodID:2235, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 58
+ ATBGM_VIDEO_WIDTH = (VideoLayerConstants.VIDEO_LAYER_SD_WIDTH / 4);
+ ATBGM_VIDEO_HEIGHT = (VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT / 4);
+ ATBGM_VIDEO_FRAME_MARGIN = 15;
+ ATCM_VIDEO_WIDTH = 544;
+ ATCM_VIDEO_HEIGHT = 56;
+ }
+
+ //static variables/etc.
+ public static const ATBGM_VIDEO_WIDTH:int = 128; //slotID:1
+ public static const ATBGM_VIDEO_HEIGHT:int = 96; //slotID:2
+ public static const ATBGM_VIDEO_FRAME_MARGIN:int = 15; //slotID:3
+ public static const ATCM_VIDEO_WIDTH:int = 544; //slotID:4
+ public static const ATCM_VIDEO_HEIGHT:int = 56; //slotID:5
+
+ //constructor
+ public function NicoSConstants()
+ { //MethodID:2236, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script136■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ //■class(instance)_index:161
+ public interface ICommentLayerView
+ {
+ //static constructor
+ public static function ICommentLayerView$cinit()
+ { //MethodID:2238, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function update(hug1:String, hug2:Array, hug3:Array, hug4:Boolean):void; //MethodID:2239, dispID:0
+
+ //constructor
+ public function ICommentLayerView(); //MethodID:2240, dispID:0
+ }
+}
+
+//■script137■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import flash.display.DisplayObject
+ import flash.events.Event
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import flash.utils.getTimer
+ import jp.nicovideo.nicoplayer.models.video.ITimeline
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:162
+ public class CommentLayerView extends Object implements ICommentLayerView
+ {
+ //static constructor
+ public static function CommentLayerView$cinit()
+ { //MethodID:2242, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentLayerView(hug1:DisplayObject, hug2:ITimeline, hug3:int, hug4:int, hug5:Number)
+ { //MethodID:2244, LocalCount= 7 , MaxScope= 2, MaxStack= 4, CodeLength= 115
+ internal var enterFrameEventDispatcher:DisplayObject; //slotID:1
+ internal var video:ITimeline; //slotID:2
+ internal var width:int; //slotID:3
+ internal var height:int; //slotID:4
+ internal var videoLength:Number; //slotID:5
+
+ enterFrameEventDispatcher = hug1;
+ video = hug2;
+ width = hug3;
+ height = hug4;
+ videoLength = hug5;
+ this.__commentSlotLists = {};
+ this.__slotTimer = new Timer(200);
+
+ super();
+
+ this._enterFrameEventDispatcher = enterFrameEventDispatcher;
+ this.__video = video;
+ this.__positioner = new CommentPositioner(width, height);
+ this.__videoLength = videoLength;
+
+ this.__slotTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:2243, LocalCount= 6 , MaxScope= 0, MaxStack= 3, CodeLength= 53
+ var hug3:CommentSlotList = null;
+ var hug2:Number = __vpos;
+
+ for each(hug3 in __commentSlotLists){
+ hug3.refresh(hug2, false);
+ }
+ });
+ }
+
+ //variables/etc.
+ private var __commentSlotLists:Object; //slotID:0
+ private var __video:ITimeline; //slotID:0
+ private var __positioner:CommentPositioner; //slotID:0
+ private var __isPlaying:Boolean = false; //slotID:0
+ private var __lastVpos:Number = 0.0; //slotID:0
+ private var __lastVposTime:Number = 0.0; //slotID:0
+ private var __slotTimer:Timer; //slotID:0
+ private var __videoLength:Number; //slotID:0
+ private var _enterFrameEventDispatcher:DisplayObject; //slotID:0
+
+ private function _onEnterFrame(hug1:Event):void
+ { //MethodID:2245, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 56
+ var hug3:CommentSlotList = null;
+ var hug2:Number = this.__vpos;
+
+ for each(hug3 in this.__commentSlotLists){
+ hug3.move(hug2);
+ }
+ }
+
+ private function get __vpos():Number
+ { //MethodID:2246, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 119
+ if(!this.__video.isInitialized) return 0;
+
+ var hug1:Number = this.__video.vpos;
+
+ if(!this.__isPlaying || (this.__videoLength == (-1))) return hug1;
+
+ var hug2:Number = (this.__lastVpos + getTimer() - this.__lastVposTime);
+ hug2 = Math.min(hug2, this.__videoLength);
+
+ if(Math.abs(hug2 - hug1) > 1000){
+ this.__lastVposTime = getTimer();
+ this.__lastVpos = hug1;
+ return hug1;
+ }
+
+ return hug2;
+ }
+
+ public function update(hug1:String, hug2:Array, hug3:Array, hug4:Boolean):void
+ { //MethodID:2247, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 41
+ var hug5:CommentSlotList = this.__getSlotList(hug1);
+
+ hug5.update(hug2, hug3, hug4);
+ hug5.refresh(this.__vpos, (this.__videoLength != (-1)));
+ }
+
+ public function setReverseMode(hug1:String, hug2:Boolean):void
+ { //MethodID:2248, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this.__getSlotList(hug1).isReverseMode = hug2;
+ }
+
+ private function __getSlotList(hug1:String):CommentSlotList
+ { //MethodID:2249, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 53
+ var hug2:CommentSlotList = this.__commentSlotLists[hug1];
+
+ if(!hug2){
+ this.__commentSlotLists[hug1] = new CommentSlotList(this.__positioner, this.__videoLength);
+ hug2 = new CommentSlotList(this.__positioner, this.__videoLength);
+ }
+
+ return hug2;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:2250, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 94
+ this.__isPlaying = true;
+ this.__lastVposTime = getTimer();
+ this.__lastVpos = this.__video.vpos;
+
+ this.__slotTimer.start();
+
+ if(this._enterFrameEventDispatcher.hasEventListener(Event.ENTER_FRAME)) this._enterFrameEventDispatcher.removeEventListener(Event.EXIT_FRAME, this._onEnterFrame);
+ this._enterFrameEventDispatcher.addEventListener(Event.ENTER_FRAME, this._onEnterFrame);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:2251, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 105
+ var hug1:CommentSlotList = null;
+ this.__isPlaying = false;
+ this.__lastVpos = this.__video.vpos;
+
+ this.__slotTimer.stop();
+ this._enterFrameEventDispatcher.removeEventListener(Event.EXIT_FRAME, this._onEnterFrame);
+
+ for each(hug1 in this.__commentSlotLists){
+ hug1.refresh(this.__lastVpos, false);
+ hug1.move(this.__lastVpos);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:2252, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 43
+ if(!hug1){
+ this.__isPlaying = false;
+
+ this.__slotTimer.stop();
+ this._enterFrameEventDispatcher.removeEventListener(Event.EXIT_FRAME, this._onEnterFrame);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:2253, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 62
+ var hug2:CommentSlotList = null;
+ this.__lastVpos = hug1;
+
+ for each(hug2 in this.__commentSlotLists){
+ hug2.refresh(this.__lastVpos, true);
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoLengthFixed(hug1:Number, hug2:Boolean=false):EventResult
+ { //MethodID:2254, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 61
+ var hug3:CommentSlotList = null;
+ this.__videoLength = hug1;
+
+ for each(hug3 in this.__commentSlotLists){
+ hug3.updateVideoLength(hug1, hug2);
+ }
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script138■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:164
+ public class SystemMessage extends Object implements EventSender
+ {
+ //static constructor
+ public static function SystemMessage$cinit()
+ { //MethodID:2258, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ private static var __instance:SystemMessage; //slotID:1
+
+ public static function get instance():SystemMessage
+ { //dispID:3, MethodID:2259, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 39
+ var hug1:SystemMessage = new SystemMessage(new Guard());
+ __instance = hug1;
+ return (__instance || hug1);
+ }
+
+ //constructor
+ public function SystemMessage(hug1:Guard)
+ { //MethodID:2260, LocalCount= 2 , MaxScope= 1, MaxStack= 7, CodeLength= 83
+ this.onSystemMessageInformationSended = new Functions();
+ this.onSystemMessageAlertSended = new Functions();
+ this.onSystemMessageCommentInfoSended = new Functions();
+ this.onSystemMessageStatusBarInfoSended = new Functions();
+ this.onSystemMessageJumpMessageSended = new Functions();
+ this.onSystemMessageClockMessageSended = new Functions();
+ this._eventNames = ["onSystemMessageInformationSended", "onSystemMessageAlertSended", "onSystemMessageCommentInfoSended", "onSystemMessageStatusBarInfoSended", "onSystemMessageJumpMessageSended", ""];
+
+ super();
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageInformationSended:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageAlertSended:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageCommentInfoSended:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageStatusBarInfoSended:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageJumpMessageSended:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onSystemMessageClockMessageSended:Functions;//slotID:0
+ private const _eventNames:Array; //slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:2261, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._eventNames;
+ }
+
+ public function inform(hug1:String, hug2:Boolean=false, hug3:Boolean=true):void
+ { //MethodID:2262, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 28
+ onSystemMessageInformationSended.apply(hug1, hug2, hug3);
+ }
+
+ public function informln(hug1:String, hug2:Boolean=false, hug3:Boolean=true):void
+ { //MethodID:2263, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 32
+ onSystemMessageInformationSended.apply((hug1 + "<br />"), hug2, hug3);
+ }
+
+ public function alert(hug1:String, hug2:String=null, hug3:String=null, hug4:Function=null, hug5:String=null, hug6:Function=null, hug7:String=null, hug8:Function=null, hug9:Boolean=false):void
+ { //MethodID:2264, LocalCount= 10 , MaxScope= 1, MaxStack= 10, CodeLength= 40
+ onSystemMessageAlertSended.apply(hug1, hug2, hug3, hug4, hug5, hug6, hug7, hug8, hug9);
+ }
+
+ public function informComment(hug1:String):void
+ { //MethodID:2265, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ onSystemMessageCommentInfoSended.apply(hug1);
+ }
+
+ public function informStatusBar(hug1:String, hug2:String=null):void
+ { //MethodID:2266, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 55
+ onSystemMessageStatusBarInfoSended.apply(hug1);
+
+ if(hug2) onSystemMessageInformationSended.apply(hug2, false);
+ }
+
+ public function informJumpMessage(hug1:Function, hug2:String):void
+ { //MethodID:2267, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 30
+ onSystemMessageJumpMessageSended.apply(hug1, hug2, 3000);
+ }
+
+ public function informClockMessage(hug1:String):void
+ { //MethodID:2268, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ onSystemMessageClockMessageSended.apply(hug1);
+ }
+ }
+}
+
+
+//■class(instance)_index:163
+//private
+class Guard extends Object
+{
+ //static constructor
+ public static function Guard$cinit()
+ { //MethodID:2256, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Guard()
+ { //MethodID:2257, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script139■
+
+package jp.nicovideo.nicoplayer.tpls.shutter{
+
+ //■class(instance)_index:165
+ public class AudioShutterConstants extends Object
+ {
+ //static constructor
+ public static function AudioShutterConstants$cinit()
+ { //MethodID:2270, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 124
+ _END_OF_ENUM = 0;
+ SHUTTER_SEEK = (_END_OF_ENUM++);
+ SHUTTER_PLUGIN = (_END_OF_ENUM++);
+ SHUTTER_HIROBA = (_END_OF_ENUM++);
+ SHUTTER_NICOWARI = (_END_OF_ENUM++);
+ END_OF_ENUM = _END_OF_ENUM;
+ }
+
+ //static variables/etc.
+ private static var _END_OF_ENUM:int = 0; //slotID:1
+ public static const SHUTTER_SEEK:int; //slotID:2
+ public static const SHUTTER_PLUGIN:int; //slotID:3
+ public static const SHUTTER_HIROBA:int; //slotID:4
+ public static const SHUTTER_NICOWARI:int; //slotID:5
+ public static const END_OF_ENUM:int; //slotID:6
+
+ //constructor
+ public function AudioShutterConstants()
+ { //MethodID:2271, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script140■
+
+package jp.nicovideo.nicoplayer.external{
+
+ import jp.nicovideo.nicoplayer.models.comment.ICommentList
+ import jp.nicovideo.nicoplayer.models.comment.IOwnerCommentList
+
+ //■class(instance)_index:166
+ public interface IExternalClient
+ {
+ //static constructor
+ public static function IExternalClient$cinit()
+ { //MethodID:2273, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function onClickedNicomesseButton():void; //MethodID:2274, dispID:0
+
+ function toggleMaximizePlayerSize():void; //MethodID:2275, dispID:0
+
+ function udpateRemoconState():void; //MethodID:2276, dispID:0
+
+ function get isInitialized():Boolean; //MethodID:2277, dispID:0
+
+ function set isEditedOwnerThread(hug1:Boolean):void; //MethodID:2278, dispID:0
+
+ function set localCommentList(hug1:ICommentList):void; //MethodID:2279, dispID:0
+
+ function set ownerCommentList(hug1:IOwnerCommentList):void; //MethodID:2280, dispID:0
+
+ function set setInputMessage(hug1:Function):void; //MethodID:2281, dispID:0
+
+ //constructor
+ public function IExternalClient(); //MethodID:2282, dispID:0
+ }
+}
+
+//■script141■
+
+package jp.nicovideo.nicoplayer.external{
+
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.ICommentList
+ import jp.nicovideo.nicoplayer.models.comment.IOwnerCommentList
+ import jp.nicovideo.nicoplayer.models.playlist.VideoInfo
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.remocon.RemoconReceiver
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.external.JSConnector
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:168
+ public class ExternalClient extends Object implements IExternalClient
+ {
+ //static constructor
+ public static function ExternalClient$cinit()
+ { //MethodID:2293, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ExternalClient()
+ { //MethodID:2294, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private const _EXT_SCREEN_MODE_BROWSER_FULL:String = "fit"; //slotID:0
+ private const _EXT_SCREEN_MODE_NORMAL:String = "normal"; //slotID:0
+ private const _EXT_SCREEN_MODE_DISPLAY_FULL:String = "full"; //slotID:0
+ private var _watchID:String; //slotID:0
+ private var _getThreadsFuncName:String; //slotID:0
+ private var _threadIDList:Array; //slotID:0
+ private var _commentLists:Object; //slotID:0
+ private var _setInputMessage:Function; //slotID:0
+ private var _isInitialized:Boolean = false; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _isEditedOwnerThread:Boolean = false; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _video:IVideo; //slotID:0
+ private var _videoController:IVideoController; //slotID:0
+ private var _localCommentList:ICommentList; //slotID:0
+ private var _ownerCommentList:IOwnerCommentList; //slotID:0
+ private var _commentListDataPooler:_CommentListDataPooler; //slotID:0
+
+ public function initialize(hug1:String, hug2:IVideo, hug3:IVideoController, hug4:IPlayerConfig, hug5:Boolean, hug6:Boolean, hug7:Boolean=false):void
+ { //MethodID:2319, LocalCount= 9 , MaxScope= 2, MaxStack= 3, CodeLength= 451
+ internal var watchID:String; //slotID:1
+ internal var video:IVideo; //slotID:2
+ internal var videoController:IVideoController; //slotID:3
+ internal var playerConfig:IPlayerConfig; //slotID:4
+ internal var isPremium:Boolean; //slotID:5
+ internal var isOwnerThreadEditMode:Boolean; //slotID:6
+ internal var hasNicosThread:Boolean = false; //slotID:7
+
+ watchID = hug1;
+ video = hug2;
+ videoController = hug3;
+ playerConfig = hug4;
+ isPremium = hug5;
+ isOwnerThreadEditMode = hug6;
+ hasNicosThread = hug7;
+ this._watchID = watchID;
+ this._video = video;
+ this._videoController = videoController;
+ this._playerConfig = playerConfig;
+ this._isPremium = isPremium;
+ this._threadIDList = [];
+ this._commentLists = {};
+ this._commentListDataPooler = new _CommentListDataPooler(hasNicosThread);
+ this._commentListDataPooler.onCommentListDataPooled = this._onCommentListDataPooled;
+
+ if(this._isInitialized) return;
+
+ this._isInitialized = true;
+
+ JSConnector.addCallback("ext_play", function(hug1:Boolean):void{ //MethodID:2295, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 24
+ if(hug1){
+ _videoController.play();
+ }else{
+ _videoController.stop();
+ }
+ });
+ JSConnector.addCallback("ext_setPlayheadTime", function(hug1:Number):void{ //MethodID:2296, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 13
+ _videoController.seek(hug1 * 1000);
+ });
+ JSConnector.addCallback("ext_setMute", function(hug1:Boolean):void{ //MethodID:2297, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ if(playerConfig.isMute != hug1) playerConfig.isMute = hug1;
+ });
+ JSConnector.addCallback("ext_setVolume", function(hug1:Number):void{ //MethodID:2298, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ var hug2:Number = (hug1 / 100);
+
+ if(playerConfig.volume != hug2) playerConfig.volume = hug2;
+ });
+ JSConnector.addCallback("ext_setCommentVisible", function(hug1:Boolean):void{ //MethodID:2299, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ if(hug1 != playerConfig.commentVisible) playerConfig.commentVisible = hug1;
+ });
+ JSConnector.addCallback("ext_setRepeat", function(hug1:Boolean):void{ //MethodID:2300, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ if(hug1 != playerConfig.isLoop) playerConfig.isLoop = hug1;
+ });
+ JSConnector.addCallback("ext_setVideoSize", function(hug1:String):void{ //MethodID:2301, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 99
+ if((hug1 == _EXT_SCREEN_MODE_BROWSER_FULL) && (playerConfig.screenMode != ScreenMode.BROWSER_FULL)){
+ playerConfig.fullScreenMode = ScreenMode.BROWSER_FULL;
+ playerConfig.screenMode = ScreenMode.BROWSER_FULL;
+ }else if((hug1 == _EXT_SCREEN_MODE_NORMAL) && (playerConfig.screenMode != ScreenMode.NORMAL)){
+ playerConfig.screenMode = ScreenMode.NORMAL;
+ }
+ });
+ JSConnector.addCallback("ext_isCommentVisible", function():Boolean{ //MethodID:2302, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 7
+ return playerConfig.commentVisible;
+ });
+ JSConnector.addCallback("ext_isMute", function():Boolean{ //MethodID:2303, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 7
+ return playerConfig.isMute;
+ });
+ JSConnector.addCallback("ext_isRepeat", function():Boolean{ //MethodID:2304, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 7
+ return playerConfig.isLoop;
+ });
+ JSConnector.addCallback("ext_isWide", function():Boolean{ //MethodID:2305, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 14
+ return (playerConfig.aspectRatio == ScreenAspectRatio.WIDE);
+ });
+ JSConnector.addCallback("ext_getVolume", function():Number{ //MethodID:2306, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ return (playerConfig.volume * 100);
+ });
+ JSConnector.addCallback("ext_getVideoSize", function():String{ //MethodID:2307, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 44
+ if(playerConfig.screenMode == ScreenMode.BROWSER_FULL) return _EXT_SCREEN_MODE_BROWSER_FULL;
+
+ if(playerConfig.screenMode == ScreenMode.DISPLAY_FULL) return _EXT_SCREEN_MODE_DISPLAY_FULL;
+
+ return _EXT_SCREEN_MODE_NORMAL;
+ });
+ JSConnector.addCallback("ext_getStatus", function():String{ //MethodID:2308, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 7
+ return _video.videoPlayerStatus;
+ });
+ JSConnector.addCallback("ext_getPlayheadTime", function():Number{ //MethodID:2309, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ return Math.floor(_video.vpos / 1000);
+ });
+ JSConnector.addCallback("ext_getTotalTime", function():Number{ //MethodID:2310, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ return Math.floor(_video.length / 1000);
+ });
+ JSConnector.addCallback("ext_isEditedOwnerThread", function():Boolean{ //MethodID:2311, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 4
+ return _isEditedOwnerThread;
+ });
+ JSConnector.addCallback("ext_sendLocalMessage", function(hug1:String, hug2:String, hug3:Number):void{ //MethodID:2312, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 73
+ if(!_localCommentList) return;
+
+ var hug4:CommentBuilder = new CommentBuilder();
+ hug4.message = hug1;
+ hug4.command = new Command(hug2, isPremium);
+ hug4.vpos = (hug3 * 1000);
+ hug4.commentList = _localCommentList;
+
+ _localCommentList.post(hug4.make());
+ });
+ JSConnector.addCallback("ext_getLoadedRatio", function():Number{ //MethodID:2313, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 40
+ if(!_video || (_video.length == 0)) return 0;
+
+ return (_video.loadedLength / _video.length);
+ });
+ JSConnector.addCallback("ext_sendOwnerMessage", function(hug1:String, hug2:String, hug3:Number):void{ //MethodID:2314, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 95
+ if(!_ownerCommentList || !isOwnerThreadEditMode) return;
+
+ var hug4:CommentBuilder = new CommentBuilder();
+ hug4.message = hug1;
+ hug4.command = new Command(hug2, isPremium);
+ hug4.vpos = (Math.max(0, hug3) * 1000);
+ hug4.commentList = _ownerCommentList;
+
+ _ownerCommentList.edit([hug4.make()]);
+ });
+ JSConnector.addCallback("ext_setInputMessage", function(hug1:String, hug2:String):void{ //MethodID:2315, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ if(_setInputMessage != null) _setInputMessage(hug1, hug2);
+ });
+ JSConnector.addCallback("ext_getThreads", function(hug1:String):Boolean{ //MethodID:2316, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 46
+ if(hug1){
+ _getThreadsFuncName = hug1;
+
+ if(_threadIDList.length > 0) _callGetThreadsCallback();
+
+ return true;
+ }else{
+ _getThreadsFuncName = null;
+ }
+
+ return false;
+ });
+ JSConnector.addCallback("ext_getComments", function(hug1:int, hug2:int=1000):Array{ //MethodID:2317, LocalCount= 9 , MaxScope= 0, MaxStack= 3, CodeLength= 211
+ var hug4:String = null;
+ var hug5:int = 0;
+ var hug6:int = 0;
+ var hug7:IComment = null;
+ var hug8:Object = null;
+ var hug3:Array = [];
+
+ if(_threadIDList[hug1]){
+ hug4 = _threadIDList[hug1];
+ hug5 = (_commentLists[hug4].length - 1);
+ hug2 = ((hug5 < hug2) ? (-1) : (hug5 - hug2));
+ hug6 = hug5;
+
+ while(hug6 > hug2){
+ hug7 = _commentLists[hug4][hug6];
+ hug8 = new Object();
+ hug8["message"] = hug7.message;
+ hug8["vpos"] = hug7.vpos;
+ hug8["resNo"] = hug7.resNo;
+ hug8["date"] = hug7.date.toDateString();
+ hug8["command"] = hug7.command.command;
+
+ hug3.push(hug8);
+
+ hug6--;
+ }
+ }
+
+ return hug3;
+ });
+ JSConnector.addCallback("externalRemoconCall", function(hug1:String, hug2:Object=null):void{ //MethodID:2318, LocalCount= 5 , MaxScope= 3, MaxStack= 3, CodeLength= 62
+ internal var method_name:String; //slotID:1
+ internal var params:Object = null; //slotID:2
+
+ method_name = hug1;
+ params = hug2;
+
+ try{
+ if(RemoconReceiver.hasInitialized) RemoconReceiver.instance.callMethod(method_name, params);
+ }
+ catch(error:ArgumentError){
+ }
+ });
+ }
+
+ public function onPlayerReady():void
+ { //MethodID:2320, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ JSConnector.call("onNicoPlayerReady", JSConnector.objectID);
+ }
+
+ public function onClickedNicomesseButton():void
+ { //MethodID:2321, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ JSConnector.call("Nicovideo.launchP4", this._watchID);
+ }
+
+ public function toggleMaximizePlayerSize():void
+ { //MethodID:2322, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ JSConnector.call("toggleMaximizePlayer");
+ }
+
+ public function onChangeVideoStatus(hug1:String):void
+ { //MethodID:2323, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 43
+ JSConnector.call("setPlayerStatus", this._video.videoPlayerStatus);
+ JSConnector.call("onNicoPlayerStatus", JSConnector.objectID, this._video.videoPlayerStatus);
+ }
+
+ public function onChangePlayingVideo(hug1:String, hug2:String):void
+ { //MethodID:2324, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ JSConnector.call("changePlayingVideo", hug1, hug2);
+ }
+
+ public function udpateRemoconState():void
+ { //MethodID:2325, LocalCount= 1 , MaxScope= 1, MaxStack= 18, CodeLength= 168
+ JSConnector.call("NicoRemocon.setState", {page:"watch", vid:this._watchID, volume:(this._playerConfig.volume * 100), is_fullscreen:((this._playerConfig.screenMode == ScreenMode.NORMAL) ? 0 : 1), is_mute:(this._playerConfig.isMute ? 1 : 0), is_comment_visible:(this._playerConfig.commentVisible ? 1 : 0), is_repeat:(this._playerConfig.isLoop ? 1 : 0), is_playing:(this._videoController.isPlaying ? 1 : 0)});
+ }
+
+ private function _setMymemoryParameters(hug1:Date=null, hug2:Number=-1.0, hug3:Number=-1.0, hug4:String, hug5:int=-1, hug6:Number=-1.0, hug7:Number=-1.0):void
+ { //MethodID:2326, LocalCount= 9 , MaxScope= 1, MaxStack= 6, CodeLength= 163
+ if((hug3 < 0) || (hug2 < 0)) throw new ArgumentError("ExternalClient._setMymemoryParameters: mainNum and mainFrom must be positive value.");
+
+ var hug8:Object = {main:{from:hug2, num:hug3}};
+
+ if(hug4 != ""){
+ hug8.main["res_before"] = hug5;
+ hug8.main["leaves_from"] = hug4;
+ }
+
+ if((hug6 > 0) && (hug7 > 0)) hug8.nicos = {from:hug6, num:hug7};
+
+ JSConnector.call("setMymemoryParameters", hug8, ((hug1 != null) ? Math.floor(hug1.getTime() / 1000) : null));
+ }
+
+ private function _callGetThreadsCallback():void
+ { //MethodID:2327, LocalCount= 5 , MaxScope= 1, MaxStack= 6, CodeLength= 112
+ var hug4:Object = null;
+ var hug1:Array = [];
+ var hug2:int = this._threadIDList.length;
+ var hug3:int = 0;
+
+ while(hug3 < hug2){
+ hug4 = {};
+ hug4["id"] = hug3;
+ hug4["type"] = this._threadIDList[hug3].replace(new RegExp("^commentlist\:", "g"), "");
+
+ hug1.push(hug4);
+
+ hug3++;
+ }
+
+ if(this._getThreadsFuncName != null) JSConnector.call(this._getThreadsFuncName, hug1);
+ }
+
+ private function _onCommentListDataPooled(hug1:Boolean=false, hug2:Date=null, hug3:Object=null):void
+ { //MethodID:2328, LocalCount= 16 , MaxScope= 1, MaxStack= 8, CodeLength= 482
+ var hug13:Number = NaN;
+ var hug14:Number = NaN;
+ var hug15:Number = NaN;
+
+ if(!hug3) return;
+
+ var hug4:Number = this._video.length;
+
+ if(isNaN(hug4)) throw new Error("ExternalInterface._onCommentListDataPooled: invalid video's length.");
+
+ var hug5:Array = hug3[CommentConstants.CL_MAIN];
+ var hug6:Array = hug3[CommentConstants.CL_NICOS];
+ var hug7:String = "";
+ var hug8:uint = 0;
+
+ if(this._playerConfig.isEnabledLeafMode){
+ hug13 = Math.ceil((hug4 + (10 * 1000)) / (60 * 1000));
+ hug14 = ((hug13 > 720) ? Math.ceil(0x11940 / hug13) : 100);
+ hug15 = 100;
+
+ if(hug4 >= ((10 * 60) * 1000)){
+ hug15 = 1000;
+ }else if(hug4 >= ((5 * 60) * 1000)){
+ hug15 = 500;
+ }else if(hug4 >= (60 * 1000)){
+ hug15 = 250;
+ }
+
+ hug7 = ((("0-" + hug13.toString() + ":") + hug14.toString() + ",") + hug15.toString());
+ hug8 = ((hug5.length > 0) ? (IComment(hug5[hug5.length - 1]).resNo + 1) : 0);
+ }
+
+ var hug9:Number = ((hug5.length > 0) ? (hug5[0] as IComment).resNo : 0);
+ var hug10:Number = hug5.length;
+ var hug11:Number = -1;
+ var hug12:Number = -1;
+
+ if(hug6 != null){
+ hug12 = hug6.length;
+
+ if(hug1){
+ hug11 = ((hug6.length > 0) ? (hug6[0] as IComment).resNo : 0);
+ }else{
+ hug11 = ((hug6.length > 0) ? ((hug6[0] as IComment).resNo + 1) : 0);
+ }
+ }
+
+ this._setMymemoryParameters(hug2, hug9, hug10, hug7, hug8, hug11, hug12);
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:2329, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInitialized;
+ }
+
+ public function set isEditedOwnerThread(hug1:Boolean):void
+ { //MethodID:2330, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isEditedOwnerThread = hug1;
+ }
+
+ public function set localCommentList(hug1:ICommentList):void
+ { //MethodID:2331, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._localCommentList = hug1;
+ }
+
+ public function set ownerCommentList(hug1:IOwnerCommentList):void
+ { //MethodID:2332, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._ownerCommentList = hug1;
+ }
+
+ public function set setInputMessage(hug1:Function):void
+ { //MethodID:2333, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._setInputMessage = hug1;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onTimeMachineDateUpdated(hug1:Boolean, hug2:Date=null):EventResult
+ { //MethodID:2334, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 31
+ this._commentListDataPooler.updatePastDate(hug1 ? hug2 : null);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigScreenModeUpdated(hug1:uint):EventResult
+ { //MethodID:2335, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 42
+ if(!this._isPremium || (this._playerConfig.fullScreenMode == ScreenMode.BROWSER_FULL)) this.toggleMaximizePlayerSize();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:2338, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 313
+ internal var additionals:Array; //slotID:1
+ internal var removes:Array; //slotID:2
+ internal var allClear:Boolean; //slotID:3
+ internal var listName:String; //slotID:4
+ internal var list:Array; //slotID:5
+
+ additionals = hug1;
+ removes = hug2;
+ allClear = hug3;
+ listName = hug4;
+ list = additionals.concat(removes);
+
+ list.sortOn("resNo", Array.NUMERIC);
+ this._commentListDataPooler.setCommentListData(listName, list);
+
+ if(!this._commentListDataPooler.isPast) this._commentListDataPooler.updatePastDate(null);
+
+ if(this._threadIDList.indexOf(listName) == (-1)) this._threadIDList.push(listName);
+
+ if(allClear) this._commentLists[listName] = [];
+
+ if((additionals.length > 0) || (removes.length > 0)){
+ if(additionals.length == removes.length){
+ removes = removes.filter(function(hug1:*, hug2:int, hug3:Array):Boolean{ //MethodID:2336, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 17
+ return (hug1.vpos != additionals[hug2].vpos);
+ });
+ }
+
+ additionals = additionals.concat(removes);
+ additionals = additionals.filter(function(hug1:*, hug2:int, hug3:Array):Boolean{ //MethodID:2337, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 134
+ var hug4:* = undefined;
+
+ if(!allClear){
+ hug4 = 0;
+
+ while(hug4 < _commentLists[listName].length){
+ if(_commentLists[listName][hug4].resNo == hug1.resNo){
+ _commentLists[listName].splice(hug4, 1);
+
+ hug4--;
+ }
+
+ hug4++;
+ }
+ }
+
+ if(hug1.deleted || (hug1.ng != 0) || hug1.isClickable) return false;
+
+ return true;
+ });
+
+ this._commentLists[listName] = this._commentLists[listName].concat(additionals);
+
+ this._commentLists[listName].sortOn("resNo", Array.NUMERIC);
+ this._callGetThreadsCallback();
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistTargetUpdated(hug1:VideoInfo):EventResult
+ { //MethodID:2339, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ this.onChangePlayingVideo(null, null);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoChanged(hug1:VideoInfo):EventResult
+ { //MethodID:2340, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ this.onChangePlayingVideo(hug1.videoID, hug1.threadID);
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+import jp.nicovideo.util.ObjectUtils
+
+//■class(instance)_index:167
+//private
+class _CommentListDataPooler extends Object
+{
+ //static constructor
+ public static function _CommentListDataPooler$cinit()
+ { //MethodID:2284, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CommentListDataPooler(hug1:Boolean)
+ { //MethodID:2286, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 58
+ this._listMap = {};
+ this._onCommentListDataPooled = function(hug1:Boolean, hug2:Date, hug3:Object):void{ //MethodID:2285, LocalCount= 4 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ };
+ this._required = [];
+
+ super();
+ this._required.push(CommentConstants.CL_MAIN);
+
+ if(hug1) this._required.push(CommentConstants.CL_NICOS);
+ }
+
+ //variables/etc.
+ private var _isPast:Boolean = false; //slotID:0
+ private var _pastDate:Date = null; //slotID:0
+ private var _listMap:Object; //slotID:0
+ private var _onCommentListDataPooled:Function; //slotID:0
+ private var _required:Array; //slotID:0
+
+ public function set onCommentListDataPooled(hug1:Function):void
+ { //MethodID:2287, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._onCommentListDataPooled = hug1;
+ }
+
+ public function updatePastDate(hug1:Date=null):void
+ { //MethodID:2288, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 21
+ this._isPast = Boolean(hug1 != null);
+ this._pastDate = hug1;
+ }
+
+ public function get isPast():Boolean
+ { //MethodID:2289, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPast;
+ }
+
+ public function get pastDate():Date
+ { //MethodID:2290, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._pastDate;
+ }
+
+ public function get listMap():Object
+ { //MethodID:2291, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._listMap;
+ }
+
+ public function setCommentListData(hug1:String, hug2:Array):void
+ { //MethodID:2292, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 76
+ if(this._required.indexOf(hug1) < 0) return;
+
+ this._listMap[hug1] = hug2;
+
+ if(ObjectUtils.values(this._listMap).length == this._required.length) this._onCommentListDataPooled.apply(null, [this._isPast, this._pastDate, this._listMap]);
+ }
+}
+
+//■script142■
+
+package jp.nicovideo.remocon{
+
+ import flash.display.DisplayObjectContainer
+ import flash.geom.Rectangle
+
+ //■class(instance)_index:169
+ public interface IRemoconAlert
+ {
+ //static constructor
+ public static function IRemoconAlert$cinit()
+ { //MethodID:2342, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function init(hug1:DisplayObjectContainer, hug2:Rectangle=null):void; //MethodID:2343, dispID:0
+
+ function show(hug1:String, hug2:*=null):void; //MethodID:2344, dispID:0
+
+ function hide():void; //MethodID:2345, dispID:0
+
+ //constructor
+ public function IRemoconAlert(); //MethodID:2346, dispID:0
+ }
+}
+
+//■script143■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ //■class(instance)_index:170
+ public interface IRemoconEventNotifier
+ {
+ //static constructor
+ public static function IRemoconEventNotifier$cinit()
+ { //MethodID:2348, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function receiveCommentPostResult(hug1:Boolean, hug2:String=null):void; //MethodID:2349, dispID:0
+
+ function receiveVideoSeekResult(hug1:Number):void; //MethodID:2350, dispID:0
+
+ //constructor
+ public function IRemoconEventNotifier(); //MethodID:2351, dispID:0
+ }
+}
+
+//■script144■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.display.DisplayObjectContainer
+ import flash.geom.Rectangle
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.remocon.AlertState
+ import jp.nicovideo.remocon.IRemoconAlert
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:171
+ public class RemoconNotifier extends Object implements IRemoconEventNotifier
+ {
+ //static constructor
+ public static function RemoconNotifier$cinit()
+ { //MethodID:2353, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RemoconNotifier(hug1:String)
+ { //MethodID:2354, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this._remoconAlert = new _DummyRemoconAlert();
+
+ super();
+
+ this._viewSWFURL = hug1;
+ }
+
+ //variables/etc.
+ private var _remoconAlert:IRemoconAlert; //slotID:0
+ private var _viewSWFURL:String; //slotID:0
+ private var _layer:DisplayObjectContainer; //slotID:0
+ private var _hasCalledSystemState:Boolean = false; //slotID:0
+ private var _hasLoadCompleted:Boolean = false; //slotID:0
+ private var _isCommentPosting:Boolean = false; //slotID:0
+ private var _lastVpos:Number = Number.NaN; //slotID:0
+
+ public function setContainer(hug1:DisplayObjectContainer):void
+ { //MethodID:2355, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._layer = hug1;
+ }
+
+ public function showAlert(hug1:String, hug2:*=null):void
+ { //MethodID:2357, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 201
+ internal var signaleState:String; //slotID:1
+ internal var params:* = null; //slotID:2
+
+ signaleState = hug1;
+ params = hug2;
+
+ if(this._hasCalledSystemState){
+ this._remoconAlert.show(signaleState, params);
+
+ return;
+ }
+
+ switch(signaleState){
+ case AlertState.REMOCON_CONNECT:
+ case AlertState.REMOCON_ERROR:
+ case AlertState.REMOCON_HALT:
+ case AlertState.REMOCON_MAINTENANCE:
+ this._hasCalledSystemState = true;
+
+ HTTPUtils.loadSWF(function(hug1:*):void{ //MethodID:2356, LocalCount= 2 , MaxScope= 0, MaxStack= 8, CodeLength= 112
+ if(hug1 == null){
+ _hasCalledSystemState = false;
+
+ SystemMessage.instance.informln(__MSG__("リモコンの表示セットアップに失敗"));
+
+ return;
+ }
+
+ _remoconAlert = IRemoconAlert(hug1);
+
+ _remoconAlert.init(_layer, new Rectangle(0, 0, (_layer.width / _layer.scaleX), (_layer.height / _layer.scaleY)));
+ _remoconAlert.show(signaleState);
+
+ _hasLoadCompleted = true;
+ }, this._viewSWFURL, {});
+
+ default:
+ break;
+ }
+
+ this._remoconAlert.show(signaleState, params);
+ }
+
+ public function prepareCommentPostAlert():void
+ { //MethodID:2358, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isCommentPosting = true;
+ }
+
+ public function prepareVideoSeekSignal(hug1:Number):void
+ { //MethodID:2359, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._lastVpos = hug1;
+ }
+
+ public function receiveCommentPostResult(hug1:Boolean, hug2:String=null):void
+ { //MethodID:2360, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 70
+ if(!this._isCommentPosting) return;
+
+ this._isCommentPosting = false;
+ var hug3:String = AlertState.COMMENT_POST_COMPLETE;
+
+ if(!hug1){
+ if(hug2 == RemoconPostCommentErrorStatus.SAME_MESSAGE){
+ hug3 = AlertState.COMMENT_POST_REJECT;
+ }else{
+ hug3 = AlertState.COMMENT_POST_ERROR;
+ }
+ }
+
+ this._remoconAlert.show(hug3);
+ }
+
+ public function receiveVideoSeekResult(hug1:Number):void
+ { //MethodID:2361, LocalCount= 4 , MaxScope= 1, MaxStack= 7, CodeLength= 116
+ if(isNaN(this._lastVpos)) return;
+
+ var hug2:Number = Math.floor((hug1 / 60) / 1000);
+ var hug3:String = StringUtils.sprintf("%d:%02d", hug2, Math.floor((hug1 - ((hug2 * 60) * 1000)) / 1000));
+
+ this.showAlert(((hug1 > this._lastVpos) ? AlertState.FAST_FOWARD_EX : AlertState.REWIND_EX), {value:hug3});
+
+ this._lastVpos = NaN;
+ }
+ }
+}
+
+import flash.display.DisplayObjectContainer
+import flash.geom.Rectangle
+
+//■class(instance)_index:172
+//private
+class _DummyRemoconAlert extends Object implements IRemoconAlert
+{
+ //static constructor
+ public static function _DummyRemoconAlert$cinit()
+ { //MethodID:2362, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ public function init(hug1:DisplayObjectContainer, hug2:Rectangle=null):void
+ { //MethodID:2363, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function show(hug1:String, hug2:*=null):void
+ { //MethodID:2364, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function hide():void
+ { //MethodID:2365, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _DummyRemoconAlert()
+ { //MethodID:2366, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script145■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:173
+ public interface INGComment
+ {
+ //static constructor
+ public static function INGComment$cinit()
+ { //MethodID:2368, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function addNG(hug1:NGInfo, hug2:Function):void; //MethodID:2369, dispID:0
+
+ function deleteNG(hug1:Array):void; //MethodID:2370, dispID:0
+
+ function get registerLimit():uint; //MethodID:2371, dispID:0
+
+ function rejectCommand(hug1:IComment):IComment; //MethodID:2372, dispID:0
+
+ function get onInitialized():Functions; //MethodID:2373, dispID:0
+
+ function serve():void; //MethodID:2374, dispID:0
+
+ function get onUpdated():Functions; //MethodID:2375, dispID:0
+
+ function get lastResponse():String; //MethodID:2376, dispID:0
+
+ function get list():Array; //MethodID:2377, dispID:0
+
+ //constructor
+ public function INGComment(); //MethodID:2378, dispID:0
+ }
+}
+
+//■script146■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import flash.errors.IllegalOperationError
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import flash.net.URLRequestMethod
+ import flash.net.URLVariables
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.ICommand
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.StringUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:175
+ public class NGComment extends Object implements INGComment
+ {
+ //static constructor
+ public static function NGComment$cinit()
+ { //MethodID:2391, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ REGISTER_LIMIT_PREMIUM = 200;
+ }
+
+ //static variables/etc.
+ public static const REGISTER_LIMIT_PREMIUM:uint = 200; //slotID:1
+
+ private static function _useXML(hug1:Function):void
+ { //dispID:3, MethodID:2392, LocalCount= 5 , MaxScope= 7, MaxStack= 4, CodeLength= 110
+ internal var f:Function; //slotID:1
+ internal var old:Boolean; //slotID:2
+
+ f = hug1;
+ old = XML.ignoreWhitespace;
+ XML.ignoreWhitespace = false;
+
+ try{
+ f();
+ }
+ finally{
+ XML.ignoreWhitespace = old;
+ }
+ }
+
+ //constructor
+ public function NGComment(hug1:String, hug2:Number, hug3:String, hug4:Boolean, hug5:IPlayerConfig, hug6:Boolean, hug7:Boolean, hug8:Boolean, hug9:String)
+ { //MethodID:2393, LocalCount= 10 , MaxScope= 1, MaxStack= 3, CodeLength= 92
+ this.__ngCommandContainer = [];
+ this.__onInitialized = new Functions();
+ this.__onUpdated = new Functions();
+
+ super();
+
+ this.__ngCache = new _NGCache(!hug6);
+ this._csrfToken = hug9;
+ this.__userID = hug1;
+ this.__apiURL = hug3;
+ this.__playerConfig = hug5;
+ this._noLoad = hug7;
+ this._isMymemory = hug8;
+ this._isPremium = hug4;
+
+ this.__initialize(hug2, hug4);
+ }
+
+ //variables/etc.
+ private const NG_TARGET_RANGE:Number = 1000.0; //slotID:0
+ private const REGISTER_LIMIT:uint = 40; //slotID:0
+ private const REQUEST_MODE_GET:String = "get"; //slotID:0
+ private const REQUEST_MODE_ADD:String = "add"; //slotID:0
+ private const REQUEST_MODE_DELETE:String = "delete"; //slotID:0
+ private const REQUEST_TYPE_MESSAGE:String = "word"; //slotID:0
+ private const REQUEST_TYPE_USER_ID:String = "id"; //slotID:0
+ private const REQUEST_TYPE_COMMAND:String = "command"; //slotID:0
+ private var __registerLimit:uint = 40; //slotID:0
+ private var _csrfToken:String; //slotID:0
+ private var __apiURL:String; //slotID:0
+ private var __userID:String; //slotID:0
+ private var __ngCache:_NGCache; //slotID:0
+ private var __ngCommandContainer:Array; //slotID:0
+ private var __isNGCommandAll:Boolean = false; //slotID:0
+ private var __onInitialized:Functions; //slotID:0
+ private var __onUpdated:Functions; //slotID:0
+ private var __playerConfig:IPlayerConfig; //slotID:0
+ private var __lastResponse:String = "UNSERVE"; //slotID:0
+ private var _noLoad:Boolean; //slotID:0
+ private var _isMymemory:Boolean; //slotID:0
+ private var _isPremium:Boolean; //slotID:0
+
+ public function get onInitialized():Functions
+ { //MethodID:2394, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onInitialized;
+ }
+
+ public function get onUpdated():Functions
+ { //MethodID:2395, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onUpdated;
+ }
+
+ public function serve():void
+ { //MethodID:2396, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.__onUpdatedHandler(this.__lastResponse);
+ }
+
+ public function addNG(hug1:NGInfo, hug2:Function):void
+ { //MethodID:2399, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 33
+ internal var ngInfo:NGInfo; //slotID:1
+ internal var callback:Function; //slotID:2
+
+ ngInfo = hug1;
+ callback = hug2;
+
+ this.__updateNG(ngInfo, this.REQUEST_MODE_ADD, function(hug1:String):void{ //MethodID:2398, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 56
+ internal var responseConstant:String; //slotID:1
+
+ responseConstant = hug1;
+
+ if(responseConstant == NGResponseConstants.OK){
+ __getNG(function(hug1:Boolean):void{ //MethodID:2397, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 18
+ if(!__playerConfig.useNG) __playerConfig.useNG = true;
+ });
+ }
+
+ __lastResponse = responseConstant;
+
+ callback(responseConstant);
+ });
+ }
+
+ public function deleteNG(hug1:Array):void
+ { //MethodID:2402, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 68
+ internal var ngInfoList:Array; //slotID:1
+ internal var index:int; //slotID:2
+ internal var successCounter:uint; //slotID:3
+ internal var failureCounter:uint; //slotID:4
+ internal var __deleteNG:Function; //slotID:5
+
+ index = 0;
+ __deleteNG = null;
+ ngInfoList = hug1;
+ __deleteNG = function(hug1:String):void{ //MethodID:2401, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 135
+ internal var responseConstant:String; //slotID:1
+
+ responseConstant = hug1;
+
+ if(responseConstant == NGResponseConstants.OK){
+ successCounter++;
+ }else{
+ failureCounter++;
+ }
+
+ if(index >= ngInfoList.length){
+ __getNG(function(hug1:Boolean):void{ //MethodID:2400, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+
+ return;
+ }
+
+ __updateNG(ngInfoList[index++], REQUEST_MODE_DELETE, __deleteNG);
+ };
+
+ index = 0;
+ successCounter = 0;
+ failureCounter = 0;
+
+ __deleteNG(NGResponseConstants.OK);
+ }
+
+ public function get lastResponse():String
+ { //MethodID:2403, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__lastResponse;
+ }
+
+ public function get registerLimit():uint
+ { //MethodID:2404, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__registerLimit;
+ }
+
+ public function rejectCommand(hug1:IComment):IComment
+ { //MethodID:2407, LocalCount= 5 , MaxScope= 2, MaxStack= 5, CodeLength= 234
+ internal var comment:IComment; //slotID:1
+ internal var commands:Array; //slotID:2
+ internal var builder:CommentBuilder; //slotID:3
+ internal var searchAndReject:Function; //slotID:4
+ internal var ngCommands:Array; //slotID:5
+ internal var buf:Array; //slotID:6
+
+ commands = null;
+ ngCommands = null;
+ buf = null;
+ comment = hug1;
+ searchAndReject = function(hug1:Array, hug2:Array):Array{ //MethodID:2405, LocalCount= 8 , MaxScope= 0, MaxStack= 3, CodeLength= 78
+ var hug4:String = null;
+ var hug5:int = 0;
+ var hug3:Array = hug1.concat();
+
+ for each(hug4 in hug2){
+ hug5 = hug3.indexOf(hug4);
+
+ if(hug5 == (-1)) return null;
+ hug3.splice(hug5, 1);
+ }
+
+ return hug3;
+ };
+
+ if(comment.ng != NGStatus.REJECT_COMMAND) throw new Error("NGComment.rejectCommand: invalid ng status.");
+
+ commands = [];
+
+ if(!this.__isNGCommandAll){
+ comment.command.forEachCommand(function(hug1:String):void{ //MethodID:2406, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ commands.push(hug1);
+ });
+
+ for each(ngCommands in this.__ngCommandContainer){
+ buf = searchAndReject(commands, ngCommands);
+
+ if(buf != null) commands = buf;
+ }
+ }
+
+ builder = new CommentBuilder(comment);
+ builder.command = new Command(commands.join(" "), comment.isPremium);
+ return builder.make();
+ }
+
+ public function get list():Array
+ { //MethodID:2408, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 14
+ return this.__ngCache.cacheData.concat();
+ }
+
+ private function __initialize(hug1:Number, hug2:Boolean):void
+ { //MethodID:2411, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 117
+ internal var ngRevision:Number; //slotID:1
+ internal var isPremium:Boolean; //slotID:2
+ internal var now:Date; //slotID:3
+
+ ngRevision = hug1;
+ isPremium = hug2;
+
+ if(isPremium) this.__registerLimit = REGISTER_LIMIT_PREMIUM;
+
+ now = new Date();
+
+ if((this.__ngCache.lastUpdated > 0) && !isNaN(ngRevision) && (ngRevision == this.__ngCache.revision)){
+ this.buildngCommandContainer();
+ ObjectUtils.callLater(function():void{ //MethodID:2409, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ onInitialized.apply(true);
+ });
+
+ return;
+ }
+
+ this.__getNG(function(hug1:Boolean):void{ //MethodID:2410, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 26
+ if(hug1){
+ onInitialized.apply(true);
+ }else{
+ onInitialized.apply(false);
+ }
+ });
+ }
+
+ private function __getNG(hug1:Function):void
+ { //MethodID:2418, LocalCount= 3 , MaxScope= 2, MaxStack= 5, CodeLength= 153
+ internal var callback:Function; //slotID:1
+ internal var loader:URLLoader; //slotID:2
+ internal var request:URLRequest; //slotID:3
+
+ loader = null;
+ callback = hug1;
+
+ if(this._noLoad){
+ ObjectUtils.callLater(function():void{ //MethodID:2412, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ callback(true);
+ });
+
+ return;
+ }
+
+ loader = new URLLoader();
+ request = new URLRequest(this.__apiURL);
+ request.method = URLRequestMethod.POST;
+ request.data = new URLVariables(StringUtils.queryString({mode:this.REQUEST_MODE_GET}));
+
+ loader.load(request);
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:2416, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ internal var event:Event; //slotID:1
+
+ event = hug1;
+
+ _useXML(function():void{ //MethodID:2415, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 606
+ internal var bufferList:Array; //slotID:1
+ internal var sourceXML:XML; //slotID:2
+ internal var buf:XML; //slotID:3
+ internal var type:String; //slotID:4
+ internal var lastHit:Date; //slotID:5
+ internal var oldNG:NGInfo; //slotID:6
+
+ buf = null;
+ type = null;
+ lastHit = null;
+ oldNG = null;
+ bufferList = [];
+ sourceXML = new XML(loader.data);
+
+ if(sourceXML.attribute("status").toString() == "ok"){
+ SystemMessage.instance.informln(__MSG__("NG設定の取得に成功"));
+ }else if(sourceXML.attribute("status").toString() == "fail"){
+ if(sourceXML..error.code == NGResponseConstants.ERROR_MAINTENANCE) SystemMessage.instance.informln(__MSG__("NG設定の取得に失敗(メンテナンス中)"));
+ buildngCommandContainer();
+ ObjectUtils.callLater(function():void{ //MethodID:2413, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ callback(true);
+ });
+
+ __lastResponse = sourceXML..error.code;
+
+ __onUpdatedHandler(sourceXML..error.code);
+
+ return;
+ }
+
+ for each(buf in sourceXML.ngclient){
+ if(buf.type == REQUEST_TYPE_MESSAGE){
+ type = NGType.MESSAGE;
+ }else if(buf.type == REQUEST_TYPE_USER_ID){
+ type = NGType.USER_ID;
+ }else if(buf.type == REQUEST_TYPE_COMMAND){
+ type = NGType.COMMAND;
+ }else{
+ continue;
+ }
+
+ lastHit = null;
+
+ if(__ngCache.cacheData){
+ for each(oldNG in __ngCache.cacheData){
+ if((oldNG.type == type) && (oldNG.source.toLowerCase() == buf.source.toLowerCase()) && oldNG.lastHit){
+ lastHit = new Date(oldNG.lastHit.time);
+ break;
+ }
+ }
+ }
+
+ bufferList.push(new NGInfo(type, buf.source, lastHit));
+ }
+
+ __ngCache.setCacheData(bufferList, false);
+ __ngCache.setRevision(sourceXML.revision, false);
+ __ngCache.setLastUpdated(TimeUtils.now().time);
+ __ngCache.flush();
+ buildngCommandContainer();
+ ObjectUtils.callLater(function():void{ //MethodID:2414, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ callback(true);
+ });
+
+ __lastResponse = NGResponseConstants.OK;
+
+ __onUpdatedHandler(NGResponseConstants.OK);
+ });
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:2417, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 30
+ SystemMessage.instance.informln(__MSG__("NG設定の取得に失敗"));
+ callback(false);
+ });
+ }
+
+ private function buildngCommandContainer():void
+ { //MethodID:2419, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 127
+ var hug1:NGInfo = null;
+ var hug2:Array = null;
+ this.__isNGCommandAll = false;
+ this.__ngCommandContainer = [];
+
+ for each(hug1 in this.__ngCache.cacheData){
+ if(hug1.type == NGType.COMMAND){
+ hug2 = hug1.source.split(new RegExp("[ | ]+"));
+
+ if(hug2.indexOf("all") != (-1)){
+ this.__isNGCommandAll = true;
+ this.__ngCommandContainer = null;
+ break;
+ }
+
+ this.__ngCommandContainer.push(hug2);
+ }
+ }
+ }
+
+ private function __onUpdatedHandler(hug1:String):void
+ { //MethodID:2420, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ this.onUpdated.apply(this.__ngCache.cacheData, hug1);
+ }
+
+ private function __updateNG(hug1:NGInfo, hug2:String, hug3:Function):void
+ { //MethodID:2426, LocalCount= 5 , MaxScope= 2, MaxStack= 3, CodeLength= 160
+ internal var ngInfo:NGInfo; //slotID:1
+ internal var mode:String; //slotID:2
+ internal var callback:Function; //slotID:3
+ internal var loader:URLLoader; //slotID:4
+ internal var getRequestType:Function; //slotID:5
+ internal var getRequest:Function; //slotID:6
+ internal var getNGScorringSuffix:Function; //slotID:7
+
+ loader = null;
+ ngInfo = hug1;
+ mode = hug2;
+ callback = hug3;
+ getRequestType = function(hug1:String):String{ //MethodID:2421, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 56
+ if(hug1 == NGType.MESSAGE) return REQUEST_TYPE_MESSAGE;
+
+ if(hug1 == NGType.USER_ID) return REQUEST_TYPE_USER_ID;
+
+ if(hug1 == NGType.COMMAND) return REQUEST_TYPE_COMMAND;
+
+ throw new Error("NGComment.__updateNG.getRequestType: invalid type.");
+ };
+
+ getRequest = function():URLRequest{ //MethodID:2422, LocalCount= 4 , MaxScope= 0, MaxStack= 10, CodeLength= 291
+ var hug2:Object = null;
+ var hug3:String = null;
+ var hug1:URLRequest = new URLRequest(__apiURL);
+ hug1.method = URLRequestMethod.POST;
+
+ if((_isPremium && (mode == REQUEST_MODE_ADD) && !_isMymemory) && ngInfo.comment && ngInfo.comment.commentList && (ngInfo.comment.commentList.threadID != "")){
+ hug3 = getNGScorringSuffix(ngInfo.type, ngInfo.comment);
+ hug3 = (ngInfo.comment.resNo.toString() + hug3);
+ hug2 = {mode:mode, type:getRequestType(ngInfo.type), source:ngInfo.source, thread_id:ngInfo.comment.commentList.threadID, comments:hug3};
+ }else{
+ hug2 = {mode:mode, type:getRequestType(ngInfo.type), source:ngInfo.source};
+ }
+
+ if(_csrfToken == null) throw new IllegalOperationError("NGComment.getRequest: csrfToken is null.");
+
+ hug2.token = _csrfToken;
+ hug1.data = new URLVariables(StringUtils.queryString(hug2));
+ return hug1;
+ };
+
+ getNGScorringSuffix = function(hug1:String, hug2:IComment):String{ //MethodID:2423, LocalCount= 9 , MaxScope= 0, MaxStack= 3, CodeLength= 166
+ var hug6:IComment = null;
+ var hug3:String = ((hug1 == NGType.MESSAGE) ? "message" : "userID");
+ var hug4:Array = hug2.commentList.currentList;
+ var hug5:String = "";
+
+ for each(hug6 in hug4){
+ if(((hug2.vpos - NG_TARGET_RANGE) <= hug6.vpos) && ((hug2.vpos + NG_TARGET_RANGE) >= hug6.vpos) && (hug2.resNo != hug6.resNo)){
+ if(hug2[hug3] == hug6[hug3]) hug5 += ("," + hug6.resNo);
+ }
+ }
+
+ return hug5;
+ };
+
+ if((mode != this.REQUEST_MODE_ADD) && (mode != this.REQUEST_MODE_DELETE)) throw new Error("NGComment.__updateNG: invalid mode.");
+
+ loader = new URLLoader();
+
+ loader.load(getRequest());
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:2424, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 104
+ var hug2:XML = new XML(loader.data);
+
+ if(hug2.attribute("status").toString() == "ok"){
+ callback(NGResponseConstants.OK);
+ }else{
+ if(hug2..error.code == NGResponseConstants.ERROR_MAINTENANCE) SystemMessage.instance.informln(__MSG__("NG設定の取得に失敗(メンテナンス中)"));
+ callback(hug2..error.code);
+ }
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:Event):void{ //MethodID:2425, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ callback(NGResponseConstants.ERROR_IO);
+ });
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:2428, LocalCount= 10 , MaxScope= 2, MaxStack= 5, CodeLength= 584
+ internal var addList:Array; //slotID:1
+ internal var removeList:Array; //slotID:2
+ internal var allClear:Boolean; //slotID:3
+ internal var listName:String; //slotID:4
+ internal var ngList:Array; //slotID:5
+ internal var replaced:Array; //slotID:6
+ internal var buf:IComment; //slotID:7
+ internal var compereNGCommand:Function; //slotID:8
+ internal var status:uint; //slotID:9
+ internal var ngInfo:NGInfo; //slotID:10
+ internal var builder:CommentBuilder; //slotID:11
+
+ buf = null;
+ status = 0;
+ ngInfo = null;
+ builder = null;
+ addList = hug1;
+ removeList = hug2;
+ allClear = hug3;
+ listName = hug4;
+ compereNGCommand = function(hug1:String, hug2:ICommand):Boolean{ //MethodID:2427, LocalCount= 8 , MaxScope= 0, MaxStack= 3, CodeLength= 81
+ var hug5:String = null;
+ var hug3:Array = ngInfo.source.split(new RegExp("[ | ]+"));
+ var hug4:Boolean = (hug3.length > 0);
+
+ for each(hug5 in hug3){
+ if(!hug2.hasContained(hug5)) return false;
+ }
+
+ return hug4;
+ };
+
+ ngList = this.__ngCache.cacheData;
+ replaced = [];
+
+ if(ngList.length == 0) return EventResult.THROUGH;
+
+ for each(buf in addList){
+ status = NGStatus.NONE;
+
+ if(this.__isNGCommandAll) status = NGStatus.REJECT_COMMAND;
+
+ for each(ngInfo in ngList){
+ if((ngInfo.type == NGType.COMMAND) && compereNGCommand(ngInfo.source, buf.command)){
+ ngInfo.lastHit = TimeUtils.now();
+ ngList[ngList.indexOf(ngInfo)] = ngInfo;
+ status = NGStatus.REJECT_COMMAND;
+ }else if(((ngInfo.type == NGType.MESSAGE) && (buf.message.toLowerCase().indexOf(ngInfo.source.toLowerCase()) != (-1))) || ((ngInfo.type == NGType.USER_ID) && (ngInfo.source == buf.userID))){
+ ngInfo.lastHit = TimeUtils.now();
+ ngList[ngList.indexOf(ngInfo)] = ngInfo;
+ status = NGStatus.INVISIBLE;
+ break;
+ }
+ }
+
+ if(status > 0){
+ builder = new CommentBuilder(buf);
+ builder.ng = status;
+
+ replaced.push(builder.make());
+ }else{
+ replaced.push(buf);
+ }
+ }
+
+ this.__ngCache.setCacheData(ngList);
+ this.__ngCache.flush();
+ this.__onUpdatedHandler(NGResponseConstants.UNSERVE);
+
+ return EventResult.replace([replaced, removeList, allClear, listName]);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get userID():String
+ { //MethodID:2429, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__userID;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get ngCache():_NGCache
+ { //MethodID:2430, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__ngCache;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get apiURL():String
+ { //MethodID:2431, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__apiURL;
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.filter.NGInfo
+import jp.nicovideo.util.CrossSharedObject
+import jp.nicovideo.util.storage.LocalStorage
+
+//■class(instance)_index:174
+//private
+class _NGCache extends Object
+{
+ //static constructor
+ public static function _NGCache$cinit()
+ { //MethodID:2380, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _NGCache(hug1:Boolean)
+ { //MethodID:2381, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 32
+ this.__soNGCache = CrossSharedObject.getStorage("jp.nicovideo.nicoplayer.models.fileter._NGCache");
+ this.__ngInfoList = [];
+
+ super();
+ this.__constructor(hug1);
+ }
+
+ //variables/etc.
+ private const LOCAL_DATA_EXPIRE:uint = 0x5265C00; //slotID:0
+ private const KEY_LAST_UPDATED:String = "lastUpdated"; //slotID:0
+ private const KEY_CACHE_DATA:String = "cacheData"; //slotID:0
+ private const KEY_REVISION:String = "revision"; //slotID:0
+ private var __soNGCache:LocalStorage; //slotID:0
+ private var __ngInfoList:Array; //slotID:0
+ private var __now:Date; //slotID:0
+
+ private function __constructor(hug1:Boolean):void
+ { //MethodID:2382, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 90
+ this.__now = new Date();
+
+ if(isNaN(this.lastUpdated) || (this.__now.time >= (this.lastUpdated + this.LOCAL_DATA_EXPIRE))){
+ this.setLastUpdated(-1, false);
+
+ if(hug1) this.setCacheData([], false);
+ this.setRevision(0, false);
+ this.flush();
+ }
+
+ this.__updateNGInfoList();
+ }
+
+ public function flush():void
+ { //MethodID:2383, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this.__soNGCache.flush();
+ }
+
+ public function get lastUpdated():Number
+ { //MethodID:2384, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this.__soNGCache.data[this.KEY_LAST_UPDATED];
+ }
+
+ public function setLastUpdated(hug1:Number, hug2:Boolean=true):void
+ { //MethodID:2385, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 28
+ this.__soNGCache.data[this.KEY_LAST_UPDATED] = hug1;
+
+ if(hug2) this.flush();
+ }
+
+ public function get cacheData():Array
+ { //MethodID:2386, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__ngInfoList;
+ }
+
+ public function setCacheData(hug1:Array, hug2:Boolean=true):void
+ { //MethodID:2387, LocalCount= 7 , MaxScope= 1, MaxStack= 7, CodeLength= 127
+ var hug4:NGInfo = null;
+ var hug3:Array = [];
+
+ for each(hug4 in hug1){
+ hug3.push({type:hug4.type, source:hug4.source, hit:(hug4.lastHit ? hug4.lastHit.time : 0)});
+ }
+
+ this.__soNGCache.data[this.KEY_CACHE_DATA] = hug3;
+
+ if(hug2) this.flush();
+ this.__updateNGInfoList();
+ }
+
+ public function get revision():uint
+ { //MethodID:2388, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this.__soNGCache.data[this.KEY_REVISION];
+ }
+
+ public function setRevision(hug1:uint, hug2:Boolean=true):void
+ { //MethodID:2389, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 28
+ this.__soNGCache.data[this.KEY_REVISION] = hug1;
+
+ if(hug2) this.flush();
+ }
+
+ private function __updateNGInfoList():void
+ { //MethodID:2390, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 104
+ var hug1:Object = null;
+ this.__ngInfoList = [];
+
+ for each(hug1 in this.__soNGCache.data[this.KEY_CACHE_DATA]){
+ this.__ngInfoList.push(new NGInfo(hug1.type, hug1.source, ((hug1.hit == 0) ? null : new Date(hug1.hit))));
+ }
+ }
+}
+
+//■script147■
+
+package jp.nicovideo.nicoplayer.models.video.userSponsor{
+
+ //■class(instance)_index:176
+ public interface IUserSponsorVideo implements IChildVideo
+ {
+ //static constructor
+ public static function IUserSponsorVideo$cinit()
+ { //MethodID:2433, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function initialize(hug1:IUserSponsorVideoClient):void; //MethodID:2434, dispID:0
+
+ //constructor
+ public function IUserSponsorVideo(); //MethodID:2435, dispID:0
+ }
+}
+
+//■script148■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:177
+ public interface IReplacer
+ {
+ //static constructor
+ public static function IReplacer$cinit()
+ { //MethodID:2437, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get replaceList():Array; //MethodID:2438, dispID:0
+
+ function get onReplaceListUpdated():Functions; //MethodID:2439, dispID:0
+
+ function addReplaceList(hug1:Array, hug2:Function):void; //MethodID:2440, dispID:0
+
+ function deleteReplaceList(hug1:Array, hug2:Function):void; //MethodID:2441, dispID:0
+
+ function get isMaintenance():Boolean; //MethodID:2442, dispID:0
+
+ //constructor
+ public function IReplacer(); //MethodID:2443, dispID:0
+ }
+}
+
+//■script149■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import flash.errors.IllegalOperationError
+ import flash.net.URLVariables
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:178
+ public class Replacer extends Object implements IReplacer
+ {
+ //static constructor
+ public static function Replacer$cinit()
+ { //MethodID:2445, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Replacer(hug1:String, hug2:String, hug3:String, hug4:Boolean, hug5:String)
+ { //MethodID:2446, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 41
+ this._onUpdated = new Functions();
+ this._replaceList = [];
+
+ super();
+
+ this._csrfToken = hug5;
+ this._isMaintenance = hug4;
+
+ this._constructor(hug1, hug2, hug3);
+ }
+
+ //variables/etc.
+ private const _onUpdated:Functions; //slotID:0
+ private const _SEND_PARAM_WATCHID:String = "video"; //slotID:0
+ private const _SEND_PARAM_MODE:String = "mode"; //slotID:0
+ private const _SEND_PARAM_MODE_ADD:String = "add"; //slotID:0
+ private const _SEND_PARAM_MODE_DELETE:String = "delete"; //slotID:0
+ private const _SEND_PARAM_ORIGINAL:String = "source"; //slotID:0
+ private const _SEND_PARAM_REPLACED:String = "destination"; //slotID:0
+ private const _SEND_PARAM_TOKEN:String = "token"; //slotID:0
+ private var _csrfToken:String; //slotID:0
+ private var _apiURL:String; //slotID:0
+ private var _watchID:String; //slotID:0
+ private var _replaceList:Array; //slotID:0
+ private var _isMaintenance:Boolean; //slotID:0
+
+ public function get onReplaceListUpdated():Functions
+ { //MethodID:2447, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onUpdated;
+ }
+
+ private function _constructor(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:2448, LocalCount= 14 , MaxScope= 1, MaxStack= 4, CodeLength= 193
+ var hug4:Array = null;
+ var hug5:Array = null;
+ var hug6:String = null;
+ var hug7:URLVariables = null;
+ var hug8:String = null;
+ var hug9:Array = null;
+ this._apiURL = hug2;
+ this._watchID = hug3;
+
+ if(hug1 != ""){
+ hug4 = hug1.split("&");
+ hug5 = [];
+
+ for each(hug6 in hug4){
+ if(hug6 == ""){
+ }else{
+ hug7 = new URLVariables(hug6);
+
+ for(hug8 in hug7){
+ hug9 = [new _ReplaceInfo(hug8, hug7[hug8])];
+ hug5 = hug9.concat(hug5);
+ }
+ }
+ }
+
+ this._replaceList = hug5;
+ }
+ }
+
+ public function get replaceList():Array
+ { //MethodID:2449, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._replaceList;
+ }
+
+ private function _replaceComment(hug1:IComment):IComment
+ { //MethodID:2450, LocalCount= 8 , MaxScope= 1, MaxStack= 2, CodeLength= 197
+ var hug3:IReplaceInfo = null;
+ var hug5:Array = null;
+ var hug2:String = hug1.message;
+
+ for each(hug3 in this._replaceList){
+ if(hug3.isWholeReplaced && (hug2.toLowerCase().indexOf(hug3.originalSource.toLowerCase()) != (-1))){
+ hug2 = hug3.replacedSource;
+ }else{
+ hug5 = hug2.toLowerCase().split(hug3.originalSource.toLowerCase());
+
+ if(hug5 && (hug5.length > 0)) hug2 = hug5.join(hug3.replacedSource);
+ }
+ }
+
+ if(hug1.message.toLowerCase() == hug2.toLowerCase()) return hug1;
+
+ var hug4:CommentBuilder = new CommentBuilder(hug1);
+ hug4.message = hug2;
+ return hug4.make();
+ }
+
+ public function get isMaintenance():Boolean
+ { //MethodID:2451, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isMaintenance;
+ }
+
+ public function addReplaceList(hug1:Array, hug2:Function):void
+ { //MethodID:2453, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 76
+ internal var list:Array; //slotID:1
+ internal var callback:Function; //slotID:2
+
+ list = hug1;
+ callback = hug2;
+
+ if((this._replaceList.length + list.length) > ReplacerConstants.MAX_COUNT) throw new Error("Replacer.addReplaceList: can not register over " + ReplacerConstants.MAX_COUNT);
+ this._sendByOrder(list, this._SEND_PARAM_MODE_ADD, function(hug1:String, hug2:IReplaceInfo, hug3:Boolean):void{ //MethodID:2452, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 53
+ var hug4:Array = [hug2];
+ _replaceList = hug4.concat(_replaceList);
+
+ _onUpdated.apply(_replaceList.concat(), hug1);
+
+ if(hug3) callback.apply(this, []);
+ });
+ }
+
+ private function _sendByOrder(hug1:Array, hug2:String, hug3:Function):void
+ { //MethodID:2457, LocalCount= 7 , MaxScope= 2, MaxStack= 3, CodeLength= 214
+ internal var list:Array; //slotID:1
+ internal var mode:String; //slotID:2
+ internal var onSended:Function; //slotID:3
+ internal var buf:Array; //slotID:4
+ internal var info:IReplaceInfo; //slotID:5
+ internal var length:uint; //slotID:6
+ internal var send:Function; //slotID:7
+ internal var createParam:Function; //slotID:8
+
+ buf = null;
+ info = null;
+ length = 0;
+ list = hug1;
+ mode = hug2;
+ onSended = hug3;
+ send = function(hug1:uint):void{ //MethodID:2455, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 59
+ internal var index:uint; //slotID:1
+ internal var info:IReplaceInfo; //slotID:2
+
+ info = null;
+ index = hug1;
+ info = buf[index];
+
+ HTTPUtils.loadXML(function(hug1:XML):void{ //MethodID:2454, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 88
+ var hug4:String = null;
+ var hug2:uint = (index + 1);
+ var hug3:Boolean = Boolean(hug2 >= length);
+
+ if(hug1.@status == "ok"){
+ hug4 = NGResponseConstants.OK;
+ }else{
+ hug4 = hug1..error.code;
+ }
+
+ onSended(hug4, info, hug3);
+
+ if(hug3) return;
+ send(hug2);
+ }, _apiURL, createParam(info));
+ };
+
+ createParam = function(hug1:IReplaceInfo):Object{ //MethodID:2456, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 101
+ var hug2:Object = {};
+ hug2[_SEND_PARAM_MODE] = mode;
+ hug2[_SEND_PARAM_WATCHID] = _watchID;
+ hug2[_SEND_PARAM_ORIGINAL] = ((hug1.isWholeReplaced ? ReplacerConstants.WHOLE_REPLACE_PREFIX : "") + hug1.originalSource);
+
+ if(_csrfToken == null) throw new IllegalOperationError("Replacer.createParam: csrfToken is null.");
+
+ hug2[_SEND_PARAM_TOKEN] = _csrfToken;
+ hug2[_SEND_PARAM_REPLACED] = hug1.replacedSource;
+ return hug2;
+ };
+
+ if((mode != this._SEND_PARAM_MODE_ADD) && (mode != this._SEND_PARAM_MODE_DELETE)) throw new IllegalOperationError("Replacer._sendByOrder: invalid mode.");
+
+ buf = [];
+
+ for each(info in list){
+ if(info) buf.push(info);
+ }
+
+ length = buf.length;
+
+ if(length == 0) throw new IllegalOperationError("Replacer.addReplaceList: list is empty.");
+ send(0);
+ }
+
+ public function deleteReplaceList(hug1:Array, hug2:Function):void
+ { //MethodID:2459, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 33
+ internal var list:Array; //slotID:1
+ internal var callback:Function; //slotID:2
+
+ list = hug1;
+ callback = hug2;
+
+ this._sendByOrder(list, this._SEND_PARAM_MODE_DELETE, function(hug1:String, hug2:IReplaceInfo, hug3:Boolean):void{ //MethodID:2458, LocalCount= 8 , MaxScope= 0, MaxStack= 3, CodeLength= 149
+ var hug5:IReplaceInfo = null;
+ var hug4:Array = [];
+
+ for each(hug5 in _replaceList){
+ if((hug2.originalSource == hug5.originalSource) && (hug2.replacedSource == hug5.replacedSource) && (hug2.isWholeReplaced == hug5.isWholeReplaced)){
+ }else{
+ hug4.push(hug5);
+ }
+ }
+
+ _replaceList = hug4.concat();
+
+ _onUpdated.apply(_replaceList.concat(), hug1);
+
+ if(hug3) callback.apply(this, []);
+ });
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:2460, LocalCount= 9 , MaxScope= 1, MaxStack= 5, CodeLength= 93
+ var hug6:IComment = null;
+
+ if(this._replaceList.length == 0) return EventResult.THROUGH;
+
+ var hug5:Array = [];
+
+ for each(hug6 in hug1){
+ hug5.push(this._replaceComment(hug6));
+ }
+
+ return EventResult.replace([hug5, hug2, hug3, hug4]);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function replace(hug1:IComment):IComment
+ { //MethodID:2461, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ return this._replaceComment(hug1);
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+import jp.nicovideo.nicoplayer.models.filter.ReplacerConstants
+
+//■class(instance)_index:179
+//private
+class _ReplaceInfo extends Object implements IReplaceInfo
+{
+ //static constructor
+ public static function _ReplaceInfo$cinit()
+ { //MethodID:2462, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ReplaceInfo(hug1:String, hug2:String)
+ { //MethodID:2463, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ super();
+ this._constructor(hug1, hug2);
+ }
+
+ //variables/etc.
+ private var _original:String; //slotID:0
+ private var _replaced:String; //slotID:0
+ private var _isWhole:Boolean = false; //slotID:0
+
+ private function _constructor(hug1:String, hug2:String):void
+ { //MethodID:2464, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 83
+ var hug3:Object = ReplacerConstants.CHECK_ORIGINAL_VARS_REGEXP.exec(hug1);
+
+ if(!hug3 || !hug3[2]) throw new IllegalOperationError("_ReplaceInfo._constructor: invalid data string.");
+
+ if(hug3[1] == ReplacerConstants.WHOLE_REPLACE_PREFIX) this._isWhole = true;
+
+ this._original = hug3[2];
+ this._replaced = hug2;
+ }
+
+ public function get originalSource():String
+ { //MethodID:2465, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._original;
+ }
+
+ public function get replacedSource():String
+ { //MethodID:2466, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._replaced;
+ }
+
+ public function get isWholeReplaced():Boolean
+ { //MethodID:2467, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isWhole;
+ }
+
+ public function get isRegExp():Boolean
+ { //MethodID:2468, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return false;
+ }
+}
+
+//■script150■
+
+package jp.nicovideo.util.events{
+
+ import flash.utils.Proxy
+ import flash.utils.flash_proxy
+
+ use namespace flash_proxy;
+
+ //■class(instance)_index:180
+ public final class EventChunk extends Proxy implements EventSender
+ {
+ //static constructor
+ public static function EventChunk$cinit()
+ { //MethodID:2470, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function EventChunk(hug1:*, hug2:Array)
+ { //MethodID:2472, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this.__instance = hug1;
+ this.__eventNames = hug2;
+ }
+
+ //variables/etc.
+ private var __instance:*; //slotID:0
+ private var __eventNames:Array; //slotID:0
+
+ public function get eventNames():Array
+ { //MethodID:2471, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__eventNames;
+ }
+
+ override flash_proxy function getProperty(hug1:*):*
+ { //MethodID:2473, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 125
+ if(!hug1 is QName) throw new Error("EventChunk.getProperty: name is not QName.");
+
+ if(hug1.uri != event_sender.uri) throw new Error("EventChunk.getProperty: namespace isn't event_sender. [" + hug1.uri + " != " + event_sender.uri + "]");
+
+ if(this.__eventNames.indexOf(hug1.localName) == (-1)) throw new Error("EventChunk.getProperty: unknown event named `" + hug1.localName + "'.");
+
+ return event_sender[hug1.localName];
+ }
+ }
+}
+
+//■script151■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+ import jp.nicovideo.util.storage.LocalStorage
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:182
+ public class LockedComment extends Object implements EventSender
+ {
+ //static constructor
+ public static function LockedComment$cinit()
+ { //MethodID:2496, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LockedComment(hug1:String, hug2:String, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:2497, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 121
+ this.onCommentListUpdated = new Functions();
+ this.onCommentPost = new Functions();
+ this.onCommentCountUpdated = new Functions();
+
+ super();
+
+ this._mainName = hug2;
+ this._threadID = hug1;
+ this._isPostLocked = hug3;
+ this._isEditMode = hug4;
+ this._lockedList = {};
+ this._lockedList[this._mainName] = new _LockedCommentContainer(this._threadID, this._mainName);
+ this._lockedList[CommentConstants.CL_NICOS] = new _LockedCommentContainer(this._threadID, CommentConstants.CL_NICOS);
+
+ this._updateLockedEnabled();
+ }
+
+ //variables/etc.
+ private var _so:LocalStorage; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _lockedList:Object; //slotID:0
+ private var _mainName:String; //slotID:0
+ private var _isPostLocked:Boolean = false; //slotID:0
+ private var _lockedCommentEnabled:Boolean = false; //slotID:0
+ private var _isEditMode:Boolean = false; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentListUpdated:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentPost:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onCommentCountUpdated:Functions;//slotID:0
+
+ private function _updateLockedEnabled():void
+ { //MethodID:2498, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 68
+ var hug1:_LockedCommentContainer = null;
+
+ if(this._isPostLocked){
+ this._lockedCommentEnabled = true;
+ return;
+ }
+
+ for each(hug1 in this._lockedList){
+ if(hug1.hasLocked){
+ this._lockedCommentEnabled = true;
+ return;
+ }
+ }
+ }
+
+ public function get eventNames():Array
+ { //MethodID:2499, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 18
+ var hug1:Array = ["onCommentListUpdated", "onCommentPost", "onCommentCountUpdated"];
+ return hug1;
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:2501, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 188
+ internal var comment:IComment; //slotID:1
+ internal var builder:CommentBuilder; //slotID:2
+ internal var name:String; //slotID:3
+ internal var lockedComment:_LockedCommentContainer; //slotID:4
+ internal var posted:IComment; //slotID:5
+
+ name = null;
+ lockedComment = null;
+ comment = hug1;
+
+ if(!this._lockedCommentEnabled) throw new IllegalOperationError("LockedComment.post: has not locked.");
+
+ builder = new CommentBuilder(comment);
+
+ if(comment.justPosted == false){
+ builder.justPosted = true;
+ comment = builder.make();
+ }
+
+ name = comment.commentList.name;
+
+ onCommentPost.apply(comment, name);
+
+ lockedComment = this._lockedList[name];
+ posted = lockedComment.push(comment);
+
+ ObjectUtils.callLater(function():void{ //MethodID:2500, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 101
+ SystemMessage.instance.informln(__MSG__("コメントの投稿に成功"));
+
+ var hug1:Array = lockedComment.list.concat();
+
+ onCommentListUpdated.apply(hug1, [], true, name);
+
+ if(name == _mainName) onCommentCountUpdated.apply(lockedComment.lastResNumber);
+ });
+ }
+
+ internal function filterDeleteComment(hug1:Array, hug2:String):Array
+ { //MethodID:2502, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 49
+ if(!this._isEditMode) throw new IllegalOperationError("LockedComment.filterDeleteComment: Can't use excluding the edit mode.");
+
+ if(!this._lockedCommentEnabled) return hug1;
+
+ return (this._lockedList[hug2] as _LockedCommentContainer).filterDeleteComment(hug1);
+ }
+
+ internal function getLockedList(hug1:String):Array
+ { //MethodID:2503, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ if(!this._lockedList.hasOwnProperty(hug1)) return [];
+
+ return (this._lockedList[hug1] as _LockedCommentContainer).lockedList.concat();
+ }
+
+ internal function saveLockedComment():void
+ { //MethodID:2504, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ var hug1:_LockedCommentContainer = null;
+
+ for each(hug1 in this._lockedList){
+ hug1.updateSO();
+ }
+ }
+
+ internal function convertOriginalResNo(hug1:String, hug2:Array):Array
+ { //MethodID:2505, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ if(!this._lockedCommentEnabled) return hug2;
+
+ return (this._lockedList[hug1] as _LockedCommentContainer).convertOriginalResNo(hug2);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:2506, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 138
+ if(!this._lockedCommentEnabled) return EventResult.THROUGH;
+
+ if((hug4 != this._mainName) && (hug4 != CommentConstants.CL_NICOS)) return EventResult.THROUGH;
+
+ var hug5:_LockedCommentContainer = (this._lockedList[hug4] as _LockedCommentContainer);
+ var hug6:EventResult = hug5.updateList(hug1, hug2, hug3);
+
+ this._updateLockedEnabled();
+
+ if((hug4 == this._mainName) && hug5.hasLocked) onCommentCountUpdated.apply(hug5.lastResNumber);
+
+ return hug6;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentCountUpdated(hug1:Number):EventResult
+ { //MethodID:2507, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 37
+ if(!this._lockedCommentEnabled) return EventResult.THROUGH;
+
+ return (this._lockedList[this._mainName] as _LockedCommentContainer).updateCount(hug1);
+ }
+ }
+}
+
+import com.adobe.crypto.SHA1
+import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+import jp.nicovideo.nicoplayer.models.comment.CommentDeleteStatus
+import jp.nicovideo.nicoplayer.models.comment.CommentListUtils
+import jp.nicovideo.nicoplayer.models.comment.IComment
+import jp.nicovideo.util.ArrayUtils
+import jp.nicovideo.util.CrossSharedObject
+import jp.nicovideo.util.TimeUtils
+import jp.nicovideo.util.events.EventResult
+import jp.nicovideo.util.storage.LocalStorage
+
+use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+//■class(instance)_index:181
+//private
+class _LockedCommentContainer extends Object
+{
+ //static constructor
+ public static function _LockedCommentContainer$cinit()
+ { //MethodID:2475, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _LockedCommentContainer(hug1:String, hug2:String)
+ { //MethodID:2476, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 216
+ var hug3:Object = null;
+ var hug4:IComment = null;
+ var hug5:CommentBuilder = null;
+ this._originals = [];
+ this._list = [];
+ this._lockedList = [];
+ this._originalResNoList = [];
+
+ super();
+
+ this._threadID = hug1;
+ this._name = hug2;
+
+ if((this._so.data[hug1] != null) && (this._so.data[hug1][hug2] != null)){
+ for each(hug3 in this._so.data[hug1][hug2]){
+ hug4 = CommentBuilder.unsimplify(hug3);
+
+ if(hug4.justPosted){
+ hug5 = new CommentBuilder(hug4);
+ hug5.justPosted = false;
+ hug4 = hug5.make();
+ }
+
+ this._lockedList.push(hug4);
+ }
+
+ this._hasLocked = (this._lockedList.length > 0);
+ }
+ }
+
+ //variables/etc.
+ private var _SO_NAME:String = "jp.nicovideo.nicoplayer.models.filter.LockedComment";//slotID:0
+ private var _threadID:String; //slotID:0
+ private var _name:String; //slotID:0
+ private var _originals:Array; //slotID:0
+ private var _list:Array; //slotID:0
+ private var _lockedList:Array; //slotID:0
+ private var _hasLocked:Boolean = false; //slotID:0
+ private var _lastResNumber:Number = 0.0; //slotID:0
+ private var _originalResNoList:Array; //slotID:0
+
+ private function get _so():LocalStorage
+ { //MethodID:2477, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ return CrossSharedObject.getStorage(this._SO_NAME, "/");
+ }
+
+ private function _merge(hug1:Array, hug2:Array):Array
+ { //MethodID:2479, LocalCount= 7 , MaxScope= 2, MaxStack= 5, CodeLength= 500
+ private var left:Array; //slotID:1
+ private var right:Array; //slotID:2
+ private var bufLeft:Array; //slotID:3
+ private var bufLen:Number; //slotID:4
+ private var resNo:Number; //slotID:5
+ private var i:uint; //slotID:6
+ private var j:uint; //slotID:7
+ private var original:IComment; //slotID:8
+ private var c:IComment; //slotID:9
+ private var b:CommentBuilder; //slotID:10
+
+ j = 0;
+ original = null;
+ c = null;
+ b = null;
+ left = hug1;
+ right = hug2;
+
+ if(left.length == 0){
+ this._lastResNumber = IComment(right[right.length - 1]).resNo;
+ return right;
+ }
+
+ bufLeft = left.concat();
+
+ if(right.length == 0){
+ j = 0;
+ this._originalResNoList = [];
+
+ for each(original in bufLeft){
+ this._originalResNoList[j++] = original.resNo;
+ }
+
+ return bufLeft;
+ }
+
+ if(right.length > 0){
+ ArrayUtils.add(function(hug1:IComment, hug2:IComment):Number{ //MethodID:2478, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 44
+ var hug3:Number = (hug1.date.time - hug2.date.time);
+
+ if(hug3 != 0) return hug3;
+
+ if(_isLockedComment(hug1)) return -1;
+
+ return 1;
+ }, bufLeft, right);
+ }
+
+ bufLen = bufLeft.length;
+ resNo = bufLeft[0].resNo;
+ i = 1;
+
+ while(i < bufLen){
+ c = bufLeft[i];
+
+ if(c.resNo <= resNo){
+ b = new CommentBuilder(c);
+ resNo += 1;
+ b.resNo = (resNo + 1);
+ bufLeft[i] = b.make();
+
+ if(this._isLockedComment(c)) this._lockedList[this._lockedList.indexOf(c)] = bufLeft[i];
+ }else{
+ resNo = c.resNo;
+ }
+
+ this._originalResNoList[i] = (this._isLockedComment(c) ? NaN : c.resNo);
+ i += 1;
+ }
+
+ this._lastResNumber = resNo;
+ return bufLeft;
+ }
+
+ public function get name():String
+ { //MethodID:2480, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function get hasLocked():Boolean
+ { //MethodID:2481, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasLocked;
+ }
+
+ public function get lastResNumber():Number
+ { //MethodID:2482, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._lastResNumber;
+ }
+
+ public function push(hug1:IComment):IComment
+ { //MethodID:2483, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 236
+ var hug2:CommentBuilder = new CommentBuilder(hug1);
+
+ if(hug1.anonymity) hug2.userID = this._createAnonymityID(hug1.userID);
+
+ if(hug1.date == null) hug2.date = TimeUtils.now();
+
+ this.resNo = (++this._lastResNumber);
+
+ if(!this._hasLocked){
+ this._so.data[this._threadID] = {};
+ this._hasLocked = true;
+ }
+
+ if(this._so.data[this._threadID][this._name] == null) this._so.data[this._threadID][this._name] = [];
+
+ var hug3:IComment = hug2.make();
+
+ this._lockedList.push(hug3);
+ this._so.data[this._threadID][this._name].push(CommentBuilder.simplify(hug3));
+ this._so.flush();
+
+ this._list = this._merge(this._originals, this._lockedList);
+ return hug3;
+ }
+
+ private function _createAnonymityID(hug1:String):String
+ { //MethodID:2484, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 20
+ return SHA1.hash(this._threadID + "." + hug1);
+ }
+
+ public function updateList(hug1:Array, hug2:Array, hug3:Boolean):EventResult
+ { //MethodID:2485, LocalCount= 10 , MaxScope= 1, MaxStack= 6, CodeLength= 339
+ var hug4:IComment = null;
+ var hug5:Number = NaN;
+ var hug6:Array = null;
+ var hug7:IComment = null;
+ this._originals = CommentListUtils.update(this._originals, hug1, hug2, hug3);
+
+ if(!this._hasLocked){
+ if(this._originals.length > 0){
+ this._lastResNumber = this._originals[this._originals.length - 1].resNo;
+ this._list = [];
+ this._originalResNoList = [];
+
+ for each(hug4 in this._originals){
+ this._list.push(hug4);
+ this._originalResNoList.push(hug4.resNo);
+ }
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ if(this._originals.length > 100){
+ hug5 = this._originals[0].date.time;
+ hug6 = this._lockedList.concat();
+ this._lockedList = [];
+
+ for each(hug7 in hug6){
+ if((hug7.date != null) && (hug7.date.time > hug5)) this._lockedList.push(hug7);
+ }
+ }
+
+ this._list = this._merge(this._originals, this._lockedList);
+
+ if(this._lockedList.length == 0) this._hasLocked = false;
+ this.updateSO();
+
+ return EventResult.replace([this._list, [], true, this.name]);
+ }
+
+ public function updateSO():void
+ { //MethodID:2486, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 123
+ var hug2:IComment = null;
+ var hug3:LocalStorage = null;
+ var hug1:Array = [];
+
+ for each(hug2 in this._lockedList){
+ hug1.push(CommentBuilder.simplify(hug2));
+ }
+
+ hug3 = this._so;
+
+ if(!hug3.data[this._threadID]) hug3.data[this._threadID] = {};
+
+ hug3.data[this._threadID][this.name] = hug1;
+
+ hug3.flush();
+ }
+
+ public function updateCount(hug1:Number):EventResult
+ { //MethodID:2487, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ if(!this._hasLocked || (this._lastResNumber < 0)) return EventResult.THROUGH;
+
+ return EventResult.replace([this._lastResNumber]);
+ }
+
+ public function get list():Array
+ { //MethodID:2488, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._list;
+ }
+
+ public function get lockedList():Array
+ { //MethodID:2489, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._lockedList;
+ }
+
+ public function filterDeleteComment(hug1:Array):Array
+ { //MethodID:2491, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 210
+ private var deletes:Array; //slotID:1
+ private var ret:Array; //slotID:2
+ private var len:Number; //slotID:3
+ private var i:uint; //slotID:4
+ private var updateDelete:Function; //slotID:5
+ private var comment:IComment; //slotID:6
+
+ comment = null;
+ deletes = hug1;
+ updateDelete = function(hug1:IComment, hug2:int):void{ //MethodID:2490, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 59
+ var hug3:CommentBuilder = new CommentBuilder(hug1);
+ hug3.deleted = hug2;
+ var hug4:IComment = hug3.make();
+ _list[_list.indexOf(hug1)] = hug4;
+ _lockedList[_lockedList.indexOf(hug1)] = hug4;
+ };
+
+ ret = [];
+ len = this._list.length;
+ i = 0;
+
+ while(i < len){
+ comment = this._list[i];
+
+ if(deletes.indexOf(comment.resNo) != (-1)){
+ if(!this._isLockedComment(comment)){
+ ret.push(comment.resNo);
+ }else{
+ updateDelete(comment, CommentDeleteStatus.OWNER);
+ }
+ }else if(this._isLockedComment(comment)){
+ updateDelete(comment, CommentDeleteStatus.NON);
+ }
+
+ i += 1;
+ }
+
+ return ret;
+ }
+
+ public function convertOriginalResNo(hug1:Array):Array
+ { //MethodID:2492, LocalCount= 7 , MaxScope= 1, MaxStack= 2, CodeLength= 120
+ var hug5:IComment = null;
+ var hug6:Number = NaN;
+ var hug2:Array = [];
+ var hug3:Number = this._list.length;
+ var hug4:int = 0;
+
+ while(hug4 < hug3){
+ hug5 = this._list[hug4];
+
+ if(hug1.indexOf(hug5.resNo) == (-1)){
+ }else{
+ hug6 = this._originalResNoList[hug4];
+
+ if(isNaN(hug6)) throw new Error("LockedComment.convertOriginalResNo: invalid resNo of _originalResNoList.");
+ hug2.push(hug6);
+ }
+
+ hug4++;
+ }
+
+ return hug2;
+ }
+
+ private function _isLockedComment(hug1:IComment):Boolean
+ { //MethodID:2493, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ return (this._lockedList.indexOf(hug1) != (-1));
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get originals():Array
+ { //MethodID:2494, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._originals;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get lockedList():Array
+ { //MethodID:2495, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._lockedList;
+ }
+}
+
+//■script152■
+
+package jp.nicovideo.util.events{
+
+ //■class(instance)_index:183
+ public class EventSequence extends Object
+ {
+ //static constructor
+ public static function EventSequence$cinit()
+ { //MethodID:2509, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ __current = null;
+ }
+
+ //static variables/etc.
+ private static var __current:EventSequence = null; //slotID:1
+
+ public static function get current():EventSequence
+ { //dispID:3, MethodID:2510, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ if(!__current) throw new Error("EventSequence.get current: __current is null.");
+
+ return __current;
+ }
+
+ public static function bind(hug1:Function):*
+ { //dispID:4, MethodID:2511, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return __current.bind(hug1);
+ }
+
+ //constructor
+ public function EventSequence(hug1:Object=null)
+ { //MethodID:2512, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ this.__events = [];
+ this.__userData = {};
+
+ super();
+
+ this.__defaultReceiver = hug1;
+ }
+
+ //variables/etc.
+ private var __events:Array; //slotID:0
+ private var __userData:Object; //slotID:0
+ private var __defaultReceiver:Object = null; //slotID:0
+
+ public function get data():Object
+ { //MethodID:2513, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__userData;
+ }
+
+ public function push(... rest):void
+ { //MethodID:2514, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ this.__events.unshift.apply(this.__events, rest);
+ }
+
+ public function add(... rest):void
+ { //MethodID:2515, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ this.__events.push.apply(this.__events, rest);
+ }
+
+ public function next(... rest):void
+ { //MethodID:2517, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 54
+ public var args:Array; //slotID:1
+ internal var f:Function; //slotID:2
+
+ f = null;
+ internal var args:Object = rest;
+
+ if(0 < this.__events.length){
+ f = this.__events.shift();
+
+ this.stage(function():void{ //MethodID:2516, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 14
+ f.apply(__defaultReceiver, args);
+ });
+ }
+ }
+
+ public function stage(hug1:Function):*
+ { //MethodID:2518, LocalCount= 5 , MaxScope= 7, MaxStack= 4, CodeLength= 145
+ internal var f:Function; //slotID:1
+ internal var tmp:EventSequence; //slotID:2
+
+ f = hug1;
+
+ if(this === __current) return f();
+
+ tmp = __current;
+ __current = this;
+
+ try{
+ var hug3:* = f();
+ return hug3;
+ }
+ finally{
+ __current = tmp;
+ }
+ }
+
+ public function bind(hug1:Function):*
+ { //MethodID:2521, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 15
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+ return function(... rest):*{ //MethodID:2520, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ public var args:Array; //slotID:1
+
+ internal var args:Object = rest;
+ return stage(function():*{ //MethodID:2519, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 12
+ return f.apply(null, args);
+ });
+ };
+ }
+ }
+}
+
+//■script153■
+
+package jp.nicovideo.util.external{
+
+ import flash.display.Loader
+ import flash.display.LoaderInfo
+ import flash.errors.IllegalOperationError
+ import flash.events.ErrorEvent
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.net.URLRequest
+ import flash.system.LoaderContext
+
+ //■class(instance)_index:184
+ public class JSConnector extends Object
+ {
+ //static constructor
+ public static function JSConnector$cinit()
+ { //MethodID:2523, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ _hasInitialized = false;
+ }
+
+ //static variables/etc.
+ private static var _hasInitialized:Boolean = false; //slotID:1
+ private static var _connector:_ExternalInterface; //slotID:2
+
+ public static function get hasInitialized():Boolean
+ { //dispID:3, MethodID:2524, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ return _hasInitialized;
+ }
+
+ public static function init(hug1:URLRequest, hug2:Function):void
+ { //dispID:4, MethodID:2528, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 48
+ internal var request:URLRequest; //slotID:1
+ internal var callback:Function; //slotID:2
+ internal var load:Function; //slotID:3
+
+ load = null;
+ request = hug1;
+ callback = hug2;
+ load = function(hug1:Function):void{ //MethodID:2527, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 122
+ internal var func:Function; //slotID:1
+ internal var loader:Loader; //slotID:2
+ internal var info:LoaderInfo; //slotID:3
+ internal var onErrorOccured:Function; //slotID:4
+
+ onErrorOccured = null;
+ func = hug1;
+ onErrorOccured = function(hug1:ErrorEvent):void{ //MethodID:2525, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ func(null);
+ };
+
+ loader = new Loader();
+ info = loader.contentLoaderInfo;
+
+ info.addEventListener(Event.INIT, function(hug1:Event):void{ //MethodID:2526, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 16
+ func(hug1.target.content);
+ });
+ info.addEventListener(IOErrorEvent.IO_ERROR, onErrorOccured);
+ info.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onErrorOccured);
+ loader.load(request, new LoaderContext());
+ };
+
+ initByFunc(load, callback);
+ }
+
+ public static function initByFunc(hug1:Function, hug2:Function):void
+ { //dispID:5, MethodID:2530, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 79
+ internal var load:Function; //slotID:1
+ internal var callback:Function; //slotID:2
+
+ load = hug1;
+ callback = hug2;
+
+ if(hasInitialized) throw new IllegalOperationError("JSConnector.init: It has initialized already.");
+
+ if((load == null) || (callback == null)) throw new ArgumentError("JSConnector.init: has invalid parameters.");
+ load(function(hug1:*):void{ //MethodID:2529, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 70
+ internal var content:*; //slotID:1
+
+ content = hug1;
+
+ try{
+ _connector = new _ExternalInterface(content);
+ }
+ catch(error:ArgumentError){
+ callback(false);
+ }
+
+ _hasInitialized = true;
+
+ callback(true);
+ });
+ }
+
+ public static function get available():Boolean
+ { //dispID:6, MethodID:2531, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ if(_connector == null) return false;
+
+ return _connector.available;
+ }
+
+ public static function call(hug1:String, ...rest):*
+ { //dispID:7, MethodID:2532, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 22
+ return _connector.call.apply(null, [hug1].concat(rest));
+ }
+
+ public static function addCallback(hug1:String, hug2:Function, ...args):void
+ { //dispID:8, MethodID:2533, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ _connector.addCallback.apply(null, args);
+ }
+
+ public static function get objectID():String
+ { //dispID:9, MethodID:2534, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return _connector.objectID;
+ }
+
+ //constructor
+ public function JSConnector()
+ { //MethodID:2535, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+
+//■class(instance)_index:185
+//private
+class _ExternalInterface extends Object
+{
+ //static constructor
+ public static function _ExternalInterface$cinit()
+ { //MethodID:2536, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ExternalInterface(hug1:*)
+ { //MethodID:2537, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 50
+ super();
+
+ this._available = hug1["available"];
+ this._objectID = hug1["objectID"];
+ this._addCallback = hug1["addCallback"];
+ this._call = hug1["call"];
+ }
+
+ //variables/etc.
+ private var _available:Boolean; //slotID:0
+ private var _objectID:String; //slotID:0
+ private var _addCallback:Function; //slotID:0
+ private var _call:Function; //slotID:0
+
+ public function get available():Boolean
+ { //MethodID:2538, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._available;
+ }
+
+ public function get objectID():String
+ { //MethodID:2539, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._objectID;
+ }
+
+ public function addCallback(hug1:String, hug2:Function):void
+ { //MethodID:2540, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 16
+ this._addCallback.apply(null, [hug1, hug2]);
+ }
+
+ public function call(hug1:String, ...rest):*
+ { //MethodID:2541, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 20
+ return this._call.apply(null, [hug1].concat(rest));
+ }
+}
+
+//■script154■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ import __AS3__.vec.Vector
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.PlayerInfo
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.IInitializeInfo
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.log.elements.ILogElement
+ import jp.nicovideo.nicoplayer.models.video.VideoWrapper
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+
+ //■class(instance)_index:186
+ public interface ILogManager
+ {
+ //static constructor
+ public static function ILogManager$cinit()
+ { //MethodID:2543, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function initialize(hug1:IInitializeInfo, hug2:NicoConfig, hug3:NicoFlashVars, hug4:IGetFLV, hug5:IPlayerConfig, hug6:PlayerInfo, hug7:Sprite, hug8:Boolean, hug9:VideoWrapper, hug10:Sprite, hug11:Boolean, hug12:IVideoenderTesterConfig):void;//MethodID:2544, dispID:0
+
+ function getLogElement(hug1:String):ILogElement; //MethodID:2545, dispID:0
+
+ function addLogElement(hug1:ILogElement):Boolean; //MethodID:2546, dispID:0
+
+ function contains(hug1:String):Boolean; //MethodID:2547, dispID:0
+
+ function send(hug1:Number=0.0):void; //MethodID:2548, dispID:0
+
+ function get sendableLogs():Vector.<ILogElement>; //MethodID:2549, dispID:0
+
+ function get logs():Vector.<ILogElement>; //MethodID:2550, dispID:0
+
+ function get observer():ILogEventObservable; //MethodID:2551, dispID:0
+
+ //constructor
+ public function ILogManager(); //MethodID:2552, dispID:0
+ }
+}
+
+//■script155■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ import __AS3__.vec.Vector
+ import flash.display.Sprite
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.events.TimerEvent
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import flash.net.URLRequestMethod
+ import flash.net.URLVariables
+ import flash.utils.Dictionary
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.PlayerInfo
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.IInitializeInfo
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.log.elements.CapabilitiesLog
+ import jp.nicovideo.nicoplayer.models.log.elements.ILogElement
+ import jp.nicovideo.nicoplayer.models.log.elements.LoadingFailLog
+ import jp.nicovideo.nicoplayer.models.log.elements.NonSharedObjectCountLog
+ import jp.nicovideo.nicoplayer.models.log.elements.PlayStats
+ import jp.nicovideo.nicoplayer.models.log.elements.PlayerIdleLog
+ import jp.nicovideo.nicoplayer.models.log.elements.Playlen
+ import jp.nicovideo.nicoplayer.models.log.elements.PremiumLeadOnSliderLog
+ import jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog
+ import jp.nicovideo.nicoplayer.models.log.events.LogEvent
+ import jp.nicovideo.nicoplayer.models.video.VideoWrapper
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:188
+ public class LogManager extends EventDispatcher implements ILogManager
+ {
+ //static constructor
+ public static function LogManager$cinit()
+ { //MethodID:2558, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 60
+ DEFAULT_SEND_SLEEP_TIME = 3000;
+ SO_NAME_LOG_MANAGER = "jp.nicovideo.nicoplayer.models.log.LogManager";
+ ROOT_XML_TEMPLATE = new XML("<player_log/>");
+ LOGS_XML_TEMPLATE = new XML("<logs/>");
+ LOG_XML_TEMPLATE = new XML("<log name=''/>");
+ }
+
+ //static variables/etc.
+ public static const DEFAULT_SEND_SLEEP_TIME:Number = 3000.0; //slotID:1
+ public static const SO_NAME_LOG_MANAGER:String = "jp.nicovideo.nicoplayer.models.log.LogManager";//slotID:2
+ public static const ROOT_XML_TEMPLATE:XML; //slotID:3
+ public static const LOGS_XML_TEMPLATE:XML; //slotID:4
+ public static const LOG_XML_TEMPLATE:XML; //slotID:5
+
+ //constructor
+ public function LogManager(hug1:Boolean)
+ { //MethodID:2565, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 410
+ internal var isNoSharedObject:Boolean; //slotID:1
+ internal var getStorage:Function; //slotID:2
+
+ getStorage = null;
+ isNoSharedObject = hug1;
+
+ super();
+
+ getStorage = function(hug1:String):LocalStorage{ //MethodID:2559, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ return CrossSharedObject.getStorage((SO_NAME_LOG_MANAGER + "." + hug1), "/");
+ };
+
+ this._isNoSharedObject = isNoSharedObject;
+ this._logs = new Vector.<ILogElement>();
+ this._dictionary = new Dictionary();
+ this._loader = new URLLoader();
+
+ this._loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:2560, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ _onSendFinished(true);
+ });
+ this._loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:Event):void{ //MethodID:2561, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ _onSendFinished(false);
+ });
+ this._loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:Event):void{ //MethodID:2562, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ _onSendFinished(false);
+ });
+
+ this._sleepTimer = new Timer(DEFAULT_SEND_SLEEP_TIME, 1);
+
+ this._sleepTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:2563, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _send_0();
+ });
+
+ if(this._isNoSharedObject){
+ this._nonSharedObjectLog = new NonSharedObjectCountLog(getStorage);
+
+ this.addLogElement(this._nonSharedObjectLog);
+ }else{
+ this._playlen = new Playlen();
+ this._playstats = new PlayStats(getStorage);
+
+ this.addLogElement(this._playstats);
+
+ this._playerIdleLog = new PlayerIdleLog(getStorage);
+
+ this.addLogElement(this._playerIdleLog);
+
+ this._loadingFailLog = new LoadingFailLog(getStorage);
+
+ this.addLogElement(this._loadingFailLog);
+
+ this._premiumLeadOnSliderLog = new PremiumLeadOnSliderLog(getStorage);
+
+ this.addLogElement(this._premiumLeadOnSliderLog);
+
+ this._capabilitiesLog = new CapabilitiesLog(getStorage);
+
+ this.addLogElement(this._capabilitiesLog);
+
+ this._videoenderLog = new VideoenderLog(getStorage);
+
+ this.addLogElement(this._videoenderLog);
+ this._logs.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):void{ //MethodID:2564, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 37
+ if((hug1.sendType == LogElementSendType.PLAYER_START_UP) && (hug1.logObjects.length > 0)) hug1.isSendable = true;
+ });
+ }
+
+ this._observer = LogEventObserverFactory.create((this._isNoSharedObject ? null : this.getLogElement), (this._isNoSharedObject ? null : this._playlen));
+ }
+
+ //variables/etc.
+ private var _apiURL:String; //slotID:0
+ private var _logs:Vector.<ILogElement>; //slotID:0
+ private var _sentLogs:Vector.<ILogElement>; //slotID:0
+ private var _dictionary:Dictionary; //slotID:0
+ private var _observer:ILogEventObservable; //slotID:0
+ private var _sleepTimer:Timer; //slotID:0
+ private var _loader:URLLoader; //slotID:0
+ private var _nonSharedObjectLog:NonSharedObjectCountLog; //slotID:0
+ private var _playlen:Playlen; //slotID:0
+ private var _playstats:PlayStats; //slotID:0
+ private var _playerIdleLog:PlayerIdleLog; //slotID:0
+ private var _loadingFailLog:LoadingFailLog; //slotID:0
+ private var _premiumLeadOnSliderLog:PremiumLeadOnSliderLog; //slotID:0
+ private var _capabilitiesLog:CapabilitiesLog; //slotID:0
+ private var _videoenderLog:VideoenderLog; //slotID:0
+ private var _isNoSharedObject:Boolean = false; //slotID:0
+ private var _isLogSending:Boolean = false; //slotID:0
+ private var _isSendAfterSending:Boolean = false; //slotID:0
+
+ public function initialize(hug1:IInitializeInfo, hug2:NicoConfig, hug3:NicoFlashVars, hug4:IGetFLV, hug5:IPlayerConfig, hug6:PlayerInfo, hug7:Sprite, hug8:Boolean, hug9:VideoWrapper, hug10:Sprite, hug11:Boolean, hug12:IVideoenderTesterConfig):void
+ { //MethodID:2567, LocalCount= 14 , MaxScope= 2, MaxStack= 7, CodeLength= 452
+ internal var initializeInfo:IInitializeInfo; //slotID:1
+ internal var config:NicoConfig; //slotID:2
+ internal var flashvars:NicoFlashVars; //slotID:3
+ internal var getFLV:IGetFLV; //slotID:4
+ internal var playerConfig:IPlayerConfig; //slotID:5
+ internal var playerInfo:PlayerInfo; //slotID:6
+ internal var root:Sprite; //slotID:7
+ internal var isThumbwatch:Boolean; //slotID:8
+ internal var video:VideoWrapper; //slotID:9
+ internal var rootDisplayObject:Sprite; //slotID:10
+ internal var isPlaylist:Boolean; //slotID:11
+ internal var videoenderTesterConfig:IVideoenderTesterConfig; //slotID:12
+ internal var isNoHiroba:Boolean; //slotID:13
+
+ initializeInfo = hug1;
+ config = hug2;
+ flashvars = hug3;
+ getFLV = hug4;
+ playerConfig = hug5;
+ playerInfo = hug6;
+ root = hug7;
+ isThumbwatch = hug8;
+ video = hug9;
+ rootDisplayObject = hug10;
+ isPlaylist = hug11;
+ videoenderTesterConfig = hug12;
+ this._apiURL = config.LOGGER_API_URL;
+ isNoHiroba = (flashvars.watchFlashVars && flashvars.watchFlashVars.noHiroba);
+
+ _LogEnabledChecker.initialize(config.BASE_URL);
+
+ if(this._isNoSharedObject){
+ this._nonSharedObjectLog.initialize();
+ }else{
+ this._playlen.initialize(config.PLAYLEN_API_URL, video, flashvars, initializeInfo, isThumbwatch, rootDisplayObject);
+ this._playstats.initialize(!flashvars.watchFlashVars.noPostPlayStats, getFLV, flashvars, playerInfo, isNoHiroba);
+ this._playerIdleLog.initialize(_LogEnabledChecker.getEnabledByUserID(initializeInfo.userID, this._playerIdleLog.name), flashvars.isChannel, flashvars.communityGlobalID, flashvars.originalVideoID);
+ this._loadingFailLog.initialize(flashvars.watchID, getFLV.videoURL);
+ this._premiumLeadOnSliderLog.initialize(_LogEnabledChecker.getEnabledByUserID(initializeInfo.userID, this._premiumLeadOnSliderLog.name));
+ this._capabilitiesLog.initialize(_LogEnabledChecker.getEnabledByUserID(initializeInfo.userID, this._capabilitiesLog.name));
+ this._videoenderLog.initialize(_LogEnabledChecker.getEnabledByUserID(initializeInfo.userID, this._videoenderLog.name), videoenderTesterConfig);
+ this._logs.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):void{ //MethodID:2566, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 37
+ if((!isThumbwatch && flashvars.watchFlashVars) && !isPlaylist && videoenderTesterConfig.isTestable || ((hug1.sendType == LogElementSendType.LOG_INITIALIZE) && (hug1.logObjects.length > 0))) hug1.isSendable = true;
+ });
+ }
+
+ this.send();
+ }
+
+ public function getLogElement(hug1:String):ILogElement
+ { //MethodID:2568, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ if(!this._dictionary.hasOwnProperty(hug1)) throw new Error("LogManager.getLogElement: LogElement not found.");
+
+ return this._dictionary[hug1];
+ }
+
+ public function addLogElement(hug1:ILogElement):Boolean
+ { //MethodID:2569, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 55
+ if(this.contains(hug1.name)) return false;
+ hug1.addEventListener(LogEvent.PREPARED, this._onItemPrepared);
+ this._logs.push(hug1);
+
+ this._dictionary[hug1.name] = hug1;
+ return true;
+ }
+
+ private function _onItemPrepared(hug1:LogEvent):void
+ { //MethodID:2570, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ this.send(0);
+ }
+
+ public function contains(hug1:String):Boolean
+ { //MethodID:2571, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return this._dictionary.hasOwnProperty(hug1);
+ }
+
+ public function send(hug1:Number=3000.0):void
+ { //MethodID:2572, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 94
+ if(this._sleepTimer.running) return;
+
+ if((hug1 > 0) && !isNaN(hug1) && isFinite(hug1)){
+ this._sleepTimer.stop();
+ this._sleepTimer.reset();
+
+ this._sleepTimer.delay = hug1;
+
+ this._sleepTimer.start();
+ }else{
+ this._send_0();
+ }
+ }
+
+ private function _send_0():void
+ { //MethodID:2573, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 142
+ if(this._isLogSending){
+ this._isSendAfterSending = true;
+ return;
+ }
+
+ this._isLogSending = true;
+ this._sentLogs = this.sendableLogs;
+
+ if(this._sentLogs.length <= 0){
+ this._isLogSending = false;
+ return;
+ }
+
+ var hug1:XML = this._createXML(this._sentLogs);
+
+ if(XMLList(hug1.logs.log).length() == 0){
+ this._isLogSending = false;
+ return;
+ }
+
+ var hug2:URLVariables = new URLVariables();
+ hug2.player_log = hug1.toXMLString();
+ var hug3:URLRequest = new URLRequest(this._apiURL);
+ hug3.method = URLRequestMethod.POST;
+ hug3.data = hug2;
+
+ this._loader.load(hug3);
+ }
+
+ private function _onSendFinished(hug1:Boolean):void
+ { //MethodID:2575, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 102
+ internal var succeeded:Boolean; //slotID:1
+
+ succeeded = hug1;
+
+ if(succeeded){
+ this._clean(this._sentLogs, true);
+ this._sentLogs.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):void{ //MethodID:2574, LocalCount= 4 , MaxScope= 0, MaxStack= 1, CodeLength= 6
+ hug1.onLogSent();
+ });
+
+ this._sentLogs = new Vector.<ILogElement>();
+ }
+
+ this._isLogSending = false;
+
+ if(this._isSendAfterSending){
+ this._isSendAfterSending = false;
+
+ this.send();
+ }else{
+ dispatchEvent(new LogEvent(LogEvent.SEND_COMPLETE));
+ }
+ }
+
+ private function _clean(hug1:Vector.<ILogElement>, hug2:Boolean=false):void
+ { //MethodID:2577, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 28
+ internal var target:Vector.<ILogElement>; //slotID:1
+ internal var isCompel:Boolean = false; //slotID:2
+
+ target = hug1;
+ isCompel = hug2;
+
+ target.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):void{ //MethodID:2576, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ if(hug1.isExpired || isCompel) hug1.clearLocalStorage();
+ });
+ }
+
+ private function _createXML(hug1:Vector.<ILogElement>):XML
+ { //MethodID:2581, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 81
+ internal var vector:Vector.<ILogElement>; //slotID:1
+ internal var root:XML; //slotID:2
+ internal var logs:XML; //slotID:3
+ internal var _setXMLElement:Function; //slotID:4
+
+ logs = null;
+ vector = hug1;
+ _setXMLElement = function(hug1:XML, hug2:Object):void{ //MethodID:2578, LocalCount= 6 , MaxScope= 0, MaxStack= 5, CodeLength= 70
+ var hug3:String = null;
+
+ for(hug3 in hug2){
+ hug1.appendChild(new XML(("<" + hug3 + ">") + hug2[hug3] + "</" + hug3 + ">"));
+ }
+ };
+
+ root = ROOT_XML_TEMPLATE.copy();
+ logs = LOGS_XML_TEMPLATE.copy();
+
+ root.appendChild(logs);
+ vector.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):void{ //MethodID:2580, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ internal var item:ILogElement; //slotID:1
+ internal var index:int; //slotID:2
+ internal var vector:Vector.<ILogElement>; //slotID:3
+
+ item = hug1;
+ index = hug2;
+ vector = hug3;
+
+ item.logObjects.forEach(function(hug1:Object, hug2:int, hug3:Vector.<Object>):void{ //MethodID:2579, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 42
+ var hug4:XML = LOG_XML_TEMPLATE.copy();
+ hug4.@name = item.name;
+
+ _setXMLElement(hug4, hug1);
+ logs.appendChild(hug4);
+ });
+ });
+
+ return root;
+ }
+
+ public function get sendableLogs():Vector.<ILogElement>
+ { //MethodID:2583, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 37
+ internal var vector:Vector.<ILogElement>; //slotID:1
+
+ vector = null;
+ vector = this._logs.filter(function(hug1:ILogElement, hug2:int, hug3:Vector.<ILogElement>):Boolean{ //MethodID:2582, LocalCount= 4 , MaxScope= 0, MaxStack= 1, CodeLength= 13
+ if(hug1.isSendable){
+ }
+
+ return hug1.isSendable;
+ });
+
+ return vector;
+ }
+
+ public function get logs():Vector.<ILogElement>
+ { //MethodID:2584, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._logs;
+ }
+
+ public function get observer():ILogEventObservable
+ { //MethodID:2585, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._observer;
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.PremiumLeadOnSliderTarget
+import jp.nicovideo.nicoplayer.models.log.LogElementName
+
+//■class(instance)_index:187
+//private
+class _LogEnabledChecker extends Object
+{
+ //static constructor
+ public static function _LogEnabledChecker$cinit()
+ { //MethodID:2554, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ _isCompel = false;
+ }
+
+ //static variables/etc.
+ private static var _isCompel:Boolean = false; //slotID:1
+
+ public static function initialize(hug1:String):void
+ { //dispID:3, MethodID:2555, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 57
+ var hug2:RegExp = new RegExp("^http:\/\/((?:[\w\-]+\.)*)nicovideo\.jp\/", "ig");
+ var hug3:Array = hug2.exec(hug1);
+
+ if(hug3) _isCompel = new RegExp("dev\.").test(hug3[1].toLowerCase());
+ }
+
+ public static function getEnabledByUserID(hug1:String, hug2:String):Boolean
+ { //dispID:4, MethodID:2556, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 427
+ if(_isCompel) return true;
+
+ var hug3:int = int(hug1);
+ var hug4:String = hug2;
+
+ switch(hug4){
+ case LogElementName.PREMIUM_LEAD_ON_SLIDER:
+ return PremiumLeadOnSliderTarget.isTargetUser(hug1, true);
+ case LogElementName.PLAYER_IDLE:
+ return ((hug3 % 10) == 1);
+ case LogElementName.PLAYLIST_INTERRUPTED:
+ return ((hug3 % 10) == 1);
+ case LogElementName.VIDEO_MENU:
+ return ((hug3 % 10) == 3);
+ case LogElementName.LOADING_IDLE:
+ return ((hug3 % 10) == 4);
+ case LogElementName.COMMENT_UPDATE_COUNT:
+ return ((hug3 % 10) == 9);
+ case LogElementName.WATCH_RELOAD:
+ return ((hug3 % 10) == 9);
+ case LogElementName.HIRROBA_CONNECTION_FAIL:
+ return ((hug3 % 10) == 9);
+ case LogElementName.HIRROBA_DISCONNECTED:
+ return ((hug3 % 10) == 9);
+ case LogElementName.PLAYER_CONF:
+ return ((hug3 % 10) == 9);
+ case LogElementName.CAPABILITIES:
+ return ((hug3 % 10) == 9);
+ case LogElementName.VIDEOENDER:
+ return ((hug3 % 20) == 2);
+ default:
+ throw new ArgumentError("LogManager._LogEnabledChecker.getEnabledByUserID: 指定されたログが見つかりません。", hug2);
+ break;
+ }
+ }
+
+ //constructor
+ public function _LogEnabledChecker()
+ { //MethodID:2557, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script156■
+
+package jp.nicovideo.hiroba{
+
+ import flash.display.MovieClip
+ import jp.nicovideo.hiroba.models.IHirobaMessageServerInfo
+ import jp.nicovideo.nicoplayer.models.api.IGetChecklist
+
+ //■class(instance)_index:189
+ public interface IHirobaConnectorClient
+ {
+ //static constructor
+ public static function IHirobaConnectorClient$cinit()
+ { //MethodID:2587, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get messageServerInfo():IHirobaMessageServerInfo; //MethodID:2588, dispID:0
+
+ function get userID():String; //MethodID:2589, dispID:0
+
+ function getPostKey(hug1:Function, hug2:String, hug3:int):void; //MethodID:2590, dispID:0
+
+ function insertItemOnMarquee(hug1:String, hug2:MovieClip, hug3:Function, hug4:Function, hug5:Number=0.5):void;//MethodID:2591, dispID:0
+
+ function get isLiveAlertEnabled():Boolean; //MethodID:2592, dispID:0
+
+ function get isUneiMessageEnabled():Boolean; //MethodID:2593, dispID:0
+
+ function get checkList():IGetChecklist; //MethodID:2594, dispID:0
+
+ //constructor
+ public function IHirobaConnectorClient(); //MethodID:2595, dispID:0
+ }
+}
+
+//■script157■
+
+package jp.nicovideo.hiroba{
+
+ import flash.display.MovieClip
+ import jp.nicovideo.hiroba.models.IHirobaMessageServerInfo
+ import jp.nicovideo.nicoplayer.models.api.IGetChecklist
+ import jp.nicovideo.nicoplayer.models.api.IKeygen
+
+ //■class(instance)_index:190
+ public class HirobaConnectorClient extends Object implements IHirobaConnectorClient
+ {
+ //static constructor
+ public static function HirobaConnectorClient$cinit()
+ { //MethodID:2597, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HirobaConnectorClient(hug1:IHirobaMessageServerInfo, hug2:String, hug3:IKeygen, hug4:Function)
+ { //MethodID:2598, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ super();
+
+ this._messageServerInfo = hug1;
+ this._userID = hug2;
+ this._keygen = hug3;
+ this._getCurrentVolume = hug4;
+ }
+
+ //variables/etc.
+ private var _messageServerInfo:IHirobaMessageServerInfo; //slotID:0
+ private var _keygen:IKeygen; //slotID:0
+ private var _insertItemOnMarquee:Function; //slotID:0
+ private var _checkList:IGetChecklist; //slotID:0
+ private var _getCurrentVolume:Function; //slotID:0
+ private var _userID:String; //slotID:0
+
+ public function get messageServerInfo():IHirobaMessageServerInfo
+ { //MethodID:2599, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._messageServerInfo;
+ }
+
+ public function get userID():String
+ { //MethodID:2600, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userID;
+ }
+
+ public function getPostKey(hug1:Function, hug2:String, hug3:int, ...args):void
+ { //MethodID:2601, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ this._keygen.getHirobaPostKey.apply(null, args);
+ }
+
+ public function set insertItemOnMarquee_0(hug1:Function):void
+ { //MethodID:2602, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._insertItemOnMarquee = hug1;
+ }
+
+ public function insertItemOnMarquee(hug1:String, hug2:MovieClip, hug3:Function, hug4:Function, hug5:Number=0.5):void
+ { //MethodID:2603, LocalCount= 6 , MaxScope= 1, MaxStack= 7, CodeLength= 30
+ if(this._insertItemOnMarquee == null) return;
+ this._insertItemOnMarquee(hug1, hug2, this._getCurrentVolume(), hug3, hug4, hug5);
+ }
+
+ public function get checkList():IGetChecklist
+ { //MethodID:2604, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._checkList;
+ }
+
+ public function set checkList(hug1:IGetChecklist):void
+ { //MethodID:2605, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._checkList = hug1;
+ }
+
+ public function get isLiveAlertEnabled():Boolean
+ { //MethodID:2606, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function get isUneiMessageEnabled():Boolean
+ { //MethodID:2607, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+ }
+}
+
+//■script158■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:191
+ public interface IVposWatcher
+ {
+ //static constructor
+ public static function IVposWatcher$cinit()
+ { //MethodID:2609, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function addWatchPoint(hug1:Function, hug2:Number, hug3:Number=1.0, hug4:Boolean=true):void;//MethodID:2610, dispID:0
+
+ //constructor
+ public function IVposWatcher(); //MethodID:2611, dispID:0
+ }
+}
+
+//■script159■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.util.ArrayUtils
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:193
+ public class VposWatcher extends Object implements IVposWatcher
+ {
+ //static constructor
+ public static function VposWatcher$cinit()
+ { //MethodID:2615, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ WATCH_INTERVAL = 400;
+ }
+
+ //static variables/etc.
+ public static var WATCH_INTERVAL:Number = 400.0; //slotID:1
+
+ //constructor
+ public function VposWatcher(hug1:IVideo)
+ { //MethodID:2617, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 57
+ internal var video:IVideo; //slotID:1
+
+ video = hug1;
+ this.__watchPoints = [];
+ this.__watchTimer = new Timer(WATCH_INTERVAL);
+
+ super();
+
+ this.__video = video;
+
+ this.__watchTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:2616, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ __watch();
+ });
+ }
+
+ //variables/etc.
+ private var __watchPoints:Array; //slotID:0
+ private var __watchTimer:Timer; //slotID:0
+ private var __lastHit:_WatchPoint = null; //slotID:0
+ private var __video:IVideo; //slotID:0
+
+ public function kill():void
+ { //MethodID:2618, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ this.__watchTimer.stop();
+ this.__watchTimer.reset();
+
+ this.__watchPoints = [];
+ this.__lastHit = null;
+ }
+
+ public function addWatchPoint(hug1:Function, hug2:Number, hug3:Number=1.0, hug4:Boolean=true):void
+ { //MethodID:2619, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 60
+ var hug5:_WatchPoint = new _WatchPoint();
+ hug5.f = hug1;
+ hug5.vpos = hug2;
+ hug5.length = hug3;
+ hug5.once = hug4;
+
+ this.__watchPoints.splice((this.__findIndexOfWatchPoint(hug2) + 1), 0, hug5);
+ }
+
+ private function __watch():void
+ { //MethodID:2620, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 99
+ var hug1:Number = this.__findIndexOfWatchPoint(this.__video.vpos);
+
+ if(hug1 == (-1)) return;
+
+ var hug2:_WatchPoint = this.__watchPoints[hug1];
+
+ if((hug2 !== this.__lastHit) && (hug2.vpos <= this.__video.vpos) && ((hug2.vpos + hug2.length) >= this.__video.vpos)){
+ this.__lastHit = hug2;
+
+ hug2.f();
+ }
+ }
+
+ private function __findIndexOfWatchPoint(hug1:Number):int
+ { //MethodID:2622, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 30
+ internal var vpos:Number; //slotID:1
+
+ vpos = hug1;
+ return ArrayUtils.lowerBoundIndex(function(hug1:Number, hug2:_WatchPoint):Number{ //MethodID:2621, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 7
+ return (hug1 - hug2.vpos);
+ }, vpos, this.__watchPoints);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoSeeked(hug1:Number):EventResult
+ { //MethodID:2623, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ this.__watch();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:2624, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 16
+ this.__watchTimer.start();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:2625, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 16
+ this.__watchTimer.stop();
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+
+//■class(instance)_index:192
+//private
+class _WatchPoint extends Object
+{
+ //static constructor
+ public static function _WatchPoint$cinit()
+ { //MethodID:2613, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _WatchPoint()
+ { //MethodID:2614, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var f:Function; //slotID:0
+ public var vpos:Number; //slotID:0
+ public var length:Number; //slotID:0
+ public var once:Boolean; //slotID:0
+}
+
+//■script160■
+
+package jp.nicovideo.util.events{
+
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.util.ArraySet
+
+ //■class(instance)_index:194
+ public class EventPipe extends Object
+ {
+ //static constructor
+ public static function EventPipe$cinit()
+ { //MethodID:2627, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function dummy():Function
+ { //dispID:3, MethodID:2629, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 10
+ return function(hug1:String, hug2:Array):EventResult{ //MethodID:2628, LocalCount= 3 , MaxScope= 0, MaxStack= 1, CodeLength= 6
+ return EventResult.THROUGH;
+ };
+ }
+
+ public static function castEvent(hug1:*, hug2:String, hug3:Array):EventResult
+ { //dispID:4, MethodID:2630, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ return hug1.apply(null, hug3);
+ }
+
+ public static function serial(... rest):EventPipe
+ { //dispID:5, MethodID:2631, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return __create(true, rest);
+ }
+
+ public static function parallel(... rest):EventPipe
+ { //dispID:6, MethodID:2632, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return __create(false, rest);
+ }
+
+ public static function switcher(hug1:Function, ...rest):EventPipe
+ { //dispID:7, MethodID:2633, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return null;
+ }
+
+ private static function __create(hug1:Boolean, hug2:Array):EventPipe
+ { //dispID:8, MethodID:2634, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 94
+ var hug4:* = undefined;
+ var hug3:EventPipe = new (hug1 ? (_SerialPipe) : (_ParallelPipe))();
+
+ for each(hug4 in hug2){
+ hug3.push((hug4 is Array) ? __create(!hug1, hug4) : hug4);
+ }
+
+ return hug3;
+ }
+
+ //constructor
+ public function EventPipe()
+ { //MethodID:2635, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 39
+ this._nodesInParent = new ArraySet();
+
+ super();
+
+ this._head = this._tail = new _Node(null, null);
+ }
+
+ //variables/etc.
+ protected var _nodesInParent:ArraySet; //slotID:0
+ protected var _head:_Node; //slotID:0
+ protected var _tail:_Node; //slotID:0
+
+ public function push(hug1:*):void
+ { //MethodID:2636, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ if((this._tail.instance != null) && (this._tail.instance is INGComment)) return;
+
+ var hug2:_Node = this.__node_0(hug1);
+ this._tail.next = hug2;
+ this._tail = hug2;
+ }
+
+ private function __node_0(hug1:*):_Node
+ { //MethodID:2640, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 154
+ internal var instance:*; //slotID:1
+ internal var node:_Node; //slotID:2
+ internal var names:Array; //slotID:3
+ internal var name:String; //slotID:4
+
+ names = null;
+ name = null;
+ instance = hug1;
+ node = new _Node(this, instance);
+
+ if(instance is (EventPipe)){
+ instance._nodesInParent.add(node);
+ }else if(instance is EventSender){
+ names = instance.eventNames;
+
+ for each(name in names){
+ function(hug1:_Node, hug2:String):void{ //MethodID:2639, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 68
+ internal var node:_Node; //slotID:1
+ internal var name:String; //slotID:2
+ internal var sender:*; //slotID:3
+
+ sender = undefined;
+ node = hug1;
+ name = hug2;
+ sender = function(... rest):void{ //MethodID:2637, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 19
+ _cast(node.next, name, rest, true);
+ };
+
+ instance.add(sender);
+ node.removers.push(function():void{ //MethodID:2638, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 24
+ instance.remove(sender);
+ });
+ }.call(null, node, name);
+ }
+ }
+
+ return node;
+ }
+
+ public function pop(hug1:*):void
+ { //MethodID:2641, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 46
+ if((this._tail.instance != null) && (this._tail.instance is INGComment)) this._tail = new _Node(null, null);
+ }
+
+ public function replace(hug1:*, hug2:*):void
+ { //MethodID:2643, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 25
+ internal var instance:*; //slotID:1
+ internal var replacement:*; //slotID:2
+
+ instance = hug1;
+ replacement = hug2;
+
+ this.__forEachNode(function(hug1:_Node):Boolean{ //MethodID:2642, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 59
+ if(hug1.next.instance !== instance) return true;
+ remove_0(hug1.next);
+
+ var hug2:_Node = __node_0(replacement);
+ hug2.next = hug1.next.next;
+ hug1.next = hug2;
+ return false;
+ });
+ }
+
+ public function remove(hug1:*):void
+ { //MethodID:2645, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 20
+ internal var instance:*; //slotID:1
+
+ instance = hug1;
+
+ this.__forEachNode(function(hug1:_Node):Boolean{ //MethodID:2644, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 40
+ if(hug1.next.instance !== instance) return true;
+ remove_0(hug1.next);
+
+ hug1.next = hug1.next.next;
+ return false;
+ });
+ }
+
+ public function removeAll():void
+ { //MethodID:2647, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 15
+ this.__forEachNode(function(hug1:_Node):Boolean{ //MethodID:2646, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ remove_0(hug1);
+
+ return true;
+ });
+ }
+
+ public function remove_0(hug1:_Node):void
+ { //MethodID:2648, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 81
+ var hug2:Function = null;
+
+ if(hug1.instance is (EventPipe)){
+ this._nodesInParent.remove(hug1);
+ }else if(hug1.instance is EventSender){
+ for each(hug2 in hug1.removers){
+ hug2();
+ }
+ }
+ }
+
+ public function collect():Array
+ { //MethodID:2650, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 34
+ internal var a:Array; //slotID:1
+
+ a = null;
+ a = [];
+
+ this.__forEachNode(function(hug1:_Node):Boolean{ //MethodID:2649, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 16
+ a.push(hug1.next.instance);
+
+ return true;
+ });
+
+ return a;
+ }
+
+ private function __forEachNode(hug1:Function, hug2:_Node=null):void
+ { //MethodID:2651, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 58
+ var hug3:_Node = (hug2 || this._head);
+
+ while(hug3.next && hug1(hug3)){
+ hug3 = hug3.next;
+ }
+ }
+
+ protected function _cast(hug1:_Node, hug2:String, hug3:Array, hug4:Boolean):Object
+ { //MethodID:2652, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ throw new Error("EventPipe._cast: error.");
+ }
+
+ public function _cast_self(hug1:String, hug2:Array):Object
+ { //MethodID:2653, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 18
+ return this._cast(this._head.next, hug1, hug2, false);
+ }
+
+ protected function _castParents(hug1:String, hug2:Array):void
+ { //MethodID:2654, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 59
+ var hug3:_Node = null;
+
+ for each(hug3 in this._nodesInParent){
+ hug3.belongs._cast(hug3.next, hug1, hug2, true);
+ }
+ }
+ }
+}
+
+import jp.nicovideo.util.events.EventPipe
+import jp.nicovideo.util.events.EventResult
+
+//■class(instance)_index:195
+//private
+class _Node extends Object
+{
+ //static constructor
+ public static function _Node$cinit()
+ { //MethodID:2655, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Node(hug1:EventPipe, hug2:*)
+ { //MethodID:2656, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this.removers = [];
+
+ super();
+
+ this.belongs = hug1;
+ this.instance = hug2;
+ }
+
+ //variables/etc.
+ public var belongs:EventPipe; //slotID:0
+ public var instance:*; //slotID:0
+ public var next:_Node; //slotID:0
+ public var removers:Array; //slotID:0
+
+ public function cast(hug1:String, hug2:Array):EventResult
+ { //MethodID:2657, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 35
+ if(this.instance is Function) return this.instance(hug1, hug2);
+
+ return (EventPipe).castEvent(this.instance, hug1, hug2);
+ }
+}
+
+//■class(instance)_index:196
+//private
+class _SerialPipe extends EventPipe
+{
+ //static constructor
+ public static function _SerialPipe$cinit()
+ { //MethodID:2658, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ override protected function _cast(hug1:_Node, hug2:String, hug3:Array, hug4:Boolean):Object
+ { //MethodID:2659, LocalCount= 8 , MaxScope= 1, MaxStack= 4, CodeLength= 256
+ var hug5:Object = null;
+ var hug6:EventResult = null;
+
+ while(hug1 != null){
+ if(hug1.instance is (EventPipe)){
+ hug5 = hug1.instance._cast_self(hug2, hug3);
+
+ if(hug5){
+ if(hug5.name) hug2 = hug5.name;
+
+ if(hug5.args) hug3 = hug5.args;
+ }
+ }else{
+ hug6 = hug1.cast(hug2, hug3);
+ var hug7:EventResult = hug6;
+
+ switch(hug7){
+ case EventResult.THROUGH:
+ hug1 = hug1.next;
+ continue;
+ case EventResult.BREAK:
+ return null;
+ default:
+ break;
+ }
+
+ if(hug6._replaced != null) hug3 = hug6._replaced;
+
+ if(hug6._renamed != null) hug2 = hug6._renamed;
+ }
+
+ hug1 = hug1.next;
+ }
+
+ if(!hug4) return {args:hug3, name:hug2};
+
+ _castParents(hug2, hug3);
+
+ return null;
+ }
+
+ //constructor
+ public function _SerialPipe()
+ { //MethodID:2660, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:197
+//private
+class _ParallelPipe extends EventPipe
+{
+ //static constructor
+ public static function _ParallelPipe$cinit()
+ { //MethodID:2661, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ override protected function _cast(hug1:_Node, hug2:String, hug3:Array, hug4:Boolean):Object
+ { //MethodID:2662, LocalCount= 7 , MaxScope= 1, MaxStack= 3, CodeLength= 140
+ var hug5:EventResult = null;
+
+ if(hug4){
+ _castParents(hug2, hug3);
+
+ return null;
+ }
+
+ while(hug1 != null){
+ if(hug1.instance is (EventPipe)){
+ hug1.instance._cast_self(hug2, hug3);
+ }else{
+ hug5 = hug1.cast(hug2, hug3);
+ var hug6:EventResult = hug5;
+
+ switch(hug6){
+ case EventResult.BREAK:
+ return null;
+ default:
+ break;
+ }
+ }
+
+ hug1 = hug1.next;
+ }
+
+ return null;
+ }
+
+ //constructor
+ public function _ParallelPipe()
+ { //MethodID:2663, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script161■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import flash.display.DisplayObject
+
+ //■class(instance)_index:198
+ public interface IDisplayObjectProvider
+ {
+ //static constructor
+ public static function IDisplayObjectProvider$cinit()
+ { //MethodID:2665, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function create():DisplayObject; //MethodID:2666, dispID:0
+
+ function release(hug1:DisplayObject):void; //MethodID:2667, dispID:0
+
+ function assignZ(hug1:DisplayObject, hug2:int):void; //MethodID:2668, dispID:0
+
+ //constructor
+ public function IDisplayObjectProvider(); //MethodID:2669, dispID:0
+ }
+}
+
+//■script162■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import jp.nicovideo.nicoplayer.models.comment.CommandConstants
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoscript.INicoSPlayer
+ import jp.nicovideo.util.ArrayUtils
+ import jp.nicovideo.util.ZIndexManager
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_receiver
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:199
+ public class CommentViewTransformer extends Object
+ {
+ //static constructor
+ public static function CommentViewTransformer$cinit()
+ { //MethodID:2671, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentViewTransformer(hug1:Object, hug2:CommentLayer, hug3:CommentLayerView, hug4:INicoSPlayer)
+ { //MethodID:2672, LocalCount= 13 , MaxScope= 1, MaxStack= 3, CodeLength= 206
+ var hug5:String = null;
+ var hug6:_LayerInfo = null;
+ var hug7:String = null;
+ var hug8:_CommentListInfo = null;
+ this._listNameMapping = {};
+
+ super();
+
+ this._commentLayerView = hug3;
+ this._nicoSPlayer = hug4;
+
+ for(hug5 in hug1){
+ hug6 = new _LayerInfo();
+ hug6.layerID = hug5;
+ hug6.listNames = hug1[hug5];
+ hug6.container = hug2.getLayer(hug5);
+ hug6.zIndexManager = new ZIndexManager(hug6.container);
+
+ for each(hug7 in hug1[hug5]){
+ hug8 = new _CommentListInfo();
+ hug8.listName = hug7;
+ hug8.layerInfo = hug6;
+ this._listNameMapping[hug7] = hug8;
+ }
+ }
+ }
+
+ //variables/etc.
+ private var _commentLayerView:CommentLayerView; //slotID:0
+ private var _listNameMapping:Object; //slotID:0
+ private var _nicoSPlayer:INicoSPlayer; //slotID:0
+ private var _isP4Mode:Boolean = false; //slotID:0
+
+ public function setP4Mode():void
+ { //MethodID:2673, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isP4Mode = true;
+ }
+
+ public function get isP4Mode():Boolean
+ { //MethodID:2674, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isP4Mode;
+ }
+
+ private function _create_ViewEntry(hug1:_CommentInfo):ViewEntry
+ { //MethodID:2675, LocalCount= 11 , MaxScope= 1, MaxStack= 7, CodeLength= 264
+ var hug10:Object = null;
+ var hug2:IComment = hug1.comment;
+ var hug3:String = hug2.command.posY;
+ var hug4:Number = (((hug3 == CommandConstants.PLACE_TOP) || (hug3 == CommandConstants.PLACE_BOTTOM)) ? CommentViewConstants.COMMENT_SHOW_AHEAD_POSY : CommentViewConstants.COMMENT_SHOW_AHEAD);
+ var hug5:Number = (hug2.vpos - hug4);
+ var hug6:Number = (CommentViewConstants.COMMENT_SHOW_EXPIRE + hug4);
+
+ if(hug2.isOwner){
+ hug10 = new RegExp("(?:^|[\s ])@(\d+)(?:$|[\s ])").exec(hug2.command.command);
+
+ if(hug10) hug6 = ((Number(hug10[1]) * 1000) + hug4);
+ }
+
+ var hug7:Class = (hug2.command.hasButton ? _ClickableCommentProvider : _CommentTextFieldProvider);
+ var hug8:_DOProviderTemplate = new hug7(this);
+ var hug9:ViewEntry = new ViewEntry(hug5, hug6, hug3, hug8, ((hug2.resNo == 0) ? 0x7FFFFFFF : hug2.resNo), hug2.command.full);
+ hug8.commentInfo = hug1;
+ hug8.nicoSPlayer = this._nicoSPlayer;
+ hug8.ve = hug9;
+ return hug9;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentPost(hug1:IComment, hug2:String):EventResult
+ { //MethodID:2676, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 40
+ onCommentListUpdated([hug1], null, false, hug2);
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:2681, LocalCount= 6 , MaxScope= 2, MaxStack= 6, CodeLength= 333
+ internal var additionals:Array; //slotID:1
+ internal var removes:Array; //slotID:2
+ internal var clear:Boolean; //slotID:3
+ internal var listName:String; //slotID:4
+ internal var commentListInfo:_CommentListInfo; //slotID:5
+ internal var removes_:Array; //slotID:6
+ internal var additionals_:Array; //slotID:7
+
+ commentListInfo = null;
+ removes_ = null;
+ additionals_ = null;
+ additionals = hug1;
+ removes = hug2;
+ clear = hug3;
+ listName = hug4;
+ commentListInfo = this._listNameMapping[listName];
+ removes_ = [];
+
+ if(commentListInfo.comments){
+ if(clear){
+ removes_ = commentListInfo.comments.map(function(hug1:_CommentInfo, ...rest):ViewEntry{ //MethodID:2677, LocalCount= 3 , MaxScope= 0, MaxStack= 1, CodeLength= 5
+ return hug1.viewEntry;
+ });
+
+ commentListInfo.comments = [];
+ }else if(removes && (removes.length != 0)){
+ ArrayUtils.subtract(function(hug1:_CommentInfo, hug2:IComment):Number{ //MethodID:2678, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 34
+ var hug3:Number = (hug1.comment.resNo - hug2.resNo);
+
+ if(hug3 == 0) removes_.push(hug1.viewEntry);
+
+ return hug3;
+ }, commentListInfo.comments, removes);
+ }
+ }else{
+ commentListInfo.comments = [];
+ }
+
+ additionals_ = [];
+
+ if(additionals && (additionals.length != 0)){
+ commentListInfo.lastRes = Math.max(commentListInfo.lastRes, additionals[additionals.length - 1].resNo);
+ additionals = additionals.map(function(hug1:IComment, ...rest):_CommentInfo{ //MethodID:2679, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 46
+ var hug3:* = new _CommentInfo();
+ hug3.comment = hug1;
+ hug3.commentListInfo = commentListInfo;
+ hug3.viewEntry = _create_ViewEntry(hug3);
+
+ additionals_.push(hug3.viewEntry);
+
+ return hug3;
+ });
+ ArrayUtils.add(function(hug1:_CommentInfo, hug2:_CommentInfo):Number{ //MethodID:2680, LocalCount= 5 , MaxScope= 0, MaxStack= 2, CodeLength= 85
+ var hug4:CommentBuilder = null;
+ var hug3:Number = (hug1.comment.resNo - hug2.comment.resNo);
+
+ if(hug3 == 0){
+ removes_.push(hug1.viewEntry);
+
+ if(hug1.comment.justPosted){
+ hug4 = new CommentBuilder(hug2.comment);
+ hug4.justPosted = true;
+ hug2.comment = hug4.make();
+ }
+ }
+
+ return hug3;
+ }, commentListInfo.comments, additionals, true);
+ }
+
+ this._commentLayerView.update(commentListInfo.layerInfo.layerID, additionals_, removes_, false);
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+import flash.display.DisplayObject
+import flash.display.DisplayObjectContainer
+import flash.text.TextField
+import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+import jp.nicovideo.nicoplayer.models.comment.IComment
+import jp.nicovideo.nicoplayer.views.comment.CommentViewTransformer
+import jp.nicovideo.nicoplayer.views.comment.ViewEntry
+import jp.nicovideo.nicoplayer.views.comment.elements.ClickableComment
+import jp.nicovideo.nicoplayer.views.comment.elements.CommentTextField
+import jp.nicovideo.nicoscript.INicoSPlayer
+import jp.nicovideo.util.Assert
+import jp.nicovideo.util.ObjectPool
+import jp.nicovideo.util.ZIndexManager
+
+//■class(instance)_index:200
+//private
+class _CommentInfo extends Object
+{
+ //static constructor
+ public static function _CommentInfo$cinit()
+ { //MethodID:2682, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CommentInfo()
+ { //MethodID:2683, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var comment:IComment; //slotID:0
+ public var commentListInfo:_CommentListInfo; //slotID:0
+ public var viewEntry:ViewEntry; //slotID:0
+}
+
+//■class(instance)_index:201
+//private
+class _CommentListInfo extends Object
+{
+ //static constructor
+ public static function _CommentListInfo$cinit()
+ { //MethodID:2684, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CommentListInfo()
+ { //MethodID:2685, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.comments = [];
+
+ super();
+ }
+
+ //variables/etc.
+ public var listName:String; //slotID:0
+ public var layerInfo:_LayerInfo; //slotID:0
+ public var comments:Array; //slotID:0
+ public var lastRes:int = 0; //slotID:0
+}
+
+//■class(instance)_index:202
+//private
+class _LayerInfo extends Object
+{
+ //static constructor
+ public static function _LayerInfo$cinit()
+ { //MethodID:2686, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _LayerInfo()
+ { //MethodID:2689, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 38
+ super();
+
+ this.commentTextFieldPool = new ObjectPool(function():CommentTextField{ //MethodID:2687, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ var hug1:* = new CommentTextField();
+ hug1.displayObject.visible = false;
+ return hug1;
+ });
+ this.clickableCommentPool = new ObjectPool(function():*{ //MethodID:2688, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ var hug1:* = new ClickableComment();
+ hug1.displayObject.visible = false;
+ return hug1;
+ });
+ }
+
+ //variables/etc.
+ public var listNames:Array; //slotID:0
+ public var layerID:String; //slotID:0
+ public var container:DisplayObjectContainer; //slotID:0
+ public var zIndexManager:ZIndexManager; //slotID:0
+ public var commentTextFieldPool:ObjectPool; //slotID:0
+ public var clickableCommentPool:ObjectPool; //slotID:0
+}
+
+//■class(instance)_index:203
+//private
+class _DOProviderTemplate extends Object implements IDisplayObjectProvider
+{
+ //static constructor
+ public static function _DOProviderTemplate$cinit()
+ { //MethodID:2690, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _DOProviderTemplate(hug1:CommentViewTransformer)
+ { //MethodID:2691, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.transformer = hug1;
+ }
+
+ //variables/etc.
+ public var commentInfo:_CommentInfo; //slotID:0
+ public var ve:ViewEntry; //slotID:0
+ public var nicoSPlayer:INicoSPlayer; //slotID:0
+ public var transformer:CommentViewTransformer; //slotID:0
+
+ public function create():DisplayObject
+ { //MethodID:2692, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 158
+ var hug1:IComment = this.__comment;
+
+ if(!hug1 || hug1.command.hasContained("invisible")) return null;
+
+ this.ve.type = hug1.command.posY;
+ var hug2:DisplayObject = Object(this)._create_0(hug1);
+
+ if(this.transformer.isP4Mode && this.commentInfo && this.commentInfo.commentListInfo){
+ if(this.commentInfo.commentListInfo.listName == CommentConstants.CL_LOCAL){
+ hug2.alpha = 1;
+
+ if(hug2 is TextField) (hug2 as TextField).border = false;
+ }else{
+ hug2.alpha = 0.2;
+ }
+ }
+
+ return hug2;
+ }
+
+ public function release(hug1:DisplayObject):void
+ { //MethodID:2693, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ Object(this)._release_0(hug1);
+ this.layerInfo.zIndexManager.remove(hug1);
+ }
+
+ public function assignZ(hug1:DisplayObject, hug2:int):void
+ { //MethodID:2694, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 16
+ this.layerInfo.zIndexManager.setZIndex(hug1, hug2);
+ }
+
+ public function get layerInfo():_LayerInfo
+ { //MethodID:2695, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this.commentInfo.commentListInfo.layerInfo;
+ }
+
+ private function get __comment():IComment
+ { //MethodID:2696, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 44
+ if(!this.nicoSPlayer) return this.commentInfo.comment;
+
+ return this.nicoSPlayer.replaceComment(this.commentInfo.commentListInfo.listName, this.commentInfo.comment);
+ }
+}
+
+//■class(instance)_index:204
+//private
+class _CommentTextFieldProvider extends _DOProviderTemplate
+{
+ //static constructor
+ public static function _CommentTextFieldProvider$cinit()
+ { //MethodID:2697, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CommentTextFieldProvider(hug1:CommentViewTransformer)
+ { //MethodID:2698, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 7
+ super(hug1);
+ }
+
+ //variables/etc.
+ private var __commentTextField:CommentTextField; //slotID:0
+
+ public function _create_0(hug1:IComment):DisplayObject
+ { //MethodID:2699, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 92
+ Assert.assert(!this.__commentTextField);
+
+ this.__commentTextField = layerInfo.commentTextFieldPool.create();
+
+ this.__commentTextField.reset(hug1, ((commentInfo.commentListInfo.listName == CommentConstants.CL_OWNER) ? (-1) : commentInfo.commentListInfo.lastRes));
+
+ this.__commentTextField.displayObject.visible = true;
+ return this.__commentTextField.displayObject;
+ }
+
+ public function _release_0(hug1:DisplayObject):void
+ { //MethodID:2700, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 61
+ Assert.assert(this.__commentTextField && (this.__commentTextField.displayObject === hug1));
+ layerInfo.commentTextFieldPool.restore(this.__commentTextField);
+
+ this.__commentTextField.displayObject.visible = false;
+ this.__commentTextField = null;
+ }
+}
+
+//■class(instance)_index:205
+//private
+class _ClickableCommentProvider extends _DOProviderTemplate
+{
+ //static constructor
+ public static function _ClickableCommentProvider$cinit()
+ { //MethodID:2701, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ClickableCommentProvider(hug1:CommentViewTransformer)
+ { //MethodID:2702, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 7
+ super(hug1);
+ }
+
+ //variables/etc.
+ private var __clickableComment:ClickableComment; //slotID:0
+
+ public function _create_0(hug1:IComment):DisplayObject
+ { //MethodID:2703, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 56
+ Assert.assert(!this.__clickableComment);
+
+ this.__clickableComment = layerInfo.clickableCommentPool.create();
+
+ this.__clickableComment.reset(hug1);
+
+ this.__clickableComment.displayObject.visible = true;
+ return this.__clickableComment.displayObject;
+ }
+
+ public function _release_0(hug1:DisplayObject):void
+ { //MethodID:2704, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 61
+ Assert.assert(this.__clickableComment && (this.__clickableComment.displayObject === hug1));
+ layerInfo.clickableCommentPool.restore(this.__clickableComment);
+
+ this.__clickableComment.displayObject.visible = false;
+ this.__clickableComment = null;
+ }
+}
+
+//■script163■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:206
+ public interface ICommentRouter
+ {
+ //static constructor
+ public static function ICommentRouter$cinit()
+ { //MethodID:2706, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function post(hug1:IComment):void; //MethodID:2707, dispID:0
+
+ //constructor
+ public function ICommentRouter(); //MethodID:2708, dispID:0
+ }
+}
+
+//■script164■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.marquee.IMarqueePlayer
+ import jp.nicovideo.nicoplayer.hiroba.IHirobaPlayer
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.filter.ChannelReplacer
+ import jp.nicovideo.nicoplayer.models.filter.LockedComment
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoscript.NicoSClient
+ import jp.nicovideo.nicoscript.macro.parsers.IMacroParserResult
+ import jp.nicovideo.nicoscript.macro.parsers.MacroParser
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:207
+ public class CommentRouter extends Object implements ICommentRouter
+ {
+ //static constructor
+ public static function CommentRouter$cinit()
+ { //MethodID:2710, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 111
+ ERROR_POST_BUTTON_ONCE = "ERROR_POST_BUTTON_ONCE";
+ ERROR_POST_AT_COMMENT_UNDEFINED = "ERROR_POST_AT_COMMENT_UNDEFINED";
+ ERROR_POST_HIROBA = "ERROR_POST_HIROBA";
+ ERROR_POST_BUTTON_PREMIUM_ONLY = "ERROR_POST_BUTTON_PREMIUM_ONLY";
+ ERROR_POST_INITIALIZE = "ERROR_POST_INITIALIZE";
+ ERROR_POST_184 = "ERROR_POST_184";
+ ERROR_POST_SAME_COMMENT = "ERROR_POST_SAMECOMMENT";
+ ERROR_POST_BUTTON_ARGUMENTS = "ERROR_POST_BUTTON_ARGUMENTS";
+ ERROR_POST_BUTTON_DISABLED = "ERROR_POST_BUTTON_DISABLED";
+ ERROR_POST_CHANNEL_FILTER = "ERROR_POST_CHANNEL_FILTER";
+ ERROR_POST_COMMAND_DISABLED = "ERROR_POST_COMMAND_DISABLED";
+ ERROR_POST_AT_COMMENT_DISABLED = "ERROR_POST_AT_COMMENT_DISABLED";
+ }
+
+ //static variables/etc.
+ public static const ERROR_POST_BUTTON_ONCE:String = "ERROR_POST_BUTTON_ONCE";//slotID:1
+ public static const ERROR_POST_AT_COMMENT_UNDEFINED:String = "ERROR_POST_AT_COMMENT_UNDEFINED";//slotID:2
+ public static const ERROR_POST_HIROBA:String = "ERROR_POST_HIROBA";//slotID:3
+ public static const ERROR_POST_BUTTON_PREMIUM_ONLY:String = "ERROR_POST_BUTTON_PREMIUM_ONLY";//slotID:4
+ public static const ERROR_POST_INITIALIZE:String = "ERROR_POST_INITIALIZE";//slotID:5
+ public static const ERROR_POST_184:String = "ERROR_POST_184"; //slotID:6
+ public static const ERROR_POST_SAME_COMMENT:String = "ERROR_POST_SAMECOMMENT";//slotID:7
+ public static const ERROR_POST_BUTTON_ARGUMENTS:String = "ERROR_POST_BUTTON_ARGUMENTS";//slotID:8
+ public static const ERROR_POST_BUTTON_DISABLED:String = "ERROR_POST_BUTTON_DISABLED";//slotID:9
+ public static const ERROR_POST_CHANNEL_FILTER:String = "ERROR_POST_CHANNEL_FILTER";//slotID:10
+ public static const ERROR_POST_COMMAND_DISABLED:String = "ERROR_POST_COMMAND_DISABLED";//slotID:11
+ public static const ERROR_POST_AT_COMMENT_DISABLED:String = "ERROR_POST_AT_COMMENT_DISABLED";//slotID:12
+
+ //constructor
+ public function CommentRouter(hug1:NicoFlashVars, hug2:IPlayerConfig, hug3:LockedComment, hug4:NicoSClient=null, hug5:Boolean=false, hug6:ChannelReplacer=null)
+ { //MethodID:2711, LocalCount= 7 , MaxScope= 1, MaxStack= 2, CodeLength= 63
+ this.onCommentPostErorr = new Functions();
+ this.onCommentHavingMacro = new Functions();
+ this._commentLists = {};
+
+ super();
+
+ this._flashvars = hug1;
+ this._playerConfig = hug2;
+ this._nicosClient = hug4;
+ this._isPremium = hug5;
+ this._channelReplacer = hug6;
+ this._lockedComment = hug3;
+ }
+
+ //variables/etc.
+ public var onCommentPostErorr:Functions; //slotID:0
+ public var onCommentHavingMacro:Functions; //slotID:0
+ private var _commentLists:Object; //slotID:0
+ private var _flashvars:NicoFlashVars; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _nicosClient:NicoSClient; //slotID:0
+ private var _hirobaPlayer:IHirobaPlayer; //slotID:0
+ private var _marqueePlayer:IMarqueePlayer; //slotID:0
+ private var _isHirobaMode:Boolean = false; //slotID:0
+ private var _lastMessage:String; //slotID:0
+ private var _lastHirobaMessage:String; //slotID:0
+ private var _isPremium:Boolean; //slotID:0
+ private const _buttonPostLimit:Number = 1.0; //slotID:0
+ private var _buttonCount:uint = 0; //slotID:0
+ private var _channelReplacer:ChannelReplacer; //slotID:0
+ private var _lockedComment:LockedComment; //slotID:0
+
+ public function add(hug1:String, hug2:ICommentList):void
+ { //MethodID:2712, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 29
+ Assert.assert(!this._commentLists.hasOwnProperty(hug1));
+
+ this._commentLists[hug1] = hug2;
+ }
+
+ public function addHiroba(hug1:IHirobaPlayer):void
+ { //MethodID:2713, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hirobaPlayer = hug1;
+ }
+
+ public function addMarqueePlayer(hug1:IMarqueePlayer):void
+ { //MethodID:2714, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._marqueePlayer = hug1;
+ }
+
+ public function post(hug1:IComment):void
+ { //MethodID:2720, LocalCount= 4 , MaxScope= 5, MaxStack= 3, CodeLength= 1244
+ internal var comment:IComment; //slotID:1
+ internal var listName:String; //slotID:2
+ internal var usable184:Boolean; //slotID:3
+ internal var sameCommentCheckRequired:Boolean; //slotID:4
+ internal var hasButton:Boolean; //slotID:5
+ internal var macroParserResult:IMacroParserResult; //slotID:6
+ internal var commentList:ICommentList; //slotID:7
+ internal var builder1:CommentBuilder; //slotID:8
+ internal var onPostButtonArgumentsError:Function; //slotID:9
+ internal var onPostSameComment:Function; //slotID:10
+ internal var cmd:ICommand; //slotID:11
+ internal var builder0:CommentBuilder; //slotID:12
+ internal var flag:Boolean; //slotID:13
+ internal var use184:Boolean; //slotID:14
+
+ hasButton = false;
+ macroParserResult = null;
+ cmd = null;
+ builder0 = null;
+ flag = false;
+ use184 = false;
+ comment = hug1;
+ onPostButtonArgumentsError = function():void{ //MethodID:2715, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ onCommentPostErorr.apply(ERROR_POST_BUTTON_ARGUMENTS);
+ };
+
+ onPostSameComment = function():void{ //MethodID:2716, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ onCommentPostErorr.apply(ERROR_POST_SAME_COMMENT);
+ };
+
+ listName = CommentConstants.CL_MAIN;
+ usable184 = true;
+ sameCommentCheckRequired = true;
+
+ if(this._flashvars.watchFlashVars && this._flashvars.watchFlashVars.isOwnerThreadEditMode){
+ listName = CommentConstants.CL_OWNER;
+ usable184 = false;
+ sameCommentCheckRequired = false;
+ }else if(!this._flashvars.isCommunityThread && this._nicosClient){
+ listName = this._nicosClient.player.resolveListName(comment);
+ }
+
+ sameCommentCheckRequired = (sameCommentCheckRequired && ((listName != CommentConstants.CL_NICOS) && (listName != CommentConstants.CL_LOCAL)));
+ hasButton = false;
+
+ if(listName != CommentConstants.CL_OWNER){
+ try{
+ macroParserResult = MacroParser.parse(comment.message);
+
+ if(macroParserResult.macroName){
+ if(this._flashvars.isNoAtComment){
+ this.onCommentPostErorr.apply(ERROR_POST_AT_COMMENT_DISABLED);
+
+ return;
+ }
+
+ if(macroParserResult.macroName == "ボタン"){
+ if(this._buttonPostLimit <= this._buttonCount){
+ this.onCommentPostErorr.apply(ERROR_POST_BUTTON_ONCE);
+
+ return;
+ }else if(this._flashvars.thumbFlashVars){
+ this.onCommentPostErorr.apply(ERROR_POST_BUTTON_DISABLED);
+
+ return;
+ }else{
+ hasButton = true;
+ }
+ }else if(macroParserResult.macroName == "ピザ"){
+ this.onCommentHavingMacro.apply(macroParserResult);
+ }else{
+ this.onCommentPostErorr.apply(ERROR_POST_AT_COMMENT_UNDEFINED);
+
+ return;
+ }
+ }
+ }
+ catch(error:*){
+ }
+ }
+
+ if(this._flashvars.isNoCommand){
+ cmd = comment.command;
+
+ if((cmd.color != "") || (cmd.posY != "") || (cmd.size != "")){
+ this.onCommentPostErorr.apply(ERROR_POST_COMMAND_DISABLED);
+
+ return;
+ }
+ }
+
+ if(this._channelReplacer && !this._channelReplacer.isPostable(comment.message)){
+ this.onCommentPostErorr.apply(ERROR_POST_CHANNEL_FILTER);
+
+ return;
+ }
+
+ if(this._isHirobaMode){
+ if(this._lastHirobaMessage == comment.message){
+ onPostSameComment();
+
+ return;
+ }
+
+ if(hasButton){
+ this.onCommentPostErorr.apply(ERROR_POST_HIROBA);
+
+ return;
+ }
+
+ builder0 = new CommentBuilder(comment);
+ builder0.vpos = TimeUtils.now().time;
+ builder0.anonymity = this._playerConfig.use184;
+ builder0.command = comment.command.duplicate(function(hug1:ICommand):void{ //MethodID:2717, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 11
+ hug1.anonymity = _playerConfig.use184;
+ });
+ this._hirobaPlayer.post(builder0.make());
+
+ this._lastHirobaMessage = comment.message;
+ return;
+ }
+
+ if(hasButton && (macroParserResult.argLength == 0)){
+ onPostButtonArgumentsError();
+
+ return;
+ }
+
+ if(sameCommentCheckRequired && (this._lastMessage == comment.message)){
+ onPostSameComment();
+
+ return;
+ }
+
+ if(this._flashvars.isCommunityThread && (listName == CommentConstants.CL_MAIN)) listName = CommentConstants.CL_PRIVATE;
+
+ if(hasButton && !this._isPremium){
+ this.onCommentPostErorr.apply(ERROR_POST_BUTTON_PREMIUM_ONLY);
+
+ return;
+ }
+
+ commentList = this._commentLists[listName];
+
+ if(!commentList){
+ this.onCommentPostErorr.apply(ERROR_POST_INITIALIZE);
+
+ return;
+ }
+
+ if(listName == CommentConstants.CL_PRIVATE){
+ flag = false;
+
+ comment.command.forEachCommand(function(hug1:String):void{ //MethodID:2718, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ if(hug1 == CommandConstants.ANONYMITY) flag = true;
+ });
+
+ if(flag){
+ this.onCommentPostErorr.apply(ERROR_POST_184);
+
+ return;
+ }
+ }
+
+ builder1 = new CommentBuilder(comment);
+
+ if(((listName != CommentConstants.CL_PRIVATE) && usable184) || hasButton){
+ use184 = ((listName != CommentConstants.CL_PRIVATE) && usable184);
+
+ if(use184 && this._playerConfig.use184) builder1.anonymity = true;
+
+ builder1.command = comment.command.duplicate(function(hug1:ICommand):void{ //MethodID:2719, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 58
+ if(use184 && _playerConfig.use184) hug1.anonymity = true;
+
+ if(hasButton){
+ hug1.hasButton = true;
+ _buttonCount++;
+ }
+ });
+
+ if(hasButton && macroParserResult) builder1.message = macroParserResult.arg(0);
+ }
+
+ builder1.commentList = commentList;
+ comment = builder1.make();
+ this._lastMessage = comment.message;
+
+ if(((commentList.name == CommentConstants.CL_LOCAL) || (commentList.name != CommentConstants.CL_OWNER)) && this._flashvars.watchFlashVars.isPostLocked){
+ this._lockedComment.post(comment);
+
+ return;
+ }
+
+ commentList.post(comment);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerVisibleUpdated(hug1:Boolean):EventResult
+ { //MethodID:2721, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._isHirobaMode = hug1;
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onHirobaPlayerError():EventResult
+ { //MethodID:2722, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._hirobaPlayer = null;
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script165■
+
+package jp.nicovideo.nicoplayer.views{
+
+ //■class(instance)_index:208
+ public interface IJumpMessageLayer
+ {
+ //static constructor
+ public static function IJumpMessageLayer$cinit()
+ { //MethodID:2724, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function showMessage(hug1:Function, hug2:String, hug3:int):void; //MethodID:2725, dispID:0
+
+ //constructor
+ public function IJumpMessageLayer(); //MethodID:2726, dispID:0
+ }
+}
+
+//■script166■
+
+package jp.nicovideo.nicoplayer.views{
+
+ import flash.display.DisplayObjectContainer
+ import flash.display.Graphics
+ import flash.display.Sprite
+ import flash.text.TextField
+ import flash.text.TextFieldAutoSize
+ import flash.text.TextFormat
+ import flash.utils.clearTimeout
+ import flash.utils.setTimeout
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+ //■class(instance)_index:209
+ public class JumpMessageLayer extends Object implements IJumpMessageLayer
+ {
+ //static constructor
+ public static function JumpMessageLayer$cinit()
+ { //MethodID:2728, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function JumpMessageLayer(hug1:DisplayObjectContainer)
+ { //MethodID:2729, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.__container = hug1;
+ }
+
+ //variables/etc.
+ private var __container:DisplayObjectContainer; //slotID:0
+ private var __panel:Sprite; //slotID:0
+ private var __tf:TextField; //slotID:0
+ private var __timerID:Number; //slotID:0
+
+ public function showMessage(hug1:Function, hug2:String, hug3:int):void
+ { //MethodID:2731, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 76
+ internal var f:Function; //slotID:1
+ internal var msg:String; //slotID:2
+ internal var wait:int; //slotID:3
+
+ f = hug1;
+ msg = hug2;
+ wait = hug3;
+
+ if(!isNaN(this.__timerID)) clearTimeout(this.__timerID);
+ this.__showMessage_0(msg);
+
+ this.__timerID = setTimeout(function():void{ //MethodID:2730, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 26
+ __timerID = NaN;
+
+ __showMessage_0(null);
+ f();
+ }, wait);
+ }
+
+ private function __showMessage_0(hug1:String):void
+ { //MethodID:2732, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 99
+ if(hug1 == null){
+ if(this.__panel && this.__container.contains(this.__panel)) this.__container.removeChild(this.__panel);
+
+ return;
+ }
+
+ if(!this.__panel) this.__setup();
+
+ this.__tf.text = hug1;
+
+ if(!this.__container.contains(this.__panel)) this.__container.addChild(this.__panel);
+ }
+
+ private function __setup():void
+ { //MethodID:2733, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 170
+ this.__tf = new TextField();
+ this.__tf.defaultTextFormat = new TextFormat(null, 30, 0);
+ this.__tf.autoSize = TextFieldAutoSize.CENTER;
+ this.__tf.selectable = false;
+ this.__tf.x = ((this.__container.width - this.__tf.width) / 2);
+ this.__tf.y = ((this.__container.height - this.__tf.height) / 2);
+ this.__panel = new Sprite();
+ var hug1:Graphics = this.__panel.graphics;
+
+ hug1.beginFill(0xFFFFFF);
+ hug1.drawRect(0, 0, this.__container.width, this.__container.height);
+ hug1.endFill();
+ this.__panel.addChild(this.__tf);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onSystemMessageJumpMessageSended(hug1:Function, hug2:String, hug3:int):EventResult
+ { //MethodID:2734, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 16
+ this.showMessage(hug1, hug2, hug3);
+
+ return EventResult.THROUGH;
+ }
+ }
+}
+
+//■script167■
+
+package jp.nicovideo.nicoplayer.videoender{
+
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:211
+ public class VideoenderTesterConfig extends Object implements IVideoenderTesterConfig
+ {
+ //static constructor
+ public static function VideoenderTesterConfig$cinit()
+ { //MethodID:2738, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoenderTesterConfig(hug1:Boolean)
+ { //MethodID:2739, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 34
+ super();
+
+ this._isTargetUser = hug1;
+ this._localStorage = CrossSharedObject.getStorage((_SOSetting).NAME, (_SOSetting).PATH);
+ }
+
+ //variables/etc.
+ private var _isTargetUser:Boolean; //slotID:0
+ private var _localStorage:LocalStorage; //slotID:0
+
+ public function get isTestable():Boolean
+ { //MethodID:2740, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isTargetUser;
+ }
+
+ public function get isTester():Boolean
+ { //MethodID:2741, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ return (this._isTargetUser && !Boolean(this._localStorage.data[(_SOSetting).KEY_IS_NOT_TESTER]));
+ }
+
+ public function set isTester(hug1:Boolean):void
+ { //MethodID:2742, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 45
+ if(hug1){
+ this._localStorage.clear();
+ }else{
+ this._localStorage.data[(_SOSetting).KEY_IS_NOT_TESTER] = true;
+
+ this._localStorage.flush();
+ }
+ }
+ }
+}
+
+
+//■class(instance)_index:210
+//private
+class _SOSetting extends Object
+{
+ //static constructor
+ public static function _SOSetting$cinit()
+ { //MethodID:2736, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ NAME = "jp.nicovideo.nicoplayer.videoender.VideoenderTester";
+ PATH = "/";
+ KEY_IS_NOT_TESTER = "isNotTester";
+ }
+
+ //static variables/etc.
+ public static const NAME:String = "jp.nicovideo.nicoplayer.videoender.VideoenderTester";//slotID:1
+ public static const PATH:String = "/"; //slotID:2
+ public static const KEY_IS_NOT_TESTER:String = "isNotTester"; //slotID:3
+
+ //constructor
+ public function _SOSetting()
+ { //MethodID:2737, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script168■
+
+package jp.nicovideo.util{
+
+ import flash.display.Loader
+ import flash.display.LoaderInfo
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.NetStatusEvent
+ import flash.events.SecurityErrorEvent
+ import flash.net.SharedObject
+ import flash.net.SharedObjectFlushStatus
+ import flash.net.URLRequest
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:212
+ public class CrossSharedObject extends Object
+ {
+ //static constructor
+ public static function CrossSharedObject$cinit()
+ { //MethodID:2744, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ _inited = false;
+ }
+
+ //static variables/etc.
+ private static var _sharedMC:*; //slotID:1
+ private static var _inited:Boolean = false; //slotID:2
+ private static var _isPersistable:Boolean; //slotID:3
+
+ public static function init(hug1:String, hug2:Function):void
+ { //dispID:3, MethodID:2747, LocalCount= 5 , MaxScope= 5, MaxStack= 3, CodeLength= 175
+ internal var url:String; //slotID:1
+ internal var func:Function; //slotID:2
+ internal var loader:Loader; //slotID:3
+ internal var loaderInfo:LoaderInfo; //slotID:4
+ internal var error_handler:Function; //slotID:5
+
+ error_handler = null;
+ url = hug1;
+ func = hug2;
+ error_handler = function(hug1:Event):void{ //MethodID:2745, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ func(false);
+ };
+
+ if(_inited){
+ func(true);
+
+ return;
+ }
+
+ loader = new Loader();
+ loaderInfo = loader.contentLoaderInfo;
+
+ loaderInfo.addEventListener(Event.INIT, function(hug1:Event):void{ //MethodID:2746, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 43
+ _sharedMC = hug1.target.content;
+ _inited = true;
+ _isPersistable = isAvailable();
+
+ func(true);
+ });
+ loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, error_handler);
+ loaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, error_handler);
+
+ try{
+ loader.load(new URLRequest(url));
+ }
+ catch(error:Error){
+ func(false);
+ }
+ }
+
+ private static function isAvailable():Boolean
+ { //dispID:4, MethodID:2749, LocalCount= 3 , MaxScope= 5, MaxStack= 3, CodeLength= 135
+ internal var so:SharedObject; //slotID:1
+ internal var ret:String; //slotID:2
+
+ so = null;
+ ret = null;
+
+ try{
+ so = _sharedMC.getLocal("jp.nicovideo.nicoplayer.NicoPlayer.initializePlayerConfig");
+
+ so.addEventListener(NetStatusEvent.NET_STATUS, function(hug1:*):void{ //MethodID:2748, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+
+ ret = so.flush(20480);
+
+ if(ret != SharedObjectFlushStatus.FLUSHED) throw new Error("");
+ so.clear();
+ so.close();
+ }
+ catch(error:Error){
+ return false;
+ }
+
+ return true;
+ }
+
+ public static function terminate():void
+ { //dispID:5, MethodID:2750, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ _sharedMC = null;
+ _inited = false;
+ }
+
+ public static function getSharedObject(hug1:String, hug2:String=null, hug3:Boolean=false):SharedObject
+ { //dispID:6, MethodID:2751, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 32
+ if(_sharedMC == null) throw new Error("CrossSharedObjectが初期化されていません。");
+
+ return _sharedMC.getLocal(hug1, hug2, hug3);
+ }
+
+ public static function getStorage(hug1:String, hug2:String=null, hug3:Boolean=false):LocalStorage
+ { //dispID:7, MethodID:2752, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 55
+ if(_sharedMC == null) throw new Error("CrossSharedObjectが初期化されていません。");
+
+ return new LocalStorage(_isPersistable ? _sharedMC.getLocal(hug1, hug2, hug3) : null);
+ }
+
+ public static function getStorageNative(hug1:String, hug2:String=null, hug3:Boolean=false):LocalStorage
+ { //dispID:8, MethodID:2753, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 55
+ if(_sharedMC == null) throw new Error("CrossSharedObjectが初期化されていません。");
+
+ return new LocalStorage(_isPersistable ? SharedObject.getLocal(hug1, hug2, hug3) : null);
+ }
+
+ public static function flush():String
+ { //dispID:9, MethodID:2754, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ if(_sharedMC == null) throw new Error("CrossSharedObjectが初期化されていません。");
+
+ return (_isPersistable ? _sharedMC.flush() : SharedObjectFlushStatus.FLUSHED);
+ }
+
+ public static function get isPersistable():Boolean
+ { //dispID:10, MethodID:2755, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ return _isPersistable;
+ }
+
+ //constructor
+ public function CrossSharedObject()
+ { //MethodID:2756, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script169■
+
+package jp.nicovideo.util.loka{
+
+
+ public function __MSG__(hug1:String, ...rest):String
+ { //dispID:1, MethodID:2758, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ return Loka.instance.getMessage(hug1, rest);
+ }
+
+}
+
+//■script170■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:213
+ public interface IMyList
+ {
+ //static constructor
+ public static function IMyList$cinit()
+ { //MethodID:2760, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function addDefaultList(hug1:Function, hug2:String, hug3:String):void; //MethodID:2761, dispID:0
+
+ function checkMyListLog():Boolean; //MethodID:2762, dispID:0
+
+ //constructor
+ public function IMyList(); //MethodID:2763, dispID:0
+ }
+}
+
+//■script171■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.nicoplayer.config.NicoConfig
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:214
+ public class MyList extends Object implements IMyList
+ {
+ //static constructor
+ public static function MyList$cinit()
+ { //MethodID:2765, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 24
+ LOG_TERM = ((3 * 24 * 60 * 60) * 1000);
+ }
+
+ //static variables/etc.
+ private static const LOG_TERM:Number = 0xF731400; //slotID:1
+
+ //constructor
+ public function MyList(hug1:NicoConfig, hug2:String)
+ { //MethodID:2766, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 30
+ this._addMyListLogSO = CrossSharedObject.getStorage("jp.nicovideo.nicoplayer.models.MyList.addMyListLog");
+
+ super();
+
+ this._threadID = hug2;
+ this._nicoConfig = hug1;
+ }
+
+ //variables/etc.
+ private var _addMyListLogSO:LocalStorage; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _nicoConfig:NicoConfig; //slotID:0
+
+ public function addDefaultList(hug1:Function, hug2:String, hug3:String):void
+ { //MethodID:2768, LocalCount= 5 , MaxScope= 2, MaxStack= 9, CodeLength= 81
+ internal var callback:Function; //slotID:1
+ internal var csrfToken:String; //slotID:2
+ internal var memo:String = ""; //slotID:3
+ internal var param:Object; //slotID:4
+
+ callback = hug1;
+ csrfToken = hug2;
+ memo = hug3;
+ param = {item_type:0, item_id:this._threadID, description:memo, token:csrfToken};
+
+ HTTPUtils.loadJSON(function(hug1:Object):void{ //MethodID:2767, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 62
+ if(checkMyListLog()) callback(false, null);
+
+ _addMyListLogSO.data[_threadID] = TimeUtils.now().getTime();
+
+ _addMyListLogSO.flush();
+ callback(true, hug1);
+ }, this._nicoConfig.MYLIST_ADD_API_URL, param, "POST");
+ }
+
+ public function checkMyListLog():Boolean
+ { //MethodID:2769, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 102
+ var hug2:String = null;
+ var hug1:Number = TimeUtils.now().getTime();
+
+ for(hug2 in this._addMyListLogSO.data){
+ if(hug1 > (this._addMyListLogSO.data[hug2] + LOG_TERM)){
+ delete this._addMyListLogSO.data[hug2];
+ }else if(hug2 == this._threadID){
+ return true;
+ }
+ }
+
+ return false;
+ }
+ }
+}
+
+//■script172■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:215
+ public interface ICommentStorageHandle
+ {
+ //static constructor
+ public static function ICommentStorageHandle$cinit()
+ { //MethodID:2771, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get lastRes():int; //MethodID:2772, dispID:0
+
+ function get isCommunityThread():Boolean; //MethodID:2773, dispID:0
+
+ function set isCommunityThread(hug1:Boolean):void; //MethodID:2774, dispID:0
+
+ function get autoSyncEnabled():Boolean; //MethodID:2775, dispID:0
+
+ function set autoSyncEnabled(hug1:Boolean):void; //MethodID:2776, dispID:0
+
+ function get onComments():Function; //MethodID:2777, dispID:0
+
+ function set onComments(hug1:Function):void; //MethodID:2778, dispID:0
+
+ function get onNumberOfClick():Function; //MethodID:2779, dispID:0
+
+ function set onNumberOfClick(hug1:Function):void; //MethodID:2780, dispID:0
+
+ function post(hug1:Function, hug2:IComment, hug3:Boolean):void; //MethodID:2781, dispID:0
+
+ function getThread(hug1:Function, hug2:int, hug3:Boolean=false):void; //MethodID:2782, dispID:0
+
+ function deleteComments(hug1:Function, hug2:Array, hug3:Boolean):void; //MethodID:2783, dispID:0
+
+ function getOwnerThread(hug1:Function, hug2:uint):void; //MethodID:2784, dispID:0
+
+ function updateOwnerThread(hug1:Function, hug2:Array, hug3:Boolean):void; //MethodID:2785, dispID:0
+
+ function waybackOwnerThread(hug1:Function, hug2:int):void; //MethodID:2786, dispID:0
+
+ function waybackThread(hug1:Function, hug2:int, hug3:uint, hug4:Boolean=false):void;//MethodID:2787, dispID:0
+
+ function click(hug1:Function, hug2:int):void; //MethodID:2788, dispID:0
+
+ function enterThread(hug1:Function, hug2:int, hug3:Boolean=false):void; //MethodID:2789, dispID:0
+
+ function leaveThread(hug1:Function):void; //MethodID:2790, dispID:0
+
+ //constructor
+ public function ICommentStorageHandle(); //MethodID:2791, dispID:0
+ }
+}
+
+//■script173■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.api.IKeygen
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.storages.commentStorage.LockDesc
+ import jp.nicovideo.nicoplayer.storages.commentStorage.Request
+ import jp.nicovideo.nicoplayer.storages.commentStorage.RequestDispatcher
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.Clicker
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.CommentDeleter
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.CommentPoster
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.SimpleTransactor
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.ThreadLoader
+ import jp.nicovideo.nicoplayer.storages.commentStorage.transactor.ThreadUpdater
+ import jp.nicovideo.nicoplayer.storages.transmitter.TransmitterType
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.ObjectUtils
+
+ //■class(instance)_index:219
+ public class CommentStorage extends Object implements ICommentStorage
+ {
+ //static constructor
+ public static function CommentStorage$cinit()
+ { //MethodID:2801, LocalCount= 1 , MaxScope= 1, MaxStack= 11, CodeLength= 49
+ __SERVER_RESPONSEs = ["GetThreadResult", "ViewCounter", "Chat", "PostChatResult", "NumberOfClick", "ClickResult", "DeleteCommentsResult", "UpdateThreadResult", "Leaf", "Close"];
+ __LEAF_RETRY = 20;
+ }
+
+ //static variables/etc.
+ private static const __SERVER_RESPONSEs:Array; //slotID:1
+ private static const __LEAF_RETRY:int = 20; //slotID:2
+
+ //constructor
+ public function CommentStorage(hug1:MessageServerClient, hug2:IKeygen, hug3:String, hug4:Boolean, hug5:NicoFlashVars, hug6:IGetFLV):void
+ { //MethodID:2802, LocalCount= 7 , MaxScope= 1, MaxStack= 3, CodeLength= 73
+ this.__threads = {};
+ this.__postWaitQueue = [];
+
+ super();
+
+ this.__client = hug1;
+ this.__keygen = hug2;
+ this.__userID = hug3;
+ this.__isPremium = hug4;
+ this.__flashvars = hug5;
+ this.__getFlv = hug6;
+ this.__requestDispatcher = new RequestDispatcher(true);
+
+ this.__registerResHandlers();
+ this.__registerPremitiveRequests();
+ }
+
+ //variables/etc.
+ public var __client:MessageServerClient; //slotID:0
+ private var __flashvars:NicoFlashVars; //slotID:0
+ private var __getFlv:IGetFLV; //slotID:0
+ private var __keygen:IKeygen; //slotID:0
+ private var __userID:String; //slotID:0
+ public var __isPremium:Boolean; //slotID:0
+ private var __threads:Object; //slotID:0
+ private var __noCompress:Boolean = false; //slotID:0
+ private var __requestDispatcher:RequestDispatcher; //slotID:0
+ private var __onServerTimeUpdated:Function; //slotID:0
+ private var __onViewCounterUpdated:Function; //slotID:0
+ private var __forceLeafOff:Boolean = false; //slotID:0
+ private var __leafNum:int = 100; //slotID:0
+ private var __isErrorOnNoCompress:Boolean = false; //slotID:0
+ private var __postWaitQueue:Array; //slotID:0
+ private var __postLocked:Boolean = false; //slotID:0
+
+ public function get onServerTimeUpdated():Function
+ { //MethodID:2803, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onServerTimeUpdated;
+ }
+
+ public function set onServerTimeUpdated(hug1:Function):void
+ { //MethodID:2804, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__onServerTimeUpdated = hug1;
+ }
+
+ public function get onViewCounterUpdated():Function
+ { //MethodID:2805, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onViewCounterUpdated;
+ }
+
+ public function set onViewCounterUpdated(hug1:Function):void
+ { //MethodID:2806, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__onViewCounterUpdated = hug1;
+ }
+
+ public function get forceLeafOff():Boolean
+ { //MethodID:2807, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__forceLeafOff;
+ }
+
+ public function set forceLeafOff(hug1:Boolean):void
+ { //MethodID:2808, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__forceLeafOff = hug1;
+ }
+
+ public function get leafNum():int
+ { //MethodID:2809, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__leafNum;
+ }
+
+ public function set leafNum(hug1:int):void
+ { //MethodID:2810, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__leafNum = hug1;
+ }
+
+ private function __registerResHandlers():void
+ { //MethodID:2816, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 100
+ internal var name:String; //slotID:1
+ internal var reconnect:Function; //slotID:2
+ internal var connectionLostListener:Function; //slotID:3
+
+ name = null;
+ reconnect = null;
+ connectionLostListener = null;
+ reconnect = function(hug1:String):void{ //MethodID:2812, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ internal var hint:String; //slotID:1
+
+ hint = hug1;
+
+ __client.connectionLost.remove(reconnect);
+ connectionLostListener(hint);
+ __client.connectionLost.add(connectionLostListener);
+ ObjectUtils.callLater(__client.connect, function(hug1:Boolean):void{ //MethodID:2811, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+ };
+
+ connectionLostListener = function(hug1:String):void{ //MethodID:2813, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ __requestDispatcher.spoil();
+ };
+
+ for each(name in __SERVER_RESPONSEs){
+ function():void{ //MethodID:2815, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 39
+ internal var name_:*; //slotID:1
+
+ name_ = undefined;
+ name_ = name;
+
+ __client["onCMsg" + name].add(function(... rest):void{ //MethodID:2814, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 17
+ if(__requestDispatcher.receive(name_, rest)) return;
+ });
+ }.call(null);
+ }
+
+ this.__client.connectionLost.add(reconnect);
+ }
+
+ private function __registerPremitiveRequests():void
+ { //MethodID:2820, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 108
+ internal var trans:SimpleTransactor; //slotID:1
+ internal var req:Request; //slotID:2
+
+ trans = null;
+ req = null;
+ trans = new SimpleTransactor(function(hug1:int, hug2:String, hug3:int):void{ //MethodID:2817, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ if(__onViewCounterUpdated is Function) __onViewCounterUpdated(hug1, hug3);
+ });
+
+ req = new Request([new LockDesc("ViewCounter")], "master");
+ req.parent = this;
+ req.transactor = trans;
+ req.indomitable = true;
+
+ this.__requestDispatcher.addPassiveRequest(req);
+ }
+
+ public function connect():void
+ { //MethodID:2821, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function disconnect():void
+ { //MethodID:2822, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function attach(hug1:String):ICommentStorageHandle
+ { //MethodID:2823, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 80
+ var hug3:* = new _Thread(hug1);
+ this.__threads[hug1] = hug3;
+ var hug2:_Thread = hug3;
+
+ if(this.__threads[hug1] || this.__client.connectionType == TransmitterType.HTTP) return new _Handle4HTTP(this, hug2);
+
+ return new _Handle(this, hug2);
+ }
+
+ private function __shiftPostWaitQueue():void
+ { //MethodID:2824, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 42
+ if(this.__postLocked = (this.__postWaitQueue.length != 0)) ObjectUtils.callLater(this.__postWaitQueue.shift());
+ }
+
+ public function _post(hug1:_Handle, hug2:Function, hug3:IComment, hug4:Boolean):void
+ { //MethodID:2833, LocalCount= 6 , MaxScope= 2, MaxStack= 2, CodeLength= 62
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var comment:IComment; //slotID:3
+ internal var yugi:Boolean; //slotID:4
+ internal var calc_page:Function; //slotID:5
+
+ h = hug1;
+ f = hug2;
+ comment = hug3;
+ yugi = hug4;
+ calc_page = function(hug1:int):int{ //MethodID:2825, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 15
+ return Math.floor((hug1 + 1) / 100);
+ };
+
+ this.__postWaitQueue.push(function():void{ //MethodID:2832, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 224
+ internal var retry:int; //slotID:1
+ internal var postkeyObj:_PostKey; //slotID:2
+ internal var page:int; //slotID:3
+ internal var get_postkey:Function; //slotID:4
+ internal var do_post:Function; //slotID:5
+
+ postkeyObj = null;
+ page = 0;
+ get_postkey = function():void{ //MethodID:2827, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 30
+ __keygen.getPostKey(function(hug1:Boolean, hug2:String, hug3:Boolean):void{ //MethodID:2826, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 59
+ if(!hug1){
+ f(new CommentStorageError(0, "Failed to get PostKey.", true), 0);
+
+ return;
+ }
+
+ postkeyObj.value = hug2;
+ postkeyObj.yugi = hug3;
+ postkeyObj.page = page;
+
+ do_post();
+ }, h._t.threadID, page, yugi);
+ };
+
+ do_post = function():void{ //MethodID:2831, LocalCount= 2 , MaxScope= 1, MaxStack= 6, CodeLength= 212
+ internal var trans:CommentPoster; //slotID:1
+ internal var req:Request; //slotID:2
+
+ trans = null;
+ trans = new CommentPoster();
+ trans.threadID = int(h._t.threadID);
+ trans.comment = comment;
+ trans.premium = __isPremium;
+ trans.ticket = h._t.ticket;
+ trans.userID = __userID;
+ trans.postkey = postkeyObj.value;
+ trans.yugi = postkeyObj.yugi;
+ req = new Request([new LockDesc("PostChatResult", {0:h._t.threadID})]);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2828, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 323
+ var hug2:int = 0;
+ var hug3:int = hug1;
+
+ switch(hug3){
+ case MessageServerClient.POST_INVALID_POSTKEY:
+ postkeyObj.value = null;
+ h._t.lastRes_ = trans.no;
+ hug2 = calc_page(trans.no);
+
+ if((trans.no != 0) && (hug2 != page)){
+ page = hug2;
+
+ get_postkey();
+
+ return;
+ }
+
+ f(new CommentStorageError(0, "No more retry to get PostKey.", true), 0);
+ break;
+ case MessageServerClient.POST_FAILURE:
+ f(new CommentStorageError(hug1, "Post failed"), 0);
+ break;
+ case MessageServerClient.POST_INVALID_THREAD:
+ case MessageServerClient.POST_LOCKED:
+ case MessageServerClient.POST_READONLY:
+ case MessageServerClient.POST_INVALID_TICKET:
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")), 0);
+ break;
+ default:
+ break;
+ }
+
+ __shiftPostWaitQueue();
+ };
+
+ req.onQuit = function():void{ //MethodID:2829, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 23
+ f(null, trans.no);
+ __shiftPostWaitQueue();
+ };
+
+ req.onDisconnect = function():void{ //MethodID:2830, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 29
+ f(new CommentStorageError(0, "Disconnected.", true), 0);
+ __shiftPostWaitQueue();
+ };
+
+ __addRequest(req);
+ };
+
+ retry = 3;
+ postkeyObj = h._t.postkey;
+ page = calc_page(h._t.lastRes_);
+
+ if(postkeyObj){
+ if(!postkeyObj.value){
+ ObjectUtils.callLater(f, new CommentStorageError(0, "OMG", true), 0);
+
+ return;
+ }
+
+ if(page == postkeyObj.page){
+ do_post();
+
+ return;
+ }
+ }else{
+ if(!h._t.ticket){
+ ObjectUtils.callLater(f, new CommentStorageError(0, "Cannot get PostKey having not done getThread to get LastRes needed to get that.", true), 0);
+
+ return;
+ }
+
+ postkeyObj = new _PostKey();
+ h._t.postkey = new _PostKey();
+ }
+
+ get_postkey();
+ });
+
+ if(!this.__postLocked) this.__shiftPostWaitQueue();
+ }
+
+ public function _getThread(hug1:_Handle, hug2:Function, hug3:int, hug4:Boolean=false):void
+ { //MethodID:2840, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 112
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var resFrom:int; //slotID:3
+ internal var isLeaf:Boolean = false; //slotID:4
+ internal var retry:int; //slotID:5
+ internal var threadkey_getter:Function; //slotID:6
+ internal var do_get_thread:Function; //slotID:7
+
+ retry = 0;
+ threadkey_getter = null;
+ do_get_thread = null;
+ h = hug1;
+ f = hug2;
+ resFrom = hug3;
+ isLeaf = hug4;
+ do_get_thread = function(... args):void{ //MethodID:2839, LocalCount= 3 , MaxScope= 1, MaxStack= 10, CodeLength= 513
+ internal var arguments:Array; //slotID:1
+ internal var trans:ThreadLoader; //slotID:2
+ internal var _locks:Array; //slotID:3
+ internal var req:Request; //slotID:4
+ internal var arguments_:*; //slotID:5
+
+ trans = null;
+ arguments_ = undefined;
+ internal var arguments:Object = args;
+
+ if(__isErrorOnNoCompress){
+ f(new CommentStorageError(0, "Disconnected.", true), null);
+
+ return;
+ }
+
+ trans = new ThreadLoader();
+ trans.threadID = h._t.threadID;
+ trans.userID = __userID;
+ trans.resFrom = resFrom;
+ trans.clickRevision = h._t.clickRevision;
+ trans.onServerTime = __onServerTimeUpdated;
+ trans.num_click = h._t.num_click;
+ trans.duration = __getFlv.videoLength;
+ trans.forceLeafMode = (isLeaf && !__flashvars.isMymemory && !__forceLeafOff);
+ trans.leaf_get_num = __leafNum;
+
+ if(h._isCommunityThread){
+ trans.threadkey = h._t.threadkey.value;
+ trans.force184 = (h._t.threadkey.force184 ? 1 : 0);
+ }
+
+ trans.noCompress = __noCompress;
+ _locks = [new LockDesc("GetThreadResult", {1:h._t.threadID, 8:0}), new LockDesc("Chat", {1:h._t.threadID, 13:0}), new LockDesc("NumberOfClick", {0:h._t.threadID}), new LockDesc("Close", {0:h._t.threadID, 1:0})];
+
+ if(trans.isLeaf()) _locks.push(new LockDesc("Leaf", {1:h._t.threadID}));
+
+ req = new Request(_locks);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2834, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 116
+ if((hug1 == MessageServerClient.THREAD_LEAF_LOADING) && (retry > 0)){
+ retry--;
+ do_get_thread();
+
+ return;
+ }
+
+ if((hug1 == MessageServerClient.THREAD_TOO_OLD_THREADKEY) && (threadkey_getter != null) && threadkey_getter()) return;
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")), null);
+ };
+
+ req.onQuit = function():void{ //MethodID:2835, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 200
+ var hug1:String = null;
+ var hug2:int = 0;
+
+ if(h._t.ticket != trans.ticket){
+ h._t.clear();
+
+ h._t.ticket = trans.ticket;
+ }
+
+ h._t.lastRes_ = trans.lastRes;
+ h._t.lastRes = trans.lastRes;
+ h._t.revision = trans.revision;
+ h._t.clickRevision = trans.clickRevision;
+
+ for(hug1 in trans.num_click){
+ hug2 = int(hug1);
+
+ h._onNumberOfClick(hug2, trans.num_click[hug2]);
+ }
+
+ h._t.num_click = trans.num_click;
+
+ f(null, trans.comments);
+ };
+
+ arguments_ = arguments;
+ req.onDisconnect = function():void{ //MethodID:2838, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 98
+ internal var getNoCompressThread:Function; //slotID:1
+
+ getNoCompressThread = function():void{ //MethodID:2836, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 19
+ __noCompress = true;
+
+ do_get_thread.apply(this, arguments_);
+ };
+
+ if(trans.noCompress || __isErrorOnNoCompress){
+ __isErrorOnNoCompress = true;
+
+ f(new CommentStorageError(0, "Disconnected.", true), null);
+
+ return;
+ }
+
+ if(__client.isConnecting){
+ getNoCompressThread();
+ }else{
+ __client.connected.add(function(... args):void{ //MethodID:2837, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ __client.connected.remove(args.callee);
+ getNoCompressThread();
+ });
+ }
+ };
+
+ __addRequest(req);
+ };
+
+ if(!h._isCommunityThread){
+ do_get_thread();
+
+ return;
+ }
+
+ retry = __LEAF_RETRY;
+ threadkey_getter = this.__newThreadKeyGetter(do_get_thread, f, h._t);
+ }
+
+ public function _deleteComments(hug1:_Handle, hug2:Function, hug3:Array, hug4:Boolean):void
+ { //MethodID:2846, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 54
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var targets:Array; //slotID:3
+ internal var undelete:Boolean; //slotID:4
+
+ h = hug1;
+ f = hug2;
+ targets = hug3;
+ undelete = hug4;
+
+ this.__keygen.getDeleteKey(function(hug1:Boolean, hug2:String):void{ //MethodID:2845, LocalCount= 4 , MaxScope= 1, MaxStack= 8, CodeLength= 269
+ internal var succeeded:Boolean; //slotID:1
+ internal var deletekey:String; //slotID:2
+ internal var trans:CommentDeleter; //slotID:3
+ internal var req:Request; //slotID:4
+
+ trans = null;
+ succeeded = hug1;
+ deletekey = hug2;
+
+ if(!succeeded){
+ f(new CommentStorageError(0, "DeleteKeyの取得に失敗。", true));
+
+ return;
+ }
+
+ trans = new CommentDeleter();
+ trans.undelete = undelete;
+ trans.revision = h._t.revision;
+ trans.threadID = int(h._t.threadID);
+ trans.userID = __userID;
+ trans.deletekey = deletekey;
+ trans.list = targets.sort(function(hug1:uint, hug2:uint):Number{ //MethodID:2841, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 4
+ return (hug1 - hug2);
+ }).join(",");
+
+ req = new Request([new LockDesc("DeleteCommentsResult", {0:h._t.threadID, 3:(undelete ? 1 : 0)})]);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2842, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 24
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")));
+ };
+
+ req.onQuit = function():void{ //MethodID:2843, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ h._t.revision = trans.revision;
+
+ f(null);
+ };
+
+ req.onDisconnect = function():void{ //MethodID:2844, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 20
+ f(new CommentStorageError(0, "Disconnected.", true));
+ };
+
+ __addRequest(req);
+ }, h._t.threadID, targets);
+ }
+
+ public function _getOwnerThread(hug1:_Handle, hug2:Function, hug3:uint, ...args):void
+ { //MethodID:2850, LocalCount= 6 , MaxScope= 2, MaxStack= 10, CodeLength= 282
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var numRes:uint; //slotID:3
+ internal var arguments:Array; //slotID:4
+ internal var trans:ThreadLoader; //slotID:5
+ internal var req:Request; //slotID:6
+ internal var arguments_:*; //slotID:7
+
+ trans = null;
+ arguments_ = undefined;
+ h = hug1;
+ f = hug2;
+ numRes = hug3;
+ internal var arguments:Object = args;
+ trans = new ThreadLoader();
+ trans.threadID = h._t.threadID;
+ trans.fork = 1;
+ trans.resFrom = -numRes;
+ trans.onServerTime = this.__onServerTimeUpdated;
+ req = new Request([new LockDesc("GetThreadResult", {1:h._t.threadID, 8:1}), new LockDesc("Chat", {1:h._t.threadID, 13:1}), new LockDesc("Close", {0:h._t.threadID, 1:1})]);
+ trans.noCompress = this.__noCompress;
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2847, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 25
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")), null);
+ };
+
+ req.onQuit = function():void{ //MethodID:2848, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 31
+ h._t.ownerTicket = trans.ticket;
+
+ f(null, trans.comments);
+ };
+
+ arguments_ = arguments;
+ req.onDisconnect = function():void{ //MethodID:2849, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 52
+ if(trans.noCompress){
+ f(new CommentStorageError(0, "", true), null);
+
+ return;
+ }
+
+ __noCompress = true;
+
+ arguments_.callee.apply(this, arguments_);
+ };
+
+ this.__addRequest(req);
+ }
+
+ public function _updateOwnerThread(hug1:_Handle, hug2:Function, hug3:Array, hug4:Boolean):void
+ { //MethodID:2855, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 64
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var comments:Array; //slotID:3
+ internal var createNicosThread:Boolean; //slotID:4
+
+ h = hug1;
+ f = hug2;
+ comments = hug3;
+ createNicosThread = hug4;
+
+ this.__keygen.getUpdateKey(function(hug1:Boolean, hug2:String):void{ //MethodID:2854, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 217
+ internal var succeeded:Boolean; //slotID:1
+ internal var updatekey:String; //slotID:2
+ internal var trans:ThreadUpdater; //slotID:3
+ internal var req:Request; //slotID:4
+
+ trans = null;
+ succeeded = hug1;
+ updatekey = hug2;
+
+ if(!succeeded) f(new CommentStorageError(0, "Failed to get UpdateKey.", true));
+
+ trans = new ThreadUpdater();
+ trans.threadID = h._t.threadID;
+ trans.userID = __userID;
+ trans.ticket = h._t.ownerTicket;
+ trans.updatekey = updatekey;
+ trans.isPremium = __isPremium;
+ trans.comments = comments;
+ req = new Request([new LockDesc("UpdateThreadResult", {})]);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2851, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 24
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")));
+ };
+
+ req.onQuit = function():void{ //MethodID:2852, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 25
+ h._t.ownerTicket = trans.ticket;
+
+ f(null);
+ };
+
+ req.onDisconnect = function():void{ //MethodID:2853, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 20
+ f(new CommentStorageError(0, "Disconnected.", true));
+ };
+
+ __addRequest(req);
+ }, h._t.threadID, h._t.ownerTicket, createNicosThread);
+ }
+
+ public function _waybackFork(hug1:_Handle, hug2:Function, hug3:int, hug4:int, hug5:uint, hug6:Boolean=false):void
+ { //MethodID:2863, LocalCount= 8 , MaxScope= 2, MaxStack= 5, CodeLength= 171
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var fork:int; //slotID:3
+ internal var time:int; //slotID:4
+ internal var numRes:uint; //slotID:5
+ internal var isLeaf:Boolean = false; //slotID:6
+ internal var retry:int; //slotID:7
+ internal var leaf_retry:int; //slotID:8
+ internal var threadkey_required:Boolean; //slotID:9
+ internal var get_waybackkey:Function; //slotID:10
+ internal var do_wayback_thread:Function; //slotID:11
+ internal var threadkey_getter:Function; //slotID:12
+
+ leaf_retry = 0;
+ threadkey_required = false;
+ get_waybackkey = null;
+ threadkey_getter = null;
+ h = hug1;
+ f = hug2;
+ fork = hug3;
+ time = hug4;
+ numRes = hug5;
+ isLeaf = hug6;
+ get_waybackkey = function():void{ //MethodID:2858, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 67
+ internal var error:Function; //slotID:1
+
+ error = function():void{ //MethodID:2856, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 21
+ f(new CommentStorageError(0, "Failed to get WaybackKey.", true), null);
+ };
+
+ if((--retry) < 0) error();
+ __keygen.getWaybackKey(function(hug1:Boolean, hug2:String):void{ //MethodID:2857, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 24
+ if(!hug1){
+ error();
+
+ return;
+ }
+
+ do_wayback_thread(hug2);
+ }, h._t.threadID);
+ };
+
+ do_wayback_thread = function(hug1:String):void{ //MethodID:2862, LocalCount= 3 , MaxScope= 1, MaxStack= 9, CodeLength= 541
+ internal var waybackkey:String; //slotID:1
+ internal var trans:ThreadLoader; //slotID:2
+ internal var _locks:Array; //slotID:3
+ internal var req:Request; //slotID:4
+
+ trans = null;
+ waybackkey = hug1;
+ trans = new ThreadLoader();
+ trans.threadID = h._t.threadID;
+ trans.resFrom = -numRes;
+ trans.fork = fork;
+ trans.when = time;
+ trans.userID = __userID;
+ trans.waybackkey = waybackkey;
+ trans.onServerTime = __onServerTimeUpdated;
+ trans.noCompress = __noCompress;
+ trans.clickRevision = h._t.clickRevision;
+ trans.duration = __getFlv.videoLength;
+ trans.num_click = h._t.num_click;
+ trans.resBefore = (h._t.lastRes + 1);
+
+ if(fork != 1){
+ trans.forceLeafMode = (isLeaf && !__flashvars.isMymemory && !__forceLeafOff);
+ trans.leaf_get_num = __leafNum;
+ }
+
+ if(threadkey_required){
+ trans.threadkey = h._t.threadkey.value;
+ trans.force184 = (h._t.threadkey.force184 ? 1 : 0);
+ }
+
+ _locks = [new LockDesc("GetThreadResult", {1:h._t.threadID, 8:fork}), new LockDesc("Close", {0:h._t.threadID}), new LockDesc("Chat", {1:h._t.threadID, 13:fork})];
+
+ if(trans.isLeaf()) _locks.push(new LockDesc("Leaf", {1:h._t.threadID}));
+
+ if(fork != 1) _locks.push(new LockDesc("NumberOfClick", {0:h._t.threadID}));
+
+ req = new Request(_locks);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2859, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 183
+ var hug2:int = hug1;
+
+ switch(hug2){
+ case MessageServerClient.THREAD_LEAF_LOADING:
+ if(leaf_retry > 0){
+ leaf_retry--;
+ do_wayback_thread();
+
+ return;
+ }
+ break;
+ case MessageServerClient.THREAD_TOO_OLD_WAYBACKKEY:
+ get_waybackkey();
+
+ return;
+ case MessageServerClient.THREAD_TOO_OLD_THREADKEY:
+ if(threadkey_getter()) return;
+
+ default:
+ break;
+ }
+
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")), null);
+ };
+
+ req.onQuit = function():void{ //MethodID:2860, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 16
+ f(null, trans.comments);
+ };
+
+ req.onDisconnect = function():void{ //MethodID:2861, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 47
+ if(trans.noCompress){
+ f(new CommentStorageError(0, "Disconnected.", true), null);
+
+ return;
+ }
+
+ __noCompress = true;
+
+ do_wayback_thread();
+ };
+
+ __addRequest(req);
+ };
+
+ retry = 3;
+ leaf_retry = __LEAF_RETRY;
+ threadkey_required = ((fork == MessageServerClient.FORK_MAIN) && h._isCommunityThread);
+
+ if(threadkey_required){
+ threadkey_getter = this.__newThreadKeyGetter(get_waybackkey, f, h._t);
+ return;
+ }
+
+ get_waybackkey();
+ }
+
+ public function _click(hug1:_Handle, hug2:Function, hug3:int, hug4:Function=null):void
+ { //MethodID:2868, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 70
+ internal var h:_Handle; //slotID:1
+ internal var f:Function; //slotID:2
+ internal var no:int; //slotID:3
+ internal var after_click:Function = null; //slotID:4
+
+ h = hug1;
+ f = hug2;
+ no = hug3;
+ after_click = hug4;
+
+ this.__keygen.getClickKey(function(hug1:Boolean, hug2:String):void{ //MethodID:2867, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 197
+ internal var succeeded:Boolean; //slotID:1
+ internal var clickkey:String; //slotID:2
+ internal var trans:Clicker; //slotID:3
+ internal var req:Request; //slotID:4
+
+ succeeded = hug1;
+ clickkey = hug2;
+
+ if(!succeeded) f(new CommentStorageError(0, "Failed to get ClickKey.", true), null);
+
+ trans = new Clicker();
+ trans.threadID = int(h._t.threadID);
+ trans.no = no;
+ trans.userID = __userID;
+ trans.clickkey = clickkey;
+ req = new Request([new LockDesc("ClickResult", {})]);
+ req.transactor = trans;
+ req.onErrorOccured = function(hug1:int):void{ //MethodID:2864, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 24
+ f(new CommentStorageError(hug1, ("error: status=" + hug1 + ".")));
+ };
+
+ req.onQuit = function():void{ //MethodID:2865, LocalCount= 4 , MaxScope= 0, MaxStack= 6, CodeLength= 43
+ h._t.num_click[no]++;
+ f(null);
+ };
+
+ req.onDisconnect = function():void{ //MethodID:2866, LocalCount= 1 , MaxScope= 0, MaxStack= 5, CodeLength= 20
+ f(new CommentStorageError(0, "Disconnected.", true));
+ };
+
+ __addRequest(req);
+ after_click();
+ }, h._t.threadID, h._t.lastRes, h._t.clickRevision);
+ }
+
+ private function __newThreadKeyGetter(hug1:Function, hug2:Function, hug3:_Thread, hug4:int=3):Function
+ { //MethodID:2871, LocalCount= 6 , MaxScope= 2, MaxStack= 3, CodeLength= 97
+ internal var f:Function; //slotID:1
+ internal var error:Function; //slotID:2
+ internal var t:_Thread; //slotID:3
+ internal var retry:int = 3; //slotID:4
+ internal var do_get:Function; //slotID:5
+
+ do_get = null;
+ f = hug1;
+ error = hug2;
+ t = hug3;
+ retry = hug4;
+ do_get = function():Boolean{ //MethodID:2870, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 57
+ t.threadkey = null;
+
+ if((retry--) < 1) return false;
+ __keygen.getThreadKey(function(hug1:Boolean, hug2:String, hug3:Boolean):void{ //MethodID:2869, LocalCount= 4 , MaxScope= 0, MaxStack= 5, CodeLength= 50
+ if(!hug1){
+ error(new CommentStorageError(0, "ThreadKeyの取得に失敗。", true), null);
+
+ return;
+ }
+
+ t.threadkey = new _ThreadKey(hug2, hug3);
+
+ f();
+ }, t.threadID);
+
+ return true;
+ };
+
+ Assert.assert(retry > 0);
+
+ if(t.threadkey){
+ ObjectUtils.callLater(f);
+ }else{
+ do_get();
+ }
+
+ return do_get;
+ }
+
+ private function __addRequest(hug1:Request):void
+ { //MethodID:2872, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ hug1.parent = this;
+ hug1.transactor.client = this.__client;
+
+ this.__requestDispatcher.addRequest(hug1);
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+import flash.utils.Dictionary
+import jp.nicovideo.nicoplayer.models.comment.IComment
+import jp.nicovideo.nicoplayer.storages.CommentStorage
+import jp.nicovideo.nicoplayer.storages.CommentStorageError
+import jp.nicovideo.nicoplayer.storages.MessageServerClient
+import jp.nicovideo.nicoplayer.storages.commentStorage.Poller
+import jp.nicovideo.util.ObjectUtils
+
+//■class(instance)_index:216
+//private
+class _Thread extends Object
+{
+ //static constructor
+ public static function _Thread$cinit()
+ { //MethodID:2793, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Thread(hug1:String)
+ { //MethodID:2794, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 29
+ this.num_click = {};
+ this.handles = new Dictionary(true);
+
+ super();
+
+ this.threadID = hug1;
+ }
+
+ //variables/etc.
+ public var threadID:String; //slotID:0
+ public var ticket:String; //slotID:0
+ public var ownerTicket:String; //slotID:0
+ public var lastRes:int = -1; //slotID:0
+ public var lastRes_:int = -1; //slotID:0
+ public var postkey:_PostKey; //slotID:0
+ public var threadkey:_ThreadKey; //slotID:0
+ public var revision:int = 0; //slotID:0
+ public var clickRevision:int = 0; //slotID:0
+ public var waybackkey:String; //slotID:0
+ public var num_click:Object; //slotID:0
+ public var handles:Dictionary; //slotID:0
+
+ public function forEachHandle(hug1:Function):void
+ { //MethodID:2795, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 51
+ var hug2:* = undefined;
+
+ for(hug2 in this.handles){
+ hug1(_Handle(hug2));
+ }
+ }
+
+ public function clear():void
+ { //MethodID:2796, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 37
+ this.ticket = null;
+ this.lastRes = -1;
+ this.lastRes_ = -1;
+ this.postkey = null;
+ this.revision = 0;
+ this.clickRevision = 0;
+ }
+}
+
+//■class(instance)_index:217
+//private
+class _PostKey extends Object
+{
+ //static constructor
+ public static function _PostKey$cinit()
+ { //MethodID:2797, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _PostKey()
+ { //MethodID:2798, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var lastRes:int; //slotID:0
+ public var page:int; //slotID:0
+ public var value:String; //slotID:0
+ public var yugi:Boolean; //slotID:0
+}
+
+//■class(instance)_index:218
+//private
+class _ThreadKey extends Object
+{
+ //static constructor
+ public static function _ThreadKey$cinit()
+ { //MethodID:2799, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ThreadKey(hug1:String, hug2:Boolean)
+ { //MethodID:2800, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this.value = hug1;
+ this.force184 = hug2;
+ }
+
+ //variables/etc.
+ public var value:String; //slotID:0
+ public var force184:Boolean; //slotID:0
+}
+
+//■class(instance)_index:220
+//private
+class _Handle extends Object implements ICommentStorageHandle
+{
+ //static constructor
+ public static function _Handle$cinit()
+ { //MethodID:2873, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Handle(hug1:CommentStorage, hug2:_Thread)
+ { //MethodID:2874, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 28
+ super();
+
+ this._parent = hug1;
+ this._t = hug2;
+ this._t.handles[this] = true;
+ }
+
+ //variables/etc.
+ public var _t:_Thread; //slotID:0
+ public var _isCommunityThread:Boolean = false; //slotID:0
+ public var _onNumberOfClick:Function; //slotID:0
+ protected var _parent:CommentStorage; //slotID:0
+ private var __onComments:Function; //slotID:0
+ private var __autoSyncEnabled:Boolean = true; //slotID:0
+
+ public function get lastRes():int
+ { //MethodID:2875, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._t.lastRes;
+ }
+
+ public function get autoSyncEnabled():Boolean
+ { //MethodID:2876, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__autoSyncEnabled;
+ }
+
+ public function set autoSyncEnabled(hug1:Boolean):void
+ { //MethodID:2877, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__autoSyncEnabled = hug1;
+ }
+
+ public function get isCommunityThread():Boolean
+ { //MethodID:2878, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isCommunityThread;
+ }
+
+ public function set isCommunityThread(hug1:Boolean):void
+ { //MethodID:2879, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isCommunityThread = hug1;
+ }
+
+ public function get onComments():Function
+ { //MethodID:2880, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onComments;
+ }
+
+ public function set onComments(hug1:Function):void
+ { //MethodID:2881, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__onComments = hug1;
+ }
+
+ public function get onNumberOfClick():Function
+ { //MethodID:2882, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onNumberOfClick;
+ }
+
+ public function set onNumberOfClick(hug1:Function):void
+ { //MethodID:2883, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._onNumberOfClick = hug1;
+ }
+
+ public function post(hug1:Function, hug2:IComment, hug3:Boolean):void
+ { //MethodID:2884, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 15
+ this._parent._post(this, hug1, hug2, hug3);
+ }
+
+ public function getThread(hug1:Function, hug2:int, hug3:Boolean=false):void
+ { //MethodID:2885, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 15
+ this._parent._getThread(this, hug1, hug2, hug3);
+ }
+
+ public function deleteComments(hug1:Function, hug2:Array, hug3:Boolean):void
+ { //MethodID:2886, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 15
+ this._parent._deleteComments(this, hug1, hug2, hug3);
+ }
+
+ public function getOwnerThread(hug1:Function, hug2:uint):void
+ { //MethodID:2887, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._parent._getOwnerThread(this, hug1, hug2);
+ }
+
+ public function updateOwnerThread(hug1:Function, hug2:Array, hug3:Boolean):void
+ { //MethodID:2888, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 15
+ this._parent._updateOwnerThread(this, hug1, hug2, hug3);
+ }
+
+ public function waybackOwnerThread(hug1:Function, hug2:int):void
+ { //MethodID:2889, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 23
+ this._parent._waybackFork(this, hug1, MessageServerClient.FORK_OWNER, hug2, 1000);
+ }
+
+ public function waybackThread(hug1:Function, hug2:int, hug3:uint, hug4:Boolean=false):void
+ { //MethodID:2890, LocalCount= 5 , MaxScope= 1, MaxStack= 7, CodeLength= 23
+ this._parent._waybackFork(this, hug1, MessageServerClient.FORK_MAIN, hug2, hug3, hug4);
+ }
+
+ public function click(hug1:Function, hug2:int):void
+ { //MethodID:2891, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._parent._click(this, hug1, hug2);
+ }
+
+ public function enterThread(hug1:Function, hug2:int, hug3:Boolean=false):void
+ { //MethodID:2892, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ throw new IllegalOperationError("未サポートであります。。。");
+ }
+
+ public function leaveThread(hug1:Function):void
+ { //MethodID:2893, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ throw new IllegalOperationError("未サポートっスよ!");
+ }
+
+ public function _onComments(hug1:Array):void
+ { //MethodID:2894, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ if(this.__onComments is Function) this.__onComments(hug1);
+ }
+}
+
+//■class(instance)_index:221
+//private
+class _Handle4HTTP extends _Handle
+{
+ //static constructor
+ public static function _Handle4HTTP$cinit()
+ { //MethodID:2895, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 37
+ HTTP_INTERVAL_PREMIUM = 0x1D4C0;
+ HTTP_INTERVAL_SHORT_PREMIUM = 30000;
+ HTTP_INTERVAL_ECONOMY = 0x2BF20;
+ HTTP_INTERVAL_SHORT_ECONOMY = 0xAFC8;
+ }
+
+ //static variables/etc.
+ private static const HTTP_INTERVAL_PREMIUM:int = 0x1D4C0; //slotID:1
+ private static const HTTP_INTERVAL_SHORT_PREMIUM:int = 30000; //slotID:2
+ private static const HTTP_INTERVAL_ECONOMY:int = 0x2BF20; //slotID:3
+ private static const HTTP_INTERVAL_SHORT_ECONOMY:int = 0xAFC8; //slotID:4
+
+ //constructor
+ public function _Handle4HTTP(hug1:CommentStorage, hug2:_Thread)
+ { //MethodID:2896, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 8
+ super(hug1, hug2);
+ }
+
+ //variables/etc.
+ private var __poller:Poller; //slotID:0
+ private var __localLastRes:int = 0; //slotID:0
+
+ override public function set autoSyncEnabled(hug1:Boolean):void
+ { //MethodID:2897, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 50
+ if(autoSyncEnabled == hug1) return;
+
+ if(this.__poller){
+ if(hug1){
+ this.__poller.resume();
+ }else{
+ this.__poller.suspend();
+ }
+ }
+
+ super.autoSyncEnabled = hug1;
+ }
+
+ override public function post(hug1:Function, hug2:IComment, hug3:Boolean):void
+ { //MethodID:2900, LocalCount= 5 , MaxScope= 2, MaxStack= 2, CodeLength= 63
+ private var f:Function; //slotID:1
+ private var comment_:IComment; //slotID:2
+ private var yugi:Boolean; //slotID:3
+ private var poll_retry:int; //slotID:4
+ private var super_post:Function; //slotID:5
+ private var do_post:Function; //slotID:6
+
+ do_post = null;
+ f = hug1;
+ comment_ = hug2;
+ yugi = hug3;
+ do_post = function():void{ //MethodID:2899, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 22
+ super_post(function(hug1:CommentStorageError, hug2:int):void{ //MethodID:2898, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 115
+ if(hug1 && !hug1.isInLowerLayer && (hug1.status == MessageServerClient.POST_INVALID_TICKET) && ((poll_retry--) > 0)){
+ __poller.pollImmediately(do_post);
+
+ return;
+ }
+
+ if(__poller && !hug1) __poller.pollImmediately();
+ f(hug1, hug2);
+ }, comment_, yugi);
+ };
+
+ poll_retry = 3;
+ super_post = super.post;
+
+ do_post();
+ }
+
+ override public function getThread(hug1:Function, hug2:int, hug3:Boolean=false):void
+ { //MethodID:2901, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 27
+ if(!this.__poller) throw new IllegalOperationError();
+ super.getThread(hug1, hug2, hug3);
+ }
+
+ override public function click(hug1:Function, hug2:int):void
+ { //MethodID:2904, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 52
+ private var f:Function; //slotID:1
+ private var no:int; //slotID:2
+ private var after_click:Function; //slotID:3
+
+ after_click = null;
+ f = hug1;
+ no = hug2;
+ after_click = function():void{ //MethodID:2902, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 15
+ if(__poller) __poller.pollImmediately();
+ };
+
+ _parent._click(this, function(hug1:CommentStorageError):void{ //MethodID:2903, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 10
+ f(hug1);
+ }, no, after_click);
+ }
+
+ override public function enterThread(hug1:Function, hug2:int, hug3:Boolean=false):void
+ { //MethodID:2908, LocalCount= 5 , MaxScope= 2, MaxStack= 5, CodeLength= 61
+ private var f:Function; //slotID:1
+ private var resFrom:int; //slotID:2
+ private var isLeaf:Boolean = false; //slotID:3
+ private var self:_Handle; //slotID:4
+
+ self = null;
+ f = hug1;
+ resFrom = hug2;
+ isLeaf = hug3;
+ self = this;
+
+ _parent._getThread(self, function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:2907, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 153
+ private var e:CommentStorageError; //slotID:1
+ private var comments:Array; //slotID:2
+ private var lastResLocal:int; //slotID:3
+
+ lastResLocal = 0;
+ e = hug1;
+ comments = hug2;
+
+ if(__poller) throw new IllegalOperationError("なんじゃい");
+
+ if(!e){
+ lastResLocal = ((comments.length != 0) ? comments[comments.length - 1].resNo : 0);
+ __poller = new Poller(function(hug1:Function):void{ //MethodID:2906, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 39
+ private var binder:Function; //slotID:1
+
+ binder = hug1;
+
+ _parent._getThread(self, binder(function(hug1:CommentStorageError, hug2:Array):void{ //MethodID:2905, LocalCount= 3 , MaxScope= 0, MaxStack= 6, CodeLength= 67
+ if(hug1) return;
+
+ if(hug2.length != 0){
+ lastResLocal = Math.max(lastResLocal, hug2[hug2.length - 1].resNo);
+
+ _onComments(hug2);
+ }
+
+ __poller.interval = __calcPollingInterval(hug2);
+ }), (lastResLocal + 1), isLeaf);
+ });
+
+ if(autoSyncEnabled) __poller.resume();
+
+ __poller.interval = __calcPollingInterval(comments);
+ }
+
+ f(e, comments);
+ }, resFrom, isLeaf);
+ }
+
+ override public function leaveThread(hug1:Function):void
+ { //MethodID:2909, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 51
+ if(!this.__poller) throw new IllegalOperationError("入室してないす");
+ this.__poller.suspend();
+
+ this.__poller = null;
+
+ _t.clear();
+ ObjectUtils.callLater(hug1, null);
+ }
+
+ private function __calcPollingInterval(hug1:Array):int
+ { //MethodID:2910, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 55
+ var hug2:int = HTTP_INTERVAL_ECONOMY;
+ var hug3:int = HTTP_INTERVAL_SHORT_ECONOMY;
+
+ if(_parent.__isPremium){
+ hug2 = HTTP_INTERVAL_ECONOMY;
+ hug3 = HTTP_INTERVAL_SHORT_ECONOMY;
+ }
+
+ var hug4:int = ((hug1.length != 0) ? hug3 : hug2);
+ return hug4;
+ }
+}
+
+//■script174■
+
+package jp.nicovideo.nicoplayer.models.api{
+
+ import jp.nicovideo.util.HTTPUtils
+
+ //■class(instance)_index:222
+ public class GetBGM extends Object
+ {
+ //static constructor
+ public static function GetBGM$cinit()
+ { //MethodID:2912, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function exec(hug1:Function, hug2:String, hug3:String):void
+ { //dispID:3, MethodID:2914, LocalCount= 5 , MaxScope= 2, MaxStack= 7, CodeLength= 52
+ internal var f:Function; //slotID:1
+ internal var URL:String; //slotID:2
+ internal var threadID:String; //slotID:3
+
+ f = hug1;
+ URL = hug2;
+ threadID = hug3;
+
+ HTTPUtils.loadXML(function(hug1:XML):void{ //MethodID:2913, LocalCount= 7 , MaxScope= 0, MaxStack= 12, CodeLength= 263
+ var hug3:XML = null;
+ var hug4:BGMVideoInfo = null;
+
+ if((hug1 === null) || (hug1.@status != "ok")) f(false, null);
+
+ var hug2:Array = [];
+
+ for each(hug3 in hug1.bgm){
+ hug4 = new BGMVideoInfo(hug3.id.text()[0], hug3.bgm_type.text()[0], hug3.video_id.text()[0], hug3.url.text()[0], Number(hug3.length.text()[0]), hug3.movie_type.text()[0], (Number(hug3.deleted.text()[0]) != 0), (Number(hug3["private"].text()[0]) != 0), (Number(hug3.as3.text()[0]) == 1));
+
+ hug2.push(hug4);
+ }
+
+ f(true, hug2);
+ }, URL, {v:threadID, as3:"1"});
+ }
+
+ //constructor
+ public function GetBGM()
+ { //MethodID:2915, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script175■
+
+package jp.nicovideo.nicoscript{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:223
+ public interface INicoSPlayer
+ {
+ //static constructor
+ public static function INicoSPlayer$cinit()
+ { //MethodID:2917, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get defaultCommentColor():String; //MethodID:2918, dispID:0
+
+ function get defaultCommentPosition():String; //MethodID:2919, dispID:0
+
+ function get defaultCommentSize():String; //MethodID:2920, dispID:0
+
+ function get isCommentInvisible():Boolean; //MethodID:2921, dispID:0
+
+ function replaceComment(hug1:String, hug2:IComment):IComment; //MethodID:2922, dispID:0
+
+ function resolveListName(hug1:IComment):String; //MethodID:2923, dispID:0
+
+ function get BGMVideoIDs():Array; //MethodID:2924, dispID:0
+
+ function get CMVideoIDs():Array; //MethodID:2925, dispID:0
+
+ function setup(hug1:INicoSClient):void; //MethodID:2926, dispID:0
+
+ function clear():void; //MethodID:2927, dispID:0
+
+ function commit(hug1:String, hug2:Array, hug3:Array, hug4:Boolean):Array; //MethodID:2928, dispID:0
+
+ function play():void; //MethodID:2929, dispID:0
+
+ function seek(hug1:int):void; //MethodID:2930, dispID:0
+
+ function pause():void; //MethodID:2931, dispID:0
+
+ function set volume(hug1:Number):void; //MethodID:2932, dispID:0
+
+ function get isNicosThreadRequired():Boolean; //MethodID:2933, dispID:0
+
+ //constructor
+ public function INicoSPlayer(); //MethodID:2934, dispID:0
+ }
+}
+
+//■script176■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:224
+ public class VideoInfo extends Object
+ {
+ //static constructor
+ public static function VideoInfo$cinit()
+ { //MethodID:2936, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoInfo(hug1:String, hug2:String, hug3:String, hug4:String, hug5:String, hug6:String, hug7:String, hug8:uint, hug9:uint, hug10:uint, hug11:uint, hug12:Date, hug13:Date, hug14:Date, hug15:Number)
+ { //MethodID:2937, LocalCount= 16 , MaxScope= 1, MaxStack= 3, CodeLength= 117
+ this.onVideoInfoFlashVarsUpdated = new Functions();
+
+ super();
+
+ this._title = hug1;
+ this._description = hug2;
+ this._mylistComment = hug3;
+ this._threadID = hug4;
+ this._videoID = hug4;
+ this._watchID = hug6;
+ this._thumbnailURL = hug7;
+ this._viewCounter = hug8;
+ this._numRes = hug9;
+ this._mylistCounter = hug10;
+ this._deleted = hug11;
+ this._itemUpdateTime = new Date(hug12);
+ this._firstRetrieve = new Date(hug13);
+ this._createTime = new Date(hug14);
+ this._lengthSeconds = hug15;
+ }
+
+ //variables/etc.
+ private var _title:String; //slotID:0
+ private var _description:String; //slotID:0
+ private var _mylistComment:String; //slotID:0
+ private var _threadID:String; //slotID:0
+ private var _videoID:String; //slotID:0
+ private var _watchID:String; //slotID:0
+ private var _thumbnailURL:String; //slotID:0
+ private var _viewCounter:uint; //slotID:0
+ private var _numRes:uint; //slotID:0
+ private var _mylistCounter:uint; //slotID:0
+ private var _deleted:uint; //slotID:0
+ private var _itemUpdateTime:Date; //slotID:0
+ private var _firstRetrieve:Date; //slotID:0
+ private var _createTime:Date; //slotID:0
+ private var _lengthSeconds:Number; //slotID:0
+ private var _flashVars:NicoFlashVars; //slotID:0
+ private var _errorMessage:String; //slotID:0
+ private var _ownersIndex:int = 0; //slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onVideoInfoFlashVarsUpdated:Functions;//slotID:0
+
+ public function get title():String
+ { //MethodID:2938, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._title;
+ }
+
+ public function get description():String
+ { //MethodID:2939, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._description;
+ }
+
+ public function get mylistComment():String
+ { //MethodID:2940, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mylistComment;
+ }
+
+ public function get threadID():String
+ { //MethodID:2941, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ public function get videoID():String
+ { //MethodID:2942, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoID;
+ }
+
+ public function get watchID():String
+ { //MethodID:2943, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchID;
+ }
+
+ public function get thumbnailURL():String
+ { //MethodID:2944, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbnailURL;
+ }
+
+ public function get viewCounter():uint
+ { //MethodID:2945, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._viewCounter;
+ }
+
+ public function get numRes():uint
+ { //MethodID:2946, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._numRes;
+ }
+
+ public function get mylistCounter():uint
+ { //MethodID:2947, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mylistCounter;
+ }
+
+ public function get deleted():uint
+ { //MethodID:2948, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deleted;
+ }
+
+ public function get itemUpdateTime():Date
+ { //MethodID:2949, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._itemUpdateTime;
+ }
+
+ public function get firstRetrieve():Date
+ { //MethodID:2950, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._firstRetrieve;
+ }
+
+ public function get createTime():Date
+ { //MethodID:2951, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._createTime;
+ }
+
+ public function get lengthSeconds():Number
+ { //MethodID:2952, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._lengthSeconds;
+ }
+
+ public function get errorMessage():String
+ { //MethodID:2953, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorMessage;
+ }
+
+ public function set errorMessage(hug1:String):void
+ { //MethodID:2954, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._errorMessage = hug1;
+ }
+
+ public function get ownersIndex():int
+ { //MethodID:2955, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ownersIndex;
+ }
+
+ public function set ownersIndex(hug1:int):void
+ { //MethodID:2956, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._ownersIndex = hug1;
+ }
+
+ public function set flashVars(hug1:NicoFlashVars):void
+ { //MethodID:2957, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 31
+ this._flashVars = hug1;
+
+ onVideoInfoFlashVarsUpdated.apply(this);
+ }
+
+ public function get flashVars():NicoFlashVars
+ { //MethodID:2958, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._flashVars;
+ }
+ }
+}
+
+//■script177■
+
+package jp.nicovideo.nicoplayer.config{
+
+ //■class(instance)_index:225
+ public class NicoConfig extends Object
+ {
+ //static constructor
+ public static function NicoConfig$cinit()
+ { //MethodID:2960, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _SMILEVIDEO_URL:String; //slotID:0
+ private var _HOWTOUSE_URL:String; //slotID:0
+ private var _RECOMMEND_ENV_URL:String; //slotID:0
+ private var _DIC_NICOVIDEO_URL:String; //slotID:0
+ private var _DELETE_COMMENT_URL:String; //slotID:0
+ private var _ENTRY_HANDBOOK_URL:String; //slotID:0
+ private var _BASE_URL:String; //slotID:0
+ private var _MOBILE_BASE_URL:String; //slotID:0
+ private var _MOBILE_WATCH_URL:String; //slotID:0
+ private var _FLAPI_BASE_URL:String; //slotID:0
+ private var _RES_URL:String; //slotID:0
+ private var _CHANNEL_URL:String; //slotID:0
+ private var _TEMPLATE_PATH:String; //slotID:0
+ private var _NICOVIDEO_ACCOUNT_SETTING_URL:String; //slotID:0
+ private var _NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL:String; //slotID:0
+ private var _GETFLV_URL:String; //slotID:0
+ private var _GETPOSTKEY_URL:String; //slotID:0
+ private var _GETRELATION_URL:String; //slotID:0
+ private var _GETTHUMBINFO_URL:String; //slotID:0
+ private var _GETGAMERANKING_URL:String; //slotID:0
+ private var _GETENQUESTERESULT_URL:String; //slotID:0
+ private var _GETCONFIGURENGCLIENT_URL:String; //slotID:0
+ private var _THUMBWATCH_URL:String; //slotID:0
+ private var _GET_CONFIGURE_NGWORD:String; //slotID:0
+ private var _GET_CLICKKEY_URL:String; //slotID:0
+ private var _RULES_URL:String; //slotID:0
+ private var _NOSO_URL:String; //slotID:0
+ private var _NOSO_BANNER_URL:String; //slotID:0
+ private var _GET_WAYBACKKEY_URL:String; //slotID:0
+ private var _GET_DELETEKEY_URL:String; //slotID:0
+ private var _GET_UPDATEKEY_URL:String; //slotID:0
+ private var _GET_THREADKEY_URL:String; //slotID:0
+ private var _REDIRECTOR_URL:String; //slotID:0
+ private var _adAPI_URL:String; //slotID:0
+ private var _REGISTERBGM_API_URL:String; //slotID:0
+ private var _GETBGM_API_URL:String; //slotID:0
+ private var _GETSPONSOR_API_URL:String; //slotID:0
+ private var _OTHERSPONSOR_URL:String; //slotID:0
+ private var _LOGGER_API_URL:String; //slotID:0
+ private var _PLAYLEN_API_URL:String; //slotID:0
+ private var _PIZZA_URL:String; //slotID:0
+ private var _PLAYERVERSION_XML_URL:String; //slotID:0
+ private var _PLAYERINFO_XML_URL:String; //slotID:0
+ private var _CROSSSHAREDOBJECT_SWF_URL:String; //slotID:0
+ private var _CROSSSHAREDOBJECT_NONIMG_SWF_URL:String; //slotID:0
+ private var _VIEWCONTROLLER_SWF_URL:String; //slotID:0
+ private var _VIEW_SWF_URL:String; //slotID:0
+ private var _MARQUEE_PLAYER_URL:String; //slotID:0
+ private var _NICOSPLAYER_URL:String; //slotID:0
+ private var _THUMBPLAYER_CONTROLLER_URL:String; //slotID:0
+ private var _THUMBPLAYER_VIEW_URL:String; //slotID:0
+ private var _HIROBA_MOVIE_URL:String; //slotID:0
+ private var _PARADE_MAP_URL:String; //slotID:0
+ private var _USERSPONSOR_MOVIE_URL:String; //slotID:0
+ private var _HIROBA_GETPOSTKEY_URL:String; //slotID:0
+ private var _PREMIUMLEAD_ON_SLIDER_LINK_URL:String; //slotID:0
+ private var _GET_CHECKLIST_URL:String; //slotID:0
+ private var _HIROBACONNECTOR_SWF_URL:String; //slotID:0
+ private var _VIDEO_MENU_URL:String; //slotID:0
+ private var _VIDEO_ENDER_URL:String; //slotID:0
+ private var _MYLIST_ADD_API_URL:String; //slotID:0
+ private var _FEED_ADD_API_URL:String; //slotID:0
+ private var _FEED_DEL_API_URL:String; //slotID:0
+ private var _FEED_LIST_API_URL:String; //slotID:0
+ private var _MYLIST_PAGE_URL:String; //slotID:0
+ private var _OPEN_MYLIST_URL:String; //slotID:0
+ private var _PLUGINLOADER_SWF_URL:String; //slotID:0
+ private var _GET_NSKEY_URL:String; //slotID:0
+ private var _MYLIST_COMMENT_URL:String; //slotID:0
+ private var _APPLIBAR_URL:String; //slotID:0
+ private var _JSCONNECTOR_SWF_URL:String; //slotID:0
+ private var _GET_PLAYLIST_URL:String; //slotID:0
+ private var _WATCH_API_URL:String; //slotID:0
+ private var _PLAYLIST_PAGE_BASE_URL:String; //slotID:0
+ private var _LEAD_MOBILE_WATCH_API_URL:String; //slotID:0
+ private var _REMOCON_ALERT_SWF_URL:String; //slotID:0
+ private var _CLICK_COUNTER_BASE_URL:String; //slotID:0
+
+ public function get CHANNEL_URL():String
+ { //MethodID:2961, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._CHANNEL_URL;
+ }
+
+ internal function set CHANNEL_URL(hug1:String):void
+ { //MethodID:2962, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._CHANNEL_URL = hug1;
+ }
+
+ public function get VIEW_SWF_URL():String
+ { //MethodID:2963, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._VIEW_SWF_URL;
+ }
+
+ internal function set VIEW_SWF_URL(hug1:String):void
+ { //MethodID:2964, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._VIEW_SWF_URL = hug1;
+ }
+
+ public function get VIEWCONTROLLER_SWF_URL():String
+ { //MethodID:2965, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._VIEWCONTROLLER_SWF_URL;
+ }
+
+ internal function set VIEWCONTROLLER_SWF_URL(hug1:String):void
+ { //MethodID:2966, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._VIEWCONTROLLER_SWF_URL = hug1;
+ }
+
+ public function get MARQUEE_PLAYER_URL():String
+ { //MethodID:2967, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MARQUEE_PLAYER_URL;
+ }
+
+ internal function set MARQUEE_PLAYER_URL(hug1:String):void
+ { //MethodID:2968, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MARQUEE_PLAYER_URL = hug1;
+ }
+
+ public function get PLAYERVERSION_XML_URL():String
+ { //MethodID:2969, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PLAYERVERSION_XML_URL;
+ }
+
+ internal function set PLAYERVERSION_XML_URL(hug1:String):void
+ { //MethodID:2970, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PLAYERVERSION_XML_URL = hug1;
+ }
+
+ public function get PLAYERINFO_XML_URL():String
+ { //MethodID:2971, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PLAYERINFO_XML_URL;
+ }
+
+ internal function set PLAYERINFO_XML_URL(hug1:String):void
+ { //MethodID:2972, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PLAYERINFO_XML_URL = hug1;
+ }
+
+ public function get CROSSSHAREDOBJECT_SWF_URL():String
+ { //MethodID:2973, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._CROSSSHAREDOBJECT_SWF_URL;
+ }
+
+ internal function set CROSSSHAREDOBJECT_SWF_URL(hug1:String):void
+ { //MethodID:2974, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._CROSSSHAREDOBJECT_SWF_URL = hug1;
+ }
+
+ public function get CROSSSHAREDOBJECT_NONIMG_SWF_URL():String
+ { //MethodID:2975, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._CROSSSHAREDOBJECT_NONIMG_SWF_URL;
+ }
+
+ internal function set CROSSSHAREDOBJECT_NONIMG_SWF_URL(hug1:String):void
+ { //MethodID:2976, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._CROSSSHAREDOBJECT_NONIMG_SWF_URL = hug1;
+ }
+
+ public function get NICOSPLAYER_URL():String
+ { //MethodID:2977, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._NICOSPLAYER_URL;
+ }
+
+ internal function set NICOSPLAYER_URL(hug1:String):void
+ { //MethodID:2978, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._NICOSPLAYER_URL = hug1;
+ }
+
+ public function get HIROBA_MOVIE_URL():String
+ { //MethodID:2979, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._HIROBA_MOVIE_URL;
+ }
+
+ internal function set HIROBA_MOVIE_URL(hug1:String):void
+ { //MethodID:2980, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._HIROBA_MOVIE_URL = hug1;
+ }
+
+ public function get PARADE_MAP_URL():String
+ { //MethodID:2981, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PARADE_MAP_URL;
+ }
+
+ internal function set PARADE_MAP_URL(hug1:String):void
+ { //MethodID:2982, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PARADE_MAP_URL = hug1;
+ }
+
+ public function get USERSPONSOR_MOVIE_URL():String
+ { //MethodID:2983, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._USERSPONSOR_MOVIE_URL;
+ }
+
+ internal function set USERSPONSOR_MOVIE_URL(hug1:String):void
+ { //MethodID:2984, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._USERSPONSOR_MOVIE_URL = hug1;
+ }
+
+ public function get THUMBPLAYER_VIEW_URL():String
+ { //MethodID:2985, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._THUMBPLAYER_VIEW_URL;
+ }
+
+ internal function set THUMBPLAYER_VIEW_URL(hug1:String):void
+ { //MethodID:2986, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._THUMBPLAYER_VIEW_URL = hug1;
+ }
+
+ public function get THUMBPLAYER_CONTROLLER_URL():String
+ { //MethodID:2987, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._THUMBPLAYER_CONTROLLER_URL;
+ }
+
+ internal function set THUMBPLAYER_CONTROLLER_URL(hug1:String):void
+ { //MethodID:2988, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._THUMBPLAYER_CONTROLLER_URL = hug1;
+ }
+
+ public function get SMILEVIDEO_URL():String
+ { //MethodID:2989, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._SMILEVIDEO_URL;
+ }
+
+ internal function set SMILEVIDEO_URL(hug1:String):void
+ { //MethodID:2990, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._SMILEVIDEO_URL = hug1;
+ }
+
+ public function get HOWTOUSE_URL():String
+ { //MethodID:2991, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._HOWTOUSE_URL;
+ }
+
+ internal function set HOWTOUSE_URL(hug1:String):void
+ { //MethodID:2992, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._HOWTOUSE_URL = hug1;
+ }
+
+ public function get RECOMMEND_ENV_URL():String
+ { //MethodID:2993, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._RECOMMEND_ENV_URL;
+ }
+
+ internal function set RECOMMEND_ENV_URL(hug1:String):void
+ { //MethodID:2994, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._RECOMMEND_ENV_URL = hug1;
+ }
+
+ public function get DIC_NICOVIDEO_URL():String
+ { //MethodID:2995, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._DIC_NICOVIDEO_URL;
+ }
+
+ internal function set DIC_NICOVIDEO_URL(hug1:String):void
+ { //MethodID:2996, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._DIC_NICOVIDEO_URL = hug1;
+ }
+
+ public function get DELETE_COMMENT_URL():String
+ { //MethodID:2997, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._DELETE_COMMENT_URL;
+ }
+
+ internal function set DELETE_COMMENT_URL(hug1:String):void
+ { //MethodID:2998, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._DELETE_COMMENT_URL = hug1;
+ }
+
+ public function get ENTRY_HANDBOOK_URL():String
+ { //MethodID:2999, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ENTRY_HANDBOOK_URL;
+ }
+
+ internal function set ENTRY_HANDBOOK_URL(hug1:String):void
+ { //MethodID:3000, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._ENTRY_HANDBOOK_URL = hug1;
+ }
+
+ public function get BASE_URL():String
+ { //MethodID:3001, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._BASE_URL;
+ }
+
+ internal function set BASE_URL(hug1:String):void
+ { //MethodID:3002, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._BASE_URL = hug1;
+ }
+
+ public function get MOBILE_BASE_URL():String
+ { //MethodID:3003, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MOBILE_BASE_URL;
+ }
+
+ internal function set MOBILE_BASE_URL(hug1:String):void
+ { //MethodID:3004, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MOBILE_BASE_URL = hug1;
+ }
+
+ public function get MOBILE_WATCH_URL():String
+ { //MethodID:3005, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MOBILE_WATCH_URL;
+ }
+
+ internal function set MOBILE_WATCH_URL(hug1:String):void
+ { //MethodID:3006, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MOBILE_WATCH_URL = hug1;
+ }
+
+ public function get FLAPI_BASE_URL():String
+ { //MethodID:3007, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._FLAPI_BASE_URL;
+ }
+
+ internal function set FLAPI_BASE_URL(hug1:String):void
+ { //MethodID:3008, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._FLAPI_BASE_URL = hug1;
+ }
+
+ public function get RES_URL():String
+ { //MethodID:3009, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._RES_URL;
+ }
+
+ internal function set RES_URL(hug1:String):void
+ { //MethodID:3010, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._RES_URL = hug1;
+ }
+
+ public function get NICOVIDEO_ACCOUNT_SETTING_URL():String
+ { //MethodID:3011, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._NICOVIDEO_ACCOUNT_SETTING_URL;
+ }
+
+ internal function set NICOVIDEO_ACCOUNT_SETTING_URL(hug1:String):void
+ { //MethodID:3012, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._NICOVIDEO_ACCOUNT_SETTING_URL = hug1;
+ }
+
+ public function get NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL():String
+ { //MethodID:3013, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL;
+ }
+
+ internal function set NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL(hug1:String):void
+ { //MethodID:3014, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._NICOVIDEO_ACCOUNT_REGISTER_COMMON_URL = hug1;
+ }
+
+ public function get GETFLV_URL():String
+ { //MethodID:3015, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETFLV_URL;
+ }
+
+ internal function set GETFLV_URL(hug1:String):void
+ { //MethodID:3016, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETFLV_URL = hug1;
+ }
+
+ public function get GETPOSTKEY_URL():String
+ { //MethodID:3017, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETPOSTKEY_URL;
+ }
+
+ internal function set GETPOSTKEY_URL(hug1:String):void
+ { //MethodID:3018, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETPOSTKEY_URL = hug1;
+ }
+
+ public function get GETRELATION_URL():String
+ { //MethodID:3019, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETRELATION_URL;
+ }
+
+ internal function set GETRELATION_URL(hug1:String):void
+ { //MethodID:3020, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETRELATION_URL = hug1;
+ }
+
+ public function get GETTHUMBINFO_URL():String
+ { //MethodID:3021, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETTHUMBINFO_URL;
+ }
+
+ internal function set GETTHUMBINFO_URL(hug1:String):void
+ { //MethodID:3022, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETTHUMBINFO_URL = hug1;
+ }
+
+ public function get GETGAMERANKING_URL():String
+ { //MethodID:3023, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETGAMERANKING_URL;
+ }
+
+ internal function set GETGAMERANKING_URL(hug1:String):void
+ { //MethodID:3024, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETGAMERANKING_URL = hug1;
+ }
+
+ public function get GETENQUESTERESULT_URL():String
+ { //MethodID:3025, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETENQUESTERESULT_URL;
+ }
+
+ internal function set GETENQUESTERESULT_URL(hug1:String):void
+ { //MethodID:3026, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETENQUESTERESULT_URL = hug1;
+ }
+
+ public function get GETCONFIGURENGCLIENT_URL():String
+ { //MethodID:3027, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETCONFIGURENGCLIENT_URL;
+ }
+
+ internal function set GETCONFIGURENGCLIENT_URL(hug1:String):void
+ { //MethodID:3028, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETCONFIGURENGCLIENT_URL = hug1;
+ }
+
+ public function get THUMBWATCH_URL():String
+ { //MethodID:3029, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._THUMBWATCH_URL;
+ }
+
+ internal function set THUMBWATCH_URL(hug1:String):void
+ { //MethodID:3030, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._THUMBWATCH_URL = hug1;
+ }
+
+ public function get GET_CONFIGURE_NGWORD():String
+ { //MethodID:3031, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_CONFIGURE_NGWORD;
+ }
+
+ internal function set GET_CONFIGURE_NGWORD(hug1:String):void
+ { //MethodID:3032, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_CONFIGURE_NGWORD = hug1;
+ }
+
+ public function get GET_CLICKKEY_URL():String
+ { //MethodID:3033, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_CLICKKEY_URL;
+ }
+
+ internal function set GET_CLICKKEY_URL(hug1:String):void
+ { //MethodID:3034, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_CLICKKEY_URL = hug1;
+ }
+
+ public function get RULES_URL():String
+ { //MethodID:3035, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._RULES_URL;
+ }
+
+ internal function set RULES_URL(hug1:String):void
+ { //MethodID:3036, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._RULES_URL = hug1;
+ }
+
+ public function get NOSO_URL():String
+ { //MethodID:3037, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._NOSO_URL;
+ }
+
+ internal function set NOSO_URL(hug1:String):void
+ { //MethodID:3038, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._NOSO_URL = hug1;
+ }
+
+ public function get NOSO_BANNER_URL():String
+ { //MethodID:3039, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._NOSO_BANNER_URL;
+ }
+
+ internal function set NOSO_BANNER_URL(hug1:String):void
+ { //MethodID:3040, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._NOSO_BANNER_URL = hug1;
+ }
+
+ public function get GET_WAYBACKKEY_URL():String
+ { //MethodID:3041, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_WAYBACKKEY_URL;
+ }
+
+ internal function set GET_WAYBACKKEY_URL(hug1:String):void
+ { //MethodID:3042, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_WAYBACKKEY_URL = hug1;
+ }
+
+ public function get GET_DELETEKEY_URL():String
+ { //MethodID:3043, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_DELETEKEY_URL;
+ }
+
+ internal function set GET_DELETEKEY_URL(hug1:String):void
+ { //MethodID:3044, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_DELETEKEY_URL = hug1;
+ }
+
+ public function get GET_UPDATEKEY_URL():String
+ { //MethodID:3045, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_UPDATEKEY_URL;
+ }
+
+ internal function set GET_UPDATEKEY_URL(hug1:String):void
+ { //MethodID:3046, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_UPDATEKEY_URL = hug1;
+ }
+
+ public function get GET_THREADKEY_URL():String
+ { //MethodID:3047, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_THREADKEY_URL;
+ }
+
+ internal function set GET_THREADKEY_URL(hug1:String):void
+ { //MethodID:3048, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_THREADKEY_URL = hug1;
+ }
+
+ public function get REDIRECTOR_URL():String
+ { //MethodID:3049, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._REDIRECTOR_URL;
+ }
+
+ internal function set REDIRECTOR_URL(hug1:String):void
+ { //MethodID:3050, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._REDIRECTOR_URL = hug1;
+ }
+
+ public function get adAPI_URL():String
+ { //MethodID:3051, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._adAPI_URL;
+ }
+
+ internal function set adAPI_URL(hug1:String):void
+ { //MethodID:3052, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._adAPI_URL = hug1;
+ }
+
+ public function get REGISTERBGM_API_URL():String
+ { //MethodID:3053, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._REGISTERBGM_API_URL;
+ }
+
+ internal function set REGISTERBGM_API_URL(hug1:String):void
+ { //MethodID:3054, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._REGISTERBGM_API_URL = hug1;
+ }
+
+ public function get GETBGM_API_URL():String
+ { //MethodID:3055, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETBGM_API_URL;
+ }
+
+ internal function set GETBGM_API_URL(hug1:String):void
+ { //MethodID:3056, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETBGM_API_URL = hug1;
+ }
+
+ public function get GETSPONSOR_API_URL():String
+ { //MethodID:3057, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GETSPONSOR_API_URL;
+ }
+
+ internal function set GETSPONSOR_API_URL(hug1:String):void
+ { //MethodID:3058, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GETSPONSOR_API_URL = hug1;
+ }
+
+ public function get OTHERSPONSOR_URL():String
+ { //MethodID:3059, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._OTHERSPONSOR_URL;
+ }
+
+ internal function set OTHERSPONSOR_URL(hug1:String):void
+ { //MethodID:3060, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._OTHERSPONSOR_URL = hug1;
+ }
+
+ public function get LOGGER_API_URL():String
+ { //MethodID:3061, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._LOGGER_API_URL;
+ }
+
+ internal function set LOGGER_API_URL(hug1:String):void
+ { //MethodID:3062, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._LOGGER_API_URL = hug1;
+ }
+
+ public function get PLAYLEN_API_URL():String
+ { //MethodID:3063, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PLAYLEN_API_URL;
+ }
+
+ internal function set PLAYLEN_API_URL(hug1:String):void
+ { //MethodID:3064, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PLAYLEN_API_URL = hug1;
+ }
+
+ public function get PIZZA_URL():String
+ { //MethodID:3065, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PIZZA_URL;
+ }
+
+ internal function set PIZZA_URL(hug1:String):void
+ { //MethodID:3066, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PIZZA_URL = hug1;
+ }
+
+ public function get CLICK_COUNTER_BASE_URL():String
+ { //MethodID:3067, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._CLICK_COUNTER_BASE_URL;
+ }
+
+ internal function set CLICK_COUNTER_BASE_URL(hug1:String):void
+ { //MethodID:3068, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._CLICK_COUNTER_BASE_URL = hug1;
+ }
+
+ public function get HIROBA_GETPOSTKEY_URL():String
+ { //MethodID:3069, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._HIROBA_GETPOSTKEY_URL;
+ }
+
+ internal function set HIROBA_GETPOSTKEY_URL(hug1:String):void
+ { //MethodID:3070, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._HIROBA_GETPOSTKEY_URL = hug1;
+ }
+
+ public function get PREMIUMLEAD_ON_SLIDER_LINK_URL():String
+ { //MethodID:3071, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PREMIUMLEAD_ON_SLIDER_LINK_URL;
+ }
+
+ internal function set PREMIUMLEAD_ON_SLIDER_LINK_URL(hug1:String):void
+ { //MethodID:3072, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PREMIUMLEAD_ON_SLIDER_LINK_URL = hug1;
+ }
+
+ public function get GET_CHECKLIST_URL():String
+ { //MethodID:3073, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_CHECKLIST_URL;
+ }
+
+ internal function set GET_CHECKLIST_URL(hug1:String):void
+ { //MethodID:3074, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_CHECKLIST_URL = hug1;
+ }
+
+ public function get HIROBACONNECTOR_SWF_URL():String
+ { //MethodID:3075, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._HIROBACONNECTOR_SWF_URL;
+ }
+
+ internal function set HIROBACONNECTOR_SWF_URL(hug1:String):void
+ { //MethodID:3076, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._HIROBACONNECTOR_SWF_URL = hug1;
+ }
+
+ public function get VIDEO_MENU_URL():String
+ { //MethodID:3077, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._VIDEO_MENU_URL;
+ }
+
+ internal function set VIDEO_MENU_URL(hug1:String):void
+ { //MethodID:3078, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._VIDEO_MENU_URL = hug1;
+ }
+
+ public function get VIDEO_ENDER_URL():String
+ { //MethodID:3079, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._VIDEO_ENDER_URL;
+ }
+
+ internal function set VIDEO_ENDER_URL(hug1:String):void
+ { //MethodID:3080, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._VIDEO_ENDER_URL = hug1;
+ }
+
+ public function get MYLIST_ADD_API_URL():String
+ { //MethodID:3081, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MYLIST_ADD_API_URL;
+ }
+
+ internal function set MYLIST_ADD_API_URL(hug1:String):void
+ { //MethodID:3082, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MYLIST_ADD_API_URL = hug1;
+ }
+
+ public function get FEED_ADD_API_URL():String
+ { //MethodID:3083, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._FEED_ADD_API_URL;
+ }
+
+ internal function set FEED_ADD_API_URL(hug1:String):void
+ { //MethodID:3084, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._FEED_ADD_API_URL = hug1;
+ }
+
+ public function get FEED_DEL_API_URL():String
+ { //MethodID:3085, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._FEED_DEL_API_URL;
+ }
+
+ internal function set FEED_DEL_API_URL(hug1:String):void
+ { //MethodID:3086, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._FEED_DEL_API_URL = hug1;
+ }
+
+ public function get FEED_LIST_API_URL():String
+ { //MethodID:3087, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._FEED_LIST_API_URL;
+ }
+
+ internal function set FEED_LIST_API_URL(hug1:String):void
+ { //MethodID:3088, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._FEED_LIST_API_URL = hug1;
+ }
+
+ public function get MYLIST_PAGE_URL():String
+ { //MethodID:3089, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MYLIST_PAGE_URL;
+ }
+
+ internal function set MYLIST_PAGE_URL(hug1:String):void
+ { //MethodID:3090, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MYLIST_PAGE_URL = hug1;
+ }
+
+ public function get OPEN_MYLIST_URL():String
+ { //MethodID:3091, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._OPEN_MYLIST_URL;
+ }
+
+ internal function set OPEN_MYLIST_URL(hug1:String):void
+ { //MethodID:3092, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._OPEN_MYLIST_URL = hug1;
+ }
+
+ public function get PLUGINLOADER_SWF_URL():String
+ { //MethodID:3093, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PLUGINLOADER_SWF_URL;
+ }
+
+ internal function set PLUGINLOADER_SWF_URL(hug1:String):void
+ { //MethodID:3094, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PLUGINLOADER_SWF_URL = hug1;
+ }
+
+ public function get GET_NSKEY_URL():String
+ { //MethodID:3095, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_NSKEY_URL;
+ }
+
+ internal function set GET_NSKEY_URL(hug1:String):void
+ { //MethodID:3096, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_NSKEY_URL = hug1;
+ }
+
+ public function get MYLIST_COMMENT_URL():String
+ { //MethodID:3097, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._MYLIST_COMMENT_URL;
+ }
+
+ internal function set MYLIST_COMMENT_URL(hug1:String):void
+ { //MethodID:3098, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._MYLIST_COMMENT_URL = hug1;
+ }
+
+ public function get APPLIBAR_URL():String
+ { //MethodID:3099, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._APPLIBAR_URL;
+ }
+
+ internal function set APPLIBAR_URL(hug1:*):void
+ { //MethodID:3100, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._APPLIBAR_URL = hug1;
+ }
+
+ public function get JSCONNECTOR_SWF_URL():String
+ { //MethodID:3101, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._JSCONNECTOR_SWF_URL;
+ }
+
+ internal function set JSCONNECTOR_SWF_URL(hug1:String):void
+ { //MethodID:3102, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._JSCONNECTOR_SWF_URL = hug1;
+ }
+
+ public function get GET_PLAYLIST_URL():String
+ { //MethodID:3103, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._GET_PLAYLIST_URL;
+ }
+
+ internal function set GET_PLAYLIST_URL(hug1:String):void
+ { //MethodID:3104, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._GET_PLAYLIST_URL = hug1;
+ }
+
+ public function get WATCH_API_URL():String
+ { //MethodID:3105, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._WATCH_API_URL;
+ }
+
+ internal function set WATCH_API_URL(hug1:String):void
+ { //MethodID:3106, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._WATCH_API_URL = hug1;
+ }
+
+ public function get PLAYLIST_PAGE_BASE_URL():String
+ { //MethodID:3107, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._PLAYLIST_PAGE_BASE_URL;
+ }
+
+ internal function set PLAYLIST_PAGE_BASE_URL(hug1:String):void
+ { //MethodID:3108, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._PLAYLIST_PAGE_BASE_URL = hug1;
+ }
+
+ public function get LEAD_MOBILE_WATCH_API_URL():String
+ { //MethodID:3109, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._LEAD_MOBILE_WATCH_API_URL;
+ }
+
+ internal function set LEAD_MOBILE_WATCH_API_URL(hug1:String):void
+ { //MethodID:3110, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._LEAD_MOBILE_WATCH_API_URL = hug1;
+ }
+
+ public function get REMOCON_ALERT_SWF_URL():String
+ { //MethodID:3111, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._REMOCON_ALERT_SWF_URL;
+ }
+
+ internal function set REMOCON_ALERT_SWF_URL(hug1:String):void
+ { //MethodID:3112, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._REMOCON_ALERT_SWF_URL = hug1;
+ }
+
+ //constructor
+ public function NicoConfig()
+ { //MethodID:3113, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script178■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import jp.nicovideo.nicoplayer.remocon.method.IRemoconMethod
+
+ //■class(instance)_index:226
+ public interface IRemoconReceiver
+ {
+ //static constructor
+ public static function IRemoconReceiver$cinit()
+ { //MethodID:3115, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function callMethod(hug1:String, hug2:Object):void; //MethodID:3116, dispID:0
+
+ function isDefinedMethod(hug1:String):Boolean; //MethodID:3117, dispID:0
+
+ function defineMethod(hug1:String, hug2:Function):IRemoconMethod; //MethodID:3118, dispID:0
+
+ function get environment():Object; //MethodID:3119, dispID:0
+
+ //constructor
+ public function IRemoconReceiver(); //MethodID:3120, dispID:0
+ }
+}
+
+//■script179■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.remocon.method.IRemoconMethod
+ import jp.nicovideo.nicoplayer.remocon.method.RemoconMethod
+
+ //■class(instance)_index:228
+ public class RemoconReceiver extends Object implements IRemoconReceiver
+ {
+ //static constructor
+ public static function RemoconReceiver$cinit()
+ { //MethodID:3124, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ private static var __instance:RemoconReceiver; //slotID:1
+
+ public static function initialize(hug1:Object, hug2:Function):void
+ { //dispID:3, MethodID:3125, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 47
+ if(__instance != null) throw new IllegalOperationError("RemoconReceiver.initialize: already initialized.");
+
+ __instance = new void(new _Guard(), hug1);
+
+ hug2(instance);
+ }
+
+ public static function get hasInitialized():Boolean
+ { //dispID:4, MethodID:3126, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ return (__instance != null);
+ }
+
+ public static function get instance():RemoconReceiver
+ { //dispID:5, MethodID:3127, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ if(__instance == null) throw new IllegalOperationError("RemoconReceiver.get instance: has not initialized yet.");
+
+ return __instance;
+ }
+
+ //constructor
+ public function RemoconReceiver(hug1:_Guard, hug2:Object)
+ { //MethodID:3128, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 40
+ this._methods = {};
+ this._env = {};
+
+ super();
+
+ if(hug1 == null) throw new ArgumentError("RemoconReceiver.RemoconReceiver: invalid params guard.");
+
+ this._env = hug2;
+ }
+
+ //variables/etc.
+ private var _methods:Object; //slotID:0
+ private var _env:Object; //slotID:0
+
+ public function callMethod(hug1:String, hug2:Object):void
+ { //MethodID:3129, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 50
+ if(!this.isDefinedMethod(hug1)) throw new ArgumentError("RemoconReceiver.callMethod: is not defined method name \"" + hug1 + "\"");
+ IRemoconMethod(this._methods[hug1]).call(hug2);
+ }
+
+ public function isDefinedMethod(hug1:String):Boolean
+ { //MethodID:3130, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return this._methods.hasOwnProperty(hug1);
+ }
+
+ public function defineMethod(hug1:String, hug2:Function):IRemoconMethod
+ { //MethodID:3131, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 25
+ var hug3:IRemoconMethod = new RemoconMethod(hug2);
+ this._methods[hug1] = hug3;
+ return hug3;
+ }
+
+ public function get environment():Object
+ { //MethodID:3132, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._env;
+ }
+ }
+}
+
+
+//■class(instance)_index:227
+//private
+class _Guard extends Object
+{
+ //static constructor
+ public static function _Guard$cinit()
+ { //MethodID:3122, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Guard()
+ { //MethodID:3123, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script180■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:229
+ public interface IDeleteFilter
+ {
+ //static constructor
+ public static function IDeleteFilter$cinit()
+ { //MethodID:3134, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get onFinishable():Functions; //MethodID:3135, dispID:0
+
+ function finishEdit():void; //MethodID:3136, dispID:0
+
+ function set onFinishedEdit(hug1:Function):void; //MethodID:3137, dispID:0
+
+ function updateDeleteList(hug1:Array, hug2:String):void; //MethodID:3138, dispID:0
+
+ //constructor
+ public function IDeleteFilter(); //MethodID:3139, dispID:0
+ }
+}
+
+//■script181■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ import jp.nicovideo.nicoplayer.models.comment.CommentDeleteStatus
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.IEditableCommentList
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.events.EventBarrier
+ import jp.nicovideo.util.events.EventResult
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:230
+ public class DeleteFilter extends Object implements IDeleteFilter
+ {
+ //static constructor
+ public static function DeleteFilter$cinit()
+ { //MethodID:3141, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function DeleteFilter(hug1:Object, hug2:Boolean=false)
+ { //MethodID:3142, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ this.originalDeleteList = {};
+ this.newDeleteList = {};
+ this.finishedList = [];
+ this.__onFinishable = new Functions();
+
+ super();
+
+ this.__commentListContainer = hug1;
+ this.__isEditMode = hug2;
+ }
+
+ //variables/etc.
+ private var __isEditMode:Boolean = false; //slotID:0
+ private var __onFinishedEdit:Function; //slotID:0
+ private var __isFinishable:Boolean = false; //slotID:0
+ private var __commentListContainer:Object; //slotID:0
+ private var originalDeleteList:Object; //slotID:0
+ private var newDeleteList:Object; //slotID:0
+ private var finishedList:Array; //slotID:0
+ private var _listName:String; //slotID:0
+ private var __onFinishable:Functions; //slotID:0
+ private var _lockedComment:LockedComment; //slotID:0
+
+ public function get onFinishable():Functions
+ { //MethodID:3143, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__onFinishable;
+ }
+
+ public function finishEdit():void
+ { //MethodID:3146, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 572
+ internal var barrier:EventBarrier; //slotID:1
+ internal var allSucceeded:Boolean; //slotID:2
+ internal var listName:String; //slotID:3
+ internal var deleteList:Array; //slotID:4
+ internal var undeleteList:Array; //slotID:5
+ internal var resNo:uint; //slotID:6
+
+ allSucceeded = false;
+ listName = null;
+ deleteList = null;
+ undeleteList = null;
+ resNo = 0;
+
+ if(!this.__isEditMode) throw new Error("DeleteFilter.finishEdit: is not edit mode.");
+
+ if(!this.__isFinishable) throw new Error("DeleteFilter.finishEdit: is not able to finish editing.");
+
+ barrier = new EventBarrier();
+ allSucceeded = true;
+
+ for(listName in this.__commentListContainer){
+ if(!this.__commentListContainer[listName]) break;
+
+ deleteList = [];
+ undeleteList = [];
+
+ if(this.newDeleteList[listName] && (this.newDeleteList[listName].length > 0)){
+ for each(resNo in this.newDeleteList[listName]){
+ if(this.originalDeleteList[listName]){
+ if(this.originalDeleteList[listName].indexOf(resNo) == (-1)) deleteList.push(resNo);
+ }
+ }
+ }
+
+ if(this.originalDeleteList[listName] && (this.originalDeleteList[listName].length > 0)){
+ for each(resNo in this.originalDeleteList[listName]){
+ if(this.newDeleteList[listName]){
+ if(this.newDeleteList[listName].indexOf(resNo) == (-1)) undeleteList.push(resNo);
+ }
+ }
+ }
+
+ if((deleteList.length == 0) && (undeleteList.length == 0)){
+ }else{
+ deleteList = this._lockedComment.convertOriginalResNo(listName, deleteList);
+ undeleteList = this._lockedComment.convertOriginalResNo(listName, undeleteList);
+
+ IEditableCommentList(this.__commentListContainer[listName]).editCommentList(deleteList, undeleteList, barrier.bind(function(hug1:Boolean):void{ //MethodID:3144, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 19
+ allSucceeded = (allSucceeded && hug1);
+ }));
+ }
+ }
+
+ this._lockedComment.saveLockedComment();
+ barrier.finish(function():void{ //MethodID:3145, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 14
+ __onFinishedEdit.apply(null, [allSucceeded]);
+ });
+ }
+
+ public function set onFinishedEdit(hug1:Function):void
+ { //MethodID:3147, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ if(!this.__isEditMode) throw new Error("DeleteFilter.finishEdit: is not edit mode.");
+
+ this.__onFinishedEdit = hug1;
+
+ if(!this.__isFinishable){
+ this.__isFinishable = true;
+
+ this.onFinishable.apply();
+ }
+ }
+
+ public function set lockedComment(hug1:LockedComment):void
+ { //MethodID:3148, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._lockedComment = hug1;
+ }
+
+ public function updateDeleteList(hug1:Array, hug2:String):void
+ { //MethodID:3149, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 79
+ if(!this.__isEditMode) throw new Error("DeleteFilter.updateDeleteList: is not edit-mode.");
+
+ if(!this.__commentListContainer.hasOwnProperty(hug2)) throw new Error("DeleteFilter.updateDeleteList: invalid listName.");
+
+ this.newDeleteList[hug2] = (this._lockedComment ? this._lockedComment.filterDeleteComment(hug1, hug2) : hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdated(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):EventResult
+ { //MethodID:3151, LocalCount= 8 , MaxScope= 2, MaxStack= 5, CodeLength= 397
+ internal var addList:Array; //slotID:1
+ internal var removeList:Array; //slotID:2
+ internal var allClear:Boolean; //slotID:3
+ internal var listName:String; //slotID:4
+ internal var buf:Array; //slotID:5
+ internal var comment:IComment; //slotID:6
+ internal var isLockedComment:Function; //slotID:7
+ internal var locked:Array; //slotID:8
+ internal var comment4Search:IComment; //slotID:9
+
+ comment = null;
+ locked = null;
+ comment4Search = null;
+ addList = hug1;
+ removeList = hug2;
+ allClear = hug3;
+ listName = hug4;
+ isLockedComment = function(hug1:IComment):Boolean{ //MethodID:3150, LocalCount= 6 , MaxScope= 0, MaxStack= 2, CodeLength= 57
+ var hug3:IComment = null;
+ var hug2:Number = hug1.resNo;
+
+ for each(hug3 in locked){
+ if(hug3.resNo == hug2) return true;
+ }
+
+ return false;
+ };
+
+ if(this.__isEditMode){
+ locked = [];
+
+ if(this._lockedComment) locked = this._lockedComment.getLockedList(listName);
+
+ if(!this.originalDeleteList[listName]){
+ this.originalDeleteList[listName] = [];
+
+ for each(comment4Search in addList){
+ if((comment4Search.deleted != CommentDeleteStatus.NON) && !isLockedComment(comment4Search)) this.originalDeleteList[listName].push(comment4Search.resNo);
+ }
+
+ if(this.__onFinishedEdit != null){
+ this.__isFinishable = true;
+
+ this.onFinishable.apply();
+ }
+ }
+
+ return EventResult.THROUGH;
+ }
+
+ buf = [];
+
+ for each(comment in addList){
+ if((comment.deleted == 0) && (comment.isTrunk || !comment.command.patissier)){
+ buf.push(comment);
+ }else{
+ removeList.push(comment);
+ }
+ }
+
+ return EventResult.replace([buf, removeList, allClear, listName]);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get originalDeleteList():Object
+ { //MethodID:3152, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.originalDeleteList;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get newDeleteList():Object
+ { //MethodID:3153, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.newDeleteList;
+ }
+ }
+}
+
+//■script182■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ //■class(instance)_index:231
+ public interface IPlaylist
+ {
+ //static constructor
+ public static function IPlaylist$cinit()
+ { //MethodID:3155, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function getVideoInfo(hug1:String):VideoInfo; //MethodID:3156, dispID:0
+
+ function getNextVideoInfo(hug1:String):VideoInfo; //MethodID:3157, dispID:0
+
+ function getPrevVideoInfo(hug1:String):VideoInfo; //MethodID:3158, dispID:0
+
+ function sort(hug1:uint, hug2:Boolean=false):void; //MethodID:3159, dispID:0
+
+ function setErrorInfo(hug1:String, hug2:String):void; //MethodID:3160, dispID:0
+
+ function get list():Array; //MethodID:3161, dispID:0
+
+ function get id():uint; //MethodID:3162, dispID:0
+
+ function get name():String; //MethodID:3163, dispID:0
+
+ function get description():String; //MethodID:3164, dispID:0
+
+ function get defaultSort():uint; //MethodID:3165, dispID:0
+
+ function get token():String; //MethodID:3166, dispID:0
+
+ function set token(hug1:String):void; //MethodID:3167, dispID:0
+
+ function get numericSortItems():Array; //MethodID:3168, dispID:0
+
+ function get descendSortItems():Array; //MethodID:3169, dispID:0
+
+ //constructor
+ public function IPlaylist(); //MethodID:3170, dispID:0
+ }
+}
+
+//■script183■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ import com.adobe.serialization.json.JSON
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+ import jp.nicovideo.nicoplayer.models.api.InitializeInfo
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.HTTPUtils
+ import jp.nicovideo.util.events.event_sender
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender);
+
+ //■class(instance)_index:232
+ public class Playlist extends Object implements IPlaylist
+ {
+ //static constructor
+ public static function Playlist$cinit()
+ { //MethodID:3172, LocalCount= 1 , MaxScope= 1, MaxStack= 15, CodeLength= 157
+ _NUMERIC_SORT_ITEMS = [PlaylistSortConstants.CREATE_TIME_ASCEND, PlaylistSortConstants.CREATE_TIME_DESCEND, PlaylistSortConstants.FIRST_RETREVE_ASCEND, PlaylistSortConstants.FIRST_RETREVE_DESCEND, PlaylistSortConstants.VIEW_COUNTER_ASCEND, PlaylistSortConstants.VIEW_COUNTER_DESCEND, PlaylistSortConstants.UPDATE_TIME_ASCEND, PlaylistSortConstants.UPDATE_TIME_DESCEND, PlaylistSortConstants.NUM_RES_ASCEND, PlaylistSortConstants.NUM_RES_DESCEND, PlaylistSortConstants.MYLIST_COUNTER_ASCEND, PlaylistSortConstants.MYLIST_COUNTER_DESCEND, PlaylistSortConstants.LENGTH_SECONDS_ASCEND, PlaylistSortConstants.LENGTH_SECONDS_DESCEND];
+ _DESCEND_SORT_ITEMS = [PlaylistSortConstants.CREATE_TIME_DESCEND, PlaylistSortConstants.MYLIST_COMMENT_DESCEND, PlaylistSortConstants.FIRST_RETREVE_DESCEND, PlaylistSortConstants.LENGTH_SECONDS_DESCEND, PlaylistSortConstants.MYLIST_COUNTER_DESCEND, PlaylistSortConstants.NUM_RES_DESCEND, PlaylistSortConstants.TITLE_DESCEND, PlaylistSortConstants.UPDATE_TIME_DESCEND, PlaylistSortConstants.VIEW_COUNTER_DESCEND];
+ }
+
+ //static variables/etc.
+ private static const _NUMERIC_SORT_ITEMS:Array; //slotID:1
+ private static const _DESCEND_SORT_ITEMS:Array; //slotID:2
+
+ //constructor
+ public function Playlist(hug1:String, hug2:Object, hug3:Number, hug4:Function)
+ { //MethodID:3175, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 78
+ internal var apiURL:String; //slotID:1
+ internal var apiParam:Object; //slotID:2
+ internal var defaultSort:Number; //slotID:3
+ internal var callbackFunc:Function; //slotID:4
+
+ apiURL = hug1;
+ apiParam = hug2;
+ defaultSort = hug3;
+ callbackFunc = hug4;
+ this.onPlaylistSorted = new Functions();
+ this.onPlaylistItemUpdated = new Functions();
+ this._systemMessage = SystemMessage.instance;
+
+ super();
+ HTTPUtils.loadJSON(function(hug1:Object):void{ //MethodID:3174, LocalCount= 5 , MaxScope= 1, MaxStack= 17, CodeLength= 646
+ internal var obj:Object; //slotID:1
+ internal var playlistInfo:Object; //slotID:2
+ internal var items:Object; //slotID:3
+ internal var item:Object; //slotID:4
+ internal var videoInfo:VideoInfo; //slotID:5
+
+ item = null;
+ videoInfo = null;
+ obj = hug1;
+
+ if(!obj || (obj.status == "ng")){
+ callbackFunc(false);
+
+ return;
+ }
+
+ _initializeInfo = InitializeInfo.init(obj.user_id, obj.nickname, (obj.is_premium == "1"), parseInt(obj.ng_rv, 10), (obj.ng_maintenance == "1"), obj.feedrev, ((obj.rpu != null) ? JSON.decode(obj.rpu) : null));
+ playlistInfo = obj.playlist;
+ _id = playlistInfo.id;
+ _name = playlistInfo.name;
+ _description = playlistInfo.description;
+
+ if(obj.playlist && obj.playlist.default_sort) _ownerSort = uint(obj.playlist.default_sort);
+
+ if(isNaN(defaultSort)){
+ _defaultSort = _ownerSort;
+ }else if(defaultSort || (defaultSort == 0)){
+ _defaultSort = uint(defaultSort);
+ }
+
+ _token = obj.playlist_token;
+ items = obj.items;
+ _list = [];
+
+ for each(item in items){
+ videoInfo = new VideoInfo(item.title, item.description, item.mylist_comment, item.thread_id, item.video_id, item.watch_id, item.thumbnail_url, item.view_counter, item.num_res, item.mylist_counter, item.deleted, new Date(item.item_update_time), new Date(item.first_retrieve), new Date(item.create_time), item.length_seconds);
+
+ if(videoInfo.deleted == 8){
+ videoInfo.errorMessage = PlaylistErrorManager.VIDEO_ERROR;
+ }else if(videoInfo.deleted){
+ videoInfo.errorMessage = PlaylistErrorManager.NO_VIDEO;
+ }
+
+ if(item.thread_id) list.push(videoInfo);
+ }
+
+ sort(_ownerSort, true);
+ _list.forEach(function(hug1:VideoInfo, hug2:int, hug3:Array):void{ //MethodID:3173, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 9
+ hug1.ownersIndex = (hug2 + 1);
+ });
+ sort(_defaultSort);
+ callbackFunc(true);
+ }, apiURL, apiParam);
+ }
+
+ //variables/etc.
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistSorted:Functions;//slotID:0
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_sender) const onPlaylistItemUpdated:Functions;//slotID:0
+ private var _list:Array; //slotID:0
+ private var _id:uint; //slotID:0
+ private var _name:String; //slotID:0
+ private var _description:String; //slotID:0
+ private var _defaultSort:uint = 1; //slotID:0
+ private var _ownerSort:uint = 1; //slotID:0
+ private var _token:String; //slotID:0
+ private var _initializeInfo:InitializeInfo; //slotID:0
+ private var _systemMessage:SystemMessage; //slotID:0
+
+ public function getVideoInfo(hug1:String):VideoInfo
+ { //MethodID:3177, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 34
+ internal var threadID:String; //slotID:1
+ internal var videoInfo:VideoInfo; //slotID:2
+
+ videoInfo = null;
+ threadID = hug1;
+
+ this.list.forEach(function(hug1:VideoInfo, hug2:int, hug3:Array):void{ //MethodID:3176, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 20
+ if(hug1.threadID == threadID){
+ videoInfo = hug1;
+ return;
+ }
+ });
+
+ return videoInfo;
+ }
+
+ public function getNextVideoInfo(hug1:String):VideoInfo
+ { //MethodID:3178, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 53
+ var hug2:VideoInfo = this.getVideoInfo(hug1);
+ var hug3:int = (this.list.indexOf(hug2) + 1);
+
+ if(hug3 >= this.list.length) return null;
+
+ return VideoInfo(this.list[hug3]);
+ }
+
+ public function getPrevVideoInfo(hug1:String):VideoInfo
+ { //MethodID:3179, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 46
+ var hug2:VideoInfo = this.getVideoInfo(hug1);
+ var hug3:int = (this.list.indexOf(hug2) - 1);
+
+ if(hug3 < 0) return null;
+
+ return VideoInfo(this.list[hug3]);
+ }
+
+ public function setErrorInfo(hug1:String, hug2:String):void
+ { //MethodID:3180, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ var hug3:VideoInfo = this.getVideoInfo(hug1);
+ hug3.errorMessage = hug2;
+
+ onPlaylistItemUpdated.apply(this._list);
+ }
+
+ public function sort(hug1:uint, hug2:Boolean=false):void
+ { //MethodID:3181, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 604
+ var hug3:String = null;
+ var hug4:uint = ((_NUMERIC_SORT_ITEMS.indexOf(hug1) != (-1)) ? Array.NUMERIC : 0);
+ var hug5:uint = ((_DESCEND_SORT_ITEMS.indexOf(hug1) != (-1)) ? Array.DESCENDING : 0);
+ var hug6:uint = hug1;
+
+ switch(hug6){
+ case PlaylistSortConstants.CREATE_TIME_ASCEND:
+ case PlaylistSortConstants.CREATE_TIME_DESCEND:
+ hug3 = "createTime";
+ break;
+ case PlaylistSortConstants.MYLIST_COMMENT_ASCEND:
+ case PlaylistSortConstants.MYLIST_COMMENT_DESCEND:
+ hug3 = "mylistComment";
+ break;
+ case PlaylistSortConstants.FIRST_RETREVE_ASCEND:
+ case PlaylistSortConstants.FIRST_RETREVE_DESCEND:
+ hug3 = "firstRetrieve";
+ break;
+ case PlaylistSortConstants.LENGTH_SECONDS_ASCEND:
+ case PlaylistSortConstants.LENGTH_SECONDS_DESCEND:
+ hug3 = "lengthSeconds";
+ break;
+ case PlaylistSortConstants.MYLIST_COUNTER_ASCEND:
+ case PlaylistSortConstants.MYLIST_COUNTER_DESCEND:
+ hug3 = "mylistCounter";
+ break;
+ case PlaylistSortConstants.NUM_RES_ASCEND:
+ case PlaylistSortConstants.NUM_RES_DESCEND:
+ hug3 = "numRes";
+ break;
+ case PlaylistSortConstants.TITLE_ASCEND:
+ case PlaylistSortConstants.TITLE_DESCEND:
+ hug3 = "title";
+ break;
+ case PlaylistSortConstants.UPDATE_TIME_ASCEND:
+ case PlaylistSortConstants.UPDATE_TIME_DESCEND:
+ hug3 = "itemUpdateTime";
+ break;
+ case PlaylistSortConstants.VIEW_COUNTER_ASCEND:
+ case PlaylistSortConstants.VIEW_COUNTER_DESCEND:
+ hug3 = "viewCounter";
+ break;
+ default:
+ break;
+ }
+
+ this._list.sortOn(hug3, (hug4 | hug5));
+
+ if(!hug2) onPlaylistSorted.apply(this._list);
+ }
+
+ public function get list():Array
+ { //MethodID:3182, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._list;
+ }
+
+ public function get id():uint
+ { //MethodID:3183, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._id;
+ }
+
+ public function get name():String
+ { //MethodID:3184, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function get description():String
+ { //MethodID:3185, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._description;
+ }
+
+ public function get defaultSort():uint
+ { //MethodID:3186, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._defaultSort;
+ }
+
+ public function get token():String
+ { //MethodID:3187, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._token;
+ }
+
+ public function set token(hug1:String):void
+ { //MethodID:3188, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._token = hug1;
+ }
+
+ public function get numericSortItems():Array
+ { //MethodID:3189, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ return _NUMERIC_SORT_ITEMS;
+ }
+
+ public function get descendSortItems():Array
+ { //MethodID:3190, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ return _DESCEND_SORT_ITEMS;
+ }
+ }
+}
+
+//■script184■
+
+package jp.nicovideo.nicoplayer.tpls.shutter{
+
+ //■class(instance)_index:233
+ public class CommentShutterConstants extends Object
+ {
+ //static constructor
+ public static function CommentShutterConstants$cinit()
+ { //MethodID:3192, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 332
+ _END_OF_ENUM = 0;
+ SHUTTER_INITIALIZING = (_END_OF_ENUM++);
+ SHUTTER_COMMENT_LOADING = (_END_OF_ENUM++);
+ SHUTTER_NICOS_COMMENT_DISABLED = (_END_OF_ENUM++);
+ SHUTTER_NICOS_ATPAUSE = (_END_OF_ENUM++);
+ SHUTTER_NICOWARI = (_END_OF_ENUM++);
+ SHUTTER_WAYBACK = (_END_OF_ENUM++);
+ SHUTTER_MYMEMORY = (_END_OF_ENUM++);
+ SHUTTER_CHANNEL_COMMUNITY = (_END_OF_ENUM++);
+ SHUTTER_NOCOMMENT = (_END_OF_ENUM++);
+ SHUTTER_NOSHAREDOBJECT = (_END_OF_ENUM++);
+ SHUTTER_LOCKED = (_END_OF_ENUM++);
+ SHUTTER_OTHER = (_END_OF_ENUM++);
+ END_OF_ENUM = _END_OF_ENUM;
+ }
+
+ //static variables/etc.
+ private static var _END_OF_ENUM:int = 0; //slotID:1
+ public static const SHUTTER_INITIALIZING:int; //slotID:2
+ public static const SHUTTER_COMMENT_LOADING:int; //slotID:3
+ public static const SHUTTER_NICOS_COMMENT_DISABLED:int; //slotID:4
+ public static const SHUTTER_NICOS_ATPAUSE:int; //slotID:5
+ public static const SHUTTER_NICOWARI:int; //slotID:6
+ public static const SHUTTER_WAYBACK:int; //slotID:7
+ public static const SHUTTER_MYMEMORY:int; //slotID:8
+ public static const SHUTTER_CHANNEL_COMMUNITY:int; //slotID:9
+ public static const SHUTTER_NOCOMMENT:int; //slotID:10
+ public static const SHUTTER_NOSHAREDOBJECT:int; //slotID:11
+ public static const SHUTTER_LOCKED:int; //slotID:12
+ public static const SHUTTER_OTHER:int; //slotID:13
+ public static const END_OF_ENUM:int; //slotID:14
+
+ //constructor
+ public function CommentShutterConstants()
+ { //MethodID:3193, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script185■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ import flash.events.Event
+ import flash.events.EventDispatcher
+
+ //■class(instance)_index:234
+ public class RemoconState extends EventDispatcher
+ {
+ //static constructor
+ public static function RemoconState$cinit()
+ { //MethodID:3195, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 120
+ MAINTENANCE = "Maintenance";
+ INITIALIZE = "Initialize";
+ UNEXECUTABLE = "Unexecutable";
+ MANY_CONNECTION = "ManyConnection";
+ MAX_CONNECTION = "MaxConnection";
+ STANBY = "Standby";
+ CONNECTION = "Connection";
+ RECONNECTION = "Reconnection";
+ SEARCH = "Search";
+ COMPLETE = "Complete";
+ ERROR = "Error";
+ CLOSE = "Close";
+ _getInstance = function():RemoconState{ //MethodID:3196, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 50
+ internal var obj:RemoconState; //slotID:1
+
+ obj = null;
+ obj = new RemoconState(new _Guard());
+ _getInstance = function():RemoconState{ //MethodID:3197, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 4
+ return obj;
+ };
+
+ return _getInstance();
+ };
+ }
+
+ //static variables/etc.
+ public static const MAINTENANCE:String = "Maintenance"; //slotID:1
+ public static const INITIALIZE:String = "Initialize"; //slotID:2
+ public static const UNEXECUTABLE:String = "Unexecutable"; //slotID:3
+ public static const MANY_CONNECTION:String = "ManyConnection"; //slotID:4
+ public static const MAX_CONNECTION:String = "MaxConnection"; //slotID:5
+ public static const STANBY:String = "Standby"; //slotID:6
+ public static const CONNECTION:String = "Connection"; //slotID:7
+ public static const RECONNECTION:String = "Reconnection"; //slotID:8
+ public static const SEARCH:String = "Search"; //slotID:9
+ public static const COMPLETE:String = "Complete"; //slotID:10
+ public static const ERROR:String = "Error"; //slotID:11
+ public static const CLOSE:String = "Close"; //slotID:12
+ private static var _getInstance:Function; //slotID:13
+
+ public static function get instance():RemoconState
+ { //dispID:3, MethodID:3198, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return _getInstance();
+ }
+
+ //constructor
+ public function RemoconState(hug1:_Guard)
+ { //MethodID:3199, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ super();
+
+ if(hug1 == null) throw new ArgumentError("RemoconState.RemoconState: invalid params guard.");
+ }
+
+ //variables/etc.
+ private var _isConnecting:Boolean = false; //slotID:0
+
+ public function updateState(hug1:String):void
+ { //MethodID:3200, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 67
+ if(hug1 == COMPLETE){
+ this._isConnecting = true;
+
+ dispatchEvent(new Event(Event.CONNECT));
+ }else if(this._isConnecting){
+ this._isConnecting = false;
+
+ dispatchEvent(new Event(Event.CLOSE));
+ }
+ }
+
+ public function get isConnecting():Boolean
+ { //MethodID:3201, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isConnecting;
+ }
+ }
+}
+
+
+//■class(instance)_index:235
+//private
+class _Guard extends Object
+{
+ //static constructor
+ public static function _Guard$cinit()
+ { //MethodID:3202, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Guard()
+ { //MethodID:3203, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script186■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:236
+ public class CommentListPublicStatus extends Object
+ {
+ //static constructor
+ public static function CommentListPublicStatus$cinit()
+ { //MethodID:3205, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ ALL_DISABLE = "all_disabled";
+ ALL_ENABLE = "all_enabled";
+ MEMBER_ONLY = "member_only";
+ }
+
+ //static variables/etc.
+ public static const ALL_DISABLE:String = "all_disabled"; //slotID:1
+ public static const ALL_ENABLE:String = "all_enabled"; //slotID:2
+ public static const MEMBER_ONLY:String = "member_only"; //slotID:3
+
+ //constructor
+ public function CommentListPublicStatus()
+ { //MethodID:3206, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script187■
+
+package jp.nicovideo.nicoplayer.models.relation{
+
+ //■class(instance)_index:237
+ public interface IRecommendListOptions
+ {
+ //static constructor
+ public static function IRecommendListOptions$cinit()
+ { //MethodID:3208, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get page():uint; //MethodID:3209, dispID:0
+
+ function get order():String; //MethodID:3210, dispID:0
+
+ function get sort():String; //MethodID:3211, dispID:0
+
+ //constructor
+ public function IRecommendListOptions(); //MethodID:3212, dispID:0
+ }
+}
+
+//■script188■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import jp.nicovideo.nicoplayer.models.relation.IVideoenderInfo
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:238
+ public interface IRelatedVideoList
+ {
+ //static constructor
+ public static function IRelatedVideoList$cinit()
+ { //MethodID:3214, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function loadRecommendedList(hug1:String=null, hug2:String=null, hug3:uint=1):void;//MethodID:3215, dispID:0
+
+ function loadVideoenderInfo():void; //MethodID:3216, dispID:0
+
+ function loadWhole():void; //MethodID:3217, dispID:0
+
+ function get hasRecommendedListTotaled():Boolean; //MethodID:3218, dispID:0
+
+ function get onRecommendedListLoaded():Functions; //MethodID:3219, dispID:0
+
+ function get isRecommendeListLoading():Boolean; //MethodID:3220, dispID:0
+
+ function get isVideoenderInfoLoading():Boolean; //MethodID:3221, dispID:0
+
+ function get onVideoenderInfoLoaded():Functions; //MethodID:3222, dispID:0
+
+ function get videoenderInfo():IVideoenderInfo; //MethodID:3223, dispID:0
+
+ //constructor
+ public function IRelatedVideoList(); //MethodID:3224, dispID:0
+ }
+}
+
+//■script189■
+
+package jp.nicovideo.nicoplayer.models{
+
+ import __AS3__.vec.Vector
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.api.IGetRelation
+ import jp.nicovideo.nicoplayer.models.api.relation.GetRelationTarget
+ import jp.nicovideo.nicoplayer.models.api.relation.IGetRelationResult
+ import jp.nicovideo.nicoplayer.models.api.relation.IOwnerOtherVideo
+ import jp.nicovideo.nicoplayer.models.relation.IVideoenderInfo
+ import jp.nicovideo.nicoplayer.models.relation.VideoenderInfo
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:239
+ public class RelatedVideoList extends Object implements IRelatedVideoList
+ {
+ //static constructor
+ public static function RelatedVideoList$cinit()
+ { //MethodID:3226, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RelatedVideoList(hug1:IGetRelation, hug2:Boolean)
+ { //MethodID:3227, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ this._ON_RECOMMENDED_LIST_LOADED = new Functions();
+ this._ON_VIDEOENDER_INFO_LOADED = new Functions();
+
+ super();
+
+ this._getRelation = hug1;
+ this._hasRecommendedListTotaled = !hug2;
+ }
+
+ //variables/etc.
+ private const _ON_RECOMMENDED_LIST_LOADED:Functions; //slotID:0
+ private const _ON_VIDEOENDER_INFO_LOADED:Functions; //slotID:0
+ private var _hasRecommendedListTotaled:Boolean; //slotID:0
+ private var _isRecommendedListLoading:Boolean = false; //slotID:0
+ private var _isVideoenderInfoLoading:Boolean = false; //slotID:0
+ private var _nextRecommendedListParameters:_RequestParameters; //slotID:0
+ private var _getRelation:IGetRelation; //slotID:0
+ private var _videoInfo:VideoenderInfo; //slotID:0
+ private var _hasRecommendedListLoadCalled:Boolean; //slotID:0
+
+ public function loadRecommendedList(hug1:String=null, hug2:String=null, hug3:uint=1):void
+ { //MethodID:3229, LocalCount= 5 , MaxScope= 2, MaxStack= 8, CodeLength= 156
+ internal var sort:String = null; //slotID:1
+ internal var order:String = null; //slotID:2
+ internal var page:uint = 1; //slotID:3
+ internal var params:_RequestParameters; //slotID:4
+
+ params = null;
+ sort = hug1;
+ order = hug2;
+ page = hug3;
+
+ if(!this._hasRecommendedListTotaled) throw new Error("RelatedVideoList.load: has not totaled related videos.");
+
+ params = new _RequestParameters(sort, order, page);
+
+ if(this._isRecommendedListLoading){
+ this._nextRecommendedListParameters = params;
+ return;
+ }
+
+ this._isRecommendedListLoading = true;
+ this._hasRecommendedListLoadCalled = true;
+
+ this._getRelation.load(function(hug1:Boolean, hug2:IGetRelationResult):void{ //MethodID:3228, LocalCount= 4 , MaxScope= 0, MaxStack= 4, CodeLength= 81
+ var hug3:_RequestParameters = null;
+ _isRecommendedListLoading = false;
+
+ onRecommendedListLoaded.apply(hug1, (hug1 ? hug2.recommendedVideoList : null), params);
+
+ if(_nextRecommendedListParameters != null){
+ hug3 = _nextRecommendedListParameters;
+ _nextRecommendedListParameters = null;
+
+ loadRecommendedList(hug3.sort, hug3.order, hug3.page);
+ }
+ }, Vector.<String>([GetRelationTarget.RELATED_VIDEO]), null, 0, params.sort, params.order, params.page);
+ }
+
+ public function loadVideoenderInfo():void
+ { //MethodID:3231, LocalCount= 2 , MaxScope= 2, MaxStack= 8, CodeLength= 100
+ if(this._isVideoenderInfoLoading) throw new IllegalOperationError("RelatedVideoList.loadVideoenderInfo: now loading.");
+
+ this._isVideoenderInfoLoading = true;
+
+ this._getRelation.load(function(hug1:Boolean, hug2:IGetRelationResult):void{ //MethodID:3230, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 29
+ if(hug1) _setVideoenderInfo(hug2);
+
+ _isVideoenderInfoLoading = false;
+
+ onVideoenderInfoLoaded.apply(hug1);
+ }, Vector.<String>([GetRelationTarget.LIVE_DJ]), Vector.<String>([GetRelationTarget.OWNER_VIDEO, GetRelationTarget.RELATED_VIDEO]), 1, RelatedConstants.SORT_RELATEDPOINT, RelatedConstants.ORDER_DOWN, 1);
+ }
+
+ public function loadWhole():void
+ { //MethodID:3233, LocalCount= 3 , MaxScope= 2, MaxStack= 8, CodeLength= 221
+ internal var targets:Vector.<String>; //slotID:1
+ internal var params:_RequestParameters; //slotID:2
+
+ targets = null;
+ params = null;
+ targets = Vector.<String>([]);
+
+ if(this._hasRecommendedListTotaled && !this._hasRecommendedListLoadCalled && !this._isRecommendedListLoading) targets.push(GetRelationTarget.RELATED_VIDEO);
+
+ if((this._videoInfo == null) && !this._isVideoenderInfoLoading) targets.push(GetRelationTarget.LIVE_DJ, GetRelationTarget.OWNER_VIDEO);
+
+ if(targets.length == 0) return;
+
+ this._isRecommendedListLoading = this._isVideoenderInfoLoading = true;
+ params = new _RequestParameters(RelatedConstants.SORT_RELATEDPOINT, RelatedConstants.ORDER_DOWN, 1);
+
+ this._getRelation.load(function(hug1:Boolean, hug2:IGetRelationResult):void{ //MethodID:3232, LocalCount= 5 , MaxScope= 3, MaxStack= 4, CodeLength= 169
+ internal var succeeded:Boolean; //slotID:1
+ internal var result:IGetRelationResult; //slotID:2
+
+ succeeded = hug1;
+ result = hug2;
+ _isRecommendedListLoading = _isVideoenderInfoLoading = false;
+
+ if(succeeded){
+ try{
+ if((targets.indexOf(GetRelationTarget.OWNER_VIDEO) != (-1)) && (targets.indexOf(GetRelationTarget.LIVE_DJ) != (-1))) _setVideoenderInfo(result);
+ }
+ catch(error:ArgumentError){
+ succeeded = false;
+ }
+ }
+
+ onVideoenderInfoLoaded.apply(succeeded);
+ onRecommendedListLoaded.apply(succeeded, (succeeded ? result.recommendedVideoList : null), params);
+ }, targets, null, 0, params.sort, params.order, params.page);
+ }
+
+ private function _setVideoenderInfo(hug1:IGetRelationResult):void
+ { //MethodID:3234, LocalCount= 9 , MaxScope= 1, MaxStack= 9, CodeLength= 229
+ var hug2:Vector.<IOwnerOtherVideo> = null;
+ var hug3:String = null;
+ var hug4:String = null;
+ var hug5:String = null;
+ var hug6:String = null;
+ var hug7:String = null;
+ var hug8:String = null;
+
+ if(hug1 == null) throw new ArgumentError("RelatedVideoList._setVideoenderInfo: invalid result.");
+
+ if((hug1.ownerOtherVideoList != null) && (hug1.ownerOtherVideoList.length > 0)){
+ hug2 = hug1.ownerOtherVideoList;
+ hug3 = GetRelationTarget.OWNER_VIDEO;
+ hug4 = hug1.ownerOtherVideoURL;
+ }else{
+ if(hug1.recommendedVideoList != null){
+ hug2 = Vector.<IOwnerOtherVideo>(hug1.recommendedVideoList);
+ }else{
+ hug2 = new Vector.<IOwnerOtherVideo>([]);
+ }
+
+ hug3 = GetRelationTarget.RELATED_VIDEO;
+ }
+
+ if(hug1.liveDJInfo){
+ hug5 = hug1.liveDJInfo.catategoryName;
+ hug6 = hug1.liveDJInfo.linkURL;
+ hug7 = hug1.liveDJInfo.videoTitle;
+ hug8 = hug1.liveDJInfo.thumbnailURL;
+ }
+
+ this._videoInfo = new VideoenderInfo(hug2, hug3, hug4, hug5, hug6, hug7, hug8);
+ }
+
+ public function get onVideoenderInfoLoaded():Functions
+ { //MethodID:3235, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ON_VIDEOENDER_INFO_LOADED;
+ }
+
+ public function get videoenderInfo():IVideoenderInfo
+ { //MethodID:3236, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoInfo;
+ }
+
+ public function get onRecommendedListLoaded():Functions
+ { //MethodID:3237, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ON_RECOMMENDED_LIST_LOADED;
+ }
+
+ public function get hasRecommendedListTotaled():Boolean
+ { //MethodID:3238, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasRecommendedListTotaled;
+ }
+
+ public function get isRecommendeListLoading():Boolean
+ { //MethodID:3239, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isRecommendedListLoading;
+ }
+
+ public function get isVideoenderInfoLoading():Boolean
+ { //MethodID:3240, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isVideoenderInfoLoading;
+ }
+ }
+}
+
+
+//■class(instance)_index:240
+//private
+class _RequestParameters extends Object implements IRecommendListOptions
+{
+ //static constructor
+ public static function _RequestParameters$cinit()
+ { //MethodID:3241, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _RequestParameters(hug1:String=null, hug2:String=null, hug3:uint=1)
+ { //MethodID:3242, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._sort = hug1;
+ this._order = hug2;
+ this._page = hug3;
+ }
+
+ //variables/etc.
+ private var _sort:String; //slotID:0
+ private var _order:String; //slotID:0
+ private var _page:uint; //slotID:0
+
+ public function get page():uint
+ { //MethodID:3243, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._page;
+ }
+
+ public function get order():String
+ { //MethodID:3244, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._order;
+ }
+
+ public function get sort():String
+ { //MethodID:3245, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._sort;
+ }
+}
+
+//■script190■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+ //■class(instance)_index:241
+ public class ThumbFlashVars extends Object
+ {
+ //static constructor
+ public static function ThumbFlashVars$cinit()
+ { //MethodID:3247, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _isThumbWatch:Boolean; //slotID:0
+ private var _playerTimestamp:String; //slotID:0
+ private var _thumbImage:String; //slotID:0
+ private var _thumbWidth:Number; //slotID:0
+ private var _thumbHeight:Number; //slotID:0
+ private var _thumbPlayKey:String; //slotID:0
+ private var _openNewWindow:Boolean; //slotID:0
+ private var _transparent:uint; //slotID:0
+ private var _isAutoPlay:Boolean; //slotID:0
+ private var _noLogo:Boolean; //slotID:0
+ private var _noJumpMessage:Boolean; //slotID:0
+ private var _noComment:Boolean; //slotID:0
+ private var _noCommentButton:Boolean; //slotID:0
+ private var _noLink:Boolean; //slotID:0
+ private var _noSound:Boolean; //slotID:0
+ private var _watchRef:String; //slotID:0
+ private var _isP4Mode:Boolean; //slotID:0
+ private var _noController:Boolean; //slotID:0
+ private var _thumbComment:Boolean; //slotID:0
+ private var _bySwf:Boolean; //slotID:0
+ private var _noAdSense:Boolean; //slotID:0
+ private var _isNoLogin:Boolean; //slotID:0
+ private var _via:String; //slotID:0
+
+ public function get isThumbWatch():Boolean
+ { //MethodID:3248, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isThumbWatch;
+ }
+
+ internal function set isThumbWatch(hug1:Boolean):void
+ { //MethodID:3249, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isThumbWatch = hug1;
+ }
+
+ public function get playerTimestamp():String
+ { //MethodID:3250, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._playerTimestamp;
+ }
+
+ internal function set playerTimestamp(hug1:String):void
+ { //MethodID:3251, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._playerTimestamp = hug1;
+ }
+
+ public function get thumbImage():String
+ { //MethodID:3252, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbImage;
+ }
+
+ internal function set thumbImage(hug1:String):void
+ { //MethodID:3253, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbImage = hug1;
+ }
+
+ public function get thumbWidth():Number
+ { //MethodID:3254, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbWidth;
+ }
+
+ internal function set thumbWidth(hug1:Number):void
+ { //MethodID:3255, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbWidth = hug1;
+ }
+
+ public function get thumbHeight():Number
+ { //MethodID:3256, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbHeight;
+ }
+
+ internal function set thumbHeight(hug1:Number):void
+ { //MethodID:3257, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbHeight = hug1;
+ }
+
+ public function get thumbPlayKey():String
+ { //MethodID:3258, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbPlayKey;
+ }
+
+ internal function set thumbPlayKey(hug1:String):void
+ { //MethodID:3259, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbPlayKey = hug1;
+ }
+
+ public function get openNewWindow():Boolean
+ { //MethodID:3260, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._openNewWindow;
+ }
+
+ internal function set openNewWindow(hug1:Boolean):void
+ { //MethodID:3261, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._openNewWindow = hug1;
+ }
+
+ public function get transparent():uint
+ { //MethodID:3262, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._transparent;
+ }
+
+ internal function set transparent(hug1:uint):void
+ { //MethodID:3263, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._transparent = hug1;
+ }
+
+ public function get isAutoPlay():Boolean
+ { //MethodID:3264, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAutoPlay;
+ }
+
+ internal function set isAutoPlay(hug1:Boolean):void
+ { //MethodID:3265, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isAutoPlay = hug1;
+ }
+
+ public function get noLogo():Boolean
+ { //MethodID:3266, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noLogo;
+ }
+
+ internal function set noLogo(hug1:Boolean):void
+ { //MethodID:3267, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noLogo = hug1;
+ }
+
+ public function get noJumpMessage():Boolean
+ { //MethodID:3268, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noJumpMessage;
+ }
+
+ internal function set noJumpMessage(hug1:Boolean):void
+ { //MethodID:3269, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noJumpMessage = hug1;
+ }
+
+ public function get noComment():Boolean
+ { //MethodID:3270, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noComment;
+ }
+
+ internal function set noComment(hug1:Boolean):void
+ { //MethodID:3271, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noComment = hug1;
+ }
+
+ public function get noCommentButton():Boolean
+ { //MethodID:3272, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noCommentButton;
+ }
+
+ internal function set noCommentButton(hug1:Boolean):void
+ { //MethodID:3273, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noCommentButton = hug1;
+ }
+
+ public function get noLink():Boolean
+ { //MethodID:3274, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noLink;
+ }
+
+ internal function set noLink(hug1:Boolean):void
+ { //MethodID:3275, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noLink = hug1;
+ }
+
+ public function get noSound():Boolean
+ { //MethodID:3276, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noSound;
+ }
+
+ internal function set noSound(hug1:Boolean):void
+ { //MethodID:3277, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noSound = hug1;
+ }
+
+ public function get watchRef():String
+ { //MethodID:3278, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchRef;
+ }
+
+ internal function set watchRef(hug1:String):void
+ { //MethodID:3279, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._watchRef = hug1;
+ }
+
+ public function get isP4Mode():Boolean
+ { //MethodID:3280, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isP4Mode;
+ }
+
+ internal function set isP4Mode(hug1:Boolean):void
+ { //MethodID:3281, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isP4Mode = hug1;
+ }
+
+ public function get noController():Boolean
+ { //MethodID:3282, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noController;
+ }
+
+ internal function set noController(hug1:Boolean):void
+ { //MethodID:3283, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noController = hug1;
+ }
+
+ public function get thumbComment():Boolean
+ { //MethodID:3284, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbComment;
+ }
+
+ internal function set thumbComment(hug1:Boolean):void
+ { //MethodID:3285, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbComment = hug1;
+ }
+
+ public function get bySwf():Boolean
+ { //MethodID:3286, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._bySwf;
+ }
+
+ internal function set bySwf(hug1:Boolean):void
+ { //MethodID:3287, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._bySwf = hug1;
+ }
+
+ public function get noAdSense():Boolean
+ { //MethodID:3288, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noAdSense;
+ }
+
+ internal function set noAdSense(hug1:Boolean):void
+ { //MethodID:3289, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noAdSense = hug1;
+ }
+
+ public function get isNoLogin():Boolean
+ { //MethodID:3290, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoLogin;
+ }
+
+ internal function set isNoLogin(hug1:Boolean):void
+ { //MethodID:3291, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoLogin = hug1;
+ }
+
+ public function get via():String
+ { //MethodID:3292, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._via;
+ }
+
+ internal function set via(hug1:String):void
+ { //MethodID:3293, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._via = hug1;
+ }
+
+ //constructor
+ public function ThumbFlashVars()
+ { //MethodID:3294, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script191■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+ //■class(instance)_index:242
+ public class WatchFlashVars extends Object
+ {
+ //static constructor
+ public static function WatchFlashVars$cinit()
+ { //MethodID:3296, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ USER_SEX_MALE = "0";
+ USER_SEX_FEMALE = "1";
+ USER_SEX_NON = "-1";
+ }
+
+ //static variables/etc.
+ public static const USER_SEX_MALE:String = 0; //slotID:1
+ public static const USER_SEX_FEMALE:String = 1; //slotID:2
+ public static const USER_SEX_NON:String = -1; //slotID:3
+
+ //variables/etc.
+ private var _isEditMode:Boolean; //slotID:0
+ private var _isReadOnly:Boolean; //slotID:0
+ private var _isOwnerThreadAvailable:Boolean; //slotID:0
+ private var _isOwnerThreadEditMode:Boolean; //slotID:0
+ private var _userStatus:uint; //slotID:0
+ private var _isPostLocked:Boolean; //slotID:0
+ private var _isVideoOwner:Boolean; //slotID:0
+ private var _hasEconomyMode:Boolean; //slotID:0
+ private var _noPostPlayStats:Boolean; //slotID:0
+ private var _noNicotic:Boolean; //slotID:0
+ private var _noAtPizza:Boolean; //slotID:0
+ private var _noHiroba:Boolean; //slotID:0
+ private var _noNicomesse:Boolean; //slotID:0
+ private var _forceNicowariOff:Boolean; //slotID:0
+ private var _watchVideoID:String; //slotID:0
+ private var _gameKey:String; //slotID:0
+ private var _gameTime:String; //slotID:0
+ private var _buttonThreshold:uint; //slotID:0
+ private var _jumpVPosPlayFrom:int; //slotID:0
+ private var _jumpPlayLength:int; //slotID:0
+ private var _jumpReturnVideoID:String; //slotID:0
+ private var _jumpVPosReturnTo:int; //slotID:0
+ private var _jumpReturnMessage:String; //slotID:0
+ private var _isNoBanner:Boolean; //slotID:0
+ private var _isNoMarquee:Boolean; //slotID:0
+ private var _isNoGetMarquee:Boolean; //slotID:0
+ private var _commentListPublicStatus:String; //slotID:0
+ private var _isMonetized:Boolean; //slotID:0
+ private var _userSex:String; //slotID:0
+ private var _userAge:String; //slotID:0
+ private var _userPrefecture:String; //slotID:0
+ private var _marqueeUrl:String; //slotID:0
+ private var _originalThreadId:String; //slotID:0
+ private var _channelID:String; //slotID:0
+ private var _channelTopURL:String; //slotID:0
+ private var _channelVideoURL:String; //slotID:0
+ private var _channelName:String; //slotID:0
+ private var _dicArticleURL:String; //slotID:0
+ private var _blogEmbedURL:String; //slotID:0
+ private var _uadAdvertiseURL:String; //slotID:0
+ private var _communityPostURL:String; //slotID:0
+ private var _csrfToken:String; //slotID:0
+ private var _useChecklistCache:Boolean; //slotID:0
+ private var _isNoMovie:Boolean; //slotID:0
+ private var _thumbImage:String; //slotID:0
+ private var _noDeflistAdd:Boolean; //slotID:0
+ private var _isCommentShuttered:Boolean; //slotID:0
+ private var _videoUserID:String; //slotID:0
+ private var _appliInstalled:Number; //slotID:0
+ private var _liveKick:String; //slotID:0
+ private var _liveKickId:String; //slotID:0
+ private var _hoihoiTitle:String; //slotID:0
+ private var _hoihoiButton:String; //slotID:0
+ private var _hoihoiURL:String; //slotID:0
+ private var _noColor:Boolean; //slotID:0
+ private var _isNoVideoMenu:Boolean; //slotID:0
+ private var _isNoAppli:Boolean; //slotID:0
+ private var _bootApp:String; //slotID:0
+ private var _isAppliPromotion:Boolean; //slotID:0
+ private var _isOfficialAnime:Boolean; //slotID:0
+ private var _useVideoEnder:Boolean = false; //slotID:0
+
+ public function get isEditMode():Boolean
+ { //MethodID:3297, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isEditMode;
+ }
+
+ internal function set isEditMode(hug1:Boolean):void
+ { //MethodID:3298, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isEditMode = hug1;
+ }
+
+ public function get isReadOnly():Boolean
+ { //MethodID:3299, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isReadOnly;
+ }
+
+ internal function set isReadOnly(hug1:Boolean):void
+ { //MethodID:3300, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isReadOnly = hug1;
+ }
+
+ public function get isOwnerThreadAvailable():Boolean
+ { //MethodID:3301, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isOwnerThreadAvailable;
+ }
+
+ internal function set isOwnerThreadAvailable(hug1:Boolean):void
+ { //MethodID:3302, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isOwnerThreadAvailable = hug1;
+ }
+
+ public function get isOwnerThreadEditMode():Boolean
+ { //MethodID:3303, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isOwnerThreadEditMode;
+ }
+
+ internal function set isOwnerThreadEditMode(hug1:Boolean):void
+ { //MethodID:3304, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isOwnerThreadEditMode = hug1;
+ }
+
+ public function get userStatus():uint
+ { //MethodID:3305, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userStatus;
+ }
+
+ internal function set userStatus(hug1:uint):void
+ { //MethodID:3306, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userStatus = hug1;
+ }
+
+ public function get isPostLocked():Boolean
+ { //MethodID:3307, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPostLocked;
+ }
+
+ internal function set isPostLocked(hug1:Boolean):void
+ { //MethodID:3308, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isPostLocked = hug1;
+ }
+
+ public function get isCommentShuttered():Boolean
+ { //MethodID:3309, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isCommentShuttered;
+ }
+
+ internal function set isCommentShuttered(hug1:Boolean):void
+ { //MethodID:3310, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isCommentShuttered = hug1;
+ }
+
+ public function get isVideoOwner():Boolean
+ { //MethodID:3311, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isVideoOwner;
+ }
+
+ internal function set isVideoOwner(hug1:Boolean):void
+ { //MethodID:3312, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isVideoOwner = hug1;
+ }
+
+ public function get hasEconomyMode():Boolean
+ { //MethodID:3313, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasEconomyMode;
+ }
+
+ internal function set hasEconomyMode(hug1:Boolean):void
+ { //MethodID:3314, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hasEconomyMode = hug1;
+ }
+
+ public function get noPostPlayStats():Boolean
+ { //MethodID:3315, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noPostPlayStats;
+ }
+
+ internal function set noPostPlayStats(hug1:Boolean):void
+ { //MethodID:3316, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noPostPlayStats = hug1;
+ }
+
+ public function get noNicotic():Boolean
+ { //MethodID:3317, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noNicotic;
+ }
+
+ internal function set noNicotic(hug1:Boolean):void
+ { //MethodID:3318, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noNicotic = hug1;
+ }
+
+ public function get noAtPizza():Boolean
+ { //MethodID:3319, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noAtPizza;
+ }
+
+ internal function set noAtPizza(hug1:Boolean):void
+ { //MethodID:3320, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noAtPizza = hug1;
+ }
+
+ public function get noHiroba():Boolean
+ { //MethodID:3321, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noHiroba;
+ }
+
+ internal function set noHiroba(hug1:Boolean):void
+ { //MethodID:3322, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noHiroba = hug1;
+ }
+
+ public function get forceNicowariOff():Boolean
+ { //MethodID:3323, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._forceNicowariOff;
+ }
+
+ internal function set forceNicowariOff(hug1:Boolean):void
+ { //MethodID:3324, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._forceNicowariOff = hug1;
+ }
+
+ public function get watchVideoID():String
+ { //MethodID:3325, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._watchVideoID;
+ }
+
+ internal function set watchVideoID(hug1:String):void
+ { //MethodID:3326, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._watchVideoID = hug1;
+ }
+
+ public function get gameKey():String
+ { //MethodID:3327, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._gameKey;
+ }
+
+ internal function set gameKey(hug1:String):void
+ { //MethodID:3328, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._gameKey = hug1;
+ }
+
+ public function get gameTime():String
+ { //MethodID:3329, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._gameTime;
+ }
+
+ internal function set gameTime(hug1:String):void
+ { //MethodID:3330, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._gameTime = hug1;
+ }
+
+ public function get buttonThreshold():uint
+ { //MethodID:3331, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._buttonThreshold;
+ }
+
+ internal function set buttonThreshold(hug1:uint):void
+ { //MethodID:3332, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._buttonThreshold = hug1;
+ }
+
+ public function get jumpVPosPlayFrom():int
+ { //MethodID:3333, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpVPosPlayFrom;
+ }
+
+ internal function set jumpVPosPlayFrom(hug1:int):void
+ { //MethodID:3334, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._jumpVPosPlayFrom = hug1;
+ }
+
+ public function get jumpPlayLength():int
+ { //MethodID:3335, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpPlayLength;
+ }
+
+ internal function set jumpPlayLength(hug1:int):void
+ { //MethodID:3336, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._jumpPlayLength = hug1;
+ }
+
+ public function get jumpReturnVideoID():String
+ { //MethodID:3337, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpReturnVideoID;
+ }
+
+ internal function set jumpReturnVideoID(hug1:String):void
+ { //MethodID:3338, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._jumpReturnVideoID = hug1;
+ }
+
+ public function get jumpVPosReturnTo():int
+ { //MethodID:3339, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpVPosReturnTo;
+ }
+
+ internal function set jumpVPosReturnTo(hug1:int):void
+ { //MethodID:3340, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._jumpVPosReturnTo = hug1;
+ }
+
+ public function get jumpReturnMessage():String
+ { //MethodID:3341, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._jumpReturnMessage;
+ }
+
+ internal function set jumpReturnMessage(hug1:String):void
+ { //MethodID:3342, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._jumpReturnMessage = hug1;
+ }
+
+ public function get isNoBanner():Boolean
+ { //MethodID:3343, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoBanner;
+ }
+
+ internal function set isNoBanner(hug1:Boolean):void
+ { //MethodID:3344, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoBanner = hug1;
+ }
+
+ public function get isNoMarquee():Boolean
+ { //MethodID:3345, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoMarquee;
+ }
+
+ internal function set isNoMarquee(hug1:Boolean):void
+ { //MethodID:3346, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoMarquee = hug1;
+ }
+
+ public function get isNoGetMarquee():Boolean
+ { //MethodID:3347, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoGetMarquee;
+ }
+
+ internal function set isNoGetMarquee(hug1:Boolean):void
+ { //MethodID:3348, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoGetMarquee = hug1;
+ }
+
+ public function get isNoNicomesse():Boolean
+ { //MethodID:3349, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noNicomesse;
+ }
+
+ internal function set isNoNicomesse(hug1:Boolean):void
+ { //MethodID:3350, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noNicomesse = hug1;
+ }
+
+ public function get commentListPublicStatus():String
+ { //MethodID:3351, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentListPublicStatus;
+ }
+
+ internal function set commentListPublicStatus(hug1:String):void
+ { //MethodID:3352, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentListPublicStatus = hug1;
+ }
+
+ public function get isMonetized():Boolean
+ { //MethodID:3353, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isMonetized;
+ }
+
+ internal function set isMonetized(hug1:Boolean):void
+ { //MethodID:3354, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isMonetized = hug1;
+ }
+
+ public function get userSex():String
+ { //MethodID:3355, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userSex;
+ }
+
+ internal function set userSex(hug1:String):void
+ { //MethodID:3356, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userSex = hug1;
+ }
+
+ public function get userAge():String
+ { //MethodID:3357, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userAge;
+ }
+
+ internal function set userAge(hug1:String):void
+ { //MethodID:3358, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userAge = hug1;
+ }
+
+ public function get userPrefecture():String
+ { //MethodID:3359, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userPrefecture;
+ }
+
+ internal function set userPrefecture(hug1:String):void
+ { //MethodID:3360, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userPrefecture = hug1;
+ }
+
+ public function get marqueeUrl():String
+ { //MethodID:3361, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._marqueeUrl;
+ }
+
+ internal function set marqueeUrl(hug1:String):void
+ { //MethodID:3362, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._marqueeUrl = hug1;
+ }
+
+ public function get originalThreadId():String
+ { //MethodID:3363, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._originalThreadId;
+ }
+
+ internal function set originalThreadId(hug1:String):void
+ { //MethodID:3364, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._originalThreadId = hug1;
+ }
+
+ public function get channelID():String
+ { //MethodID:3365, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelID;
+ }
+
+ internal function set channelID(hug1:String):void
+ { //MethodID:3366, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._channelID = hug1;
+ }
+
+ public function get channelName():String
+ { //MethodID:3367, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelName;
+ }
+
+ internal function set channelName(hug1:String):void
+ { //MethodID:3368, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._channelName = hug1;
+ }
+
+ public function get channelTopURL():String
+ { //MethodID:3369, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelTopURL;
+ }
+
+ internal function set channelTopURL(hug1:String):void
+ { //MethodID:3370, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._channelTopURL = hug1;
+ }
+
+ public function get channelVideoURL():String
+ { //MethodID:3371, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._channelVideoURL;
+ }
+
+ internal function set channelVideoURL(hug1:String):void
+ { //MethodID:3372, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._channelVideoURL = hug1;
+ }
+
+ public function get uadAdvertiseURL():String
+ { //MethodID:3373, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._uadAdvertiseURL;
+ }
+
+ internal function set uadAdvertiseURL(hug1:String):void
+ { //MethodID:3374, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._uadAdvertiseURL = hug1;
+ }
+
+ public function get blogEmbedURL():String
+ { //MethodID:3375, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._blogEmbedURL;
+ }
+
+ internal function set blogEmbedURL(hug1:String):void
+ { //MethodID:3376, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._blogEmbedURL = hug1;
+ }
+
+ public function get dicArticleURL():String
+ { //MethodID:3377, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._dicArticleURL;
+ }
+
+ internal function set dicArticleURL(hug1:String):void
+ { //MethodID:3378, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._dicArticleURL = hug1;
+ }
+
+ public function get communityPostURL():String
+ { //MethodID:3379, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._communityPostURL;
+ }
+
+ internal function set communityPostURL(hug1:String):void
+ { //MethodID:3380, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._communityPostURL = hug1;
+ }
+
+ public function get csrfToken():String
+ { //MethodID:3381, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._csrfToken;
+ }
+
+ internal function set csrfToken(hug1:String):void
+ { //MethodID:3382, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._csrfToken = hug1;
+ }
+
+ public function get useChecklistCache():Boolean
+ { //MethodID:3383, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._useChecklistCache;
+ }
+
+ internal function set useChecklistCache(hug1:Boolean):void
+ { //MethodID:3384, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._useChecklistCache = hug1;
+ }
+
+ public function get noColor():Boolean
+ { //MethodID:3385, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noColor;
+ }
+
+ internal function set noColor(hug1:Boolean):void
+ { //MethodID:3386, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noColor = hug1;
+ }
+
+ public function get isNoMovie():Boolean
+ { //MethodID:3387, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoMovie;
+ }
+
+ internal function set isNoMovie(hug1:Boolean):void
+ { //MethodID:3388, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoMovie = hug1;
+ }
+
+ public function get thumbImage():String
+ { //MethodID:3389, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbImage;
+ }
+
+ internal function set thumbImage(hug1:String):void
+ { //MethodID:3390, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._thumbImage = hug1;
+ }
+
+ public function get noDeflistAdd():Boolean
+ { //MethodID:3391, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._noDeflistAdd;
+ }
+
+ internal function set noDeflistAdd(hug1:Boolean):void
+ { //MethodID:3392, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._noDeflistAdd = hug1;
+ }
+
+ public function get liveKick():String
+ { //MethodID:3393, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveKick;
+ }
+
+ internal function set liveKick(hug1:String):void
+ { //MethodID:3394, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._liveKick = hug1;
+ }
+
+ public function get liveKickId():String
+ { //MethodID:3395, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveKickId;
+ }
+
+ internal function set liveKickId(hug1:String):void
+ { //MethodID:3396, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._liveKickId = hug1;
+ }
+
+ public function get hoihoiTitle():String
+ { //MethodID:3397, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hoihoiTitle;
+ }
+
+ internal function set hoihoiTitle(hug1:String):void
+ { //MethodID:3398, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hoihoiTitle = hug1;
+ }
+
+ public function get hoihoiButton():String
+ { //MethodID:3399, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hoihoiButton;
+ }
+
+ internal function set hoihoiButton(hug1:String):void
+ { //MethodID:3400, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hoihoiButton = hug1;
+ }
+
+ public function get hoihoiURL():String
+ { //MethodID:3401, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hoihoiURL;
+ }
+
+ internal function set hoihoiURL(hug1:String):void
+ { //MethodID:3402, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._hoihoiURL = hug1;
+ }
+
+ public function get isNoVideoMenu():Boolean
+ { //MethodID:3403, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoVideoMenu;
+ }
+
+ internal function set isNoVideoMenu(hug1:Boolean):void
+ { //MethodID:3404, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoVideoMenu = hug1;
+ }
+
+ public function get isNoAppli():Boolean
+ { //MethodID:3405, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isNoAppli;
+ }
+
+ internal function set isNoAppli(hug1:Boolean):void
+ { //MethodID:3406, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isNoAppli = hug1;
+ }
+
+ public function get bootApp():String
+ { //MethodID:3407, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._bootApp;
+ }
+
+ internal function set bootApp(hug1:String):void
+ { //MethodID:3408, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._bootApp = hug1;
+ }
+
+ public function get videoUserID():String
+ { //MethodID:3409, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoUserID;
+ }
+
+ internal function set videoUserID(hug1:String):void
+ { //MethodID:3410, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._videoUserID = hug1;
+ }
+
+ public function get isOfficialAnime():Boolean
+ { //MethodID:3411, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isOfficialAnime;
+ }
+
+ internal function set isOfficialAnime(hug1:Boolean):void
+ { //MethodID:3412, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isOfficialAnime = hug1;
+ }
+
+ public function get appliInstalled():Number
+ { //MethodID:3413, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._appliInstalled;
+ }
+
+ internal function set appliInstalled(hug1:Number):void
+ { //MethodID:3414, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._appliInstalled = hug1;
+ }
+
+ public function get isAppliPromotion():Boolean
+ { //MethodID:3415, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAppliPromotion;
+ }
+
+ internal function set isAppliPromotion(hug1:Boolean):void
+ { //MethodID:3416, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isAppliPromotion = hug1;
+ }
+
+ public function get useVideoEnder():Boolean
+ { //MethodID:3417, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._useVideoEnder;
+ }
+
+ internal function set useVideoEnder(hug1:Boolean):void
+ { //MethodID:3418, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._useVideoEnder = hug1;
+ }
+
+ //constructor
+ public function WatchFlashVars()
+ { //MethodID:3419, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script192■
+
+package jp.nicovideo.nicoplayer.models.flashvars{
+
+
+ public const nico_flashvars:* = "jp.nicovideo.nicoplayer.models.flashvars:nico_flashvars";//slotID:0
+
+}
+
+//■script193■
+
+package jp.nicovideo.util{
+
+ import flash.utils.Proxy
+ import flash.utils.flash_proxy
+
+ use namespace flash_proxy;
+
+ //■class(instance)_index:243
+ public class ArraySet extends Proxy
+ {
+ //static constructor
+ public static function ArraySet$cinit()
+ { //MethodID:3422, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ArraySet()
+ { //MethodID:3423, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.__a = [];
+
+ super();
+ }
+
+ //variables/etc.
+ private var __a:Array; //slotID:0
+
+ public function add(hug1:*):void
+ { //MethodID:3424, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.__a.push(hug1);
+ }
+
+ public function remove(hug1:*):Boolean
+ { //MethodID:3425, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 53
+ var hug2:Number = 0;
+ var hug3:Boolean = false;
+ hug2 = this.__a.indexOf(hug1, hug2);
+
+ while(this.__a.indexOf(hug1, hug2) != (-1)){
+ this.__a.splice(hug2, 1);
+
+ hug3 = true;
+ }
+
+ return hug3;
+ }
+
+ public function contains(hug1:*):Boolean
+ { //MethodID:3426, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ return (this.__a.indexOf(hug1) != (-1));
+ }
+
+ public function clear():void
+ { //MethodID:3427, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this.__a.splice(0);
+ }
+
+ override flash_proxy function nextNameIndex(hug1:int):int
+ { //MethodID:3428, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ return ((hug1 < this.__a.length) ? (hug1 + 1) : 0);
+ }
+
+ override flash_proxy function nextValue(hug1:int):*
+ { //MethodID:3429, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return this.__a[hug1 - 1];
+ }
+ }
+}
+
+//■script194■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:244
+ public class Functions extends ArraySet
+ {
+ //static constructor
+ public static function Functions$cinit()
+ { //MethodID:3431, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Functions()
+ { //MethodID:3432, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public function apply(... rest):void
+ { //MethodID:3433, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 44
+ var hug2:Function = null;
+
+ for each(hug2 in this){
+ hug2.apply(null, rest);
+ }
+ }
+
+ public function collect(... rest):Array
+ { //MethodID:3434, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 57
+ var hug3:Function = null;
+ var hug2:Array = [];
+
+ for each(hug3 in this){
+ hug2.push(hug3.apply(null, rest));
+ }
+
+ return hug2;
+ }
+ }
+}
+
+//■script195■
+
+package jp.nicovideo.nicoplayer.models.video.swf{
+
+ //■class(instance)_index:245
+ public class SWFVideoType extends Object
+ {
+ //static constructor
+ public static function SWFVideoType$cinit()
+ { //MethodID:3436, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ INTERRUPT_GAME_RANKING = "interrupt_game_ranking";
+ INTERRUPT_ENQUETE_RESULT = "interrupt_enquete_result";
+ }
+
+ //static variables/etc.
+ public static const INTERRUPT_GAME_RANKING:String = "interrupt_game_ranking";//slotID:1
+ public static const INTERRUPT_ENQUETE_RESULT:String = "interrupt_enquete_result";//slotID:2
+
+ //constructor
+ public function SWFVideoType()
+ { //MethodID:3437, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script196■
+
+package jp.nicovideo.util{
+
+
+ public const test:* = "http://www.nicovideo.jp/as3_ns/nicoplayer/util.test";//slotID:0
+
+}
+
+//■script197■
+
+package jp.nicovideo.nicoplayer.models.video.swf{
+
+ //■class(instance)_index:246
+ public interface ISWFVideoContent
+ {
+ //static constructor
+ public static function ISWFVideoContent$cinit()
+ { //MethodID:3440, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get videoType():String; //MethodID:3441, dispID:0
+
+ function initialize(hug1:*, hug2:Function):void; //MethodID:3442, dispID:0
+
+ //constructor
+ public function ISWFVideoContent(); //MethodID:3443, dispID:0
+ }
+}
+
+//■script198■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:247
+ public class VideoPlayerStatus extends Object
+ {
+ //static constructor
+ public static function VideoPlayerStatus$cinit()
+ { //MethodID:3445, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ END = "end";
+ LOADING = "load";
+ PAUSED = "paused";
+ PLAYING = "playing";
+ SEEKING = "seeking";
+ STOPPED = "stopped";
+ }
+
+ //static variables/etc.
+ public static const END:String = "end"; //slotID:1
+ public static const LOADING:String = "load"; //slotID:2
+ public static const PAUSED:String = "paused"; //slotID:3
+ public static const PLAYING:String = "playing"; //slotID:4
+ public static const SEEKING:String = "seeking"; //slotID:5
+ public static const STOPPED:String = "stopped"; //slotID:6
+
+ //constructor
+ public function VideoPlayerStatus()
+ { //MethodID:3446, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script199■
+
+package org.libspark.utils{
+
+ import flash.display.Loader
+ import flash.events.Event
+ import flash.events.IEventDispatcher
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.net.URLRequest
+ import flash.net.URLStream
+ import flash.utils.ByteArray
+ import flash.utils.Endian
+
+ //■class(instance)_index:248
+ public class ForcibleLoader extends Object
+ {
+ //static constructor
+ public static function ForcibleLoader$cinit()
+ { //MethodID:3448, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ForcibleLoader(hug1:Loader, hug2:IEventDispatcher)
+ { //MethodID:3449, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 78
+ super();
+
+ this.loader = hug1;
+ this._eventDispatcher = hug2;
+ this._stream = new URLStream();
+
+ this._stream.addEventListener(Event.COMPLETE, this.completeHandler);
+ this._stream.addEventListener(IOErrorEvent.IO_ERROR, this.ioErrorHandler);
+ this._stream.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.securityErrorHandler);
+ }
+
+ //variables/etc.
+ private var _loader:Loader; //slotID:0
+ private var _stream:URLStream; //slotID:0
+ private var _eventDispatcher:IEventDispatcher; //slotID:0
+
+ public function get loader():Loader
+ { //MethodID:3450, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._loader;
+ }
+
+ public function set loader(hug1:Loader):void
+ { //MethodID:3451, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._loader = hug1;
+ }
+
+ public function load(hug1:URLRequest):void
+ { //MethodID:3452, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._stream.load(hug1);
+ }
+
+ private function completeHandler(hug1:Event):void
+ { //MethodID:3453, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 117
+ var hug2:ByteArray = new ByteArray();
+
+ this._stream.readBytes(hug2);
+ this._stream.close();
+
+ hug2.endian = Endian.LITTLE_ENDIAN;
+
+ if(this.isCompressed(hug2)) this.uncompress(hug2);
+
+ var hug3:Number = this.findFileAttributesPosition(this.getBodyPosition(hug2), hug2);
+
+ if(!isNaN(hug3)){
+ this.flagSWF9Bit(hug2, hug3);
+ }else{
+ this.insertFileAttributesTag(hug2);
+ }
+
+ this.updateVersion(hug2, 9);
+ this.loader.loadBytes(hug2);
+ }
+
+ private function isCompressed(hug1:ByteArray):Boolean
+ { //MethodID:3454, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return (hug1[0] == 67);
+ }
+
+ private function uncompress(hug1:ByteArray):void
+ { //MethodID:3455, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 59
+ var hug2:ByteArray = new ByteArray();
+
+ hug2.writeBytes(hug1, 8);
+
+ hug1.length = 8;
+ hug1.position = 8;
+
+ hug2.uncompress();
+ hug1.writeBytes(hug2);
+
+ hug1[0] = 70;
+ hug2.length = 0;
+ }
+
+ private function getBodyPosition(hug1:ByteArray):uint
+ { //MethodID:3456, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 68
+ var hug2:uint = 0;
+ hug2 += 3;
+ hug2 += 1;
+ hug2 += 4;
+ var hug3:uint = (hug1[hug2] >> (3 & 0x1F));
+ hug2 += ((5 + (hug3 * 4)) / 8);
+ hug2 += 2;
+ hug2 += 1;
+ hug2 += 2;
+ return hug2;
+ }
+
+ private function findFileAttributesPosition(hug1:uint, hug2:ByteArray):Number
+ { //MethodID:3457, LocalCount= 5 , MaxScope= 5, MaxStack= 3, CodeLength= 182
+ internal var offset:uint; //slotID:1
+ internal var bytes:ByteArray; //slotID:2
+ internal var byte:uint; //slotID:3
+ internal var tag:uint; //slotID:4
+ internal var length:uint; //slotID:5
+
+ byte = 0;
+ tag = 0;
+ length = 0;
+ offset = hug1;
+ bytes = hug2;
+ bytes.position = offset;
+
+ try{
+ while(true){
+ byte = bytes.readShort();
+ tag = (byte >> (6 & 0x1F));
+
+ if(tag == 69) return (bytes.position - 2);
+
+ length = (byte & 63);
+
+ if(length == 63) length = bytes.readInt();
+
+ bytes.position += length;
+ }
+ }
+ catch(e:EOFError){
+ }
+
+ return NaN;
+ }
+
+ private function flagSWF9Bit(hug1:ByteArray, hug2:uint):void
+ { //MethodID:3458, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 22
+ hug1[hug2 + 2] |= 8;
+ }
+
+ private function insertFileAttributesTag(hug1:ByteArray):void
+ { //MethodID:3459, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 93
+ var hug2:uint = this.getBodyPosition(hug1);
+ var hug3:ByteArray = new ByteArray();
+
+ hug3.writeBytes(hug1, hug2);
+
+ hug1.length = hug2;
+ hug1.position = hug2;
+
+ hug1.writeByte(68);
+ hug1.writeByte(17);
+ hug1.writeByte(8);
+ hug1.writeByte(0);
+ hug1.writeByte(0);
+ hug1.writeByte(0);
+ hug1.writeBytes(hug3);
+
+ hug3.length = 0;
+ }
+
+ private function updateVersion(hug1:ByteArray, hug2:uint):void
+ { //MethodID:3460, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 10
+ hug1[3] = hug2;
+ }
+
+ private function ioErrorHandler(hug1:IOErrorEvent):void
+ { //MethodID:3461, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ this._eventDispatcher.dispatchEvent(new IOErrorEvent(IOErrorEvent.IO_ERROR));
+ }
+
+ private function securityErrorHandler(hug1:SecurityErrorEvent):void
+ { //MethodID:3462, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ this._eventDispatcher.dispatchEvent(new SecurityErrorEvent(SecurityErrorEvent.SECURITY_ERROR));
+ }
+ }
+}
+
+//■script200■
+
+package jp.nicovideo.util{
+
+ import flash.utils.getTimer
+
+ //■class(instance)_index:249
+ public final class TimeUtils extends Object
+ {
+ //static constructor
+ public static function TimeUtils$cinit()
+ { //MethodID:3464, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ __baseTimer = 0;
+ }
+
+ //static variables/etc.
+ private static var __baseTimer:Number = 0.0; //slotID:1
+
+ public static function set time(hug1:Number):void
+ { //dispID:3, MethodID:3465, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 18
+ __baseTimer = (hug1 - getTimer());
+ }
+
+ public static function get time():Number
+ { //dispID:4, MethodID:3466, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ if(__baseTimer <= 0) return new Date().getTime();
+
+ return (__baseTimer + getTimer());
+ }
+
+ public static function now():Date
+ { //dispID:5, MethodID:3467, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ var hug1:Date = new Date();
+
+ hug1.setTime(time);
+
+ return hug1;
+ }
+
+ //constructor
+ public function TimeUtils()
+ { //MethodID:3468, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script201■
+
+package jp.nicovideo.util.storage{
+
+ import flash.events.EventDispatcher
+ import flash.net.SharedObject
+ import flash.net.SharedObjectFlushStatus
+
+ //■class(instance)_index:250
+ public class LocalStorage extends EventDispatcher
+ {
+ //static constructor
+ public static function LocalStorage$cinit()
+ { //MethodID:3470, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LocalStorage(hug1:SharedObject=null)
+ { //MethodID:3471, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ this._data = {};
+
+ super();
+
+ this._so = hug1;
+ }
+
+ //variables/etc.
+ private var _so:SharedObject; //slotID:0
+ private var _data:Object; //slotID:0
+
+ public function flush(hug1:int=0):String
+ { //MethodID:3472, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 32
+ return (this._so ? this._so.flush(hug1) : SharedObjectFlushStatus.FLUSHED);
+ }
+
+ public function get data():Object
+ { //MethodID:3473, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 30
+ return (this._so ? this._so.data : this._data);
+ }
+
+ public function clear():void
+ { //MethodID:3474, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 19
+ if(this._so) this._so.clear();
+ }
+
+ public function close():void
+ { //MethodID:3475, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 19
+ if(this._so) this._so.close();
+ }
+
+ public function setDirty(hug1:String):void
+ { //MethodID:3476, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ if(this._so) this._so.setDirty(hug1);
+ }
+
+ override public function addEventListener(hug1:String, hug2:Function, hug3:Boolean=false, hug4:int=0, hug5:Boolean=false):void
+ { //MethodID:3477, LocalCount= 6 , MaxScope= 1, MaxStack= 6, CodeLength= 26
+ if(this._so) this._so.addEventListener(hug1, hug2, hug3, hug4, hug5);
+ }
+ }
+}
+
+//■script202■
+
+package jp.nicovideo.util.events{
+
+
+ public const event_receiver:* = "http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver";//slotID:0
+
+}
+
+//■script203■
+//skip components :com.adobe.serialization.json
+//as filename :JSON.as
+
+//■script204■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:252
+ public interface IComment
+ {
+ //static constructor
+ public static function IComment$cinit()
+ { //MethodID:3485, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get message():String; //MethodID:3486, dispID:0
+
+ function get resNo():uint; //MethodID:3487, dispID:0
+
+ function get vpos():Number; //MethodID:3488, dispID:0
+
+ function get date():Date; //MethodID:3489, dispID:0
+
+ function get userID():String; //MethodID:3490, dispID:0
+
+ function get userName():String; //MethodID:3491, dispID:0
+
+ function get isOwner():Boolean; //MethodID:3492, dispID:0
+
+ function get deleted():uint; //MethodID:3493, dispID:0
+
+ function get isPremium():Boolean; //MethodID:3494, dispID:0
+
+ function get anonymity():uint; //MethodID:3495, dispID:0
+
+ function get fromLive():uint; //MethodID:3496, dispID:0
+
+ function get fork():uint; //MethodID:3497, dispID:0
+
+ function get justPosted():Boolean; //MethodID:3498, dispID:0
+
+ function get ng():uint; //MethodID:3499, dispID:0
+
+ function get command():ICommand; //MethodID:3500, dispID:0
+
+ function get buttonComment():String; //MethodID:3501, dispID:0
+
+ function get clickCount():uint; //MethodID:3502, dispID:0
+
+ function get commentList():ICommentList; //MethodID:3503, dispID:0
+
+ function get isClickable():Boolean; //MethodID:3504, dispID:0
+
+ function get leafID():uint; //MethodID:3505, dispID:0
+
+ function get isTrunk():Boolean; //MethodID:3506, dispID:0
+
+ //constructor
+ public function IComment(); //MethodID:3507, dispID:0
+ }
+}
+
+//■script205■
+
+package jp.nicovideo.marquee.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:253
+ public class MarqueeEvent extends Event
+ {
+ //static constructor
+ public static function MarqueeEvent$cinit()
+ { //MethodID:3509, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 165
+ COMPLETE_PLAYER = "completed_player";
+ COMPLETE_SOURCE_MANAGER = "complete_source_manager";
+ COMPLETE_MARQUEE_SOURCE = "completed_marquee_source";
+ ERROR_MARQUEE_SOURCE = "error_marquee_source";
+ ERROR_VIDEO_SOURCE = "error_video_source";
+ STARTED_MARQUEE = "started_marquee";
+ ENDED_MARQUEE = "ended_marquee";
+ SENDED_DATA = "sended_data";
+ PLAYED_SOURCE = "played_source";
+ READY_PARADE = "ready_parade";
+ STARTED_PARADE = "started_parade";
+ ENDED_PARADE = "ended_parade";
+ SEND_LOG = "send_log";
+ CLICK_PLAY_BUTTON = "click_play_button";
+ TEMPLATE_VERSION_DISAGREEMENT = "template_version_disagreement";
+ STARTMARQUEE_SCHEDULE = "startmarquee_schedule";
+ ENDMARQUEE_SCHEDULE = "endmarquee_schedule";
+ CHANGE_PRIORITY = "change_priority";
+ }
+
+ //static variables/etc.
+ public static const COMPLETE_PLAYER:String = "completed_player";//slotID:1
+ public static const COMPLETE_SOURCE_MANAGER:String = "complete_source_manager";//slotID:2
+ public static const COMPLETE_MARQUEE_SOURCE:String = "completed_marquee_source";//slotID:3
+ public static const ERROR_MARQUEE_SOURCE:String = "error_marquee_source";//slotID:4
+ public static const ERROR_VIDEO_SOURCE:String = "error_video_source";//slotID:5
+ public static const STARTED_MARQUEE:String = "started_marquee"; //slotID:6
+ public static const ENDED_MARQUEE:String = "ended_marquee"; //slotID:7
+ public static const SENDED_DATA:String = "sended_data"; //slotID:8
+ public static const PLAYED_SOURCE:String = "played_source"; //slotID:9
+ public static const READY_PARADE:String = "ready_parade"; //slotID:10
+ public static const STARTED_PARADE:String = "started_parade"; //slotID:11
+ public static const ENDED_PARADE:String = "ended_parade"; //slotID:12
+ public static const SEND_LOG:String = "send_log"; //slotID:13
+ public static const CLICK_PLAY_BUTTON:String = "click_play_button";//slotID:14
+ public static const TEMPLATE_VERSION_DISAGREEMENT:String = "template_version_disagreement";//slotID:15
+ public static const STARTMARQUEE_SCHEDULE:String = "startmarquee_schedule";//slotID:16
+ public static const ENDMARQUEE_SCHEDULE:String = "endmarquee_schedule";//slotID:17
+ public static const CHANGE_PRIORITY:String = "change_priority"; //slotID:18
+
+ //constructor
+ public function MarqueeEvent(hug1:String, hug2:*, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:3510, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ super(hug1, hug3, hug4);
+
+ this._origin = hug2;
+ }
+
+ //variables/etc.
+ private var _origin:*; //slotID:0
+
+ public function get origin():*
+ { //MethodID:3511, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._origin;
+ }
+
+ override public function clone():Event
+ { //MethodID:3512, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 21
+ return new MarqueeEvent(type, this.origin, bubbles, cancelable);
+ }
+ }
+}
+
+//■script206■
+
+package jp.nicovideo.marquee.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:254
+ public class MarqueeFullEvent extends MarqueeEvent
+ {
+ //static constructor
+ public static function MarqueeFullEvent$cinit()
+ { //MethodID:3514, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ PLAY_VIDEO = "MarqueeFullEvent.play_video";
+ PAUSE_VIDEO = "MarqueeFullEvent.pause_video";
+ CLICK_NICOWARI_PLAY_BUTTON = "click_nicowari_play_button";
+ CLICK_VIDEO_PLAY_BUTTON = "click_video_play_button";
+ }
+
+ //static variables/etc.
+ public static const PLAY_VIDEO:String = "MarqueeFullEvent.play_video";//slotID:1
+ public static const PAUSE_VIDEO:String = "MarqueeFullEvent.pause_video";//slotID:2
+ public static const CLICK_NICOWARI_PLAY_BUTTON:String = "click_nicowari_play_button";//slotID:3
+ public static const CLICK_VIDEO_PLAY_BUTTON:String = "click_video_play_button";//slotID:4
+
+ //constructor
+ public function MarqueeFullEvent(hug1:String, hug2:*, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:3515, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 11
+ super(hug1, hug2, hug3, hug4);
+ }
+
+ //variables/etc.
+ override public function clone():Event
+ { //MethodID:3516, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 22
+ return new MarqueeFullEvent(type, origin, bubbles, cancelable);
+ }
+ }
+}
+
+//■script207■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:255
+ public class ScreenMode extends Object
+ {
+ //static constructor
+ public static function ScreenMode$cinit()
+ { //MethodID:3518, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NORMAL = 0;
+ BROWSER_FULL = 1;
+ DISPLAY_FULL = 2;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:uint = 0; //slotID:1
+ public static const BROWSER_FULL:uint = 1; //slotID:2
+ public static const DISPLAY_FULL:uint = 2; //slotID:3
+
+ //constructor
+ public function ScreenMode()
+ { //MethodID:3519, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script208■
+
+package jp.nicovideo.marquee.events{
+
+ import flash.events.ErrorEvent
+ import flash.events.Event
+
+ //■class(instance)_index:256
+ public class MarqueeErrorEvent extends ErrorEvent
+ {
+ //static constructor
+ public static function MarqueeErrorEvent$cinit()
+ { //MethodID:3521, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 65
+ ERROR = "error";
+ SENDED_NOAUTH = 100;
+ SENDED_FAIL = 200;
+ SENDED_ERROR = 300;
+ INITIALIZE_XML_FAIL = 400;
+ INITIALIZE_DOWNLOAD_ERROR = 500;
+ SENDED_LOG_ERROR = 600;
+ }
+
+ //static variables/etc.
+ public static const ERROR:String = "error"; //slotID:1
+ public static const SENDED_NOAUTH:int = 100; //slotID:2
+ public static const SENDED_FAIL:int = 200; //slotID:3
+ public static const SENDED_ERROR:int = 300; //slotID:4
+ public static const INITIALIZE_XML_FAIL:int = 400; //slotID:5
+ public static const INITIALIZE_DOWNLOAD_ERROR:int = 500; //slotID:6
+ public static const SENDED_LOG_ERROR:int = 600; //slotID:7
+
+ //constructor
+ public function MarqueeErrorEvent(hug1:String, hug2:String, hug3:int=0, hug4:Boolean=false, hug5:Boolean=false)
+ { //MethodID:3522, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 17
+ super(hug1, hug4, hug5, hug2);
+
+ this._errorId = hug3;
+ }
+
+ //variables/etc.
+ private var _errorId:int; //slotID:0
+
+ public function get errorId():int
+ { //MethodID:3523, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorId;
+ }
+
+ override public function clone():Event
+ { //MethodID:3524, LocalCount= 1 , MaxScope= 1, MaxStack= 6, CodeLength= 24
+ return new MarqueeErrorEvent(type, text, this.errorId, bubbles, cancelable);
+ }
+ }
+}
+
+//■script209■
+
+package jp.nicovideo.marquee.models.info{
+
+ //■class(instance)_index:257
+ public interface IMarqueeInfo
+ {
+ //static constructor
+ public static function IMarqueeInfo$cinit()
+ { //MethodID:3526, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function end(hug1:Boolean=false):void; //MethodID:3527, dispID:0
+
+ function get priority():uint; //MethodID:3528, dispID:0
+
+ function get pauseVideo():Boolean; //MethodID:3529, dispID:0
+
+ function get jumpToHirobaEnabled():Boolean; //MethodID:3530, dispID:0
+
+ function get enabled():Boolean; //MethodID:3531, dispID:0
+
+ function get isCommentDist():Boolean; //MethodID:3532, dispID:0
+
+ function get isForceEnded():Boolean; //MethodID:3533, dispID:0
+
+ function get hasForceEnd():Boolean; //MethodID:3534, dispID:0
+
+ //constructor
+ public function IMarqueeInfo(); //MethodID:3535, dispID:0
+ }
+}
+
+//■script210■
+
+package jp.nicovideo.marquee.models{
+
+ //■class(instance)_index:258
+ public class MarqueeAspectRatio extends Object
+ {
+ //static constructor
+ public static function MarqueeAspectRatio$cinit()
+ { //MethodID:3537, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ NORMAL = 0;
+ NORMAL_WIDTH = 544;
+ WIDE = 1;
+ WIDE_WIDTH = 672;
+ HEIGHT = 56;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:uint = 0; //slotID:1
+ public static const NORMAL_WIDTH:uint = 544; //slotID:2
+ public static const WIDE:uint = 1; //slotID:3
+ public static const WIDE_WIDTH:uint = 672; //slotID:4
+ public static const HEIGHT:uint = 56; //slotID:5
+
+ //constructor
+ public function MarqueeAspectRatio()
+ { //MethodID:3538, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script211■
+
+package jp.nicovideo.marquee{
+
+ //■class(instance)_index:259
+ public interface IMarqueePlayer implements IEventDispatcher
+ {
+ //static constructor
+ public static function IMarqueePlayer$cinit()
+ { //MethodID:3540, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function initialize(hug1:IMarqueeClient):void; //MethodID:3541, dispID:0
+
+ function load(hug1:String):void; //MethodID:3542, dispID:0
+
+ function start():void; //MethodID:3543, dispID:0
+
+ function setVolume(hug1:Number):void; //MethodID:3544, dispID:0
+
+ function get isCommentDist():Boolean; //MethodID:3545, dispID:0
+
+ function get version():String; //MethodID:3546, dispID:0
+
+ //constructor
+ public function IMarqueePlayer(); //MethodID:3547, dispID:0
+ }
+}
+
+//■script212■
+
+package jp.nicovideo.nicoplayer.remocon{
+
+ //■class(instance)_index:260
+ public class RemoconPostCommentErrorStatus extends Object
+ {
+ //static constructor
+ public static function RemoconPostCommentErrorStatus$cinit()
+ { //MethodID:3549, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ SAME_MESSAGE = "sameMessage";
+ OTHER = "failure";
+ }
+
+ //static variables/etc.
+ public static const SAME_MESSAGE:String = "sameMessage"; //slotID:1
+ public static const OTHER:String = "failure"; //slotID:2
+
+ //constructor
+ public function RemoconPostCommentErrorStatus()
+ { //MethodID:3550, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script213■
+
+package jp.nicovideo.nicoplayer.storages{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:261
+ public class CommentPostResultStatus extends Object
+ {
+ //static constructor
+ public static function CommentPostResultStatus$cinit()
+ { //MethodID:3552, LocalCount= 1 , MaxScope= 1, MaxStack= 11, CodeLength= 125
+ SERVER_RESPONSE_MAP = Vector.<String>([this.SUCCESS, this.FAILURE, this.INVALID_THREAD, this.INVALID_TICKET, this.INVALID_POSTKEY, this.LOCKED, this.READONLY, this.NOT_IMPLEMENTED]);
+ SUCCESS = "success";
+ FAILURE = "failure";
+ INVALID_THREAD = "invalidThread";
+ INVALID_TICKET = "invalidTicket";
+ INVALID_POSTKEY = "invalidPostkey";
+ LOCKED = "locked";
+ READONLY = "readonly";
+ NOT_IMPLEMENTED = "notImplemented";
+ }
+
+ //static variables/etc.
+ public static const SERVER_RESPONSE_MAP:Vector.<String>; //slotID:1
+ public static const SUCCESS:String = "success"; //slotID:2
+ public static const FAILURE:String = "failure"; //slotID:3
+ public static const INVALID_THREAD:String = "invalidThread"; //slotID:4
+ public static const INVALID_TICKET:String = "invalidTicket"; //slotID:5
+ public static const INVALID_POSTKEY:String = "invalidPostkey"; //slotID:6
+ public static const LOCKED:String = "locked"; //slotID:7
+ public static const READONLY:String = "readonly"; //slotID:8
+ public static const NOT_IMPLEMENTED:String = "notImplemented"; //slotID:9
+
+ //constructor
+ public function CommentPostResultStatus()
+ { //MethodID:3553, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script214■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.util.ArrayUtils
+
+ //■class(instance)_index:262
+ public class CommentListUtils extends Object
+ {
+ //static constructor
+ public static function CommentListUtils$cinit()
+ { //MethodID:3555, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function update(hug1:Array, hug2:Array, hug3:Array, hug4:Boolean):Array
+ { //dispID:3, MethodID:3556, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 53
+ if(hug4) return hug2.concat();
+
+ var hug5:Array = hug1.concat();
+
+ ArrayUtils.subtract(commentAscComparator, hug5, hug3);
+ ArrayUtils.add(commentAscComparator, hug5, hug2, true);
+
+ return hug5;
+ }
+
+ public static function add(hug1:Array, hug2:Array):Array
+ { //dispID:4, MethodID:3557, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 25
+ var hug3:Array = hug1.concat();
+
+ ArrayUtils.add(commentAscComparator, hug3, hug2, true);
+
+ return hug3;
+ }
+
+ public static function remove(hug1:Array, hug2:Array):Array
+ { //dispID:5, MethodID:3558, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 24
+ var hug3:Array = hug1.concat();
+
+ ArrayUtils.subtract(commentAscComparator, hug3, hug2);
+
+ return hug3;
+ }
+
+ private static function commentAscComparator(hug1:IComment, hug2:IComment):int
+ { //dispID:6, MethodID:3559, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return (hug1.resNo - hug2.resNo);
+ }
+
+ //constructor
+ public function CommentListUtils()
+ { //MethodID:3560, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script215■
+
+package jp.nicovideo.ext.models{
+
+ //■class(instance)_index:263
+ public class ThumbWatchViaName extends Object
+ {
+ //static constructor
+ public static function ThumbWatchViaName$cinit()
+ { //MethodID:3562, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ YAHOO_TOPICS = "yahoo_topics";
+ }
+
+ //static variables/etc.
+ public static const YAHOO_TOPICS:String = "yahoo_topics"; //slotID:1
+
+ public static function contains(hug1:String):Boolean
+ { //dispID:3, MethodID:3563, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 27
+ return (Vector.<String>([YAHOO_TOPICS]).indexOf(hug1) != (-1));
+ }
+
+ //constructor
+ public function ThumbWatchViaName()
+ { //MethodID:3564, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script216■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:264
+ public final class Assert extends Object
+ {
+ //static constructor
+ public static function Assert$cinit()
+ { //MethodID:3566, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function assert(hug1:*, hug2:String):void
+ { //dispID:3, MethodID:3567, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ if(!hug1) throw new Error("Assert: " + hug2);
+ }
+
+ //constructor
+ public function Assert()
+ { //MethodID:3568, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script217■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.nicoplayer.models.filter.NGStatus
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:265
+ public class CommentBuilder extends Object
+ {
+ //static constructor
+ public static function CommentBuilder$cinit()
+ { //MethodID:3570, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function copyComment(hug1:IComment):IComment
+ { //dispID:3, MethodID:3571, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 280
+ var hug2:IComment = new Comment();
+ comment_builder.anonymity = hug1.anonymity;
+ comment_builder.fromLive = hug1.fromLive;
+ comment_builder.command = hug1.command;
+ comment_builder.message = hug1.message;
+ comment_builder.date = hug1.date;
+ comment_builder.deleted = hug1.deleted;
+ comment_builder.fork = hug1.fork;
+ comment_builder.isOwner = hug1.isOwner;
+ comment_builder.isPremium = hug1.isPremium;
+ comment_builder.justPosted = hug1.justPosted;
+ comment_builder.ng = hug1.ng;
+ comment_builder.resNo = hug1.resNo;
+ comment_builder.userID = hug1.userID;
+ comment_builder.userName = hug1.userName;
+ comment_builder.vpos = hug1.vpos;
+ comment_builder.clickCount = hug1.clickCount;
+ comment_builder.commentList = hug1.commentList;
+ comment_builder.leafID = hug1.leafID;
+ comment_builder.isTrunk = hug1.isTrunk;
+ return hug2;
+ }
+
+ public static function simplify(hug1:IComment):Object
+ { //dispID:4, MethodID:3572, LocalCount= 2 , MaxScope= 1, MaxStack= 36, CodeLength= 154
+ return {message:hug1.message, no:hug1.resNo, vpos:hug1.vpos, date:(hug1.date ? hug1.date.getTime() : 0), userID:hug1.userID, userName:hug1.userName, isOwner:hug1.isOwner, deleted:hug1.deleted, isPremium:hug1.isPremium, anonymity:hug1.anonymity, fromLive:hug1.fromLive, fork:hug1.fork, mail:hug1.command.command, justPosted:hug1.justPosted, ng:hug1.ng, clickCount:hug1.clickCount, leafID:hug1.leafID, isTrunk:hug1.isTrunk};
+ }
+
+ public static function unsimplify(hug1:Object):IComment
+ { //dispID:5, MethodID:3573, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 175
+ var hug2:CommentBuilder = new IComment();
+ hug2.message = hug1.message;
+ hug2.resNo = hug1.no;
+ hug2.vpos = hug1.vpos;
+ hug2.date = new Date(hug1.date);
+ hug2.userID = hug1.userID;
+ hug2.userName = hug1.userName;
+ hug2.isOwner = hug1.isOwner;
+ hug2.deleted = hug1.deleted;
+ hug2.isPremium = hug1.isPremium;
+ hug2.anonymity = hug1.anonymity;
+ hug2.fromLive = hug1.fromLive;
+ hug2.fork = hug1.fork;
+ hug2.command = new Command(hug1.mail, hug1.isPremium);
+ hug2.justPosted = hug1.justPosted;
+ hug2.ng = hug1.ng;
+ hug2.clickCount = hug1.clickCount;
+ hug2.leafID = hug1.leafID;
+ hug2.isTrunk = hug1.isTrunk;
+ return hug2.make();
+ }
+
+ //constructor
+ public function CommentBuilder(hug1:IComment)
+ { //MethodID:3574, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 32
+ super();
+
+ if(hug1){
+ this._commentBuffer = copyComment(hug1);
+ }else{
+ this.reset();
+ }
+ }
+
+ //variables/etc.
+ private var _commentBuffer:IComment; //slotID:0
+
+ public function make():IComment
+ { //MethodID:3575, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return copyComment(this._commentBuffer);
+ }
+
+ public function reset():void
+ { //MethodID:3577, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 41
+ this._commentBuffer = new Comment();
+ this._commentBuffer.command = new Command(function(hug1:ICommand):void{ //MethodID:3576, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+ }
+
+ public function set message(hug1:String):void
+ { //MethodID:3578, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.message = hug1;
+ }
+
+ public function set resNo(hug1:uint):void
+ { //MethodID:3579, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.resNo = hug1;
+ }
+
+ public function set vpos(hug1:Number):void
+ { //MethodID:3580, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 30
+ comment_builder.vpos = (Math.floor(hug1 / 10) * 10);
+ }
+
+ public function set date(hug1:Date):void
+ { //MethodID:3581, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.date = hug1;
+ }
+
+ public function set command(hug1:ICommand):void
+ { //MethodID:3582, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.command = hug1;
+ }
+
+ public function set userID(hug1:String):void
+ { //MethodID:3583, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.userID = hug1;
+ }
+
+ public function set userName(hug1:String):void
+ { //MethodID:3584, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.userName = hug1;
+ }
+
+ public function set isOwner(hug1:Boolean):void
+ { //MethodID:3585, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.isOwner = hug1;
+ }
+
+ public function set deleted(hug1:uint):void
+ { //MethodID:3586, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.deleted = hug1;
+ }
+
+ public function set isPremium(hug1:Boolean):void
+ { //MethodID:3587, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.isPremium = hug1;
+ }
+
+ public function set anonymity(hug1:Boolean):void
+ { //MethodID:3588, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.anonymity = hug1;
+ }
+
+ public function set fromLive(hug1:Boolean):void
+ { //MethodID:3589, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.fromLive = hug1;
+ }
+
+ public function set fork(hug1:uint):void
+ { //MethodID:3590, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.fork = hug1;
+ }
+
+ public function set justPosted(hug1:Boolean):void
+ { //MethodID:3591, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.justPosted = hug1;
+ }
+
+ public function set ng(hug1:uint):void
+ { //MethodID:3592, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 72
+ if((hug1 == NGStatus.NONE) || (hug1 == NGStatus.INVISIBLE) || (hug1 == NGStatus.REJECT_COMMAND)){
+ comment_builder.ng = hug1;
+ }else{
+ throw new Error("CommentBuilder.set ng: invalid status.");
+ }
+ }
+
+ public function set commentList(hug1:ICommentList):void
+ { //MethodID:3593, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.commentList = hug1;
+ }
+
+ public function set clickCount(hug1:uint):void
+ { //MethodID:3594, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.clickCount = hug1;
+ }
+
+ public function set leafID(hug1:uint):void
+ { //MethodID:3595, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.leafID = hug1;
+ }
+
+ public function set isTrunk(hug1:Boolean):void
+ { //MethodID:3596, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 17
+ comment_builder.isTrunk = hug1;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get command():ICommand
+ { //MethodID:3597, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._commentBuffer.command;
+ }
+ }
+}
+
+//■script218■
+
+package jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowChildren{
+
+ //■class(instance)_index:266
+ public class TabContentName extends Object
+ {
+ //static constructor
+ public static function TabContentName$cinit()
+ { //MethodID:3599, LocalCount= 1 , MaxScope= 1, MaxStack= 7, CodeLength= 83
+ COMMENT = "comment";
+ NG = "ng";
+ RELATION = "relation";
+ PLAYLIST = "playlist";
+ OWNERCOMMENT_EDITOR = "ownercomment_editor";
+ REPLACER = "replacer";
+ TAB_NAMES = [COMMENT, NG, RELATION, PLAYLIST, OWNERCOMMENT_EDITOR, REPLACER];
+ }
+
+ //static variables/etc.
+ public static const COMMENT:String = "comment"; //slotID:1
+ public static const NG:String = "ng"; //slotID:2
+ public static const RELATION:String = "relation"; //slotID:3
+ public static const PLAYLIST:String = "playlist"; //slotID:4
+ public static const OWNERCOMMENT_EDITOR:String = "ownercomment_editor";//slotID:5
+ public static const REPLACER:String = "replacer"; //slotID:6
+ public static const TAB_NAMES:Array; //slotID:7
+
+ public static function getIndex(hug1:String):int
+ { //dispID:3, MethodID:3600, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return TabContentName.TAB_NAMES.indexOf(hug1);
+ }
+
+ public static function getNameByIndex(hug1:int):String
+ { //dispID:4, MethodID:3601, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return TabContentName.TAB_NAMES[hug1];
+ }
+
+ //constructor
+ public function TabContentName()
+ { //MethodID:3602, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script219■
+
+package jp.nicovideo.hiroba.events{
+
+
+ public const hiroba_setter:* = "http://www.nicovideo.jp/as3_ns/hiroba/events/hiroba_setter";//slotID:0
+
+}
+
+//■script220■
+
+package jp.nicovideo.hiroba.models{
+
+ //■class(instance)_index:267
+ public interface IHirobaComment
+ {
+ //static constructor
+ public static function IHirobaComment$cinit()
+ { //MethodID:3605, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get message():String; //MethodID:3606, dispID:0
+
+ function get mail():String; //MethodID:3607, dispID:0
+
+ function get isPremium():Boolean; //MethodID:3608, dispID:0
+
+ function get date():Date; //MethodID:3609, dispID:0
+
+ function get yourpost():Boolean; //MethodID:3610, dispID:0
+
+ //constructor
+ public function IHirobaComment(); //MethodID:3611, dispID:0
+ }
+}
+
+//■script221■
+
+package jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren{
+
+ import jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowChildren.ITabContent
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:268
+ public interface ITabManager
+ {
+ //static constructor
+ public static function ITabManager$cinit()
+ { //MethodID:3613, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function register(hug1:String, hug2:ITabContent):Boolean; //MethodID:3614, dispID:0
+
+ function append(hug1:String, hug2:Boolean=true):Boolean; //MethodID:3615, dispID:0
+
+ function remove(hug1:String):Boolean; //MethodID:3616, dispID:0
+
+ function show(hug1:String):Boolean; //MethodID:3617, dispID:0
+
+ function isRegistered(hug1:String):Boolean; //MethodID:3618, dispID:0
+
+ function isAppended(hug1:String):Boolean; //MethodID:3619, dispID:0
+
+ function isActive(hug1:String):Boolean; //MethodID:3620, dispID:0
+
+ function showMessage(hug1:String, hug2:Boolean=false, hug3:int=-1, hug4:Boolean=true, hug5:Function=null):void;//MethodID:3621, dispID:0
+
+ function hideMessage():void; //MethodID:3622, dispID:0
+
+ function get baseContentWidth():Number; //MethodID:3623, dispID:0
+
+ function get baseContentHeight():Number; //MethodID:3624, dispID:0
+
+ function get onActiveContentUpdated():Functions; //MethodID:3625, dispID:0
+
+ function updateWindowHeight(hug1:int):void; //MethodID:3626, dispID:0
+
+ //constructor
+ public function ITabManager(); //MethodID:3627, dispID:0
+ }
+}
+
+//■script222■
+
+package jp.nicovideo.nicoplayer.views{
+
+ //■class(instance)_index:269
+ public class SponsorVideoBGType extends Object
+ {
+ //static constructor
+ public static function SponsorVideoBGType$cinit()
+ { //MethodID:3629, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ DEFAULT = "default";
+ CAPTURE = "capture";
+ COLOR = "color";
+ }
+
+ //static variables/etc.
+ public static const DEFAULT:String = "default"; //slotID:1
+ public static const CAPTURE:String = "capture"; //slotID:2
+ public static const COLOR:String = "color"; //slotID:3
+
+ //constructor
+ public function SponsorVideoBGType()
+ { //MethodID:3630, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script223■
+
+package jp.nicovideo.nicoplayer.views.framerate{
+
+ //■class(instance)_index:270
+ public class FrameRateMode extends Object
+ {
+ //static constructor
+ public static function FrameRateMode$cinit()
+ { //MethodID:3632, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ HIGH = 60;
+ NORMAL = 25;
+ }
+
+ //static variables/etc.
+ public static const HIGH:uint = 60; //slotID:1
+ public static const NORMAL:uint = 25; //slotID:2
+
+ //constructor
+ public function FrameRateMode()
+ { //MethodID:3633, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script224■
+
+package jp.nicovideo.nicoplayer.app.view{
+
+ import flash.display.DisplayObjectContainer
+ import jp.nicovideo.app.applibar.IApplibar
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:271
+ public interface IApplibarContainer
+ {
+ //static constructor
+ public static function IApplibarContainer$cinit()
+ { //MethodID:3635, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get container():DisplayObjectContainer; //MethodID:3636, dispID:0
+
+ function get screen():DisplayObjectContainer; //MethodID:3637, dispID:0
+
+ function get iconAreaWidth():Number; //MethodID:3638, dispID:0
+
+ function get onResized():Functions; //MethodID:3639, dispID:0
+
+ function onInitApplibar(hug1:IApplibar):void; //MethodID:3640, dispID:0
+
+ function onBarBaseSizeUpdate():void; //MethodID:3641, dispID:0
+
+ //constructor
+ public function IApplibarContainer(); //MethodID:3642, dispID:0
+ }
+}
+
+//■script225■
+
+package jp.nicovideo.app.applibar.externals{
+
+ import flash.display.DisplayObjectContainer
+ import jp.nicovideo.app.api.IAPIObjectProvider
+
+ //■class(instance)_index:272
+ public interface IApplibarClient implements IEventDispatcher
+ {
+ //static constructor
+ public static function IApplibarClient$cinit()
+ { //MethodID:3644, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get containerName():String; //MethodID:3645, dispID:0
+
+ function get userID():String; //MethodID:3646, dispID:0
+
+ function get iconAreaWidth():Number; //MethodID:3647, dispID:0
+
+ function get screen():DisplayObjectContainer; //MethodID:3648, dispID:0
+
+ function getAPIProvider(hug1:uint):IAPIObjectProvider; //MethodID:3649, dispID:0
+
+ function get applibarVisible():Boolean; //MethodID:3650, dispID:0
+
+ function showDialog(hug1:String, hug2:String=null, hug3:String=null, hug4:Function=null, hug5:String=null, hug6:Function=null):void;//MethodID:3651, dispID:0
+
+ //constructor
+ public function IApplibarClient(); //MethodID:3652, dispID:0
+ }
+}
+
+//■script226■
+
+package jp.nicovideo.app.applibar.externals{
+
+ //■class(instance)_index:273
+ public interface IVideoApplibarClient implements IApplibarClient
+ {
+ //static constructor
+ public static function IVideoApplibarClient$cinit()
+ { //MethodID:3654, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get installedCount():Number; //MethodID:3655, dispID:0
+
+ function get isAppliPromotion():Boolean; //MethodID:3656, dispID:0
+
+ //constructor
+ public function IVideoApplibarClient(); //MethodID:3657, dispID:0
+ }
+}
+
+//■script227■
+
+package jp.nicovideo.nicoplayer.app{
+
+ import flash.display.DisplayObjectContainer
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.IAPIObjectProvider
+ import jp.nicovideo.app.applibar.externals.ContainerName
+ import jp.nicovideo.app.applibar.externals.events.ApplibarClientEvent
+ import jp.nicovideo.nicoplayer.app.api.APIObjectProviderSwitcher
+ import jp.nicovideo.nicoplayer.app.view.IApplibarContainer
+ import jp.nicovideo.nicoplayer.models.SystemMessage
+
+ //■class(instance)_index:274
+ public class ApplibarClient extends EventDispatcher implements IVideoApplibarClient
+ {
+ //static constructor
+ public static function ApplibarClient$cinit()
+ { //MethodID:3659, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ApplibarClient(hug1:IApplibarContainer, hug2:APIObjectProviderSwitcher, hug3:String, hug4:Number, hug5:Boolean)
+ { //MethodID:3660, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ super();
+
+ this._container = hug1;
+
+ this._container.onResized.add(this._onResized);
+
+ this._providerSwitcher = hug2;
+ this._userID = hug3;
+ this._appliInstalled = hug4;
+ this._isAppliPromotion = hug5;
+ }
+
+ //variables/etc.
+ private var _container:IApplibarContainer; //slotID:0
+ private var _providerSwitcher:APIObjectProviderSwitcher; //slotID:0
+ private var _userID:String; //slotID:0
+ private var _appliInstalled:Number; //slotID:0
+ private var _isAppliPromotion:Boolean; //slotID:0
+
+ private function _onResized():void
+ { //MethodID:3661, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 45
+ dispatchEvent(new ApplibarClientEvent(ApplibarClientEvent.CONTAINER_RESIZE, this));
+ dispatchEvent(new ApplibarClientEvent(ApplibarClientEvent.SCREEN_RESIZE, this));
+ }
+
+ public function get containerName():String
+ { //MethodID:3662, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return ContainerName.NICO_PLAYER;
+ }
+
+ public function get userID():String
+ { //MethodID:3663, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userID;
+ }
+
+ public function get iconAreaWidth():Number
+ { //MethodID:3664, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._container.iconAreaWidth;
+ }
+
+ public function get screen():DisplayObjectContainer
+ { //MethodID:3665, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._container.screen;
+ }
+
+ public function get applibarVisible():Boolean
+ { //MethodID:3666, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function getAPIProvider(hug1:uint):IAPIObjectProvider
+ { //MethodID:3667, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return this._providerSwitcher.getAPIProvider(hug1);
+ }
+
+ public function showDialog(hug1:String, hug2:String=null, hug3:String=null, hug4:Function=null, hug5:String=null, hug6:Function=null, ...args):void
+ { //MethodID:3668, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 24
+ SystemMessage.instance.alert.apply(SystemMessage.instance, args);
+ }
+
+ public function get installedCount():Number
+ { //MethodID:3669, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._appliInstalled;
+ }
+
+ public function get isAppliPromotion():Boolean
+ { //MethodID:3670, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAppliPromotion;
+ }
+ }
+}
+
+//■script228■
+
+package jp.nicovideo.app.applibar.externals.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:275
+ public class ApplibarEvent extends Event
+ {
+ //static constructor
+ public static function ApplibarEvent$cinit()
+ { //MethodID:3672, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ PAGE_OPEN = "pageOpen";
+ }
+
+ //static variables/etc.
+ public static const PAGE_OPEN:String = "pageOpen"; //slotID:1
+
+ //constructor
+ public function ApplibarEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:3673, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 9
+ super(hug1, hug2, hug3);
+ }
+ }
+}
+
+//■script229■
+
+package jp.nicovideo.nicoplayer.app.api{
+
+ import jp.nicovideo.app.api.APIObjectProvider
+ import jp.nicovideo.app.api.IAPIObjectProvider
+ import jp.nicovideo.nicoplayer.app.api.v1.getPools
+ import jp.nicovideo.nicoplayer.plugin.IPluginClient
+
+ //■class(instance)_index:276
+ public class APIObjectProviderSwitcher extends Object
+ {
+ //static constructor
+ public static function APIObjectProviderSwitcher$cinit()
+ { //MethodID:3675, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function APIObjectProviderSwitcher(hug1:IPluginClient)
+ { //MethodID:3676, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 38
+ this._providers = [null];
+
+ super();
+ this._providers.push(new APIObjectProvider(1, getPools(hug1)));
+ }
+
+ //variables/etc.
+ private var _providers:Array; //slotID:0
+
+ public function getAPIProvider(hug1:uint):IAPIObjectProvider
+ { //MethodID:3677, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return this._providers[hug1];
+ }
+ }
+}
+
+//■script230■
+
+package jp.nicovideo.app.applibar{
+
+ import jp.nicovideo.app.applibar.externals.IApplibarClient
+ import jp.nicovideo.app.applibar.externals.IBalloonController
+
+ //■class(instance)_index:277
+ public interface IApplibar implements IEventDispatcher
+ {
+ //static constructor
+ public static function IApplibar$cinit()
+ { //MethodID:3679, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function start(hug1:IApplibarClient, hug2:String=null):void; //MethodID:3680, dispID:0
+
+ function get balloonController():IBalloonController; //MethodID:3681, dispID:0
+
+ function get isOpen():Boolean; //MethodID:3682, dispID:0
+
+ function get baseHeight():Number; //MethodID:3683, dispID:0
+
+ function get baseWidth():Number; //MethodID:3684, dispID:0
+
+ //constructor
+ public function IApplibar(); //MethodID:3685, dispID:0
+ }
+}
+
+//■script231■
+
+package jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren{
+
+ //■class(instance)_index:278
+ public class WindowViewConstants extends Object
+ {
+ //static constructor
+ public static function WindowViewConstants$cinit()
+ { //MethodID:3687, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 58
+ FRAME_MARGIN = 8;
+ ELEMENT_MARGIN = 4;
+ CONTENT_HD_WIDTH = 288;
+ CONTENT_SD_WIDTH = 416;
+ CONTENT_HEIGHT_FULL = 424;
+ CONTENT_LINE_HEIGHT = (22 + ELEMENT_MARGIN);
+ }
+
+ //static variables/etc.
+ public static const FRAME_MARGIN:int = 8; //slotID:1
+ public static const ELEMENT_MARGIN:int = 4; //slotID:2
+ public static const CONTENT_HD_WIDTH:int = 288; //slotID:3
+ public static const CONTENT_SD_WIDTH:int = 416; //slotID:4
+ public static const CONTENT_HEIGHT_FULL:int = 424; //slotID:5
+ public static const CONTENT_LINE_HEIGHT:int = 26; //slotID:6
+
+ //constructor
+ public function WindowViewConstants()
+ { //MethodID:3688, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script232■
+
+package jp.nicovideo.nicoplayer.storages.transmitter{
+
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:279
+ public interface ITransmitter
+ {
+ //static constructor
+ public static function ITransmitter$cinit()
+ { //MethodID:3690, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function connect(hug1:Function):void; //MethodID:3691, dispID:0
+
+ function send(hug1:XML):void; //MethodID:3692, dispID:0
+
+ function disconnect():void; //MethodID:3693, dispID:0
+
+ function get type():String; //MethodID:3694, dispID:0
+
+ function get isConnecting():Boolean; //MethodID:3695, dispID:0
+
+ function get connected():Functions; //MethodID:3696, dispID:0
+
+ function get xmlReceived():Functions; //MethodID:3697, dispID:0
+
+ function get errorOccured():Functions; //MethodID:3698, dispID:0
+
+ //constructor
+ public function ITransmitter(); //MethodID:3699, dispID:0
+ }
+}
+
+//■script233■
+
+package jp.nicovideo.nicoplayer.storages.transmitter{
+
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+
+ //■class(instance)_index:280
+ public class HTTPTransmitter extends Object implements ITransmitter
+ {
+ //static constructor
+ public static function HTTPTransmitter$cinit()
+ { //MethodID:3701, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HTTPTransmitter(hug1:String)
+ { //MethodID:3702, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ this._connected = new Functions();
+ this._xmlReceived = new Functions();
+ this._errorOccured = new Functions();
+
+ super();
+
+ this._serverURL = hug1;
+ }
+
+ //variables/etc.
+ private const _connected:Functions; //slotID:0
+ private const _xmlReceived:Functions; //slotID:0
+ private const _errorOccured:Functions; //slotID:0
+ private var _serverURL:String = null; //slotID:0
+
+ public function get type():String
+ { //MethodID:3703, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return TransmitterType.HTTP;
+ }
+
+ public function connect(hug1:Function):void
+ { //MethodID:3705, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 22
+ internal var callbackFunc:Function; //slotID:1
+
+ callbackFunc = hug1;
+
+ ObjectUtils.callLater(function():void{ //MethodID:3704, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ connected.apply();
+ callbackFunc(true);
+ });
+ }
+
+ public function send(hug1:XML):void
+ { //MethodID:3711, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 146
+ internal var xml:XML; //slotID:1
+ internal var request:URLRequest; //slotID:2
+ internal var loader:URLLoader; //slotID:3
+
+ request = null;
+ loader = null;
+ xml = hug1;
+ request = new URLRequest(this._serverURL);
+ request.method = "POST";
+ request.contentType = "text/xml";
+
+ useMsgXML(function():void{ //MethodID:3706, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 14
+ request.data = xml.toXMLString();
+ });
+
+ loader = new URLLoader();
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:3708, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ internal var event:Event; //slotID:1
+
+ event = hug1;
+
+ useMsgXML(function():void{ //MethodID:3707, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 19
+ xmlReceived.apply(new XML(loader.data));
+ });
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:IOErrorEvent):void{ //MethodID:3709, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 17
+ errorOccured.apply("HTTPTransmitter_" + IOErrorEvent.IO_ERROR);
+ });
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:SecurityErrorEvent):void{ //MethodID:3710, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 17
+ errorOccured.apply("HTTPTransmitter_" + SecurityErrorEvent.SECURITY_ERROR);
+ });
+ loader.load(request);
+ }
+
+ public function disconnect():void
+ { //MethodID:3712, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function get connected():Functions
+ { //MethodID:3713, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._connected;
+ }
+
+ public function get isConnecting():Boolean
+ { //MethodID:3714, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function get xmlReceived():Functions
+ { //MethodID:3715, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._xmlReceived;
+ }
+
+ public function get errorOccured():Functions
+ { //MethodID:3716, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorOccured;
+ }
+ }
+}
+
+//■script234■
+
+package jp.nicovideo.nicoplayer.storages.transmitter{
+
+ import flash.events.DataEvent
+ import flash.events.Event
+ import flash.events.IOErrorEvent
+ import flash.events.SecurityErrorEvent
+ import flash.events.TimerEvent
+ import flash.net.XMLSocket
+ import flash.system.Security
+ import flash.utils.Timer
+ import jp.nicovideo.util.Functions
+
+ //■class(instance)_index:281
+ public class XMLSocketTransmitter extends Object implements ITransmitter
+ {
+ //static constructor
+ public static function XMLSocketTransmitter$cinit()
+ { //MethodID:3718, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function XMLSocketTransmitter(hug1:String, hug2:uint, hug3:Boolean=false)
+ { //MethodID:3727, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 209
+ internal var host:String; //slotID:1
+ internal var port:uint; //slotID:2
+ internal var isPingEnabled:Boolean = false; //slotID:3
+ internal var callHandler:Function; //slotID:4
+
+ host = hug1;
+ port = hug2;
+ isPingEnabled = hug3;
+ this._connected = new Functions();
+ this._xmlReceived = new Functions();
+ this._errorOccured = new Functions();
+ this.__pingTimer = new Timer(60 * 1000);
+
+ super();
+
+ callHandler = function(hug1:Boolean, hug2:String):void{ //MethodID:3719, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 66
+ if(isPingEnabled){
+ if(hug1){
+ __pingTimer.start();
+ }else if(__pingTimer.running){
+ __pingTimer.stop();
+ }
+ }
+
+ if(__oneTimeConnectionHandler == null) return;
+ __oneTimeConnectionHandler(hug1, hug2);
+
+ __oneTimeConnectionHandler = null;
+ };
+
+ this.__host = host;
+ this.__port = port;
+ this.__socket = new XMLSocket();
+
+ this.__socket.addEventListener(Event.CONNECT, function(hug1:Event):void{ //MethodID:3720, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ connected.apply();
+ callHandler(true);
+ });
+ this.__socket.addEventListener(DataEvent.DATA, function(hug1:DataEvent):void{ //MethodID:3722, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ internal var event:DataEvent; //slotID:1
+
+ event = hug1;
+
+ useMsgXML(function():void{ //MethodID:3721, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 19
+ xmlReceived.apply(new XML(event.data));
+ });
+ });
+ this.__socket.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:Event):void{ //MethodID:3723, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 43
+ if(__oneTimeConnectionHandler == null) errorOccured.apply("XMLSocketTransmitter_" + IOErrorEvent.IO_ERROR);
+ callHandler(false, ("XMLSocketTransmitter_" + IOErrorEvent.IO_ERROR));
+ });
+ this.__socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:Event):void{ //MethodID:3724, LocalCount= 2 , MaxScope= 0, MaxStack= 4, CodeLength= 19
+ callHandler(false, ("XMLSocketTransmitter_" + SecurityErrorEvent.SECURITY_ERROR));
+ });
+ this.__socket.addEventListener(Event.CLOSE, function(hug1:Event):void{ //MethodID:3725, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 25
+ if(__isClosing) return;
+ errorOccured.apply("XMLSocketTransmitter_" + Event.CLOSE);
+ });
+
+ if(isPingEnabled){
+ this.__pingTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:3726, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 23
+ if(!isConnecting) return;
+ send(new XML("<ping/>"));
+ });
+ }
+ }
+
+ //variables/etc.
+ private const _connected:Functions; //slotID:0
+ private const _xmlReceived:Functions; //slotID:0
+ private const _errorOccured:Functions; //slotID:0
+ private var __host:String = null; //slotID:0
+ private var __port:uint = 0; //slotID:0
+ private var __socket:XMLSocket = null; //slotID:0
+ private var __oneTimeConnectionHandler:Function; //slotID:0
+ private var __isClosing:Boolean = false; //slotID:0
+ private var __pingTimer:Timer; //slotID:0
+
+ public function get type():String
+ { //MethodID:3728, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return TransmitterType.XML_SOCKET;
+ }
+
+ public function connect(hug1:Function):void
+ { //MethodID:3729, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 48
+ this.__oneTimeConnectionHandler = hug1;
+
+ Security.loadPolicyFile("xmlsocket://" + this.__host + ":" + this.__port);
+ this.__socket.connect(this.__host, this.__port);
+ }
+
+ public function send(hug1:XML):void
+ { //MethodID:3731, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 22
+ internal var xml:XML; //slotID:1
+
+ xml = hug1;
+
+ useMsgXML(function():void{ //MethodID:3730, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 15
+ __socket.send(xml.toXMLString());
+ });
+ }
+
+ public function disconnect():void
+ { //MethodID:3732, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ this.__isClosing = true;
+
+ this.__socket.close();
+ }
+
+ public function get connected():Functions
+ { //MethodID:3733, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._connected;
+ }
+
+ public function get xmlReceived():Functions
+ { //MethodID:3734, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._xmlReceived;
+ }
+
+ public function get isConnecting():Boolean
+ { //MethodID:3735, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__socket.connected;
+ }
+
+ public function get errorOccured():Functions
+ { //MethodID:3736, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._errorOccured;
+ }
+ }
+}
+
+//■script235■
+
+package jp.nicovideo.nicoplayer.storages.transmitter{
+
+
+ public function useMsgXML(hug1:Function):void
+ { //dispID:2, MethodID:3738, LocalCount= 5 , MaxScope= 7, MaxStack= 4, CodeLength= 110
+ internal var func:Function; //slotID:1
+ internal var old:Boolean; //slotID:2
+
+ func = hug1;
+ old = XML.ignoreWhitespace;
+ XML.ignoreWhitespace = false;
+
+ try{
+ func();
+ }
+ finally{
+ XML.ignoreWhitespace = old;
+ }
+ }
+
+}
+
+//■script236■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ //■class(instance)_index:282
+ public class VideoConstants extends Object
+ {
+ //static constructor
+ public static function VideoConstants$cinit()
+ { //MethodID:3740, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 119
+ ERROR_CONNECTION_LIMIT = "error_connection_limit";
+ ERROR_AUTHENTICATION = "error_authentication";
+ ERROR_TIMEOUT = "error_timeout";
+ VIDEO_TYPE_FLV = "flv";
+ VIDEO_TYPE_MP4 = "mp4";
+ VIDEO_TYPE_SWF = "swf";
+ OPERATION_HIROBA = "operation_hiroba";
+ OPERATION_NICOWARI = "operation_nicowari";
+ OPERATION_PLUGIN_PREFIX = "operation_plugin_";
+ OPERATION_OTHER = "operation_other";
+ RETRY_LOADING_INTERVAL = 3000;
+ RETRY_LOADING_COUNT = 1;
+ USER_SPONSOR_VIDEO_LENGTH = 10000;
+ }
+
+ //static variables/etc.
+ public static const ERROR_CONNECTION_LIMIT:String = "error_connection_limit";//slotID:1
+ public static const ERROR_AUTHENTICATION:String = "error_authentication";//slotID:2
+ public static const ERROR_TIMEOUT:String = "error_timeout"; //slotID:3
+ public static const VIDEO_TYPE_FLV:String = "flv"; //slotID:4
+ public static const VIDEO_TYPE_MP4:String = "mp4"; //slotID:5
+ public static const VIDEO_TYPE_SWF:String = "swf"; //slotID:6
+ public static const OPERATION_HIROBA:String = "operation_hiroba";//slotID:7
+ public static const OPERATION_NICOWARI:String = "operation_nicowari";//slotID:8
+ public static const OPERATION_PLUGIN_PREFIX:String = "operation_plugin_";//slotID:9
+ public static const OPERATION_OTHER:String = "operation_other"; //slotID:10
+ public static const RETRY_LOADING_INTERVAL:Number = 3000.0; //slotID:11
+ public static const RETRY_LOADING_COUNT:uint = 1; //slotID:12
+ public static const USER_SPONSOR_VIDEO_LENGTH:Number = 10000.0; //slotID:13
+
+ //constructor
+ public function VideoConstants()
+ { //MethodID:3741, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script237■
+
+package jp.nicovideo.util.stream.events{
+
+ import flash.events.ErrorEvent
+
+ //■class(instance)_index:283
+ public class StreamErrorEvent extends ErrorEvent
+ {
+ //static constructor
+ public static function StreamErrorEvent$cinit()
+ { //MethodID:3743, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ ERROR = "StreamErrorEvent.error";
+ }
+
+ //static variables/etc.
+ public static const ERROR:String = "StreamErrorEvent.error"; //slotID:1
+
+ //constructor
+ public function StreamErrorEvent(hug1:String, hug2:Object, hug3:Boolean=false, hug4:Boolean=false, hug5:String=null)
+ { //MethodID:3744, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 17
+ super(hug1, hug3, hug4, hug5);
+
+ this._info = hug2;
+ }
+
+ //variables/etc.
+ private var _info:Object; //slotID:0
+
+ public function get info():Object
+ { //MethodID:3745, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._info;
+ }
+ }
+}
+
+//■script238■
+
+package jp.nicovideo.util.stream{
+
+ import flash.display.Sprite
+ import flash.events.EventDispatcher
+ import flash.media.SoundTransform
+ import flash.media.Video
+ import flash.net.NetConnection
+ import flash.net.NetStream
+ import jp.nicovideo.util.stream.events.StreamEvent
+
+ //■class(instance)_index:284
+ public class StreamSource extends EventDispatcher
+ {
+ //static constructor
+ public static function StreamSource$cinit()
+ { //MethodID:3747, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ _DEFAULT_BUFFER_TIME = 100;
+ }
+
+ //static variables/etc.
+ internal static const _DEFAULT_BUFFER_TIME:Number = 100.0; //slotID:1
+ private static var counter:uint; //slotID:2
+
+ //constructor
+ public function StreamSource(hug1:Sprite)
+ { //MethodID:3748, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 82
+ this._handlerList = [];
+
+ super();
+
+ this._test = (counter++);
+ this._videoLayer = hug1;
+ this._video = new Video(this._videoLayer.width, this._videoLayer.height);
+ this._video.smoothing = true;
+ this._video.deblocking = 5;
+ }
+
+ //variables/etc.
+ private var _videoLayer:Sprite; //slotID:0
+ public var _video:Video; //slotID:0
+ private var _nc:NetConnection; //slotID:0
+ private var _ns:NetStream; //slotID:0
+ private var _client:AbstractStreamClient; //slotID:0
+ private var _metaData:Object; //slotID:0
+ private var _url:String; //slotID:0
+ private var _filename:String; //slotID:0
+ private var _length:Number = -1.0; //slotID:0
+ private var _isLoaded:Boolean = false; //slotID:0
+ private var _hasLengthFixed:Boolean; //slotID:0
+ private var _isConnected:Boolean = false; //slotID:0
+ private var _bufferTime:Number = 2000.0; //slotID:0
+ private var _handlerList:Array; //slotID:0
+ private var _videoWidth:Number; //slotID:0
+ private var _videoHeight:Number; //slotID:0
+ private var _test:uint; //slotID:0
+
+ public function connect(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:3749, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 50
+ if(this.isConnected) return;
+
+ var hug4:Boolean = new RegExp("^[rtmp]").test(hug1);
+
+ if(hug4){
+ this.connectRtmp(hug1, hug2, hug3);
+ }else{
+ this.connectHttp(hug1);
+ }
+ }
+
+ private function connectHttp(hug1:String):void
+ { //MethodID:3750, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 70
+ this._url = hug1;
+ this._nc = new NetConnection();
+ this._client = new HttpClient(this);
+ this._client.netConnection = this._nc;
+ this._nc.client = this._client;
+ this._filename = this._url;
+
+ this._nc.connect(null);
+ }
+
+ private function connectRtmp(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:3751, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 126
+ var hug4:String = null;
+ var hug5:String = null;
+ this._url = hug1;
+ this._filename = hug2;
+
+ if(hug3 != null){
+ hug4 = hug3.substr(0, hug3.indexOf(":"));
+ hug5 = hug3.substr(hug3.indexOf(":") + 1);
+ }
+
+ this._nc = new NetConnection();
+ this._client = new RtmpClient(this);
+ this._client.netConnection = this._nc;
+ this._nc.client = this._client;
+
+ this._nc.connect(this._url, hug5, hug4, hug2);
+ }
+
+ internal function init():void
+ { //MethodID:3752, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 41
+ if(!this.isConnected){
+ this._video.visible = true;
+ this._isConnected = true;
+
+ dispatchEvent(new StreamEvent(StreamEvent.CONNECTED));
+ }
+ }
+
+ internal function setMetaData(hug1:Object):void
+ { //MethodID:3754, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 77
+ internal var val:Object; //slotID:1
+ internal var adjust:Function; //slotID:2
+
+ val = hug1;
+ adjust = function():void{ //MethodID:3753, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 75
+ var hug1:Number = (Number(_metaData.duration) * 1000);
+
+ if(!_hasLengthFixed && (_length != hug1) && (hug1 > 0)) setLength(hug1);
+ resize(_videoLayer.width, _videoLayer.height);
+ };
+
+ this._metaData = val;
+
+ if(this._metaData){
+ adjust();
+
+ this._ns.bufferTime = (this._bufferTime / 1000);
+
+ dispatchEvent(new StreamEvent(StreamEvent.INIT_META_INFO));
+ }
+ }
+
+ internal function setLength(hug1:Number, hug2:Boolean=false):void
+ { //MethodID:3755, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 30
+ this._hasLengthFixed = hug2;
+ this._length = hug1;
+
+ dispatchEvent(new StreamEvent(StreamEvent.SET_LENGTH));
+ }
+
+ public function resize(hug1:Number, hug2:Number):void
+ { //MethodID:3756, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 208
+ if(this._metaData == null) return;
+
+ var hug3:Number = this._videoLayer.scaleX;
+ var hug5:int = 1;
+ this._videoLayer.scaleY = hug5;
+ this._videoLayer.scaleX = hug5;
+ this._video.height = hug2;
+ this._video.width = hug1;
+ var hug4:Number = (this._metaData.height / this._metaData.width);
+
+ if(hug4 < (hug2 / hug1)){
+ this._video.height = ((this._metaData.height / this._metaData.width) * hug1);
+ }else if(hug4 > (hug2 / hug1)){
+ this._video.width = ((this._metaData.width / this._metaData.height) * hug2);
+ }
+
+ this._video.x = ((hug1 - this._video.width) / 2);
+ this._video.y = ((hug2 - this._video.height) / 2);
+ var hug5:Number = hug3;
+ this._videoLayer.scaleY = hug5;
+ this._videoLayer.scaleX = hug5;
+ }
+
+ internal function createNetStream():void
+ { //MethodID:3757, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 131
+ this._ns = new NetStream(this._nc);
+ this._client.netSteram = this._ns;
+ this._ns.client = this._client;
+ this._ns.bufferTime = (_DEFAULT_BUFFER_TIME / 1000);
+ this._ns.checkPolicyFile = true;
+
+ this._video.attachNetStream(this._ns);
+ this._videoLayer.addChild(this._video);
+
+ this._video.visible = false;
+ var hug1:SoundTransform = new SoundTransform();
+ hug1.volume = 0;
+ this._ns.soundTransform = hug1;
+
+ this._ns.play(this._filename);
+ }
+
+ private function clearEventListener():void
+ { //MethodID:3758, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 57
+ var hug1:Object = null;
+
+ for each(hug1 in this._handlerList){
+ this.removeEventListener(hug1.type, hug1.handler);
+ }
+
+ this._handlerList = [];
+ }
+
+ internal function addEventListenerClosure(hug1:String, hug2:Function, hug3:Boolean=false, hug4:int=0, hug5:Boolean=false):void
+ { //MethodID:3759, LocalCount= 6 , MaxScope= 1, MaxStack= 6, CodeLength= 35
+ addEventListener(hug1, hug2, hug3, hug4, hug5);
+ this._handlerList.push({type:hug1, handler:hug2});
+ }
+
+ public function get keyFrame():Object
+ { //MethodID:3760, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ var hug1:Object = null;
+
+ if(this._metaData.seekpoints == undefined){
+ hug1 = this._metaData.keyframes;
+ }else{
+ this._metaData.seekpoints;
+ }
+
+ return hug1;
+ }
+
+ public function get length():Number
+ { //MethodID:3761, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._length;
+ }
+
+ public function set length(hug1:Number):void
+ { //MethodID:3762, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._length = hug1;
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:3763, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._client.loadedLength;
+ }
+
+ public function get isConnected():Boolean
+ { //MethodID:3764, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isConnected;
+ }
+
+ public function get vpos():Number
+ { //MethodID:3765, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._client.vpos;
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:3766, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 16
+ this._client.seek(hug1 / 1000);
+ }
+
+ public function play():void
+ { //MethodID:3767, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._client.resume();
+ }
+
+ public function pause():void
+ { //MethodID:3768, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._client.pause();
+ }
+
+ public function close():void
+ { //MethodID:3769, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 70
+ this.clearEventListener();
+
+ this._isConnected = false;
+
+ if(this._nc) this._nc.close();
+
+ if(this._ns) this._ns.close();
+
+ if(this._client) this._client.close();
+ this._video.attachNetStream(null);
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:3771, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 239
+ internal var val:Number; //slotID:1
+ internal var _sound:SoundTransform; //slotID:2
+ internal var exprMax:Number; //slotID:3
+ internal var volume:Number; //slotID:4
+ internal var _getACurb:Function; //slotID:5
+
+ val = hug1;
+ _getACurb = function(hug1:Number):Number{ //MethodID:3770, LocalCount= 2 , MaxScope= 0, MaxStack= 5, CodeLength= 33
+ return (((0.6838 * Math.pow(hug1, 3)) - (1.7262 * Math.pow(hug1, 2))) + (2.4252 * hug1));
+ };
+
+ val *= 100;
+
+ if(!this._ns || !this.isConnected) return;
+
+ _sound = new SoundTransform();
+
+ if(val == 0){
+ _sound.volume = 0;
+ this._ns.soundTransform = _sound;
+ return;
+ }
+
+ if(val == 100){
+ _sound.volume = 1;
+ this._ns.soundTransform = _sound;
+ return;
+ }
+
+ val = ((val * (4 / 5)) + 20);
+ exprMax = _getACurb(100);
+ volume = (_getACurb(val) * (1 / exprMax));
+
+ if(volume < 0.01){
+ _sound.volume = 0.01;
+ this._ns.soundTransform = _sound;
+ return;
+ }
+
+ _sound.volume = volume;
+ this._ns.soundTransform = _sound;
+ }
+
+ public function get volume():Number
+ { //MethodID:3772, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._ns.soundTransform.volume;
+ }
+
+ public function get bufferTime():Number
+ { //MethodID:3773, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return (this._ns.bufferTime * 1000);
+ }
+
+ public function set bufferTime(hug1:Number):void
+ { //MethodID:3774, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ this._ns.bufferTime = (hug1 / 1000);
+ }
+
+ public function get bytesTotal():Number
+ { //MethodID:3775, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._ns.bytesTotal;
+ }
+
+ public function get bytesLoaded():Number
+ { //MethodID:3776, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._ns.bytesLoaded;
+ }
+
+ public function get video():Video
+ { //MethodID:3777, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function get isRtmp():Boolean
+ { //MethodID:3778, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return (this._client is RtmpClient);
+ }
+ }
+}
+
+//■script239■
+
+package jp.nicovideo.util.stream.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:285
+ public class StreamEvent extends Event
+ {
+ //static constructor
+ public static function StreamEvent$cinit()
+ { //MethodID:3780, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 102
+ PLAYED = "StreamEvent.played";
+ CONNECTED = "StreamEvent.connected";
+ PAUSED = "StreamEvent.paused";
+ ENDED = "StreamEvent.ended";
+ CLOSE = "StreamEVent.close";
+ SEEKED = "StreamEvent.seeked";
+ SET_LENGTH = "StreamEvent.setLength";
+ START_LOAD = "StreamEvent.start_load";
+ COMPLETE_LOAD = "StreamEvent.complete_load";
+ NET_STATUS = "StreamEvent.onNetStream";
+ INIT_META_INFO = "StreamEvent.initMetaInfo";
+ }
+
+ //static variables/etc.
+ public static const PLAYED:String = "StreamEvent.played"; //slotID:1
+ public static const CONNECTED:String = "StreamEvent.connected"; //slotID:2
+ public static const PAUSED:String = "StreamEvent.paused"; //slotID:3
+ public static const ENDED:String = "StreamEvent.ended"; //slotID:4
+ public static const CLOSE:String = "StreamEVent.close"; //slotID:5
+ public static const SEEKED:String = "StreamEvent.seeked"; //slotID:6
+ public static const SET_LENGTH:String = "StreamEvent.setLength";//slotID:7
+ public static const START_LOAD:String = "StreamEvent.start_load";//slotID:8
+ public static const COMPLETE_LOAD:String = "StreamEvent.complete_load";//slotID:9
+ public static const NET_STATUS:String = "StreamEvent.onNetStream";//slotID:10
+ public static const INIT_META_INFO:String = "StreamEvent.initMetaInfo";//slotID:11
+
+ //constructor
+ public function StreamEvent(hug1:String, hug2:Object=null, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:3781, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ super(hug1, hug3, hug4);
+
+ this._info = hug2;
+ }
+
+ //variables/etc.
+ private var _info:Object; //slotID:0
+
+ public function get info():Object
+ { //MethodID:3782, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._info;
+ }
+ }
+}
+
+//■script240■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:286
+ public class StartVposType extends Object
+ {
+ //static constructor
+ public static function StartVposType$cinit()
+ { //MethodID:3784, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ EXT = "specifiedFromExtJumper";
+ ATJUMP = "specifiedByAtjumpJumper";
+ URL = "specifiedByUrlParameter";
+ }
+
+ //static variables/etc.
+ public static const EXT:String = "specifiedFromExtJumper"; //slotID:1
+ public static const ATJUMP:String = "specifiedByAtjumpJumper"; //slotID:2
+ public static const URL:String = "specifiedByUrlParameter"; //slotID:3
+
+ //constructor
+ public function StartVposType()
+ { //MethodID:3785, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script241■
+
+package jp.nicovideo.nicoplayer.hiroba.models{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:287
+ public class HirobaComment extends Object implements IHirobaComment
+ {
+ //static constructor
+ public static function HirobaComment$cinit()
+ { //MethodID:3787, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HirobaComment(hug1:IComment)
+ { //MethodID:3788, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 57
+ super();
+
+ this._message = hug1.message;
+ this._mail = hug1.command.command;
+ this._isPremium = hug1.isPremium;
+ this._date = new Date(hug1.date.time);
+ this._yourpost = hug1.justPosted;
+ }
+
+ //variables/etc.
+ private var _message:String; //slotID:0
+ private var _mail:String; //slotID:0
+ private var _isPremium:Boolean; //slotID:0
+ private var _date:Date; //slotID:0
+ private var _yourpost:Boolean; //slotID:0
+
+ public function get message():String
+ { //MethodID:3789, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._message;
+ }
+
+ public function get mail():String
+ { //MethodID:3790, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mail;
+ }
+
+ public function get isPremium():Boolean
+ { //MethodID:3791, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPremium;
+ }
+
+ public function get date():Date
+ { //MethodID:3792, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._date;
+ }
+
+ public function get yourpost():Boolean
+ { //MethodID:3793, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._yourpost;
+ }
+ }
+}
+
+//■script242■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:288
+ public interface ICommand
+ {
+ //static constructor
+ public static function ICommand$cinit()
+ { //MethodID:3795, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get hasCompleted():Boolean; //MethodID:3796, dispID:0
+
+ function completed():void; //MethodID:3797, dispID:0
+
+ function duplicate(hug1:Function, hug2:Number=Number.NaN):ICommand; //MethodID:3798, dispID:0
+
+ function get color():String; //MethodID:3799, dispID:0
+
+ function set color(hug1:String):void; //MethodID:3800, dispID:0
+
+ function get posY():String; //MethodID:3801, dispID:0
+
+ function set posY(hug1:String):void; //MethodID:3802, dispID:0
+
+ function get posX():String; //MethodID:3803, dispID:0
+
+ function set posX(hug1:String):void; //MethodID:3804, dispID:0
+
+ function get hasButton():Boolean; //MethodID:3805, dispID:0
+
+ function set hasButton(hug1:Boolean):void; //MethodID:3806, dispID:0
+
+ function get size():String; //MethodID:3807, dispID:0
+
+ function set size(hug1:String):void; //MethodID:3808, dispID:0
+
+ function get anonymity():Boolean; //MethodID:3809, dispID:0
+
+ function set anonymity(hug1:Boolean):void; //MethodID:3810, dispID:0
+
+ function get fromLive():Boolean; //MethodID:3811, dispID:0
+
+ function set fromLive(hug1:Boolean):void; //MethodID:3812, dispID:0
+
+ function get sage():Boolean; //MethodID:3813, dispID:0
+
+ function set sage(hug1:Boolean):void; //MethodID:3814, dispID:0
+
+ function get full():Boolean; //MethodID:3815, dispID:0
+
+ function set full(hug1:Boolean):void; //MethodID:3816, dispID:0
+
+ function get patissier():Boolean; //MethodID:3817, dispID:0
+
+ function set patissier(hug1:Boolean):void; //MethodID:3818, dispID:0
+
+ function set command(hug1:String):void; //MethodID:3819, dispID:0
+
+ function get command():String; //MethodID:3820, dispID:0
+
+ function forEachCommand(hug1:Function):void; //MethodID:3821, dispID:0
+
+ function everyCommand(hug1:Function):void; //MethodID:3822, dispID:0
+
+ function hasContained(hug1:String):Boolean; //MethodID:3823, dispID:0
+
+ function get colorCode():uint; //MethodID:3824, dispID:0
+
+ //constructor
+ public function ICommand(); //MethodID:3825, dispID:0
+ }
+}
+
+//■script243■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ import jp.nicovideo.nicoplayer.models.comment.command.CommandSize
+ import jp.nicovideo.util.Assert
+
+ //■class(instance)_index:289
+ public class Command extends Object implements ICommand
+ {
+ //static constructor
+ public static function Command$cinit()
+ { //MethodID:3827, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function isColorCodeCommand(hug1:String):Boolean
+ { //dispID:3, MethodID:3828, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 42
+ if((hug1 == "") || (hug1 == null)) return false;
+
+ return new RegExp(new RegExp("^#[\da-f]{6}$", "i")).test(hug1);
+ }
+
+ //constructor
+ public function Command(hug1:*, hug2:Boolean=false)
+ { //MethodID:3829, LocalCount= 6 , MaxScope= 7, MaxStack= 4, CodeLength= 176
+ internal var src:*; //slotID:1
+ internal var isPremium:Boolean = false; //slotID:2
+
+ src = hug1;
+ isPremium = hug2;
+ this.__commands = [];
+
+ super();
+
+ this.__isPremium = isPremium;
+
+ if(src == undefined) return;
+
+ try{
+ if(src is String){
+ this.command = src;
+ }else if(src is Function){
+ src(this);
+ }else{
+ Assert.assert(false, "Command.Command: error.");
+ }
+ }
+ finally{
+ this.completed();
+ }
+ }
+
+ //variables/etc.
+ private var __completed:Boolean = false; //slotID:0
+ private var __hasButton:Boolean = false; //slotID:0
+ private var __isPremium:Boolean = false; //slotID:0
+ private var __color:String = ""; //slotID:0
+ private var __color_fromCode:String = ""; //slotID:0
+ private var __posX:String = ""; //slotID:0
+ private var __posY:String = ""; //slotID:0
+ private var __size:String = ""; //slotID:0
+ private var __anonymity:Boolean = false; //slotID:0
+ private var __fromLive:Boolean = false; //slotID:0
+ private var __sage:Boolean = false; //slotID:0
+ private var _full:Boolean = false; //slotID:0
+ private var _patissier:Boolean = false; //slotID:0
+ private var __commands:Array; //slotID:0
+ private var __fullCommand_cache:Array; //slotID:0
+
+ public function get hasCompleted():Boolean
+ { //MethodID:3830, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__completed;
+ }
+
+ public function completed():void
+ { //MethodID:3831, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__completed = true;
+ }
+
+ public function duplicate(hug1:Function, hug2:Number=Number.NaN):ICommand
+ { //MethodID:3833, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 76
+ internal var func:Function; //slotID:1
+ internal var isPremium:Number = Number.NaN; //slotID:2
+
+ func = hug1;
+ isPremium = hug2;
+
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return new Command(function(hug1:Command):void{ //MethodID:3832, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 98
+ hug1.__commands = __commands;
+ hug1.__color = ((__color_fromCode != "") ? __color_fromCode : __color);
+ hug1.__size = __size;
+ hug1.__posX = __posX;
+ hug1.__posY = __posY;
+ hug1.__hasButton = __hasButton;
+ hug1.__anonymity = __anonymity;
+ hug1.__fromLive = __fromLive;
+ hug1._full = _full;
+ hug1._patissier = _patissier;
+
+ func(hug1);
+ }, (isNaN(isPremium) ? this.__isPremium : (!(!isPremium))));
+ }
+
+ public function get color():String
+ { //MethodID:3834, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 46
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return ((this.__color_fromCode != "") ? this.__color_fromCode : this.__color);
+ }
+
+ public function set color(hug1:String):void
+ { //MethodID:3835, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+ this.__set_color(hug1);
+ this.__set_color_fromCode(hug1);
+ }
+
+ private function __set_color(hug1:String):Boolean
+ { //MethodID:3836, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 62
+ if(CommandConstants.NORMAL_COLOR_CODES.hasOwnProperty(hug1) || (this.__isPremium && CommandConstants.PREMIUM_COLOR_CODES.hasOwnProperty(hug1))){
+ this.__color = hug1;
+ return true;
+ }
+
+ this.__color = "";
+ return false;
+ }
+
+ private function __set_color_fromCode(hug1:String):Boolean
+ { //MethodID:3837, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ if(this.__isPremium && (Command).isColorCodeCommand(hug1)){
+ this.__color_fromCode = hug1;
+ return true;
+ }
+
+ this.__color_fromCode = "";
+ return false;
+ }
+
+ public function get posY():String
+ { //MethodID:3838, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__posY;
+ }
+
+ public function set posY(hug1:String):void
+ { //MethodID:3839, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+ this.__set_posY(hug1);
+ }
+
+ private function __set_posY(hug1:String):Boolean
+ { //MethodID:3840, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 105
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommandConstants.PLACE_TOP:
+ case CommandConstants.PLACE_BOTTOM:
+ case CommandConstants.PLACE_MIDDLE:
+ this.__posY = hug1;
+ return true;
+ default:
+ break;
+ }
+
+ return false;
+ }
+
+ public function get posX():String
+ { //MethodID:3841, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__posX;
+ }
+
+ public function set posX(hug1:String):void
+ { //MethodID:3842, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+ this.__set_posX(hug1);
+ }
+
+ private function __set_posX(hug1:String):Boolean
+ { //MethodID:3843, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 85
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommandConstants.PLACE_RIGHT:
+ case CommandConstants.PLACE_LEFT:
+ this.__posX = hug1;
+ return true;
+ default:
+ break;
+ }
+
+ return false;
+ }
+
+ public function get hasButton():Boolean
+ { //MethodID:3844, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__hasButton;
+ }
+
+ public function set hasButton(hug1:Boolean):void
+ { //MethodID:3845, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__hasButton = hug1;
+ }
+
+ private function __set_hasButton(hug1:String):Boolean
+ { //MethodID:3846, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ if(hug1 == CommandConstants.HAS_BUTTON){
+ this.__hasButton = true;
+ return true;
+ }
+
+ return false;
+ }
+
+ public function get size():String
+ { //MethodID:3847, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__size;
+ }
+
+ public function set size(hug1:String):void
+ { //MethodID:3848, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 28
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+ this.__set_size(hug1);
+ }
+
+ private function __set_size(hug1:String):Boolean
+ { //MethodID:3849, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!CommandSize.SIZES.hasOwnProperty(hug1)) return false;
+
+ this.__size = hug1;
+ return true;
+ }
+
+ public function get anonymity():Boolean
+ { //MethodID:3850, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__anonymity;
+ }
+
+ public function set anonymity(hug1:Boolean):void
+ { //MethodID:3851, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__anonymity = hug1;
+ }
+
+ private function __set_anonymity(hug1:String):Boolean
+ { //MethodID:3852, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ if(hug1 == CommandConstants.ANONYMITY){
+ this.__anonymity = true;
+ return true;
+ }
+
+ return false;
+ }
+
+ public function get fromLive():Boolean
+ { //MethodID:3853, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__fromLive;
+ }
+
+ public function set fromLive(hug1:Boolean):void
+ { //MethodID:3854, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__fromLive = hug1;
+ }
+
+ private function __set_fromLive(hug1:String):Boolean
+ { //MethodID:3855, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ if(hug1 == CommandConstants.FROMLIVE){
+ this.__fromLive = true;
+ return true;
+ }
+
+ return false;
+ }
+
+ public function get sage():Boolean
+ { //MethodID:3856, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__sage;
+ }
+
+ public function set sage(hug1:Boolean):void
+ { //MethodID:3857, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__sage = hug1;
+ }
+
+ private function __set_sage(hug1:String):Boolean
+ { //MethodID:3858, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ if(hug1 == CommandConstants.SAGE){
+ this.__sage = true;
+ return true;
+ }
+
+ return false;
+ }
+
+ public function get full():Boolean
+ { //MethodID:3859, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this._full;
+ }
+
+ public function set full(hug1:Boolean):void
+ { //MethodID:3860, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this._full = hug1;
+ }
+
+ public function get patissier():Boolean
+ { //MethodID:3861, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.__completed) throw new Error("Command.completed; has not completed yet.");
+
+ return this._patissier;
+ }
+
+ private function _set_full(hug1:String):Boolean
+ { //MethodID:3862, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ this._full = (hug1 == CommandConstants.FULL);
+ return this._full;
+ }
+
+ public function set patissier(hug1:Boolean):void
+ { //MethodID:3863, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this._patissier = hug1;
+ }
+
+ private function _set_patissier(hug1:String):Boolean
+ { //MethodID:3864, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 19
+ this._patissier = (hug1 == CommandConstants.PATISSIER);
+ return this._patissier;
+ }
+
+ public function set command(hug1:String):void
+ { //MethodID:3867, LocalCount= 4 , MaxScope= 2, MaxStack= 12, CodeLength= 363
+ internal var cmdStr:String; //slotID:1
+ internal var checkSheet:Array; //slotID:2
+ internal var i:int; //slotID:3
+ internal var matcher:Function; //slotID:4
+ internal var j:int; //slotID:5
+
+ j = 0;
+ cmdStr = hug1;
+ matcher = function(hug1:String, hug2:String):Function{ //MethodID:3866, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ internal var pattern:String; //slotID:1
+ internal var id:String; //slotID:2
+
+ pattern = hug1;
+ id = hug2;
+ return function(hug1:String):Boolean{ //MethodID:3865, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ if(hug1 != pattern) return false;
+
+ this[id] = true;
+ return true;
+ };
+ };
+
+ if(this.__completed) throw new Error("Command.completed: already completed.");
+
+ this.__commands = cmdStr.replace(new RegExp("^[ ]*(.*?)[ ]*$", "s"), "$1").split(new RegExp("[ ]+"));
+ this.__color = "";
+ this.__color_fromCode = "";
+ this.__size = "";
+ this.__posX = "";
+ this.__posY = "";
+ this.__hasButton = false;
+ this.__anonymity = false;
+ this.__fromLive = false;
+ this.__sage = false;
+ this._full = false;
+ this._patissier = false;
+ checkSheet = [this.__set_size, this.__set_posX, this.__set_posY, this.__set_color, this.__set_color_fromCode, this.__set_hasButton, this.__set_anonymity, this.__set_fromLive, this.__set_sage, this._set_full, this._set_patissier];
+ i = 0;
+
+ while((i < this.__commands.length) && (checkSheet.length != 0)){
+ j = 0;
+
+ while(j < checkSheet.length){
+ var hug3:Array = checkSheet;
+
+ if(hug3[j](this.__commands[i])){
+ i -= 1;
+
+ this.__commands.splice(i, 1);
+
+ j -= 1;
+
+ checkSheet.splice(j, 1);
+ break;
+ }
+
+ j++;
+ }
+
+ i++;
+ }
+ }
+
+ public function get command():String
+ { //MethodID:3868, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ return this.__listing().join(" ");
+ }
+
+ public function forEachCommand(hug1:Function):void
+ { //MethodID:3869, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ var hug2:String = null;
+
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ for each(hug2 in this.__listing()){
+ hug1(hug2);
+ }
+ }
+
+ public function everyCommand(hug1:Function):void
+ { //MethodID:3870, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 71
+ var hug2:String = null;
+
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ for each(hug2 in this.__listing()){
+ if(!hug1(hug2)) break;
+ }
+ }
+
+ public function hasContained(hug1:String):Boolean
+ { //MethodID:3871, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 67
+ var hug2:String = null;
+
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ for each(hug2 in this.__listing()){
+ if(hug1 == hug2) return true;
+ }
+
+ return false;
+ }
+
+ private function __listing():Array
+ { //MethodID:3872, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 244
+ var hug1:Array = null;
+
+ if(!this.__fullCommand_cache){
+ hug1 = this.__commands.concat();
+
+ if(this.__size != "") hug1.unshift(this.__size);
+
+ if(this.__color_fromCode != "") hug1.unshift(this.__color_fromCode);
+
+ if(this.__color != "") hug1.unshift(this.__color);
+
+ if(this.__posY != "") hug1.unshift(this.__posY);
+
+ if(this.__posX != "") hug1.unshift(this.__posX);
+
+ if(this.__hasButton) hug1.unshift(CommandConstants.HAS_BUTTON);
+
+ if(this.__sage) hug1.unshift(CommandConstants.SAGE);
+
+ if(this.__anonymity) hug1.unshift(CommandConstants.ANONYMITY);
+
+ if(this.__fromLive) hug1.unshift(CommandConstants.FROMLIVE);
+
+ if(this._full) hug1.unshift(CommandConstants.FULL);
+
+ if(this._patissier) hug1.unshift(CommandConstants.PATISSIER);
+
+ this.__fullCommand_cache = hug1;
+ }
+
+ return this.__fullCommand_cache;
+ }
+
+ public function get colorCode():uint
+ { //MethodID:3873, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 167
+ if(!this.__completed) throw new Error("Command.completed: has not completed yet.");
+
+ var hug1:uint = CommandConstants.NORMAL_COLOR_CODES[CommandConstants.COLOR_WHITE];
+ var hug2:String = ((this.__color_fromCode != "") ? this.__color_fromCode : this.__color);
+
+ if(hug2 != ""){
+ if(CommandConstants.NORMAL_COLOR_CODES.hasOwnProperty(hug2)) hug1 = CommandConstants.NORMAL_COLOR_CODES[hug2];
+
+ if(this.__isPremium){
+ if(CommandConstants.PREMIUM_COLOR_CODES.hasOwnProperty(hug2)) hug1 = CommandConstants.PREMIUM_COLOR_CODES[hug2];
+
+ if((Command).isColorCodeCommand(hug2)) hug1 = parseInt(hug2.substr(1, 6), 16);
+ }
+ }
+
+ return hug1;
+ }
+ }
+}
+
+//■script244■
+
+package jp.nicovideo.nicoplayer.hiroba.view{
+
+ import flash.display.Sprite
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayer
+ import jp.nicovideo.nicoplayer.views.comment.CommentLayerView
+ import jp.nicovideo.nicoplayer.views.comment.CommentViewConstants
+ import jp.nicovideo.nicoplayer.views.comment.IDisplayObjectProvider
+ import jp.nicovideo.nicoplayer.views.comment.ViewEntry
+ import jp.nicovideo.nicoplayer.views.comment.elements.ClickableComment
+ import jp.nicovideo.nicoplayer.views.comment.elements.CommentTextField
+ import jp.nicovideo.util.ObjectPool
+ import jp.nicovideo.util.events.event_receiver
+
+ //■class(instance)_index:290
+ public class HirobaCommentPlayer extends Object
+ {
+ //static constructor
+ public static function HirobaCommentPlayer$cinit()
+ { //MethodID:3875, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HirobaCommentPlayer(hug1:Sprite, hug2:IPlayerConfig, hug3:Boolean)
+ { //MethodID:3876, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 56
+ this._layers = {};
+ this._textPoolMap = {};
+ this._buttonPoolMap = {};
+ this._addedHirobaEntries = [];
+ this._addedOtherEntries = [];
+
+ super();
+
+ this._baseLayer = hug1;
+ this._playerConfig = hug2;
+ this._isPremium = hug3;
+
+ this._constructor();
+ }
+
+ //variables/etc.
+ private var _baseLayer:Sprite; //slotID:0
+ private var _commentLayer:CommentLayer; //slotID:0
+ private var _commentLayerView:CommentLayerView; //slotID:0
+ private var _layers:Object; //slotID:0
+ private var _playerConfig:IPlayerConfig; //slotID:0
+ private var _isPremium:Boolean; //slotID:0
+ private var _textPoolMap:Object; //slotID:0
+ private var _buttonPoolMap:Object; //slotID:0
+ private var _addedHirobaEntries:Array; //slotID:0
+ private var _addedOtherEntries:Array; //slotID:0
+
+ private function _constructor():void
+ { //MethodID:3881, LocalCount= 4 , MaxScope= 2, MaxStack= 7, CodeLength= 323
+ internal var timeline:_HirobaTimeline; //slotID:1
+ internal var layers:Array; //slotID:2
+ internal var layerID:String; //slotID:3
+ internal var createTextFieldFunc:Function; //slotID:4
+ internal var createButtonFunc:Function; //slotID:5
+
+ layerID = null;
+ createTextFieldFunc = function(hug1:String):Function{ //MethodID:3878, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ internal var layerID:String; //slotID:1
+ internal var f:Function; //slotID:2
+
+ layerID = hug1;
+ f = function():CommentTextField{ //MethodID:3877, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 44
+ var hug1:CommentTextField = null;
+ hug1 = new CommentTextField();
+ hug1.displayObject.visible = false;
+
+ _commentLayer.getLayer(layerID).addChild(hug1.displayObject);
+
+ return hug1;
+ };
+
+ return f;
+ };
+
+ createButtonFunc = function(hug1:String):Function{ //MethodID:3880, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ internal var layerID:String; //slotID:1
+ internal var f:Function; //slotID:2
+
+ layerID = hug1;
+ f = function():ClickableComment{ //MethodID:3879, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 39
+ var hug1:ClickableComment = new ClickableComment();
+ hug1.displayObject.visible = false;
+
+ _commentLayer.getLayer(layerID).addChild(hug1.displayObject);
+
+ return hug1;
+ };
+
+ return f;
+ };
+
+ timeline = new _HirobaTimeline();
+ this._commentLayerView = new CommentLayerView(this._baseLayer, timeline, this._baseLayer.width, this._baseLayer.height, timeline.length);
+ this._commentLayer = new CommentLayer(this._baseLayer, this._playerConfig, this._isPremium);
+
+ this._commentLayer.addLayer(HirobaCommentListName.HIROBA);
+ this._commentLayer.addLayer(HirobaCommentListName.OTHER_VIDEO, 0);
+ this._commentLayer.setOptionalLayer(HirobaCommentListName.OTHER_VIDEO);
+
+ layers = [HirobaCommentListName.HIROBA, HirobaCommentListName.OTHER_VIDEO];
+
+ for each(layerID in layers){
+ this._textPoolMap[layerID] = new ObjectPool(createTextFieldFunc(layerID));
+ this._buttonPoolMap[layerID] = new ObjectPool(createButtonFunc(layerID));
+ }
+
+ this._commentLayerView.onVideoPlayed();
+ this._commentLayer.onVideoStarted();
+ this._commentLayer.onPlayerConfigCommentVisibleUpdated(false);
+ }
+
+ public function get commentLayerView():CommentLayerView
+ { //MethodID:3882, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentLayerView;
+ }
+
+ public function get commentLayer():CommentLayer
+ { //MethodID:3883, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentLayer;
+ }
+
+ public function addComment(hug1:IComment, hug2:String):void
+ { //MethodID:3884, LocalCount= 7 , MaxScope= 1, MaxStack= 7, CodeLength= 166
+ var hug3:String = hug1.command.posY;
+ var hug4:Number = (hug1.vpos - CommentViewConstants.COMMENT_SHOW_AHEAD);
+ var hug5:IDisplayObjectProvider = (hug1.command.hasButton ? new _ClickableCommentProvider(this._buttonPoolMap[hug2], hug1) : new _CommentTextFieldProvider(this._textPoolMap[hug2], hug1));
+ var hug6:ViewEntry = new ViewEntry(hug4, CommentViewConstants.COMMENT_SHOW_EXPIRE, hug3, hug5, 0, hug1.command.full);
+
+ if(hug2 == HirobaCommentListName.HIROBA){
+ this._addedHirobaEntries.push(hug6);
+ }else{
+ this._addedOtherEntries.push(hug6);
+ }
+
+ this._commentLayerView.update(hug2, [hug6], null, false);
+ }
+ }
+}
+
+import flash.display.DisplayObject
+import jp.nicovideo.nicoplayer.models.comment.IComment
+import jp.nicovideo.nicoplayer.views.comment.elements.ClickableComment
+import jp.nicovideo.nicoplayer.views.comment.elements.CommentTextField
+import jp.nicovideo.util.Assert
+import jp.nicovideo.util.ObjectPool
+import jp.nicovideo.util.TimeUtils
+
+//■class(instance)_index:291
+//private
+class _HirobaTimeline extends Object implements ITimeline
+{
+ //static constructor
+ public static function _HirobaTimeline$cinit()
+ { //MethodID:3885, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ public function get length():Number
+ { //MethodID:3886, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return -1;
+ }
+
+ public function get vpos():Number
+ { //MethodID:3887, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return (TimeUtils.now().time - 1000);
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:3888, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ //constructor
+ public function _HirobaTimeline()
+ { //MethodID:3889, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:292
+//private
+class _CommentTextFieldProvider extends Object implements IDisplayObjectProvider
+{
+ //static constructor
+ public static function _CommentTextFieldProvider$cinit()
+ { //MethodID:3890, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _CommentTextFieldProvider(hug1:ObjectPool, hug2:IComment)
+ { //MethodID:3891, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._pool = hug1;
+ this._comment = hug2;
+ }
+
+ //variables/etc.
+ private var _pool:ObjectPool; //slotID:0
+ private var _comment:IComment; //slotID:0
+ private var _textComment:CommentTextField; //slotID:0
+
+ public function create():DisplayObject
+ { //MethodID:3892, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 62
+ Assert.assert(!this._textComment, "_CommentTextFieldProvider.create: _textComment is not null");
+
+ this._textComment = this._pool.create();
+
+ this._textComment.reset(this._comment, -1);
+
+ this._textComment.displayObject.visible = true;
+ return this._textComment.displayObject;
+ }
+
+ public function release(hug1:DisplayObject):void
+ { //MethodID:3893, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 59
+ Assert.assert(this._textComment && (this._textComment.displayObject === hug1));
+
+ this._textComment.displayObject.visible = false;
+
+ this._pool.restore(this._textComment);
+
+ this._textComment = null;
+ }
+
+ public function assignZ(hug1:DisplayObject, hug2:int):void
+ { //MethodID:3894, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+}
+
+//■class(instance)_index:293
+//private
+class _ClickableCommentProvider extends Object implements IDisplayObjectProvider
+{
+ //static constructor
+ public static function _ClickableCommentProvider$cinit()
+ { //MethodID:3895, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _ClickableCommentProvider(hug1:ObjectPool, hug2:IComment)
+ { //MethodID:3896, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._pool = hug1;
+ this._comment = hug2;
+ }
+
+ //variables/etc.
+ private var _pool:ObjectPool; //slotID:0
+ private var _comment:IComment; //slotID:0
+ private var _clickableComment:ClickableComment; //slotID:0
+
+ public function create():DisplayObject
+ { //MethodID:3897, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ Assert.assert(!this._clickableComment);
+
+ this._clickableComment = this._pool.create();
+ this._clickableComment.displayObject.visible = true;
+ return this._clickableComment.displayObject;
+ }
+
+ public function release(hug1:DisplayObject):void
+ { //MethodID:3898, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 59
+ Assert.assert(this._clickableComment && (this._clickableComment.displayObject === hug1));
+
+ this._clickableComment.displayObject.visible = false;
+
+ this._pool.restore(this._clickableComment);
+
+ this._clickableComment = null;
+ }
+
+ public function assignZ(hug1:DisplayObject, hug2:int):void
+ { //MethodID:3899, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+}
+
+//■script245■
+
+package jp.nicovideo.nicoplayer.hiroba.view{
+
+ //■class(instance)_index:294
+ public class HirobaCommentListName extends Object
+ {
+ //static constructor
+ public static function HirobaCommentListName$cinit()
+ { //MethodID:3901, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ HIROBA = "cl_name:hiroba";
+ OTHER_VIDEO = "cl_name:other_video";
+ }
+
+ //static variables/etc.
+ public static const HIROBA:String = "cl_name:hiroba"; //slotID:1
+ public static const OTHER_VIDEO:String = "cl_name:other_video"; //slotID:2
+
+ //constructor
+ public function HirobaCommentListName()
+ { //MethodID:3902, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script246■
+
+package jp.nicovideo.marquee.models{
+
+ //■class(instance)_index:295
+ public class MarqueePriorityConstants extends Object
+ {
+ //static constructor
+ public static function MarqueePriorityConstants$cinit()
+ { //MethodID:3904, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 67
+ USER_NICOWARI = 3;
+ ADS_LIVE_NICOWARI = 5;
+ LIVE_ALERT = 6;
+ JK_ALERT = 6;
+ UNEI_COMMENT = 8;
+ OFFICIAL_ANIME_NICOWARI = 11;
+ PLUGIN_ALERT = 2;
+ POWER_INFOMATION_INTERRUPT = 2;
+ }
+
+ //static variables/etc.
+ public static const USER_NICOWARI:Number = 3.0; //slotID:1
+ public static const ADS_LIVE_NICOWARI:Number = 5.0; //slotID:2
+ public static const LIVE_ALERT:Number = 6.0; //slotID:3
+ public static const JK_ALERT:Number = 6.0; //slotID:4
+ public static const UNEI_COMMENT:Number = 8.0; //slotID:5
+ public static const OFFICIAL_ANIME_NICOWARI:Number = 11.0; //slotID:6
+ public static const PLUGIN_ALERT:Number = 2.0; //slotID:7
+ public static const POWER_INFOMATION_INTERRUPT:Number = 2.0; //slotID:8
+
+ //constructor
+ public function MarqueePriorityConstants()
+ { //MethodID:3905, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script247■
+
+package jp.nicovideo.marquee{
+
+ //■class(instance)_index:296
+ public class MarqueeInterruptType extends Object
+ {
+ //static constructor
+ public static function MarqueeInterruptType$cinit()
+ { //MethodID:3907, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 75
+ UNKNOWN = "unknown";
+ CM = "cm";
+ LIVE_ALERT = "live_alert";
+ JK_ALERT = "jk_alert";
+ UNEI_COMMENT = "unei_comment";
+ ADS_LIVE = "ads_live";
+ PLUGIN_ALERT = "plugin_alert";
+ POWER_INFOMATION = "power_infomation";
+ }
+
+ //static variables/etc.
+ public static const UNKNOWN:String = "unknown"; //slotID:1
+ public static const CM:String = "cm"; //slotID:2
+ public static const LIVE_ALERT:String = "live_alert"; //slotID:3
+ public static const JK_ALERT:String = "jk_alert"; //slotID:4
+ public static const UNEI_COMMENT:String = "unei_comment"; //slotID:5
+ public static const ADS_LIVE:String = "ads_live"; //slotID:6
+ public static const PLUGIN_ALERT:String = "plugin_alert"; //slotID:7
+ public static const POWER_INFOMATION:String = "power_infomation";//slotID:8
+
+ //constructor
+ public function MarqueeInterruptType()
+ { //MethodID:3908, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script248■
+
+package jp.nicovideo.nicoplayer.models.video{
+
+ import flash.display.DisplayObject
+ import flash.display.Sprite
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.views.VideoLayerConstants
+ import jp.nicovideo.util.Functions
+ import jp.nicovideo.util.ObjectUtils
+
+ //■class(instance)_index:298
+ public class DummyVideo extends Object implements IChildVideo
+ {
+ //static constructor
+ public static function DummyVideo$cinit()
+ { //MethodID:3916, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function DummyVideo(hug1:Number)
+ { //MethodID:3918, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 192
+ internal var length:Number; //slotID:1
+
+ length = hug1;
+ this._videoTimer = new Timer(this._delayTime);
+ this._onInitialized = new Functions();
+ this._onEnded = new Functions();
+ this._onSeeked = new Functions();
+ this._onSeeking = new Functions();
+ this._onPlayed = new Functions();
+ this._onStopped = new Functions();
+ this._onVideoLoadComplete = new Functions();
+ this._onVideoBufferingStarted = new Functions();
+ this._onVideoError = new Functions();
+ this._displayObject = new Sprite();
+ this._video = new Sprite();
+ this._vposProvider = new _VposProvider();
+
+ super();
+
+ if(length < 0) throw new ArgumentError("DummyVideo.DummyVideo: length must be positive number.");
+
+ this._length = length;
+
+ this._videoTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:3917, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 72
+ if(_vposProvider.vpos >= length){
+ _isEnd = true;
+
+ _videoTimer.stop();
+ _vposProvider.onStopped();
+
+ _vposProvider.lastVpos = length;
+ _isPlaying = _isPausing = false;
+
+ _onEnded.apply(_isLoop);
+ }
+ });
+
+ this._vposProvider.lastVpos = 0.0;
+ }
+
+ //variables/etc.
+ private const _delayTime:uint = 40; //slotID:0
+ private var _videoTimer:Timer; //slotID:0
+ private var _length:uint; //slotID:0
+ private var _isLoop:Boolean; //slotID:0
+ private const _onInitialized:Functions; //slotID:0
+ private const _onEnded:Functions; //slotID:0
+ private const _onSeeked:Functions; //slotID:0
+ private const _onSeeking:Functions; //slotID:0
+ private const _onPlayed:Functions; //slotID:0
+ private const _onStopped:Functions; //slotID:0
+ private const _onVideoLoadComplete:Functions; //slotID:0
+ private const _onVideoBufferingStarted:Functions; //slotID:0
+ private const _onVideoError:Functions; //slotID:0
+ private var _isPlaying:Boolean = false; //slotID:0
+ private var _isPausing:Boolean = false; //slotID:0
+ private var _isEnd:Boolean = false; //slotID:0
+ private var _displayObject:DisplayObject; //slotID:0
+ private var _video:DisplayObject; //slotID:0
+ private var _vposProvider:_VposProvider; //slotID:0
+
+ public function initEvent():void
+ { //MethodID:3920, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 48
+ this._onStopped.add(this._vposProvider.onStopped);
+ this._onPlayed.add(this._vposProvider.onPlayed);
+ this._onEnded.add(function(hug1:Boolean):void{ //MethodID:3919, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _vposProvider.onStopped();
+ });
+ }
+
+ public function load(hug1:Function):void
+ { //MethodID:3921, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ ObjectUtils.callLater(hug1, true);
+ }
+
+ public function play():void
+ { //MethodID:3922, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 40
+ this._isEnd = false;
+ this._isPlaying = true;
+ this._isPausing = false;
+
+ this._videoTimer.start();
+ ObjectUtils.callLater(this._onPlayed.apply);
+ }
+
+ public function stop():void
+ { //MethodID:3923, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ this._isEnd = false;
+ this._isPausing = true;
+
+ this._videoTimer.stop();
+ ObjectUtils.callLater(this._onStopped.apply);
+ }
+
+ public function close():void
+ { //MethodID:3924, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:3925, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 31
+ this._isEnd = false;
+ this._vposProvider.lastVpos = hug1;
+
+ ObjectUtils.callLater(this._onSeeked.apply, hug1);
+ }
+
+ public function get length():Number
+ { //MethodID:3926, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._length;
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:3927, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._length;
+ }
+
+ public function get vpos():Number
+ { //MethodID:3928, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._vposProvider.vpos;
+ }
+
+ public function set isLoop(hug1:Boolean):void
+ { //MethodID:3929, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isLoop = hug1;
+ }
+
+ public function set volume(hug1:Number):void
+ { //MethodID:3930, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:3931, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function get isControllable():Boolean
+ { //MethodID:3932, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return true;
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:3933, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPlaying;
+ }
+
+ public function get isPausing():Boolean
+ { //MethodID:3934, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPausing;
+ }
+
+ public function get isSeeking():Boolean
+ { //MethodID:3935, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return false;
+ }
+
+ public function get isEnd():Boolean
+ { //MethodID:3936, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isEnd;
+ }
+
+ public function get isBuffering():Boolean
+ { //MethodID:3937, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return false;
+ }
+
+ public function get onVideoInitialized():Functions
+ { //MethodID:3938, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onInitialized;
+ }
+
+ public function get onVideoEnded():Functions
+ { //MethodID:3939, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onEnded;
+ }
+
+ public function get onVideoSeeked():Functions
+ { //MethodID:3940, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onSeeked;
+ }
+
+ public function get onVideoSeeking():Functions
+ { //MethodID:3941, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onSeeking;
+ }
+
+ public function get onVideoPlayed():Functions
+ { //MethodID:3942, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onPlayed;
+ }
+
+ public function get onVideoStopped():Functions
+ { //MethodID:3943, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onStopped;
+ }
+
+ public function get onVideoError():Functions
+ { //MethodID:3944, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoError;
+ }
+
+ public function get layer():DisplayObject
+ { //MethodID:3945, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._displayObject;
+ }
+
+ public function get source():DisplayObject
+ { //MethodID:3946, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._video;
+ }
+
+ public function get videoPlayerStatus():String
+ { //MethodID:3947, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 54
+ if(this._isEnd) return VideoPlayerStatus.END;
+
+ if(this._isPlaying){
+ if(this._isPausing) return VideoPlayerStatus.PAUSED;
+
+ return VideoPlayerStatus.PLAYING;
+ }
+
+ return VideoPlayerStatus.STOPPED;
+ }
+
+ public function get onVideoBufferingStarted():Functions
+ { //MethodID:3948, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoBufferingStarted;
+ }
+
+ public function get onVideoLoadComplete():Functions
+ { //MethodID:3949, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._onVideoLoadComplete;
+ }
+
+ public function resize(hug1:Number, hug2:Number):void
+ { //MethodID:3950, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function get contentWidth():int
+ { //MethodID:3951, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return VideoLayerConstants.VIDEO_LAYER_SD_WIDTH;
+ }
+
+ public function get contentHeight():int
+ { //MethodID:3952, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT;
+ }
+ }
+}
+
+import jp.nicovideo.util.TimeUtils
+
+//■class(instance)_index:297
+//private
+class _VposProvider extends Object
+{
+ //static constructor
+ public static function _VposProvider$cinit()
+ { //MethodID:3910, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _startTime:Number; //slotID:0
+ private var _isPausing:Boolean = true; //slotID:0
+ private var _lastVpos:Number = 0.0; //slotID:0
+
+ public function onPlayed():void
+ { //MethodID:3911, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this._startTime = TimeUtils.now().time;
+ this._isPausing = false;
+ }
+
+ public function onStopped():void
+ { //MethodID:3912, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ this._lastVpos = this.vpos;
+ this._isPausing = true;
+ }
+
+ public function set lastVpos(hug1:Number):void
+ { //MethodID:3913, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._lastVpos = hug1;
+ }
+
+ public function get vpos():Number
+ { //MethodID:3914, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ if(this._isPausing) return this._lastVpos;
+
+ return (this._lastVpos + TimeUtils.now().time - this._startTime);
+ }
+
+ //constructor
+ public function _VposProvider()
+ { //MethodID:3915, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ this._startTime = TimeUtils.now().time;
+
+ super();
+ }
+}
+
+//■script249■
+
+package jp.nicovideo.util{
+
+ import flash.events.StatusEvent
+ import flash.net.LocalConnection
+ import flash.system.Security
+ import flash.utils.clearInterval
+ import flash.utils.setInterval
+ import jp.nicovideo.util.net.local.LocalConnectionFactory
+
+ //■class(instance)_index:299
+ public class LC extends Object
+ {
+ //static constructor
+ public static function LC$cinit()
+ { //MethodID:3954, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ CONNECTION_FAIL = "connectionFail";
+ }
+
+ //static variables/etc.
+ public static const CONNECTION_FAIL:String = "connectionFail"; //slotID:1
+
+ //constructor
+ public function LC(hug1:String)
+ { //MethodID:3955, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 31
+ this.onErrorOccured = new Functions();
+ this._lc = LocalConnectionFactory.create();
+
+ super();
+
+ this._domain = hug1;
+ }
+
+ //variables/etc.
+ public const onErrorOccured:Functions; //slotID:0
+ public var _domain:String; //slotID:0
+ public var _lc:LocalConnection; //slotID:0
+ private var _client:_LCClient; //slotID:0
+
+ public function get isMaster():Boolean
+ { //MethodID:3956, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return (this._client is (_Master));
+ }
+
+ public function join(hug1:Function):void
+ { //MethodID:3961, LocalCount= 4 , MaxScope= 5, MaxStack= 4, CodeLength= 307
+ internal var f:Function; //slotID:1
+ internal var self:LC; //slotID:2
+ internal var time:Number; //slotID:3
+ internal var attempts:int; //slotID:4
+ internal var connectionName:String; //slotID:5
+ internal var timer:Number; //slotID:6
+ internal var masterize:Function; //slotID:7
+
+ self = null;
+ connectionName = null;
+ timer = NaN;
+ f = hug1;
+ masterize = function(hug1:LocalConnection):Boolean{ //MethodID:3959, LocalCount= 4 , MaxScope= 3, MaxStack= 4, CodeLength= 105
+ internal var lc:LocalConnection; //slotID:1
+
+ lc = hug1;
+
+ try{
+ lc.connect(_masterName);
+
+ lc.client = _client = new _Master();
+
+ lc.addEventListener(StatusEvent.STATUS, function(hug1:StatusEvent):void{ //MethodID:3958, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+ _client.setup(self, _masterName);
+ f();
+
+ return true;
+ }
+ catch(e:ArgumentError){
+ }
+
+ return false;
+ };
+
+ Security.allowDomain("*");
+ this._lc.allowDomain("*");
+ this._lc.allowInsecureDomain("*");
+
+ self = this;
+
+ if(masterize(this._lc)) return;
+
+ time = new Date().getTime();
+ attempts = 3;
+
+ while(true){
+ try{
+ this._lc.connect("" + time);
+ break;
+ }
+ catch(e:ArgumentError){
+ }
+
+ attempts -= 1;
+
+ if(0 < (attempts - 1)){
+ this.onErrorOccured.apply(CONNECTION_FAIL);
+
+ return;
+ }
+
+ time += 1;
+ }
+
+ connectionName = ("" + time);
+ this._lc.client = this._client = new _Slave();
+
+ this._client.setup(this, connectionName);
+ this._lc.send(this._masterName, "_lc_ping", connectionName);
+
+ timer = setInterval(function():void{ //MethodID:3957, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 17
+ _lc.send(_masterName, "_lc_ping", connectionName);
+ }, 3000);
+ this._lc.addEventListener(StatusEvent.STATUS, function(hug1:StatusEvent):void{ //MethodID:3960, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 106
+ internal var event:StatusEvent; //slotID:1
+ internal var lc:LocalConnection; //slotID:2
+
+ lc = null;
+ event = hug1;
+
+ if(event.level == "error"){
+ lc = LocalConnectionFactory.create();
+
+ if(masterize(lc)){
+ try{
+ _lc.close();
+ }
+ catch(e:ArgumentError){
+ }
+
+ _lc = lc;
+
+ clearInterval(timer);
+ }
+ }
+ });
+ }
+
+ public function close():void
+ { //MethodID:3962, LocalCount= 3 , MaxScope= 5, MaxStack= 3, CodeLength= 35
+ try{
+ this._lc.close();
+ }
+ catch(e:ArgumentError){
+ }
+ }
+
+ public function send(hug1:Function, hug2:String, hug3:Object):void
+ { //MethodID:3963, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._client.send(hug1, hug2, hug3);
+ }
+
+ public function receive(hug1:Function, hug2:String, hug3:Boolean=false):void
+ { //MethodID:3964, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._client.receive(hug1, hug2, hug3);
+ }
+
+ public function get _masterName():String
+ { //MethodID:3965, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return (this._domain + ".master");
+ }
+ }
+}
+
+import flash.utils.clearTimeout
+import flash.utils.setTimeout
+import jp.nicovideo.util.LC
+import jp.nicovideo.util.ObjectUtils
+
+//■class(instance)_index:300
+//private
+class _LCClient extends Object
+{
+ //static constructor
+ public static function _LCClient$cinit()
+ { //MethodID:3966, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ _txIDCounter = 0;
+ }
+
+ //static variables/etc.
+ private static var _txIDCounter:Number = 0.0; //slotID:1
+
+ //variables/etc.
+ protected var _parent:LC; //slotID:0
+ protected var _connectionName:String; //slotID:0
+ private var _accepters:Object; //slotID:0
+
+ public function setup(hug1:LC, hug2:String):void
+ { //MethodID:3967, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._parent = hug1;
+ this._connectionName = hug2;
+ }
+
+ public function send(hug1:Function, hug2:String, hug3:Object):void
+ { //MethodID:3968, LocalCount= 4 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function receive(hug1:Function, hug2:String, hug3:Boolean, hug4:int=0):void
+ { //MethodID:3970, LocalCount= 7 , MaxScope= 2, MaxStack= 5, CodeLength= 127
+ private var f:Function; //slotID:1
+ private var message:String; //slotID:2
+ private var once:Boolean; //slotID:3
+ private var timeout:int = 0; //slotID:4
+ private var accepter:_Accepter; //slotID:5
+
+ f = hug1;
+ message = hug2;
+ once = hug3;
+ timeout = hug4;
+ this._accepters[message] = new _Accepter();
+ accepter = new _Accepter();
+ accepter.f = f;
+ accepter.once = once;
+
+ if(once && (timeout != 0)){
+ accepter.timer = setTimeout(function():void{ //MethodID:3969, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 20
+ f(null);
+ delete _accepters[message];
+ }, timeout);
+ }
+ }
+
+ public function _lc_send(hug1:String, hug2:int, hug3:String, hug4:Object):void
+ { //MethodID:3971, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 99
+ var hug5:_Accepter = this._accepters[hug3];
+
+ if(!hug5) return;
+
+ var hug6:* = hug5.f(hug4);
+
+ if(hug2 != 0) this._send(hug1, null, ("" + hug2), hug6);
+
+ if(hug5.once){
+ if(!isNaN(hug5.timer)) clearTimeout(hug5.timer);
+ delete this._accepters[hug3];
+ }
+ }
+
+ protected function _send(hug1:String, hug2:Function, hug3:String, hug4:Object):void
+ { //MethodID:3972, LocalCount= 8 , MaxScope= 1, MaxStack= 7, CodeLength= 88
+ var hug5:int = 0;
+
+ if(hug2 is Function){
+ hug5 = (++_txIDCounter);
+
+ this.receive(hug2, String(++_txIDCounter), true, 3000);
+ }
+
+ this._parent._lc.send(hug1, "_lc_send", this._connectionName, hug5, hug3, hug4);
+ }
+
+ //constructor
+ public function _LCClient()
+ { //MethodID:3973, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._accepters = {};
+
+ super();
+ }
+}
+
+//■class(instance)_index:301
+//private
+class _Accepter extends Object
+{
+ //static constructor
+ public static function _Accepter$cinit()
+ { //MethodID:3974, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Accepter()
+ { //MethodID:3975, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var f:Function; //slotID:0
+ public var once:Boolean; //slotID:0
+ public var timer:Number = Number.NaN; //slotID:0
+}
+
+//■class(instance)_index:302
+//private
+class _SlaveInfo extends Object
+{
+ //static constructor
+ public static function _SlaveInfo$cinit()
+ { //MethodID:3976, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SlaveInfo()
+ { //MethodID:3977, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var lastPingTime:Number; //slotID:0
+}
+
+//■class(instance)_index:303
+//private
+class _Master extends _LCClient
+{
+ //static constructor
+ public static function _Master$cinit()
+ { //MethodID:3978, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ private var _slaves:Object; //slotID:0
+
+ override public function send(hug1:Function, hug2:String, hug3:Object):void
+ { //MethodID:3979, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 71
+ var hug4:String = null;
+
+ for(hug4 in this._slaves){
+ _send(hug4, null, hug2, hug3);
+ }
+
+ if(hug1 is Function) ObjectUtils.callLater(hug1, null);
+ }
+
+ public function _lc_ping(hug1:String):void
+ { //MethodID:3980, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 57
+ var hug2:_SlaveInfo = this._slaves[hug1];
+
+ if(!hug2){
+ this._slaves[hug1] = new _SlaveInfo();
+ hug2 = new _SlaveInfo();
+ }
+
+ hug2.lastPingTime = new Date().getTime();
+ }
+
+ //constructor
+ public function _Master()
+ { //MethodID:3981, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._slaves = {};
+
+ super();
+ }
+}
+
+//■class(instance)_index:304
+//private
+class _Slave extends _LCClient
+{
+ //static constructor
+ public static function _Slave$cinit()
+ { //MethodID:3982, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //variables/etc.
+ override public function send(hug1:Function, hug2:String, hug3:Object):void
+ { //MethodID:3983, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 19
+ _send(_parent._masterName, hug1, hug2, hug3);
+ }
+
+ //constructor
+ public function _Slave()
+ { //MethodID:3984, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script250■
+
+package jp.nicovideo.nicoplayer.models.api.relation{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:305
+ public interface IGetRelationResult
+ {
+ //static constructor
+ public static function IGetRelationResult$cinit()
+ { //MethodID:3986, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get recommendedVideoList():Vector.<RelatedVideo>; //MethodID:3987, dispID:0
+
+ function get ownerOtherVideoList():Vector.<IOwnerOtherVideo>; //MethodID:3988, dispID:0
+
+ function get ownerOtherVideoURL():String; //MethodID:3989, dispID:0
+
+ function get liveDJInfo():ILiveDJInfo; //MethodID:3990, dispID:0
+
+ //constructor
+ public function IGetRelationResult(); //MethodID:3991, dispID:0
+ }
+}
+
+//■script251■
+
+package jp.nicovideo.nicoplayer.models.api.relation{
+
+ //■class(instance)_index:306
+ public interface ILiveDJInfo
+ {
+ //static constructor
+ public static function ILiveDJInfo$cinit()
+ { //MethodID:3993, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get catategoryName():String; //MethodID:3994, dispID:0
+
+ function get linkURL():String; //MethodID:3995, dispID:0
+
+ function get videoTitle():String; //MethodID:3996, dispID:0
+
+ function get thumbnailURL():String; //MethodID:3997, dispID:0
+
+ //constructor
+ public function ILiveDJInfo(); //MethodID:3998, dispID:0
+ }
+}
+
+//■script252■
+
+package jp.nicovideo.nicoplayer.models.api.relation{
+
+ import __AS3__.vec.Vector
+ import jp.nicovideo.nicoplayer.models.RelatedVideo
+
+ //■class(instance)_index:307
+ public class GetRelationResultFactory extends Object
+ {
+ //static constructor
+ public static function GetRelationResultFactory$cinit()
+ { //MethodID:4000, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function createByResponse(hug1:XML, hug2:Vector.<String>, hug3:Vector.<String>, hug4:uint):IGetRelationResult
+ { //dispID:3, MethodID:4001, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 42
+ var hug5:Boolean = XML.ignoreWhitespace;
+ XML.ignoreWhitespace = true;
+ var hug6:IGetRelationResult = _parseResponse(hug1, hug2, hug3, hug4);
+ XML.ignoreWhitespace = hug5;
+ return hug6;
+ }
+
+ public static function createByValues(hug1:Vector.<RelatedVideo>=null, hug2:Vector.<IOwnerOtherVideo>=null, hug3:String=null, hug4:ILiveDJInfo=null):IGetRelationResult
+ { //dispID:4, MethodID:4002, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 15
+ return new _GetRelationResult(hug1, hug2, hug3, hug4);
+ }
+
+ private static function _parseResponse(hug1:XML, hug2:Vector.<String>, hug3:Vector.<String>, hug4:uint):IGetRelationResult
+ { //dispID:5, MethodID:4006, LocalCount= 6 , MaxScope= 2, MaxStack= 5, CodeLength= 273
+ internal var response:XML; //slotID:1
+ internal var targets:Vector.<String>; //slotID:2
+ internal var extTargets:Vector.<String>; //slotID:3
+ internal var extTargetCount:uint; //slotID:4
+ internal var recommendedVideoList:Vector.<RelatedVideo>; //slotID:5
+ internal var ownerOtherVideoList:Vector.<IOwnerOtherVideo>; //slotID:6
+ internal var ownerOtherVideoURL:String; //slotID:7
+ internal var liveDJInfo:ILiveDJInfo; //slotID:8
+ internal var parseXML:Function; //slotID:9
+ internal var parseRecommendedVideoList:Function; //slotID:10
+ internal var isRequired:Function; //slotID:11
+
+ recommendedVideoList = null;
+ ownerOtherVideoList = null;
+ ownerOtherVideoURL = null;
+ liveDJInfo = null;
+ response = hug1;
+ targets = hug2;
+ extTargets = hug3;
+ extTargetCount = hug4;
+ parseXML = function(hug1:XML):void{ //MethodID:4003, LocalCount= 8 , MaxScope= 0, MaxStack= 6, CodeLength= 346
+ var hug2:XML = null;
+ var hug3:XML = null;
+
+ for each(hug2 in hug1.children()){
+ switch(hug2.localName()){
+ case GetRelationTarget.RELATED_VIDEO:
+ parseRecommendedVideoList(hug2);
+ break;
+ case GetRelationTarget.OWNER_VIDEO:
+ if(ownerOtherVideoList == null) ownerOtherVideoList = new Vector.<IOwnerOtherVideo>();
+
+ for each(hug3 in hug2[_ResponseDefines.TAG_NAME_VIDEO4ITEM]){
+ ownerOtherVideoList.push(_createRelatedVideoByXML(hug3, true));
+ }
+
+ if(hug2[_ResponseDefines.TAG_NAME_LIST_URL] != null) ownerOtherVideoURL = hug2[_ResponseDefines.TAG_NAME_LIST_URL];
+ break;
+ case GetRelationTarget.LIVE_DJ:
+ liveDJInfo = new _LiveDJInfo(hug2.name, hug2.url, hug2.title, hug2.thumbnail_url);
+ break;
+ case _ResponseDefines.TAG_NAME_EXT_TARGET:
+ parseXML(hug2);
+ break;
+ default:
+ break;
+ }
+ }
+ };
+
+ parseRecommendedVideoList = function(hug1:XML):void{ //MethodID:4004, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 83
+ var hug2:XML = null;
+
+ if(recommendedVideoList == null) recommendedVideoList = new Vector.<RelatedVideo>();
+
+ for each(hug2 in hug1[_ResponseDefines.TAG_NAME_VIDEO4ITEM]){
+ recommendedVideoList.push(_createRelatedVideoByXML(hug2));
+ }
+ };
+
+ isRequired = function(hug1:String):Boolean{ //MethodID:4005, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 80
+ if((targets != null) && (targets.indexOf(hug1) != (-1))) return true;
+
+ if((extTargets != null) && (extTargets.indexOf(hug1) != (-1)) && (extTargets.indexOf(hug1) < extTargetCount)) return true;
+
+ return false;
+ };
+
+ if(response.@status != _ResponseDefines.STATUS_OK) throw new ArgumentError("GetRelationResultFactory._parse: invalid response.");
+
+ recommendedVideoList = (isRequired(GetRelationTarget.RELATED_VIDEO) ? new Vector.<RelatedVideo>() : null);
+ ownerOtherVideoList = (isRequired(GetRelationTarget.OWNER_VIDEO) ? new Vector.<IOwnerOtherVideo>() : null);
+
+ if(response.localName() == GetRelationTarget.RELATED_VIDEO){
+ parseRecommendedVideoList(response);
+ }else{
+ parseXML(response);
+ }
+
+ return new _GetRelationResult(recommendedVideoList, ownerOtherVideoList, ownerOtherVideoURL, liveDJInfo);
+ }
+
+ private static function _createRelatedVideoByXML(hug1:XML, hug2:Boolean=false):RelatedVideo
+ { //dispID:6, MethodID:4007, LocalCount= 3 , MaxScope= 1, MaxStack= 10, CodeLength= 98
+ if(hug2) return new RelatedVideo(hug1.url, hug1.thumbnail, hug1.title, (Number(hug1.length) * 1000));
+
+ return new RelatedVideo(hug1.url, hug1.thumbnail, hug1.title, (Number(hug1.length) * 1000), hug1.view, hug1.comment, hug1.mylist, (Number(hug1.time) * 1000));
+ }
+
+ //constructor
+ public function GetRelationResultFactory()
+ { //MethodID:4008, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+import __AS3__.vec.Vector
+import jp.nicovideo.nicoplayer.models.api.relation.ILiveDJInfo
+
+//■class(instance)_index:308
+//private
+class _ResponseDefines extends Object
+{
+ //static constructor
+ public static function _ResponseDefines$cinit()
+ { //MethodID:4009, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ STATUS_OK = "ok";
+ TAG_NAME_VIDEO4ITEM = "video";
+ TAG_NAME_LIST_URL = "list_url";
+ TAG_NAME_EXT_TARGET = "ext_target";
+ }
+
+ //static variables/etc.
+ public static const STATUS_OK:String = "ok"; //slotID:1
+ public static const TAG_NAME_VIDEO4ITEM:String = "video"; //slotID:2
+ public static const TAG_NAME_LIST_URL:String = "list_url"; //slotID:3
+ public static const TAG_NAME_EXT_TARGET:String = "ext_target"; //slotID:4
+
+ //constructor
+ public function _ResponseDefines()
+ { //MethodID:4010, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:309
+//private
+class _GetRelationResult extends Object implements IGetRelationResult
+{
+ //static constructor
+ public static function _GetRelationResult$cinit()
+ { //MethodID:4011, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _GetRelationResult(hug1:Vector.<RelatedVideo>=null, hug2:Vector.<IOwnerOtherVideo>=null, hug3:String=null, hug4:ILiveDJInfo=null)
+ { //MethodID:4012, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ super();
+
+ this._recommendedVideoList = hug1;
+ this._ownerOtherVideoList = hug2;
+ this._ownerOtherVideoURL = hug3;
+ this._liveDJInfo = hug4;
+ }
+
+ //variables/etc.
+ private var _recommendedVideoList:Vector.<RelatedVideo>; //slotID:0
+ private var _ownerOtherVideoList:Vector.<IOwnerOtherVideo>; //slotID:0
+ private var _videoenderVideoListTarget:String; //slotID:0
+ private var _ownerOtherVideoURL:String; //slotID:0
+ private var _liveDJInfo:ILiveDJInfo; //slotID:0
+
+ public function get recommendedVideoList():Vector.<RelatedVideo>
+ { //MethodID:4013, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._recommendedVideoList;
+ }
+
+ public function get ownerOtherVideoList():Vector.<IOwnerOtherVideo>
+ { //MethodID:4014, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ownerOtherVideoList;
+ }
+
+ public function get ownerOtherVideoURL():String
+ { //MethodID:4015, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ownerOtherVideoURL;
+ }
+
+ public function get liveDJInfo():ILiveDJInfo
+ { //MethodID:4016, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveDJInfo;
+ }
+}
+
+//■class(instance)_index:310
+//private
+class _LiveDJInfo extends Object implements ILiveDJInfo
+{
+ //static constructor
+ public static function _LiveDJInfo$cinit()
+ { //MethodID:4017, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _LiveDJInfo(hug1:String, hug2:String, hug3:String, hug4:String)
+ { //MethodID:4018, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 56
+ super();
+
+ if(hug1 != "") this._catategoryName = hug1;
+
+ if(hug2 != "") this._linkURL = hug2;
+
+ if(hug3 != "") this._videoTitle = hug3;
+
+ if(hug4 != "") this._thumbnailURL = hug4;
+ }
+
+ //variables/etc.
+ private var _catategoryName:String; //slotID:0
+ private var _linkURL:String; //slotID:0
+ private var _videoTitle:String; //slotID:0
+ private var _thumbnailURL:String; //slotID:0
+
+ public function get catategoryName():String
+ { //MethodID:4019, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._catategoryName;
+ }
+
+ public function get linkURL():String
+ { //MethodID:4020, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._linkURL;
+ }
+
+ public function get videoTitle():String
+ { //MethodID:4021, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._videoTitle;
+ }
+
+ public function get thumbnailURL():String
+ { //MethodID:4022, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._thumbnailURL;
+ }
+}
+
+//■script253■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:311
+ public class RelatedConstants extends Object
+ {
+ //static constructor
+ public static function RelatedConstants$cinit()
+ { //MethodID:4024, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 75
+ SORT_RELATEDPOINT = "p";
+ SORT_VIEWCOUNTER = "v";
+ SORT_ENTRYDATE = "f";
+ SORT_RESDATE = "n";
+ SORT_RESNUM = "r";
+ SORT_MYLISTCOUNTER = "m";
+ ORDER_UP = "a";
+ ORDER_DOWN = "d";
+ }
+
+ //static variables/etc.
+ public static const SORT_RELATEDPOINT:String = "p"; //slotID:1
+ public static const SORT_VIEWCOUNTER:String = "v"; //slotID:2
+ public static const SORT_ENTRYDATE:String = "f"; //slotID:3
+ public static const SORT_RESDATE:String = "n"; //slotID:4
+ public static const SORT_RESNUM:String = "r"; //slotID:5
+ public static const SORT_MYLISTCOUNTER:String = "m"; //slotID:6
+ public static const ORDER_UP:String = "a"; //slotID:7
+ public static const ORDER_DOWN:String = "d"; //slotID:8
+
+ //constructor
+ public function RelatedConstants()
+ { //MethodID:4025, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script254■
+
+package jp.nicovideo.nicoplayer.models.api.relation{
+
+ //■class(instance)_index:312
+ public class GetRelationTarget extends Object
+ {
+ //static constructor
+ public static function GetRelationTarget$cinit()
+ { //MethodID:4027, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ RELATED_VIDEO = "related_video";
+ OWNER_VIDEO = "owner_video";
+ LIVE_DJ = "dj";
+ }
+
+ //static variables/etc.
+ public static const RELATED_VIDEO:String = "related_video"; //slotID:1
+ public static const OWNER_VIDEO:String = "owner_video"; //slotID:2
+ public static const LIVE_DJ:String = "dj"; //slotID:3
+
+ //constructor
+ public function GetRelationTarget()
+ { //MethodID:4028, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script255■
+
+package jp.nicovideo.nicoplayer.models.api.relation{
+
+ //■class(instance)_index:313
+ public interface IOwnerOtherVideo
+ {
+ //static constructor
+ public static function IOwnerOtherVideo$cinit()
+ { //MethodID:4030, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get videoTitle():String; //MethodID:4031, dispID:0
+
+ function get watchURL():String; //MethodID:4032, dispID:0
+
+ function get thumbnailURL():String; //MethodID:4033, dispID:0
+
+ function get videoLength():Number; //MethodID:4034, dispID:0
+
+ //constructor
+ public function IOwnerOtherVideo(); //MethodID:4035, dispID:0
+ }
+}
+
+//■script256■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:314
+ public class RelatedVideo extends Object implements IOwnerOtherVideo
+ {
+ //static constructor
+ public static function RelatedVideo$cinit()
+ { //MethodID:4037, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RelatedVideo(hug1:String, hug2:String, hug3:String, hug4:Number=Number.NaN, hug5:Number=Number.NaN, hug6:Number=Number.NaN, hug7:Number=Number.NaN, hug8:Number=Number.NaN)
+ { //MethodID:4038, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 69
+ super();
+
+ this.__watchURL = hug1;
+ this.__thumbnailURL = hug2;
+ this.__videoTitle = hug3;
+ this.__viewCounter = hug5;
+ this.__resNum = hug6;
+ this.__mylistCounter = hug7;
+ this.__videoLength = hug4;
+
+ if(!isNaN(hug8)) this.__entryDate = new Date(hug8);
+ }
+
+ //variables/etc.
+ private var __watchURL:String; //slotID:0
+ private var __thumbnailURL:String; //slotID:0
+ private var __videoTitle:String; //slotID:0
+ private var __viewCounter:Number; //slotID:0
+ private var __resNum:Number; //slotID:0
+ private var __mylistCounter:Number; //slotID:0
+ private var __videoLength:Number; //slotID:0
+ private var __entryDate:Date; //slotID:0
+
+ public function get watchURL():String
+ { //MethodID:4039, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__watchURL;
+ }
+
+ public function get thumbnailURL():String
+ { //MethodID:4040, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__thumbnailURL;
+ }
+
+ public function get videoTitle():String
+ { //MethodID:4041, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__videoTitle;
+ }
+
+ public function get viewCounter():Number
+ { //MethodID:4042, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__viewCounter;
+ }
+
+ public function get resNum():Number
+ { //MethodID:4043, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__resNum;
+ }
+
+ public function get mylistCounter():Number
+ { //MethodID:4044, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__mylistCounter;
+ }
+
+ public function get videoLength():Number
+ { //MethodID:4045, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__videoLength;
+ }
+
+ public function get entryDate():Date
+ { //MethodID:4046, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__entryDate;
+ }
+ }
+}
+
+//■script257■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:315
+ public class JSON extends Object
+ {
+ //static constructor
+ public static function JSON$cinit()
+ { //MethodID:4048, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 33
+ __DIGITs = "0123456789";
+ __HEX_DIGITs = (__DIGITs + "abcdef");
+ __NULL = {};
+ }
+
+ //static variables/etc.
+ private static const __DIGITs:String = 0123456789; //slotID:1
+ private static const __HEX_DIGITs:String; //slotID:2
+ private static const __NULL:Object; //slotID:3
+
+ public static function decode(hug1:String):Object
+ { //dispID:3, MethodID:4049, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 32
+ var hug2:* = new Object(hug1).__get_value();
+
+ if(hug2 === __NULL) __error("Empty string.");
+
+ return hug2;
+ }
+
+ private static function __error(hug1:String):void
+ { //dispID:4, MethodID:4050, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ throw new Error("JSON parse error: " + hug1);
+ }
+
+ private static function __isDigit(hug1:String):Boolean
+ { //dispID:5, MethodID:4051, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ return (("0" <= hug1) && (hug1 <= "9"));
+ }
+
+ private static function __isIdPart(hug1:String, hug2:Boolean=false):Boolean
+ { //dispID:6, MethodID:4052, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ hug1 = hug1.toLowerCase();
+ return (((hug1 == "_") || (("a" <= hug1.toLowerCase()) && (hug1 <= "z"))) || (!hug2 && __isDigit(hug1)));
+ }
+
+ //constructor
+ public function JSON(hug1:String)
+ { //MethodID:4053, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.__s = hug1;
+ }
+
+ //variables/etc.
+ private var __i:Number = 0.0; //slotID:0
+ private var __s:String; //slotID:0
+
+ public function __blank():void
+ { //MethodID:4056, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 208
+ internal var anal:Boolean; //slotID:1
+
+ anal = false;
+
+ while(true){
+ while(" \r\n".indexOf(this.__c) != (-1)){
+ this.__i++;
+ }
+
+ if(this.__c != "/") break;
+
+ this.__i++;
+
+ if(this.__c == "/"){
+ this.__clip(function(hug1:String):Boolean{ //MethodID:4054, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 12
+ return ("\r\n".indexOf(hug1) == (-1));
+ });
+ }else if(this.__c == "*"){
+ anal = false;
+
+ this.__clip(function(hug1:String):Boolean{ //MethodID:4055, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 34
+ if((hug1 == "/") && anal) return false;
+
+ anal = (hug1 == "*");
+ return true;
+ }, -1, 2);
+
+ if((this.__c != "/") || !anal) __error("A comment reaching to end.");
+ }else{
+ __error("Unexpected `/'.");
+ }
+
+ this.__i++;
+ }
+ }
+
+ public function __get_value():*
+ { //MethodID:4058, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 353
+ internal var id:String; //slotID:1
+ internal var val:*; //slotID:2
+ internal var obj:Object; //slotID:3
+
+ obj = null;
+
+ this.__blank();
+
+ switch(this.__c){
+ case "{":
+ this.__i++;
+ obj = {};
+
+ this.__csv(function():*{ //MethodID:4057, LocalCount= 4 , MaxScope= 0, MaxStack= 4, CodeLength= 114
+ __blank();
+
+ var hug1:String = __get_string();
+
+ if(hug1 == null) return __NULL;
+ __blank();
+
+ if(__c != ":") __error("Expected `:' but:" + __c);
+
+ __i++;
+ obj[hug1] = __get_value();
+
+ if(__get_value() === __NULL) __error("Expected VALUE.");
+
+ return null;
+ }, "}");
+
+ return obj;
+ case "[":
+ this.__i++;
+ return this.__csv(this.__get_value, "]");
+ default:
+ break;
+ }
+
+ id = this.__get_id();
+
+ if(id != null){
+ switch(id){
+ case "true":
+ return true;
+ case "false":
+ return false;
+ case "null":
+ return null;
+ default:
+ __error("Unrecognizable ID:" + id);
+ break;
+ }
+ }
+
+ val = this.__get_string();
+ val = this.__get_number();
+
+ if((val == null) && isNaN(this.__get_number())) val = __NULL;
+
+ return val;
+ }
+
+ public function __get_string():String
+ { //MethodID:4059, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 79
+ if(this.__c != "\"") return null;
+
+ this.__i++;
+ var hug1:String = "";
+
+ while(this.__c != "\""){
+ hug1 += this.__unquote();
+ }
+
+ this.__i++;
+ return hug1;
+ }
+
+ private function __unquote():String
+ { //MethodID:4061, LocalCount= 3 , MaxScope= 2, MaxStack= 6, CodeLength= 240
+ internal var c:String; //slotID:1
+
+ c = this.__clip(null);
+
+ if(c != "\\") return c;
+
+ c = this.__clip(null);
+
+ switch(c){
+ case "b":
+ return "\b";
+ case "f":
+ return "\f";
+ case "n":
+ return "\n";
+ case "r":
+ return "\r";
+ case "t":
+ return "\t";
+ case "u":
+ return String.fromCharCode(parseInt(this.__clip(function(hug1:String):Boolean{ //MethodID:4060, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 13
+ return (__HEX_DIGITs.indexOf(hug1) != (-1));
+ }, 4, 4), 16));
+ default:
+ break;
+ }
+
+ return c;
+ }
+
+ public function __get_number():Number
+ { //MethodID:4062, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 376
+ var hug1:Number = this.__i;
+
+ if(this.__c == "-"){
+ this.__i++;
+
+ if(!__isDigit(this.__c)) __error("Expected DIGIT.");
+ }
+
+ var hug2:String = "0";
+
+ if(this.__c == "0"){
+ this.__i++;
+ }else{
+ hug2 = this.__clip(__isDigit, -1, 0);
+
+ if(this.__clip(__isDigit, -1, 0) == "") return NaN;
+ }
+
+ var hug3:Number = 1;
+
+ while(true){
+ if((hug3 % 2) && (this.__c == ".")){
+ this.__i++;
+ this.__clip(__isDigit, -1);
+
+ hug3 *= 2;
+ continue;
+ }
+
+ if((hug3 % 3) && (this.__c.toLowerCase() == "e")){
+ this.__i++;
+
+ if(!(__isDigit(this.__c) || ("+-".indexOf(this.__c) != (-1)))) __error("Expected DIGIT or `+-'.");
+
+ this.__i++;
+ this.__clip(__isDigit, -1, 0);
+
+ hug3 *= 3;
+ continue;
+ }
+ break;
+ }
+
+ return parseFloat(this.__s.slice(hug1, this.__i));
+ }
+
+ public function __get_id():String
+ { //MethodID:4063, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 31
+ if(!__isIdPart(this.__c, true)) return null;
+
+ return this.__clip(__isIdPart, -1);
+ }
+
+ public function __csv(hug1:Function, hug2:String):Array
+ { //MethodID:4064, LocalCount= 7 , MaxScope= 1, MaxStack= 3, CodeLength= 140
+ var hug4:* = undefined;
+ var hug3:Array = [];
+
+ while(true){
+ hug4 = hug1();
+
+ if(hug4 !== __NULL){
+ hug3.push(hug4);
+ this.__blank();
+
+ if(this.__c == ","){
+ this.__i++;
+ continue;
+ }
+ }
+ break;
+ }
+
+ if(this.__c != hug2) __error("Expected `" + hug2 + "' but:" + this.__c);
+
+ this.__i++;
+ return hug3;
+ }
+
+ public function get __c():String
+ { //MethodID:4065, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ return ((this.__i >= this.__s.length) ? "" : this.__s.charAt(this.__i));
+ }
+
+ private function __clip(hug1:Function, hug2:Number=Number.NaN, hug3:Number=Number.NaN):String
+ { //MethodID:4067, LocalCount= 7 , MaxScope= 2, MaxStack= 3, CodeLength= 224
+ internal var f:Function; //slotID:1
+ internal var max:Number = Number.NaN; //slotID:2
+ internal var min:Number = Number.NaN; //slotID:3
+ internal var i:Number; //slotID:4
+
+ f = hug1;
+ max = hug2;
+ min = hug3;
+
+ if(!f){
+ f = function(hug1:String):Boolean{ //MethodID:4066, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 2
+ return true;
+ };
+ }
+
+ if(isNaN(max)) max = 1;
+
+ if(isNaN(min)) min = 1;
+
+ i = this.__i;
+ max -= 1;
+
+ while(((this.__c != "") && (max != 0)) && f(this.__c)){
+ this.__i++;
+ }
+
+ if((this.__i - i) < min) __error("Expected " + min + " chars.");
+
+ return this.__s.slice(i, this.__i);
+ }
+ }
+}
+
+//■script258■
+
+package jp.nicovideo.nicoplayer.remocon.method{
+
+ //■class(instance)_index:316
+ public class RemoconMethodParamName extends Object
+ {
+ //static constructor
+ public static function RemoconMethodParamName$cinit()
+ { //MethodID:4069, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 75
+ VOLUME = "vol";
+ OFFSET = "offset";
+ VPOS = "vpos";
+ TEXT = "text";
+ COMMAND = "command";
+ EXPIRE = "expire";
+ TOKEN = "token";
+ LEVEL = "level";
+ }
+
+ //static variables/etc.
+ public static const VOLUME:String = "vol"; //slotID:1
+ public static const OFFSET:String = "offset"; //slotID:2
+ public static const VPOS:String = "vpos"; //slotID:3
+ public static const TEXT:String = "text"; //slotID:4
+ public static const COMMAND:String = "command"; //slotID:5
+ public static const EXPIRE:String = "expire"; //slotID:6
+ public static const TOKEN:String = "token"; //slotID:7
+ public static const LEVEL:String = "level"; //slotID:8
+
+ //constructor
+ public function RemoconMethodParamName()
+ { //MethodID:4070, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script259■
+
+package jp.nicovideo.nicoplayer.remocon.method{
+
+ //■class(instance)_index:317
+ public class RemoconMethodName extends Object
+ {
+ //static constructor
+ public static function RemoconMethodName$cinit()
+ { //MethodID:4072, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 93
+ SET_VOL = "setVol";
+ TOGGLE_PLAY = "switchPlay";
+ TOGGLE_REPEAT = "switchRepeat";
+ TOGGLE_MUTE = "switchMute";
+ TOGGLE_FULLSCREEN = "switchFullscreen";
+ TOGGLE_COMMENT_VISIBLE = "switchShowComment";
+ POST_COMMENT = "sendComment";
+ SEEK_TO = "seekTo";
+ SEEK_PLUS = "seekPlus";
+ SEEK_TO_ALERT = "seekToAlert";
+ }
+
+ //static variables/etc.
+ public static const SET_VOL:String = "setVol"; //slotID:1
+ public static const TOGGLE_PLAY:String = "switchPlay"; //slotID:2
+ public static const TOGGLE_REPEAT:String = "switchRepeat"; //slotID:3
+ public static const TOGGLE_MUTE:String = "switchMute"; //slotID:4
+ public static const TOGGLE_FULLSCREEN:String = "switchFullscreen";//slotID:5
+ public static const TOGGLE_COMMENT_VISIBLE:String = "switchShowComment";//slotID:6
+ public static const POST_COMMENT:String = "sendComment"; //slotID:7
+ public static const SEEK_TO:String = "seekTo"; //slotID:8
+ public static const SEEK_PLUS:String = "seekPlus"; //slotID:9
+ public static const SEEK_TO_ALERT:String = "seekToAlert"; //slotID:10
+
+ //constructor
+ public function RemoconMethodName()
+ { //MethodID:4073, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script260■
+
+package jp.nicovideo.remocon{
+
+ //■class(instance)_index:318
+ public final class AlertState extends Object
+ {
+ //static constructor
+ public static function AlertState$cinit()
+ { //MethodID:4075, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 300
+ VOLUME = "Volume";
+ PLAY = "Play";
+ PAUSE = "Pause";
+ FAST_FOWARD_LV1 = "FastForwardLV1";
+ FAST_FOWARD_LV2 = "FastForwardLV2";
+ FAST_FOWARD_LV3 = "FastForwardLV3";
+ REWIND_LV1 = "Rewind_LV1";
+ REWIND_LV2 = "Rewind_LV2";
+ REWIND_LV3 = "Rewind_LV3";
+ FAST_FOWARD_EX = "FastForwardEX";
+ REWIND_EX = "Rewind_EX";
+ COMMENT_POST_COMPLETE = "CommentPostComplete";
+ COMMENT_POST_ERROR = "CommentPostError";
+ COMMENT_POST_REJECT = "CommentPostReject";
+ COMMENT_VISIBLE = "CommentVisible";
+ COMMENT_INVISIBLE = "CommentInVisible";
+ FULLSCREEN_ON = "FullScreenOn";
+ FULLSCREEN_OFF = "FullScreenOff";
+ MUTE_ON = "MuteOn";
+ MUTE_OFF = "MuteOff";
+ REPEAT_ON = "RepeatOn";
+ REPEAT_OFF = "RepeatOff";
+ NICODEN_START = "NicodenStart";
+ NICODEN_COMPLETE = "NicodenComplete";
+ NICODEN_REJECT = "NicodenReject";
+ VOTE_START = "VoteStart";
+ VOTE_COMPLETE = "VoteComplete";
+ VOTE_REJECT = "VoteReject";
+ REMOCON_CONNECT = "RemoconConnect";
+ REMOCON_MAINTENANCE = "RemoconMaintenance";
+ REMOCON_ERROR = "RemoconError";
+ REMOCON_HALT = "RemoconHalt";
+ SEEK_CHANGE = "SeekChange";
+ }
+
+ //static variables/etc.
+ public static const VOLUME:String = "Volume"; //slotID:1
+ public static const PLAY:String = "Play"; //slotID:2
+ public static const PAUSE:String = "Pause"; //slotID:3
+ public static const FAST_FOWARD_LV1:String = "FastForwardLV1"; //slotID:4
+ public static const FAST_FOWARD_LV2:String = "FastForwardLV2"; //slotID:5
+ public static const FAST_FOWARD_LV3:String = "FastForwardLV3"; //slotID:6
+ public static const REWIND_LV1:String = "Rewind_LV1"; //slotID:7
+ public static const REWIND_LV2:String = "Rewind_LV2"; //slotID:8
+ public static const REWIND_LV3:String = "Rewind_LV3"; //slotID:9
+ public static const FAST_FOWARD_EX:String = "FastForwardEX"; //slotID:10
+ public static const REWIND_EX:String = "Rewind_EX"; //slotID:11
+ public static const COMMENT_POST_COMPLETE:String = "CommentPostComplete";//slotID:12
+ public static const COMMENT_POST_ERROR:String = "CommentPostError";//slotID:13
+ public static const COMMENT_POST_REJECT:String = "CommentPostReject";//slotID:14
+ public static const COMMENT_VISIBLE:String = "CommentVisible"; //slotID:15
+ public static const COMMENT_INVISIBLE:String = "CommentInVisible";//slotID:16
+ public static const FULLSCREEN_ON:String = "FullScreenOn"; //slotID:17
+ public static const FULLSCREEN_OFF:String = "FullScreenOff"; //slotID:18
+ public static const MUTE_ON:String = "MuteOn"; //slotID:19
+ public static const MUTE_OFF:String = "MuteOff"; //slotID:20
+ public static const REPEAT_ON:String = "RepeatOn"; //slotID:21
+ public static const REPEAT_OFF:String = "RepeatOff"; //slotID:22
+ public static const NICODEN_START:String = "NicodenStart"; //slotID:23
+ public static const NICODEN_COMPLETE:String = "NicodenComplete";//slotID:24
+ public static const NICODEN_REJECT:String = "NicodenReject"; //slotID:25
+ public static const VOTE_START:String = "VoteStart"; //slotID:26
+ public static const VOTE_COMPLETE:String = "VoteComplete"; //slotID:27
+ public static const VOTE_REJECT:String = "VoteReject"; //slotID:28
+ public static const REMOCON_CONNECT:String = "RemoconConnect"; //slotID:29
+ public static const REMOCON_MAINTENANCE:String = "RemoconMaintenance";//slotID:30
+ public static const REMOCON_ERROR:String = "RemoconError"; //slotID:31
+ public static const REMOCON_HALT:String = "RemoconHalt"; //slotID:32
+ public static const SEEK_CHANGE:String = "SeekChange"; //slotID:33
+
+ //constructor
+ public function AlertState()
+ { //MethodID:4076, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script261■
+
+package jp.nicovideo.nicoplayer.remocon.method{
+
+ //■class(instance)_index:319
+ public class RemoconSystemMethodName extends Object
+ {
+ //static constructor
+ public static function RemoconSystemMethodName$cinit()
+ { //MethodID:4078, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ INITIALIZE = "__initialize";
+ CHANGE_STATUS = "__changeStatus";
+ }
+
+ //static variables/etc.
+ public static const INITIALIZE:String = "__initialize"; //slotID:1
+ public static const CHANGE_STATUS:String = "__changeStatus"; //slotID:2
+
+ //constructor
+ public function RemoconSystemMethodName()
+ { //MethodID:4079, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script262■
+//skip components :com.adobe.crypto
+//as filename :MD5.as
+
+//■script263■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:321
+ public final class ArrayUtils extends Object
+ {
+ //static constructor
+ public static function ArrayUtils$cinit()
+ { //MethodID:4097, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function lowerBoundIndex(hug1:Function, hug2:*, hug3:Array):int
+ { //dispID:3, MethodID:4098, LocalCount= 9 , MaxScope= 1, MaxStack= 5, CodeLength= 157
+ var hug7:int = 0;
+ var hug4:int = -1;
+ var hug5:int = hug3.length;
+ var hug6:Number = -1;
+
+ while((hug5 - hug4) > 1){
+ hug7 = ((hug4 + hug5) / 2);
+
+ if(!hug3[hug7]){
+ hug5 = hug7;
+ continue;
+ }
+
+ var hug8:hug3[hug7] = hug1(hug2, hug3[hug7]);
+ hug6 = hug8;
+
+ if(hug8 <= 0){
+ hug5 = hug7;
+ continue;
+ }
+
+ hug4 = hug7;
+ }
+
+ return ((hug5 == hug3.length) ? (hug5 - 1) : ((hug1(hug2, hug3[hug5]) == 0) ? hug5 : hug4));
+ }
+
+ public static function subtract(hug1:Function, hug2:Array, hug3:Array):void
+ { //dispID:4, MethodID:4099, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 99
+ var hug6:Number = NaN;
+ var hug4:int = 0;
+ var hug5:int = 0;
+
+ while((hug4 < hug2.length) && (hug5 < hug3.length)){
+ hug6 = hug1(hug2[hug4], hug3[hug5]);
+
+ if(hug6 == 0){
+ hug2.splice(hug4, 1);
+ continue;
+ }
+
+ if(hug6 > 0){
+ hug5++;
+ continue;
+ }
+
+ hug4++;
+ }
+ }
+
+ public static function add(hug1:Function, hug2:Array, hug3:Array, hug4:Boolean=false):void
+ { //dispID:5, MethodID:4100, LocalCount= 8 , MaxScope= 1, MaxStack= 6, CodeLength= 155
+ var hug7:Number = NaN;
+ var hug5:int = 0;
+ var hug6:int = 0;
+
+ while((hug5 < hug2.length) && (hug6 < hug3.length)){
+ hug7 = hug1(hug2[hug5], hug3[hug6]);
+
+ if(hug7 == 0){
+ if(hug4) hug2[hug5] = hug3[hug6];
+
+ hug5++;
+ hug6++;
+ continue;
+ }
+
+ if(hug7 > 0){
+ hug2.splice(hug5, 0, hug3[hug6++]);
+ continue;
+ }
+
+ hug5++;
+ }
+
+ if(hug6 < hug3.length) hug2.push.apply(hug2, hug3.slice(hug6));
+ }
+
+ public static function fold(hug1:Function, hug2:*, hug3:Array):*
+ { //dispID:6, MethodID:4101, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 49
+ var hug4:* = undefined;
+
+ for each(hug4 in hug3){
+ hug2 = hug1(hug2, hug4);
+ }
+
+ return hug2;
+ }
+
+ public static function copy(hug1:Array, hug2:Array, hug3:uint=0, hug4:uint=0, hug5:int=-1):void
+ { //dispID:7, MethodID:4102, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 64
+ if(hug5 < 0) hug5 = (hug1.length - hug3);
+
+ while(0 < (hug5--)){
+ var hug6:Number = (hug3++);
+ hug1[hug6] = hug2[hug4++];
+ }
+ }
+
+ public static function zip(hug1:Function, ...rest):void
+ { //dispID:8, MethodID:4103, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 100
+ var hug4:Array = null;
+ var hug5:Array = null;
+ var hug3:uint = 0;
+
+ while(true){
+ hug4 = [];
+
+ for each(hug5 in rest){
+ if(hug3 >= hug5.length) return;
+ hug4.push(hug5[hug3]);
+ }
+
+ hug1.apply(null, hug4);
+
+ hug3++;
+ }
+ }
+
+ //constructor
+ public function ArrayUtils()
+ { //MethodID:4104, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script264■
+
+package jp.nicovideo.nicoplayer.config{
+
+
+ public const nico_config:* = "jp.nicovideo.nicoplayer.config:nico_config";//slotID:1
+
+}
+
+//■script265■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ //■class(instance)_index:322
+ public interface ISlot
+ {
+ //static constructor
+ public static function ISlot$cinit()
+ { //MethodID:4107, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get vpos():Number; //MethodID:4108, dispID:0
+
+ function get vend():Number; //MethodID:4109, dispID:0
+
+ function get y():Number; //MethodID:4110, dispID:0
+
+ function get width():Number; //MethodID:4111, dispID:0
+
+ function get height():Number; //MethodID:4112, dispID:0
+
+ function get type():String; //MethodID:4113, dispID:0
+
+ function get isFullWidth():Boolean; //MethodID:4114, dispID:0
+
+ //constructor
+ public function ISlot(); //MethodID:4115, dispID:0
+ }
+}
+
+//■script266■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import flash.display.DisplayObject
+ import flash.utils.Dictionary
+ import jp.nicovideo.nicoplayer.models.comment.CommandConstants
+ import jp.nicovideo.nicoplayer.views.VideoLayerConstants
+ import jp.nicovideo.util.Assert
+ import jp.nicovideo.util.ObjectUtils
+
+ //■class(instance)_index:323
+ public class CommentSlotList extends Object
+ {
+ //static constructor
+ public static function CommentSlotList$cinit()
+ { //MethodID:4117, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentSlotList(hug1:CommentPositioner, hug2:Number)
+ { //MethodID:4118, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 78
+ this.__slots = [];
+ this.__original = new Dictionary();
+ this.__sortedEntries = [];
+
+ super();
+
+ this.__positioner = hug1;
+ this.__originalVideoLength = this.__videoLength = hug2;
+ var hug3:int = 0;
+
+ while(hug3 < this.__COMMENT_SLOT_LIMIT){
+ this.__slots.push(null);
+
+ hug3++;
+ }
+ }
+
+ //variables/etc.
+ private const __COMMENT_SLOT_LIMIT:uint = 40; //slotID:0
+ private var __slots:Array; //slotID:0
+ private var __nextIndex:uint = 0; //slotID:0
+ private var __original:Dictionary; //slotID:0
+ private var __sortedEntries:Array; //slotID:0
+ private var __positioner:CommentPositioner; //slotID:0
+ private var __reverse:Boolean = false; //slotID:0
+ private var __videoLength:Number; //slotID:0
+ private var __originalVideoLength:Number; //slotID:0
+ private var __hasSponsor:Boolean; //slotID:0
+
+ public function get isReverseMode():Boolean
+ { //MethodID:4119, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__reverse;
+ }
+
+ public function set isReverseMode(hug1:Boolean):void
+ { //MethodID:4120, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this.__reverse = hug1;
+ }
+
+ public function update(hug1:Array, hug2:Array, hug3:Boolean):void
+ { //MethodID:4121, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 158
+ var hug4:ViewEntry = null;
+
+ if(((!hug1 || (hug1.length == 0)) && (!hug2 || (hug2.length == 0))) && !hug3) return;
+
+ if(this.__videoLength != (-1)){
+ this.__update_0(hug1, hug2, hug3);
+
+ return;
+ }
+
+ Assert.assert((hug2 == null) && (hug3 == false));
+
+ for each(hug4 in hug1){
+ this.__sortedEntries.push(new _SlotEntry(hug4, this.__videoLength));
+ }
+
+ this.__sortEntries();
+ }
+
+ public function updateVideoLength(hug1:Number, hug2:Boolean=false):void
+ { //MethodID:4122, LocalCount= 7 , MaxScope= 1, MaxStack= 4, CodeLength= 77
+ var hug4:* = undefined;
+ this.__videoLength = hug1;
+
+ if(hug2) this.__hasSponsor = true;
+
+ var hug3:Array = [];
+
+ for(hug4 in this.__original){
+ hug3.push(hug4);
+ }
+
+ this.__update_0(hug3, null, true);
+ }
+
+ private function _clear():void
+ { //MethodID:4123, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ var hug1:int = 0;
+
+ while(hug1 < this.__slots.length){
+ if(this.__slots[hug1]){
+ this.__slots[hug1].release();
+
+ this.__slots[hug1] = null;
+ }
+
+ hug1++;
+ }
+
+ this.__nextIndex = 0;
+ }
+
+ public function refresh(hug1:Number, hug2:Boolean):void
+ { //MethodID:4124, LocalCount= 12 , MaxScope= 1, MaxStack= 4, CodeLength= 670
+ var hug3:_SlotEntry = null;
+ var hug5:int = 0;
+ var hug6:Number = NaN;
+ var hug7:DisplayObject = null;
+ var hug8:int = 0;
+ var hug9:int = 0;
+ var hug10:int = 0;
+
+ if(hug2){
+ this._clear();
+ }else{
+ hug5 = 0;
+
+ while(hug5 < this.__slots.length){
+ hug3 = this.__slots[hug5];
+
+ if(hug3){
+ hug6 = ((CommandConstants.PLACE_MIDDLE == hug3.type) ? 1000 : 0);
+
+ if((hug3.vpos > (hug1 + hug6)) || ((hug3.vend + hug6) <= hug1)){
+ hug3.release();
+
+ this.__slots[hug5] = null;
+ }
+ }
+
+ hug5++;
+ }
+ }
+
+ var hug4:int = this.__nextIndex;
+
+ while(hug4 < this.__sortedEntries.length){
+ hug3 = this.__sortedEntries[hug4];
+
+ if(!isNaN(hug3.vend)){
+ hug6 = ((CommandConstants.PLACE_MIDDLE == hug3.type) ? 1000 : 0);
+
+ if(((hug3.vend + hug6) < hug1) || (!this.__hasSponsor && hug3.forSponsorVideo)){
+ hug4++;
+ continue;
+ }
+
+ if(hug3.vpos > (hug1 + hug6)) break;
+ }
+
+ hug7 = hug3.viewEntry.provider.create();
+
+ if(!hug7){
+ }else{
+ hug3.displayObject = hug7;
+ var hug11:int = 1;
+ hug7.scaleY = hug11;
+ hug7.scaleX = hug11;
+
+ if(hug7.height > (VideoLayerConstants.VIDEO_LAYER_SD_HEIGHT / 3)){
+ var hug11:Number = 0.5;
+ hug7.scaleY = hug11;
+ hug7.scaleX = hug11;
+ }
+
+ if(hug3.type != CommandConstants.PLACE_MIDDLE){
+ hug10 = (hug3.isFullWidth ? VideoLayerConstants.VIDEO_LAYER_HD_WIDTH : VideoLayerConstants.VIDEO_LAYER_SD_WIDTH);
+
+ if(hug7.width > hug10){
+ var hug11:Number = (hug10 / hug7.width);
+ hug7.scaleY = hug11;
+ hug7.scaleX = hug11;
+ }
+ }
+
+ hug8 = 0;
+ hug9 = 0;
+
+ while(hug9 < this.__slots.length){
+ if(this.__slots[hug9]){
+ if(this.__slots[hug9].vend < this.__slots[hug8].vend) hug8 = hug9;
+ }else{
+ hug8 = hug9;
+ break;
+ }
+
+ hug9++;
+ }
+
+ if(this.__slots[hug8]){
+ this.__slots[hug8].release();
+
+ this.__slots[hug8] = null;
+ }
+
+ this.__slots[hug8] = hug3;
+
+ hug3.viewEntry.provider.assignZ(hug7, hug8);
+
+ hug7.y = this.__positioner.getY(hug8, this.__slots);
+
+ this.__setX(hug3, hug1);
+ }
+
+ hug4++;
+ }
+
+ if(this.__videoLength == (-1)){
+ this.__sortedEntries.splice(0, hug4);
+ }else{
+ this.__nextIndex = hug4;
+ }
+ }
+
+ public function move(hug1:Number):void
+ { //MethodID:4125, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 54
+ var hug2:_SlotEntry = null;
+
+ for each(hug2 in this.__slots){
+ if(hug2) this.__setX(hug2, hug1);
+ }
+ }
+
+ private function __update_0(hug1:Array, hug2:Array, hug3:Boolean):void
+ { //MethodID:4126, LocalCount= 9 , MaxScope= 1, MaxStack= 7, CodeLength= 230
+ var hug4:ViewEntry = null;
+ var hug5:_SlotEntry = null;
+ var hug6:ViewEntry = null;
+
+ if(hug3){
+ this.__original = new Dictionary();
+ }else if(hug2 && (hug2.length != 0)){
+ for each(hug4 in hug2){
+ hug5 = this.__original[hug4];
+
+ hug5.release();
+ delete this.__original[hug4];
+ }
+ }
+
+ if(hug1 && (hug1.length != 0)){
+ for each(hug6 in hug1){
+ this.__original[hug6] = new _SlotEntry(hug6, this.__videoLength, (hug6.vpos > this.__originalVideoLength));
+ }
+ }
+
+ this.__sortedEntries = ObjectUtils.values(this.__original);
+
+ this.__sortEntries();
+ }
+
+ private function __sortEntries():void
+ { //MethodID:4128, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 18
+ this.__sortedEntries.sort(function(hug1:_SlotEntry, hug2:_SlotEntry):Number{ //MethodID:4127, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 7
+ return hug1.compare(hug2);
+ });
+ }
+
+ private function __setX(hug1:_SlotEntry, hug2:Number):void
+ { //MethodID:4129, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 65
+ var hug3:Number = this.__positioner.getX(hug1, hug2);
+
+ if(this.__reverse && (hug1.type == CommandConstants.PLACE_MIDDLE)) hug3 = (-hug3 - hug1.width + VideoLayerConstants.VIDEO_LAYER_SD_WIDTH);
+
+ hug1.displayObject.x = hug3;
+ }
+ }
+}
+
+import flash.display.DisplayObject
+import jp.nicovideo.nicoplayer.views.comment.ViewEntry
+
+//■class(instance)_index:324
+//private
+class _SlotEntry extends Object implements ISlot
+{
+ //static constructor
+ public static function _SlotEntry$cinit()
+ { //MethodID:4130, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SlotEntry(hug1:ViewEntry, hug2:Number, hug3:Boolean=false):void
+ { //MethodID:4131, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 81
+ super();
+
+ this.viewEntry = hug1;
+ this.__vstart = hug1.vpos;
+ this.__vend = hug1.vend;
+ this.__forSponsorVideo = hug3;
+
+ if(hug2 == (-1)) return;
+
+ var hug4:Number = (this.__vend - hug2);
+
+ if(hug4 > 0){
+ this.__vstart = Math.max((this.__vstart - hug4), 0);
+ this.__vend = hug2;
+ }
+ }
+
+ //variables/etc.
+ public var viewEntry:ViewEntry; //slotID:0
+ public var displayObject:DisplayObject; //slotID:0
+ private var __vstart:Number; //slotID:0
+ private var __vend:Number; //slotID:0
+ private var __forSponsorVideo:Boolean; //slotID:0
+
+ public function release():void
+ { //MethodID:4132, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 31
+ if(this.displayObject){
+ this.viewEntry.provider.release(this.displayObject);
+
+ this.displayObject = null;
+ }
+ }
+
+ public function compare(hug1:_SlotEntry):Number
+ { //MethodID:4133, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ return ((this.viewEntry.vpos - hug1.viewEntry.vpos) || (this.viewEntry.order - hug1.viewEntry.order));
+ }
+
+ public function get forSponsorVideo():Boolean
+ { //MethodID:4134, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__forSponsorVideo;
+ }
+
+ public function get vpos():Number
+ { //MethodID:4135, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__vstart;
+ }
+
+ public function get vend():Number
+ { //MethodID:4136, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__vend;
+ }
+
+ public function get y():Number
+ { //MethodID:4137, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.displayObject.y;
+ }
+
+ public function get width():Number
+ { //MethodID:4138, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.displayObject.width;
+ }
+
+ public function get height():Number
+ { //MethodID:4139, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.displayObject.height;
+ }
+
+ public function get type():String
+ { //MethodID:4140, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.viewEntry.type;
+ }
+
+ public function get isFullWidth():Boolean
+ { //MethodID:4141, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.viewEntry.isFullWidth;
+ }
+}
+
+//■script267■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import jp.nicovideo.nicoplayer.models.comment.CommandConstants
+
+ //■class(instance)_index:325
+ public class CommentPositioner extends Object
+ {
+ //static constructor
+ public static function CommentPositioner$cinit()
+ { //MethodID:4143, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentPositioner(hug1:Number, hug2:Number)
+ { //MethodID:4144, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._layerWidth = hug1;
+ this._layerHeight = hug2;
+ }
+
+ //variables/etc.
+ private var _layerWidth:Number; //slotID:0
+ private var _layerHeight:Number; //slotID:0
+
+ public function getX(hug1:ISlot, hug2:Number):Number
+ { //MethodID:4145, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 69
+ if(hug1.type != CommandConstants.PLACE_MIDDLE) return ((this._layerWidth - hug1.width) / 2);
+
+ var hug3:Number = (hug2 - hug1.vpos);
+ var hug4:Number = ((this._layerWidth + hug1.width) / (hug1.vend - hug1.vpos));
+ return (this._layerWidth - (hug3 * hug4));
+ }
+
+ public function getY(hug1:uint, hug2:Array):Number
+ { //MethodID:4146, LocalCount= 14 , MaxScope= 1, MaxStack= 3, CodeLength= 486
+ var hug5:Boolean = false;
+ var hug6:uint = 0;
+ var hug7:ISlot = null;
+ var hug8:Number = NaN;
+ var hug9:Number = NaN;
+ var hug10:Number = NaN;
+ var hug11:Number = NaN;
+ var hug12:Number = NaN;
+ var hug13:Number = NaN;
+ var hug3:ISlot = hug2[hug1];
+ var hug4:Number = 0;
+
+ if(hug3.type == CommandConstants.PLACE_BOTTOM) hug4 = (this._layerHeight - hug3.height);
+
+ do{
+ hug5 = false;
+ hug6 = 0;
+
+ while(hug6 < hug2.length){
+ hug7 = hug2[hug6];
+
+ if(!hug7 || (hug7 === hug3)){
+ }else if(hug3.type != hug7.type){
+ }else if((hug7.y + hug7.height) <= hug4){
+ }else if((hug4 + hug3.height) <= hug7.y){
+ }else{
+ hug8 = Math.max(hug3.vpos, hug7.vpos);
+ hug9 = Math.min(hug3.vend, hug7.vend);
+ hug10 = this.getX(hug3, hug8);
+ hug11 = this.getX(hug3, hug9);
+ hug12 = this.getX(hug7, hug8);
+ hug13 = this.getX(hug7, hug9);
+
+ if(((hug10 <= (hug12 + hug7.width)) && (hug12 <= (hug10 + hug3.width))) || ((hug11 <= (hug13 + hug7.width)) && (hug13 <= (hug11 + hug3.width)))){
+ if(hug3.type == CommandConstants.PLACE_BOTTOM){
+ hug4 = (hug7.y - hug3.height - 1);
+
+ if(hug4 < 0){
+ hug4 = (Math.random() * (this._layerHeight - hug3.height));
+ break;
+ }
+ }else{
+ hug4 = (hug7.y + hug7.height + 1);
+
+ if((hug4 + Math.floor(hug3.height)) > this._layerHeight){
+ hug4 = (Math.random() * (this._layerHeight - hug3.height));
+ break;
+ }
+ }
+
+ hug5 = true;
+ break;
+ }
+ }
+
+ hug6++;
+ }
+
+ }while(hug5);
+
+ return hug4;
+ }
+ }
+}
+
+//■script268■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ //■class(instance)_index:326
+ public class NGStatus extends Object
+ {
+ //static constructor
+ public static function NGStatus$cinit()
+ { //MethodID:4148, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NONE = 0;
+ INVISIBLE = 1;
+ REJECT_COMMAND = 2;
+ }
+
+ //static variables/etc.
+ public static const NONE:uint = 0; //slotID:1
+ public static const INVISIBLE:uint = 1; //slotID:2
+ public static const REJECT_COMMAND:uint = 2; //slotID:3
+
+ //constructor
+ public function NGStatus()
+ { //MethodID:4149, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script269■
+
+package jp.nicovideo.nicoplayer.models.filter{
+
+ //■class(instance)_index:327
+ public class ReplacerConstants extends Object
+ {
+ //static constructor
+ public static function ReplacerConstants$cinit()
+ { //MethodID:4151, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 46
+ MAX_COUNT = 20;
+ WHOLE_REPLACE_PREFIX = "*";
+ WHOLE_REPLACE_REGEXP = new RegExp("^\*");
+ CHECK_ORIGINAL_VARS_REGEXP = new RegExp("(\*?)(.+)");
+ }
+
+ //static variables/etc.
+ public static const MAX_COUNT:uint = 20; //slotID:1
+ public static const WHOLE_REPLACE_PREFIX:String = "*"; //slotID:2
+ public static const WHOLE_REPLACE_REGEXP:RegExp; //slotID:3
+ public static const CHECK_ORIGINAL_VARS_REGEXP:RegExp; //slotID:4
+
+ //constructor
+ public function ReplacerConstants()
+ { //MethodID:4152, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script270■
+//skip components :com.adobe.crypto
+//as filename :SHA1.as
+
+//■script271■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:329
+ public class CommentDeleteStatus extends Object
+ {
+ //static constructor
+ public static function CommentDeleteStatus$cinit()
+ { //MethodID:4165, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NON = 0;
+ OWNER = 1;
+ OFFICIAL = 2;
+ }
+
+ //static variables/etc.
+ public static const NON:int = 0; //slotID:1
+ public static const OWNER:int = 1; //slotID:2
+ public static const OFFICIAL:int = 2; //slotID:3
+
+ //constructor
+ public function CommentDeleteStatus()
+ { //MethodID:4166, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script272■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:330
+ public interface ILogElement implements IEventDispatcher
+ {
+ //static constructor
+ public static function ILogElement$cinit()
+ { //MethodID:4168, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function clearLocalStorage(hug1:Boolean=true):void; //MethodID:4169, dispID:0
+
+ function reset(hug1:Function=null):void; //MethodID:4170, dispID:0
+
+ function addData(hug1:Object):void; //MethodID:4171, dispID:0
+
+ function updateData(hug1:Object, hug2:uint):void; //MethodID:4172, dispID:0
+
+ function onLogSent():void; //MethodID:4173, dispID:0
+
+ function get name():String; //MethodID:4174, dispID:0
+
+ function get isInitialized():Boolean; //MethodID:4175, dispID:0
+
+ function get sendType():String; //MethodID:4176, dispID:0
+
+ function get isSendable():Boolean; //MethodID:4177, dispID:0
+
+ function set isSendable(hug1:Boolean):void; //MethodID:4178, dispID:0
+
+ function get isExpired():Boolean; //MethodID:4179, dispID:0
+
+ function get logObjects():Vector.<Object>; //MethodID:4180, dispID:0
+
+ //constructor
+ public function ILogElement(); //MethodID:4181, dispID:0
+ }
+}
+
+//■script273■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ //■class(instance)_index:331
+ public interface ILogEventObservable
+ {
+ //static constructor
+ public static function ILogEventObservable$cinit()
+ { //MethodID:4183, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function onWatchReloaded(hug1:String, hug2:Boolean):void; //MethodID:4184, dispID:0
+
+ function onVideoLoadStarted():void; //MethodID:4185, dispID:0
+
+ function onVideoLoadCompleted(hug1:uint):void; //MethodID:4186, dispID:0
+
+ function onVideoLoadErrorOccurred():void; //MethodID:4187, dispID:0
+
+ function onVideoBufferingStarted():void; //MethodID:4188, dispID:0
+
+ function storeLoadingIdle(hug1:uint):void; //MethodID:4189, dispID:0
+
+ function onThreadLoadStarted():void; //MethodID:4190, dispID:0
+
+ function onThreadLoadCompleted(hug1:Boolean):void; //MethodID:4191, dispID:0
+
+ function onNGCommentInitialized(hug1:int, hug2:int):void; //MethodID:4192, dispID:0
+
+ function onHirobaInitializeStarted():void; //MethodID:4193, dispID:0
+
+ function onHirobaInitializeAborted():void; //MethodID:4194, dispID:0
+
+ function onHirobaConnected(hug1:Boolean, hug2:String, hug3:String, hug4:String):void;//MethodID:4195, dispID:0
+
+ function onHirobaDisconnected(hug1:String, hug2:String, hug3:String):void; //MethodID:4196, dispID:0
+
+ function onPremleadOnSliderDisplayed():void; //MethodID:4197, dispID:0
+
+ function onPremleadOnSliderClicked():void; //MethodID:4198, dispID:0
+
+ function onVideoMenuOpened(hug1:String):void; //MethodID:4199, dispID:0
+
+ function onVideoenderOpened(hug1:String):void; //MethodID:4200, dispID:0
+
+ function onVideoenderContentDisplayed(hug1:String):void; //MethodID:4201, dispID:0
+
+ function onVideoenderContentUsed(hug1:String):void; //MethodID:4202, dispID:0
+
+ function onVideoenderErrorOccured(hug1:String):void; //MethodID:4203, dispID:0
+
+ //constructor
+ public function ILogEventObservable(); //MethodID:4204, dispID:0
+ }
+}
+
+//■script274■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import flash.display.Sprite
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.IOErrorEvent
+ import flash.events.KeyboardEvent
+ import flash.events.MouseEvent
+ import flash.events.TimerEvent
+ import flash.net.SharedObject
+ import flash.net.URLLoader
+ import flash.net.URLRequest
+ import flash.net.URLRequestMethod
+ import flash.net.URLVariables
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.config.DebugMode
+ import jp.nicovideo.nicoplayer.config.getDebugMode
+ import jp.nicovideo.nicoplayer.models.api.IInitializeInfo
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.video.VideoPlayerStatus
+ import jp.nicovideo.nicoplayer.models.video.VideoWrapper
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.TimeUtils
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:332
+ public class Playlen extends EventDispatcher
+ {
+ //static constructor
+ public static function Playlen$cinit()
+ { //MethodID:4206, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Playlen()
+ { //MethodID:4207, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 122
+ this.DEBUG = (getDebugMode() == DebugMode.DEV);
+ this.PLAYLEN_INTERVAL = (this.DEBUG ? 8000 : 30000);
+ this.PLAYLEN_THRESHOLD = (this.DEBUG ? 20000 : 0x1B7740);
+ this.PLAYLEN_MAX = (this.DEBUG ? (1000 * 60 * 1) : (1000 * 60 * 60 * 2));
+
+ super();
+
+ this._SO = CrossSharedObject.getSharedObject("jp.nicovideo.nicoplayer.models.api.playlen");
+ }
+
+ //variables/etc.
+ private var DEBUG:Boolean; //slotID:0
+ private const PLAYLEN_INTERVAL:int; //slotID:0
+ private const PLAYLEN_THRESHOLD:int; //slotID:0
+ private const PLAYLEN_MAX:int; //slotID:0
+ private var _started:Boolean = false; //slotID:0
+ private var _rate:Timer; //slotID:0
+ private var _initializeInfo:IInitializeInfo; //slotID:0
+ private var _vars:NicoFlashVars; //slotID:0
+ private var _video:VideoWrapper; //slotID:0
+ private var _url:String; //slotID:0
+ private var _isThumbWatch:Boolean; //slotID:0
+ private var _result:URLVariables; //slotID:0
+ private var _SO:SharedObject; //slotID:0
+ private var _isSend:Boolean = false; //slotID:0
+ private var _root:Sprite; //slotID:0
+ private var _lastActionTime:Number; //slotID:0
+ private var _lastVideoStopTime:Number; //slotID:0
+
+ private function start():void
+ { //MethodID:4208, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 221
+ if(!this._started) this._lastVideoStopTime = TimeUtils.time;
+
+ this._started = true;
+
+ if(!this._rate.running){
+ this._rate.start();
+
+ if(isNaN(this._lastActionTime)) this._lastActionTime = TimeUtils.time;
+
+ this._SO.data.time.s = TimeUtils.time;
+ this._SO.data.time.v = this._vars.originalVideoID;
+
+ if(this._vars.isChannel && this._vars.isCommunityThread){
+ this._SO.data.time.is_channel = "1";
+ }else if(this._vars.isCommunityThread){
+ this._SO.data.time.is_community = "1";
+ }else if(this._vars.isChannel){
+ this._SO.data.time.is_channel = "1";
+ }
+
+ this._SO.flush();
+ }
+ }
+
+ private function setPlaylen(hug1:Event):void
+ { //MethodID:4210, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 309
+ internal var event:Event; //slotID:1
+ internal var isEndPlaylen:Boolean; //slotID:2
+ internal var send:Function; //slotID:3
+
+ event = hug1;
+ send = function(hug1:Number):void{ //MethodID:4209, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 28
+ _SO.data.time.e = hug1;
+
+ _SO.flush();
+ sendToAPI();
+ };
+
+ if(this._isThumbWatch){
+ this._rate.stop();
+ this._rate.removeEventListener(TimerEvent.TIMER, this.setPlaylen);
+
+ return;
+ }
+
+ if(!this._initializeInfo.userID || ((Number(this._initializeInfo.userID) % 10) != 1)){
+ if(!this.DEBUG){
+ this._rate.stop();
+ this._rate.removeEventListener(TimerEvent.TIMER, this.setPlaylen);
+
+ return;
+ }
+ }
+
+ isEndPlaylen = false;
+
+ if(this._video.videoPlayerStatus == VideoPlayerStatus.PLAYING){
+ if(this.PLAYLEN_MAX < (TimeUtils.time - this._lastActionTime)){
+ isEndPlaylen = true;
+
+ send(TimeUtils.time);
+
+ return;
+ }
+ }else{
+ if(isNaN(this._lastVideoStopTime)) this._lastVideoStopTime = TimeUtils.time;
+
+ if(this.PLAYLEN_THRESHOLD < (TimeUtils.time - this._lastActionTime)){
+ isEndPlaylen = true;
+
+ send((this._lastVideoStopTime > this._lastActionTime) ? this._lastVideoStopTime : this._lastActionTime);
+
+ return;
+ }else{
+ return;
+ }
+ }
+
+ this._SO.data.time.e = TimeUtils.time;
+
+ this._SO.flush();
+ }
+
+ private function sendToAPI():void
+ { //MethodID:4214, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 451
+ internal var reset:Function; //slotID:1
+ internal var vari:URLVariables; //slotID:2
+ internal var req:URLRequest; //slotID:3
+ internal var loader:URLLoader; //slotID:4
+
+ vari = null;
+ req = null;
+ loader = null;
+ reset = function():void{ //MethodID:4211, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ _SO.data.time = {};
+
+ _SO.flush();
+ };
+
+ if(this._SO.data.time == undefined) this._SO.data.time = {};
+
+ if(this._SO.data.time.s && this._SO.data.time.e && this._SO.data.time.v){
+ if((this._SO.data.time.e - this._SO.data.time.s) < this.PLAYLEN_INTERVAL){
+ this._SO.data.time.e = undefined;
+
+ this._SO.flush();
+
+ return;
+ }
+
+ if(this._rate) this._rate.stop();
+
+ vari = new URLVariables();
+ req = new URLRequest(this._url);
+ req.method = URLRequestMethod.POST;
+ vari.s = Math.floor(this._SO.data.time.s / 1000);
+ vari.e = Math.floor(this._SO.data.time.e / 1000);
+ vari.v = this._SO.data.time.v;
+
+ if(this._SO.data.time.is_channel == "1") vari.is_channel = "1";
+
+ if(this._SO.data.time.is_community == "1") vari.is_community = "1";
+
+ req.data = vari;
+ loader = new URLLoader();
+
+ loader.addEventListener(Event.COMPLETE, function(hug1:Event):void{ //MethodID:4212, LocalCount= 4 , MaxScope= 3, MaxStack= 3, CodeLength= 75
+ internal var event:Event; //slotID:1
+
+ event = hug1;
+
+ try{
+ _result = new URLVariables(event.target.data);
+ }
+ catch(e:Error){
+ _result = null;
+ }
+
+ reset();
+ dispatchEvent(event);
+ });
+ loader.addEventListener(IOErrorEvent.IO_ERROR, function(hug1:Event):void{ //MethodID:4213, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 9
+ reset();
+ });
+ loader.load(req);
+ }
+ }
+
+ public function onLoadVideo():void
+ { //MethodID:4215, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ this.start();
+ }
+
+ public function onVideoEnded():void
+ { //MethodID:4216, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._lastVideoStopTime = TimeUtils.time;
+ }
+
+ public function onVideoStopped():void
+ { //MethodID:4217, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this._lastVideoStopTime = TimeUtils.time;
+ }
+
+ public function onVideoPlayed():void
+ { //MethodID:4218, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 10
+ this._lastVideoStopTime = NaN;
+ }
+
+ public function initialize(hug1:String, hug2:VideoWrapper, hug3:NicoFlashVars, hug4:IInitializeInfo, hug5:Boolean, hug6:Sprite):void
+ { //MethodID:4221, LocalCount= 8 , MaxScope= 2, MaxStack= 3, CodeLength= 219
+ internal var url:String; //slotID:1
+ internal var video:VideoWrapper; //slotID:2
+ internal var vars:NicoFlashVars; //slotID:3
+ internal var initializeInfo:IInitializeInfo; //slotID:4
+ internal var isThumbWatch:Boolean; //slotID:5
+ internal var root:Sprite; //slotID:6
+
+ url = hug1;
+ video = hug2;
+ vars = hug3;
+ initializeInfo = hug4;
+ isThumbWatch = hug5;
+ root = hug6;
+ this._video = VideoWrapper(video);
+ this._vars = vars;
+ this._initializeInfo = initializeInfo;
+ this._url = url;
+ this._isThumbWatch = isThumbWatch;
+
+ if(!this._root && root){
+ this._root = root;
+
+ this._root.addEventListener(MouseEvent.MOUSE_MOVE, function(hug1:MouseEvent):void{ //MethodID:4219, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 41
+ _lastActionTime = TimeUtils.time;
+
+ if(!_rate.running && _started) start();
+ });
+ this._root.addEventListener(KeyboardEvent.KEY_UP, function(hug1:KeyboardEvent):void{ //MethodID:4220, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 41
+ _lastActionTime = TimeUtils.time;
+
+ if(!_rate.running && _started) start();
+ });
+ }
+
+ this.sendToAPI();
+
+ if(!this._rate){
+ this._rate = new Timer(this.PLAYLEN_INTERVAL);
+
+ this._rate.addEventListener(TimerEvent.TIMER, this.setPlaylen);
+ }else{
+ this._rate.stop();
+ this._rate.addEventListener(TimerEvent.TIMER, this.setPlaylen);
+ }
+ }
+
+ public function get result():URLVariables
+ { //MethodID:4222, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._result;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function sendToAPI():void
+ { //MethodID:4223, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 87
+ this._rate.reset();
+
+ this._SO.data.time.s = Math.floor(TimeUtils.time + ((60 * 10) * 1000));
+ this._SO.data.time.e = Math.floor(TimeUtils.time + ((60 * 60) * 1000));
+
+ this.sendToAPI();
+ }
+ }
+}
+
+//■script275■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import __AS3__.vec.Vector
+ import flash.events.EventDispatcher
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+ import jp.nicovideo.nicoplayer.models.log.events.LogEvent
+ import jp.nicovideo.util.CrossSharedObject
+ import jp.nicovideo.util.TimeUtils
+ import jp.nicovideo.util.storage.LocalStorage
+
+ //■class(instance)_index:333
+ public class AbstractLogElement extends EventDispatcher implements ILogElement
+ {
+ //static constructor
+ public static function AbstractLogElement$cinit()
+ { //MethodID:4225, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function AbstractLogElement(hug1:Function, hug2:String, hug3:String)
+ { //MethodID:4226, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 64
+ super();
+
+ this._localStorage = hug1(hug2);
+ this._name = hug2;
+ this._sendType = hug3;
+
+ if(this._localStorage.data[this._PRIVATE_KEY_LOG_OBJECTS] == undefined) this.clearLocalStorage();
+
+ if(this.isExpired) this.clearLocalStorage();
+ }
+
+ //variables/etc.
+ private const _PRIVATE_KEY_LOG_OBJECTS:String = "_logObjects"; //slotID:0
+ private const _PRIVATE_KEY_IS_SENDABLE:String = "_isSendable"; //slotID:0
+ private const _PRIVATE_KEY_EXPIRE_TIME:String = "_expireTime"; //slotID:0
+ private var _localStorage:LocalStorage; //slotID:0
+ private var _name:String; //slotID:0
+ private var _sendType:String; //slotID:0
+ protected var _cacheStorage:LocalStorage; //slotID:0
+ private var _isInitialized:Boolean = false; //slotID:0
+
+ protected function _onInitialized():void
+ { //MethodID:4227, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 32
+ this._isInitialized = true;
+
+ dispatchEvent(new LogEvent(LogEvent.INITIALIZED, this.name));
+ }
+
+ public function clearLocalStorage(hug1:Boolean=true):void
+ { //MethodID:4228, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 99
+ this._localStorage.clear();
+
+ this._localStorage.data[this._PRIVATE_KEY_EXPIRE_TIME] = NaN;
+ this._localStorage.data[this._PRIVATE_KEY_IS_SENDABLE] = false;
+ this._localStorage.data[this._PRIVATE_KEY_LOG_OBJECTS] = new Vector.<Object>();
+
+ this._localStorage.flush();
+
+ if(hug1 && this._cacheStorage) this._cacheStorage.clear();
+ }
+
+ public function reset(hug1:Function=null):void
+ { //MethodID:4229, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ this._isInitialized = false;
+
+ if(hug1 != null) hug1.apply();
+ }
+
+ public function addData(hug1:Object):void
+ { //MethodID:4230, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 30
+ Vector.<Object>(this.logObjects).push(hug1);
+ this._localStorage.flush();
+ }
+
+ public function updateData(hug1:Object, hug2:uint):void
+ { //MethodID:4231, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 20
+ this.logObjects[hug2] = hug1;
+
+ this._localStorage.flush();
+ }
+
+ protected function _initializeCacheStorage(hug1:String, hug2:String=null, hug3:Boolean=false):void
+ { //MethodID:4232, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 17
+ this._cacheStorage = CrossSharedObject.getStorage(hug1, hug2, hug3);
+ }
+
+ public function onLogSent():void
+ { //MethodID:4233, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function get isInitialized():Boolean
+ { //MethodID:4234, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInitialized;
+ }
+
+ public function get name():String
+ { //MethodID:4235, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function get sendType():String
+ { //MethodID:4236, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._sendType;
+ }
+
+ public function get isSendable():Boolean
+ { //MethodID:4237, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 22
+ return Boolean(this._localStorage.data[this._PRIVATE_KEY_IS_SENDABLE]);
+ }
+
+ public function set isSendable(hug1:Boolean):void
+ { //MethodID:4238, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 73
+ this._localStorage.data[this._PRIVATE_KEY_IS_SENDABLE] = hug1;
+
+ this._localStorage.flush();
+
+ if(hug1 && (this.sendType == LogElementSendType.IMMEDIATE)) dispatchEvent(new LogEvent(LogEvent.PREPARED, this.name));
+ }
+
+ public function get isExpired():Boolean
+ { //MethodID:4239, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 62
+ var hug1:Number = Number(this._localStorage.data[this._PRIVATE_KEY_EXPIRE_TIME]);
+
+ if(isNaN(hug1) || !isFinite(hug1)) return false;
+
+ return (TimeUtils.time > hug1);
+ }
+
+ protected function set _expireTime(hug1:Number):void
+ { //MethodID:4240, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 26
+ this._localStorage.data[this._PRIVATE_KEY_EXPIRE_TIME] = hug1;
+
+ this._localStorage.flush();
+ }
+
+ public function get logObjects():Vector.<Object>
+ { //MethodID:4241, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this._localStorage.data[this._PRIVATE_KEY_LOG_OBJECTS];
+ }
+ }
+}
+
+//■script276■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import flash.utils.clearTimeout
+ import flash.utils.getTimer
+ import flash.utils.setTimeout
+ import jp.nicovideo.nicoplayer.models.PlayerInfo
+ import jp.nicovideo.nicoplayer.models.api.IGetFLV
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+ import jp.nicovideo.util.TimeUtils
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:334
+ public class PlayStats extends AbstractLogElement
+ {
+ //static constructor
+ public static function PlayStats$cinit()
+ { //MethodID:4243, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlayStats(hug1:Function)
+ { //MethodID:4244, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 91
+ this._intervalList = {};
+ this._functions = [];
+
+ this._functions.push(this.initialize);
+ this._functions.push(this.onVideoLoadCompleted);
+ this._functions.push(this.onVideoLoadErrorOccurred);
+ this._functions.push(this.onThreadLoadCompleted);
+ this._functions.push(this.onHirobaConnected);
+ super(hug1, LogElementName.PLAY_STATS, LogElementSendType.IMMEDIATE);
+ }
+
+ //variables/etc.
+ private const _VIDEO_CONNECTED_TIME:String = "videoConnectedTime";//slotID:0
+ private const _VIDEO_BUFFERFULL_TIME:String = "videoBufferFullTime";//slotID:0
+ private const _THREAD_CONNECTED:String = "threadConnected"; //slotID:0
+ private const _PRIVATE_KEY_HIROBA_COUNT:String = "_hirobaCount";//slotID:0
+ private const _HIROBA_TIMEOUT:Number = 30000.0; //slotID:0
+ private const _DEFAULT_STOCK_COUNT:int = 10; //slotID:0
+ private var _intervalList:Object; //slotID:0
+ private var _functions:Array; //slotID:0
+ private var _getFLV:IGetFLV; //slotID:0
+ private var _flashvars:NicoFlashVars; //slotID:0
+ private var _bytesTotal:uint = 0; //slotID:0
+ private var _initCount:int = 0; //slotID:0
+ private var __hirobaCount:Number = Number.NaN; //slotID:0
+ private var _stockCount:int = 10; //slotID:0
+ private var _hirobaTimeoutID:int = -1; //slotID:0
+ private var _hasSetHirobaCount:Boolean = false; //slotID:0
+
+ public function initialize(hug1:Boolean, hug2:IGetFLV, hug3:NicoFlashVars, hug4:PlayerInfo, hug5:Boolean, ...args):void
+ { //MethodID:4246, LocalCount= 8 , MaxScope= 2, MaxStack= 4, CodeLength= 261
+ internal var enabled:Boolean; //slotID:1
+ internal var getFLV:IGetFLV; //slotID:2
+ internal var flashvars:NicoFlashVars; //slotID:3
+ internal var playerInfo:PlayerInfo; //slotID:4
+ internal var isNoHiroba:Boolean; //slotID:5
+ internal var arguments:Array; //slotID:6
+
+ enabled = hug1;
+ getFLV = hug2;
+ flashvars = hug3;
+ playerInfo = hug4;
+ isNoHiroba = hug5;
+ internal var arguments:Object = args;
+
+ super.reset(function():void{ //MethodID:4245, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 15
+ if(_cacheStorage) _cacheStorage.close();
+ });
+
+ this._getFLV = getFLV;
+ this._flashvars = flashvars;
+ this._stockCount = (isNaN(playerInfo.playStatsCount) ? this._DEFAULT_STOCK_COUNT : playerInfo.playStatsCount);
+
+ if(!enabled) return;
+ _initializeCacheStorage("jp.nicovideo.nicoplayer.models.log.elements._PlayStatsLog", "/");
+
+ if(_cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT] == undefined){
+ _cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT] = 0;
+
+ _cacheStorage.flush();
+ }
+
+ if(this._hasSetHirobaCount){
+ _cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT] += this.__hirobaCount;
+
+ _cacheStorage.flush();
+ }
+
+ if(isNoHiroba || isInitialized){
+ this.onHirobaConnectorLoadStarted();
+ this.onHirobaConnected(false);
+ }
+
+ super._onInitialized();
+ this._checkAndCreate(arguments.callee);
+ }
+
+ private function dateFormater(hug1:Date):String
+ { //MethodID:4248, LocalCount= 3 , MaxScope= 2, MaxStack= 6, CodeLength= 141
+ internal var d:Date; //slotID:1
+ internal var string:String; //slotID:2
+ internal var convertToString:Function; //slotID:3
+
+ d = hug1;
+ convertToString = function(hug1:int):String{ //MethodID:4247, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 30
+ return ((hug1 >= 10) ? String(hug1) : ("0" + String(hug1)));
+ };
+
+ string = ((((((d.getFullYear() + "-") + convertToString(d.getMonth() + 1) + "-") + convertToString(d.getDate()) + "T") + convertToString(d.getHours()) + ":") + convertToString(d.getMinutes()) + ":") + convertToString(d.getSeconds()));
+ return string;
+ }
+
+ private function _getIntervalObject(hug1:String):_Interval
+ { //MethodID:4249, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 38
+ if(!this._intervalList[hug1]) this._intervalList[hug1] = new _Interval();
+
+ return this._intervalList[hug1];
+ }
+
+ public function setBeginTime(hug1:String):void
+ { //MethodID:4250, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ this._getIntervalObject(hug1).begin = getTimer();
+ }
+
+ public function setEndTime(hug1:String, hug2:Boolean=false):void
+ { //MethodID:4251, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 29
+ this._getIntervalObject(hug1).end = getTimer();
+ this._getIntervalObject(hug1).error = hug2;
+ }
+
+ private function _getInterval(hug1:String):String
+ { //MethodID:4252, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ if(this._intervalList[hug1]) return this._intervalList[hug1].intervel;
+
+ return "0";
+ }
+
+ private function _checkAndCreate(hug1:Function):Boolean
+ { //MethodID:4253, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 57
+ if(this._functions.indexOf(hug1) + 1){
+ if((++this._initCount) == (this._functions.length - 1)){
+ this._create();
+
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ private function _create():void
+ { //MethodID:4254, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 74
+ if(!isInitialized) return;
+
+ var hug1:Object = {};
+
+ this._setVideoStatus(hug1);
+ this._setThreadStatus(hug1);
+ this._setHirobaStatus(hug1);
+ addData(hug1);
+
+ if(logObjects.length >= this._stockCount) isSendable = true;
+
+ this._hirobaCount = 0;
+ this._hasSetHirobaCount = false;
+ }
+
+ private function _setVideoStatus(hug1:Object):void
+ { //MethodID:4255, LocalCount= 7 , MaxScope= 1, MaxStack= 5, CodeLength= 290
+ var hug2:String = this._getFLV.videoURL;
+ var hug3:Number = hug2.indexOf("//");
+
+ if(hug3 >= 0) hug2 = hug2.substr(hug3 + 2);
+
+ var hug4:String = hug2;
+ hug3 = hug4.indexOf("/");
+
+ if(hug3 >= 0) hug4 = hug4.substr(0, hug3);
+
+ var hug5:Number = Number(this._getInterval(this._VIDEO_BUFFERFULL_TIME));
+ hug5 = ((hug5 > 0) ? hug5 : 0);
+ var hug6:String = (isNaN(Math.floor(this._bytesTotal / hug5)) ? "0" : String(Math.floor(this._bytesTotal / hug5)));
+ hug1["date"] = (this.dateFormater(TimeUtils.now()) + "+09:00");
+ hug1["host"] = hug4;
+ hug1["video"] = this._flashvars.originalVideoID;
+ hug1["deleted"] = this._getFLV.deleted;
+ hug1["t1"] = this._getInterval(this._VIDEO_CONNECTED_TIME);
+ hug1["t2"] = this._getInterval(this._VIDEO_BUFFERFULL_TIME);
+ hug1["r"] = String((hug5 == 0) ? this._bytesTotal : hug6);
+ }
+
+ private function _setThreadStatus(hug1:Object):void
+ { //MethodID:4256, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ hug1["frq"] = this._getInterval(this._THREAD_CONNECTED);
+ }
+
+ private function _setHirobaStatus(hug1:Object):void
+ { //MethodID:4257, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 67
+ if(!_cacheStorage || (_cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT] == undefined)){
+ hug1["hiroba"] = 0;
+ }else{
+ hug1["hiroba"] = _cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT];
+ }
+ }
+
+ private function get _hirobaCount():Number
+ { //MethodID:4258, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 33
+ if(_cacheStorage) return Number(_cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT]);
+
+ return this.__hirobaCount;
+ }
+
+ private function set _hirobaCount(hug1:Number):void
+ { //MethodID:4259, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 44
+ this._hasSetHirobaCount = true;
+ this.__hirobaCount = hug1;
+
+ if(_cacheStorage){
+ _cacheStorage.data[this._PRIVATE_KEY_HIROBA_COUNT] = this.__hirobaCount;
+
+ _cacheStorage.flush();
+ }
+ }
+
+ public function onVideoLoadStarted():void
+ { //MethodID:4260, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.setBeginTime(this._VIDEO_CONNECTED_TIME);
+ }
+
+ public function onVideoBufferingStarted():void
+ { //MethodID:4261, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this.setEndTime(this._VIDEO_CONNECTED_TIME);
+ this.setBeginTime(this._VIDEO_BUFFERFULL_TIME);
+ }
+
+ public function onVideoLoadCompleted(hug1:uint, ...args):void
+ { //MethodID:4262, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 41
+ this._bytesTotal = ((hug1 > 0) ? hug1 : 0);
+
+ this.setEndTime(this._VIDEO_BUFFERFULL_TIME);
+ this._checkAndCreate(args.callee);
+ }
+
+ public function onVideoLoadErrorOccurred(... args):void
+ { //MethodID:4263, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this.setEndTime(this._VIDEO_CONNECTED_TIME);
+ this._checkAndCreate(args.callee);
+ }
+
+ public function onThreadLoadStarted():void
+ { //MethodID:4264, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.setBeginTime(this._THREAD_CONNECTED);
+ }
+
+ public function onThreadLoadCompleted(hug1:Boolean, ...args):void
+ { //MethodID:4265, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 23
+ this.setEndTime(this._THREAD_CONNECTED, !hug1);
+ this._checkAndCreate(args.callee);
+ }
+
+ public function onHirobaConnectorLoadStarted():void
+ { //MethodID:4266, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 23
+ this._hirobaTimeoutID = setTimeout(this.onHirobaConnected, this._HIROBA_TIMEOUT, false);
+ }
+
+ public function onHirobaConnected(hug1:Boolean, ...args):void
+ { //MethodID:4267, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 95
+ var hug3:Number = NaN;
+
+ if(hug1 && (this._hirobaTimeoutID > (-1))){
+ hug3 = this._hirobaCount;
+
+ if(isNaN(hug3)){
+ hug3 = 0;
+ }else{
+ hug3++;
+ }
+
+ this._hirobaCount = hug3;
+ }
+
+ if(this._hirobaTimeoutID > (-1)) this._checkAndCreate(args.callee);
+ clearTimeout(this._hirobaTimeoutID);
+
+ this._hirobaTimeoutID = -1;
+ }
+
+ public function onPlaylistTargetUpdated():void
+ { //MethodID:4268, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._initCount = 0;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function setVideoStatus(hug1:Object):void
+ { //MethodID:4269, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._setVideoStatus(hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function getThreadStats(hug1:Object):void
+ { //MethodID:4270, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ this._setThreadStatus(hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function logCount():int
+ { //MethodID:4271, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return logObjects.length;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function _getInterval(hug1:String):String
+ { //MethodID:4272, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ return this._getInterval(hug1);
+ }
+ }
+}
+
+
+//■class(instance)_index:335
+//private
+class _Interval extends Object
+{
+ //static constructor
+ public static function _Interval$cinit()
+ { //MethodID:4273, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Interval()
+ { //MethodID:4274, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var begin:Number = 0.0; //slotID:0
+ public var end:Number = 0.0; //slotID:0
+ public var error:Boolean = false; //slotID:0
+
+ public function get intervel():String
+ { //MethodID:4275, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 41
+ var hug1:Number = Math.max((this.end - this.begin), 0);
+
+ if(this.error) hug1 = -1;
+
+ return String(hug1);
+ }
+}
+
+//■script277■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import flash.system.Capabilities
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+
+ //■class(instance)_index:336
+ public class PremiumLeadOnSliderLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function PremiumLeadOnSliderLog$cinit()
+ { //MethodID:4277, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PremiumLeadOnSliderLog(hug1:Function)
+ { //MethodID:4278, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.PREMIUM_LEAD_ON_SLIDER, LogElementSendType.PLAYER_START_UP);
+ }
+
+ //variables/etc.
+ private var _displayed:int = 0; //slotID:0
+ private var _clicked:int = 0; //slotID:0
+ private var _hasDisplayed:Boolean; //slotID:0
+
+ public function initialize(hug1:Boolean):void
+ { //MethodID:4279, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 19
+ super.reset();
+
+ if(!hug1) return;
+ super._onInitialized();
+ }
+
+ public function onPremleadOnSliderDisplayed():void
+ { //MethodID:4280, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 38
+ this._hasDisplayed = true;
+ this._displayed++;
+
+ if(!isInitialized) return;
+ this._updateLogData();
+ }
+
+ public function onPremleadOnSliderClicked():void
+ { //MethodID:4281, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this._clicked++;
+
+ if(!isInitialized || !this._hasDisplayed) return;
+ this._updateLogData();
+ }
+
+ private function _updateLogData():void
+ { //MethodID:4282, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 129
+ var hug1:Object = null;
+
+ if(!isInitialized) return;
+
+ if(this._displayed > 0){
+ hug1 = {};
+
+ if(logObjects.length > 0){
+ hug1 = logObjects[0];
+ }else{
+ addData(hug1);
+ }
+
+ hug1["displayed"] = this._displayed;
+ hug1["clicked"] = this._clicked;
+ hug1["is64bit"] = (Boolean(Capabilities.supports64BitProcesses) ? 1 : 0);
+
+ updateData(hug1, 0);
+ }
+ }
+ }
+}
+
+//■script278■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import flash.system.Capabilities
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:337
+ public class CapabilitiesLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function CapabilitiesLog$cinit()
+ { //MethodID:4284, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CapabilitiesLog(hug1:Function)
+ { //MethodID:4285, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.CAPABILITIES, LogElementSendType.IMMEDIATE);
+ }
+
+ //variables/etc.
+ private const _CACHE_NAME:String = "jp.nicovideo.nicoplayer.models.log.elements._CapabilitiesLog";//slotID:0
+ private const _EXPIRE_TIME_PROPERTY_NAME:String = "expire_property_name";//slotID:0
+ private const _EXPIRE:Number = 0x5265C00; //slotID:0
+
+ public function initialize(hug1:Boolean):void
+ { //MethodID:4286, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 262
+ super.reset();
+
+ if(!hug1) return;
+ _initializeCacheStorage(this._CACHE_NAME, "/");
+
+ var hug2:Number = parseInt(_cacheStorage.data[this._EXPIRE_TIME_PROPERTY_NAME]);
+
+ if((hug2 + this._EXPIRE) > TimeUtils.time) return;
+ super._onInitialized();
+
+ var hug3:Object = {};
+ hug3["is64"] = (Capabilities.supports64BitProcesses ? "1" : "0");
+ hug3["os"] = (new RegExp("^[a-zA-Z0-9\-_\., ]+$").test(Capabilities.os) ? Capabilities.os : "other");
+ hug3["isDebugger"] = (Capabilities.isDebugger ? "1" : "0");
+ hug3["version"] = (new RegExp("^[a-zA-Z0-9, ]+$").test(Capabilities.version) ? Capabilities.version : "other");
+
+ addData(hug3);
+
+ isSendable = true;
+ _cacheStorage.data[this._EXPIRE_TIME_PROPERTY_NAME] = TimeUtils.time;
+
+ _cacheStorage.flush();
+ }
+
+ override public function clearLocalStorage(hug1:Boolean=true):void
+ { //MethodID:4287, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 9
+ super.clearLocalStorage(false);
+ }
+ }
+}
+
+//■script279■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import flash.utils.getTimer
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:338
+ public class LoadingFailLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function LoadingFailLog$cinit()
+ { //MethodID:4289, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LoadingFailLog(hug1:Function)
+ { //MethodID:4290, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.LOADING_FAIL, LogElementSendType.IMMEDIATE);
+ }
+
+ //variables/etc.
+ private const _ERROR_CODE_UNKNOWN:String = "unknown"; //slotID:0
+ private var _videoId:String = ""; //slotID:0
+ private var _videoServer:String = ""; //slotID:0
+ private var _startTimeStamp:Number = Number.NaN; //slotID:0
+ private var _startTime:Number = Number.NaN; //slotID:0
+
+ public function initialize(hug1:String, hug2:String):void
+ { //MethodID:4292, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 59
+ internal var watchVideoID:String; //slotID:1
+ internal var videoURL:String; //slotID:2
+ internal var getServerName:Function; //slotID:3
+
+ watchVideoID = hug1;
+ videoURL = hug2;
+ getServerName = function(hug1:String):String{ //MethodID:4291, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 60
+ var hug2:Number = hug1.indexOf("//");
+
+ if(hug2 >= 0) hug1 = hug1.substr(hug2 + 2);
+
+ var hug3:String = hug1;
+ hug2 = hug3.indexOf(".");
+
+ if(hug2 >= 0) hug3 = hug3.substr(0, hug2);
+
+ return hug3;
+ };
+
+ super.reset();
+
+ this._videoId = watchVideoID;
+ this._videoServer = getServerName(videoURL);
+
+ super._onInitialized();
+ }
+
+ public function onVideoLoadStarted():void
+ { //MethodID:4293, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this._startTimeStamp = TimeUtils.time;
+ this._startTime = getTimer();
+ }
+
+ public function onVideoLoadErrorOccurred():void
+ { //MethodID:4294, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 94
+ if(!isInitialized) return;
+
+ var hug1:Object = {};
+ hug1["video_id"] = this._videoId;
+ hug1["video_server"] = this._videoServer;
+ hug1["start_time"] = this._startTimeStamp;
+ hug1["loading_time"] = (getTimer() - this._startTime);
+ hug1["status"] = this._ERROR_CODE_UNKNOWN;
+
+ addData(hug1);
+
+ isSendable = true;
+ }
+ }
+}
+
+//■script280■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ //■class(instance)_index:339
+ public class LogElementSendType extends Object
+ {
+ //static constructor
+ public static function LogElementSendType$cinit()
+ { //MethodID:4296, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ IMMEDIATE = "immediate";
+ PLAYER_START_UP = "playerStartUp";
+ LOG_INITIALIZE = "logInitialize";
+ WITH_OTHER_LOGS = "withOtherLogs";
+ }
+
+ //static variables/etc.
+ public static const IMMEDIATE:String = "immediate"; //slotID:1
+ public static const PLAYER_START_UP:String = "playerStartUp"; //slotID:2
+ public static const LOG_INITIALIZE:String = "logInitialize"; //slotID:3
+ public static const WITH_OTHER_LOGS:String = "withOtherLogs"; //slotID:4
+
+ //constructor
+ public function LogElementSendType()
+ { //MethodID:4297, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script281■
+
+package jp.nicovideo.nicoplayer.models.log.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:340
+ public class LogEvent extends Event
+ {
+ //static constructor
+ public static function LogEvent$cinit()
+ { //MethodID:4299, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ INITIALIZED = "initialized";
+ SEND = "send";
+ SEND_COMPLETE = "send_complete";
+ PREPARED = "prepared";
+ }
+
+ //static variables/etc.
+ public static const INITIALIZED:String = "initialized"; //slotID:1
+ public static const SEND:String = "send"; //slotID:2
+ public static const SEND_COMPLETE:String = "send_complete"; //slotID:3
+ public static const PREPARED:String = "prepared"; //slotID:4
+
+ //constructor
+ public function LogEvent(hug1:String, hug2:String, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:4300, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ this._name = hug2;
+
+ super(hug1, hug3, hug4);
+ }
+
+ //variables/etc.
+ private var _name:String; //slotID:0
+
+ public function get name():String
+ { //MethodID:4301, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+ }
+}
+
+//■script282■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ //■class(instance)_index:341
+ public class LogElementName extends Object
+ {
+ //static constructor
+ public static function LogElementName$cinit()
+ { //MethodID:4303, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 147
+ NON_SHAREDOBJECT_COUNT = "non_sharedobject_count";
+ PLAY_LEN = "playlen";
+ PLAY_STATS = "playstats";
+ PLAYER_IDLE = "fms_idle_time";
+ PLAYER_CONF = "player_conf";
+ COMMENT_UPDATE_COUNT = "comment_update_count";
+ WATCH_RELOAD = "watch_reload";
+ HIRROBA_CONNECTION_FAIL = "hiroba_connection_fail";
+ HIRROBA_DISCONNECTED = "hiroba_disconnected";
+ LOADING_FAIL = "loading_fail";
+ LOADING_IDLE = "loading_idle";
+ PLAYLIST_INTERRUPTED = "playlist_interrupt";
+ PREMIUM_LEAD_ON_SLIDER = "premlead_on_slider";
+ VIDEO_MENU = "videomenu_count";
+ CAPABILITIES = "capabilities";
+ VIDEOENDER = "videoender";
+ }
+
+ //static variables/etc.
+ public static const NON_SHAREDOBJECT_COUNT:String = "non_sharedobject_count";//slotID:1
+ public static const PLAY_LEN:String = "playlen"; //slotID:2
+ public static const PLAY_STATS:String = "playstats"; //slotID:3
+ public static const PLAYER_IDLE:String = "fms_idle_time"; //slotID:4
+ public static const PLAYER_CONF:String = "player_conf"; //slotID:5
+ public static const COMMENT_UPDATE_COUNT:String = "comment_update_count";//slotID:6
+ public static const WATCH_RELOAD:String = "watch_reload"; //slotID:7
+ public static const HIRROBA_CONNECTION_FAIL:String = "hiroba_connection_fail";//slotID:8
+ public static const HIRROBA_DISCONNECTED:String = "hiroba_disconnected";//slotID:9
+ public static const LOADING_FAIL:String = "loading_fail"; //slotID:10
+ public static const LOADING_IDLE:String = "loading_idle"; //slotID:11
+ public static const PLAYLIST_INTERRUPTED:String = "playlist_interrupt";//slotID:12
+ public static const PREMIUM_LEAD_ON_SLIDER:String = "premlead_on_slider";//slotID:13
+ public static const VIDEO_MENU:String = "videomenu_count"; //slotID:14
+ public static const CAPABILITIES:String = "capabilities"; //slotID:15
+ public static const VIDEOENDER:String = "videoender"; //slotID:16
+
+ //constructor
+ public function LogElementName()
+ { //MethodID:4304, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script283■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import __AS3__.vec.Vector
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+ import jp.nicovideo.nicoplayer.models.log.elements.videoMenu.VideoenderContentType
+ import jp.nicovideo.nicoplayer.models.log.elements.videoMenu.VideoenderTorrigerType
+ import jp.nicovideo.nicoplayer.videoender.IVideoenderTesterConfig
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:342
+ public class VideoenderLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function VideoenderLog$cinit()
+ { //MethodID:4306, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ private static function _createSendableLogObject(hug1:_VideoenderLogData):Object
+ { //dispID:3, MethodID:4312, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 338
+ internal var data:_VideoenderLogData; //slotID:1
+ internal var object:Object; //slotID:2
+
+ data = hug1;
+ object = {};
+ object["is_tester"] = function():int{ //MethodID:4307, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 29
+ if(data.isTester) return 1;
+
+ if(data.isTestable) return 2;
+
+ return 0;
+ }();
+
+ object["video_ended"] = (data.hasVideoEnded ? 1 : 0);
+ object["displayed"] = (data.hasDisplayed ? 1 : 0);
+ object["menu_clicked"] = (data.hasMenuButtonClicked ? 1 : 0);
+ object["related_video_type"] = function():int{ //MethodID:4308, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 54
+ if(data.isGetRelationError) return 3;
+
+ if(data.relatedVideoType == VideoenderContentType.RELATED_VIDEO) return 2;
+
+ if(data.relatedVideoType == VideoenderContentType.OWNER_VIDEO) return 1;
+
+ return 0;
+ }();
+
+ object["related_video_jumped"] = (data.hasRelatedVideoClicked ? 1 : 0);
+ object["live_dj_displayed"] = (data.hasLiveDJDisplayed ? 1 : 0);
+ object["live_dj_jumped"] = (data.hasLiveDJClicked ? 1 : 0);
+ object["owner_video_page_link"] = function():int{ //MethodID:4309, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 29
+ if(data.hasOwnerVideoPageLinkClicked) return 2;
+
+ if(data.hasOwnerVideoPageLinkDisplayed) return 1;
+
+ return 0;
+ }();
+
+ object["mobile_clicked"] = (data.hasMobileBtnClicked ? 1 : 0);
+ object["mylist_form"] = function():int{ //MethodID:4310, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 29
+ if(data.hasMylistAdded) return 2;
+
+ if(data.hasMylistAddDisplayed) return 1;
+
+ return 0;
+ }();
+
+ object["mylist_jumped"] = function():int{ //MethodID:4311, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 41
+ if(data.mylistPageJumpedType == VideoenderContentType.JUST_ADDED_MYLIST_LINK) return 2;
+
+ if(data.mylistPageJumpedType == VideoenderContentType.ALREADY_ADDED_MYLIST_LINK) return 1;
+
+ return 0;
+ }();
+
+ object["date"] = data.date;
+ return object;
+ }
+
+ public static function _createDate():String
+ { //dispID:4, MethodID:4314, LocalCount= 2 , MaxScope= 2, MaxStack= 4, CodeLength= 203
+ internal var now:Date; //slotID:1
+ internal var m:String; //slotID:2
+ internal var d:String; //slotID:3
+ internal var h:String; //slotID:4
+ internal var min:String; //slotID:5
+ internal var doublize:Function; //slotID:6
+
+ doublize = function(hug1:String):String{ //MethodID:4313, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 19
+ if(hug1.length < 2) hug1 = ("0" + hug1);
+
+ return hug1;
+ };
+
+ now = new Date();
+
+ now.setTime(TimeUtils.time);
+
+ m = (now.month + 1).toString();
+ d = now.date.toString();
+ h = now.hours.toString();
+ min = now.minutes.toString();
+ m = doublize(m);
+ d = doublize(d);
+ h = doublize(h);
+ min = doublize(min);
+ return (m + "." + d + "." + h + "." + min);
+ }
+
+ //constructor
+ public function VideoenderLog(hug1:Function)
+ { //MethodID:4315, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.VIDEOENDER, LogElementSendType.IMMEDIATE);
+ }
+
+ //variables/etc.
+ private var _hasInitialized:Boolean = false; //slotID:0
+ private var _currentData:_VideoenderLogData; //slotID:0
+ private var _reserver:_VideoenderLogDataReserver; //slotID:0
+
+ public function initialize(hug1:Boolean, hug2:IVideoenderTesterConfig):void
+ { //MethodID:4317, LocalCount= 4 , MaxScope= 2, MaxStack= 5, CodeLength= 114
+ internal var enabled:Boolean; //slotID:1
+ internal var testerConfig:IVideoenderTesterConfig; //slotID:2
+
+ enabled = hug1;
+ testerConfig = hug2;
+
+ super.reset();
+
+ if(!enabled) return;
+ super._onInitialized();
+
+ this._currentData = new _VideoenderLogData(testerConfig.isTester, testerConfig.isTestable, _createDate());
+ this._reserver = new _VideoenderLogDataReserver();
+
+ this._reserver.addEventListener(_SendableLogDataEvent.SENDABLE, function(hug1:_SendableLogDataEvent):void{ //MethodID:4316, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 65
+ var hug4:Object = null;
+ var hug2:Vector.<_VideoenderLogData> = hug1.datas;
+ var hug3:int = 0;
+
+ while(hug3 < hug2.length){
+ hug4 = _createSendableLogObject(hug2[hug3]);
+
+ addData(hug4);
+
+ hug3++;
+ }
+
+ isSendable = true;
+ });
+ this._reserver.initialize();
+ this._reserveCurrentData();
+
+ this._hasInitialized = true;
+ }
+
+ public function onVideoEnded():void
+ { //MethodID:4318, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ if(!this._hasInitialized) return;
+
+ this._currentData.hasVideoEnded = true;
+
+ this._reserveCurrentData();
+ }
+
+ public function onOpened(hug1:String):void
+ { //MethodID:4319, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 67
+ if(!this._hasInitialized) return;
+
+ this._currentData.hasDisplayed = true;
+
+ if(hug1 == VideoenderTorrigerType.END){
+ this._currentData.hasVideoEnded = true;
+ }else if(hug1 == VideoenderTorrigerType.BUTTON_CLICK){
+ this._currentData.hasMenuButtonClicked = true;
+ }
+
+ this._reserveCurrentData();
+ }
+
+ public function onContentDisplayed(hug1:String):void
+ { //MethodID:4320, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 156
+ if(!this._hasInitialized) return;
+
+ if((hug1 == VideoenderContentType.OWNER_VIDEO) || (hug1 == VideoenderContentType.RELATED_VIDEO)){
+ if(this._currentData.isGetRelationError) this._currentData.isGetRelationError = false;
+
+ this._currentData.relatedVideoType = hug1;
+ }else if(hug1 == VideoenderContentType.LIVE_DJ){
+ this._currentData.hasLiveDJDisplayed = true;
+ }else if(hug1 == VideoenderContentType.OWNER_VIDEO_LIST_PAGE_LINK){
+ this._currentData.hasOwnerVideoPageLinkDisplayed = true;
+ }else if(hug1 == VideoenderContentType.ADD_MYLIST){
+ this._currentData.hasMylistAddDisplayed = true;
+ }else{
+ if(hug1 == VideoenderContentType.MOBILE_LEAD) return;
+
+ return;
+ }
+
+ this._reserveCurrentData();
+ }
+
+ public function onContentUsed(hug1:String):void
+ { //MethodID:4321, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 253
+ if(!this._hasInitialized) return;
+
+ if(hug1 == VideoenderContentType.ADD_MYLIST){
+ this._currentData.hasMylistAdded = true;
+ }else if(hug1 == VideoenderContentType.MOBILE_LEAD){
+ this._currentData.hasMobileBtnClicked = true;
+ }else if((hug1 == VideoenderContentType.OWNER_VIDEO) || (hug1 == VideoenderContentType.RELATED_VIDEO)){
+ if(this._currentData.relatedVideoType == null) throw new IllegalOperationError("VideoenderLog.onLinkJumped: OWNER_VIDEO has not displayed, but clicked.");
+
+ this._currentData.hasRelatedVideoClicked = true;
+ }else if(hug1 == VideoenderContentType.LIVE_DJ){
+ if(!this._currentData.hasLiveDJDisplayed) throw new IllegalOperationError("VideoenderLog.onLinkJumped: LIVE_DJ has not displayed, but clicked.");
+
+ this._currentData.hasLiveDJClicked = true;
+ }else if((hug1 == VideoenderContentType.ALREADY_ADDED_MYLIST_LINK) || (hug1 == VideoenderContentType.JUST_ADDED_MYLIST_LINK)){
+ this._currentData.mylistPageJumpedType = hug1;
+ }else if(hug1 == VideoenderContentType.OWNER_VIDEO_LIST_PAGE_LINK){
+ if(!this._currentData.hasOwnerVideoPageLinkDisplayed) throw new IllegalOperationError("VideoenderLog.onLinkJumped: OWNER_VIDEO_LIST_PAGE_LINK has not displayed, but clicked.");
+
+ this._currentData.hasOwnerVideoPageLinkClicked = true;
+ }else{
+ return;
+ }
+
+ this._reserveCurrentData();
+ }
+
+ public function onErrorOccured(hug1:String):void
+ { //MethodID:4322, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ if(!this._hasInitialized) return;
+
+ if(hug1 == VideoenderContentType.GET_RELATION_VIDEOS){
+ this._currentData.isGetRelationError = true;
+ }else{
+ return;
+ }
+
+ this._reserveCurrentData();
+ }
+
+ private function _reserveCurrentData():void
+ { //MethodID:4323, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 29
+ this._currentData.date = _createDate();
+
+ this._reserver.reserveCurrentData(this._currentData);
+ }
+ }
+}
+
+import __AS3__.vec.Vector
+import flash.errors.IllegalOperationError
+import flash.events.DataEvent
+import flash.events.Event
+import flash.events.EventDispatcher
+import flash.events.TimerEvent
+import flash.utils.Timer
+import jp.nicovideo.util.CrossSharedObject
+import jp.nicovideo.util.net.local.LocalSession
+import jp.nicovideo.util.net.local.LocalSessionEvent
+import jp.nicovideo.util.storage.LocalStorage
+
+//■class(instance)_index:343
+//private
+class _VideoenderLogData extends Object
+{
+ //static constructor
+ public static function _VideoenderLogData$cinit()
+ { //MethodID:4324, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function createByObject(hug1:Object):_VideoenderLogData
+ { //dispID:3, MethodID:4325, LocalCount= 4 , MaxScope= 5, MaxStack= 5, CodeLength= 273
+ private var obj:Object; //slotID:1
+ private var data:_VideoenderLogData; //slotID:2
+
+ data = null;
+ obj = hug1;
+
+ try{
+ data = new _VideoenderLogData(obj.isTester, obj.isTestable, obj.date);
+ data.hasVideoEnded = obj.hasVideoEnded;
+ data.hasDisplayed = obj.hasDisplayed;
+ data.hasMenuButtonClicked = obj.hasMenuButtonClicked;
+ data.relatedVideoType = obj.relatedVideoType;
+ data.isGetRelationError = obj.isGetRelationError;
+ data.hasRelatedVideoClicked = obj.hasRelatedVideoClicked;
+ data.hasLiveDJDisplayed = obj.hasLiveDJDisplayed;
+ data.hasLiveDJClicked = obj.hasLiveDJClicked;
+ data.hasOwnerVideoPageLinkDisplayed = obj.hasOwnerVideoPageLinkDisplayed;
+ data.hasOwnerVideoPageLinkClicked = obj.hasOwnerVideoPageLinkClicked;
+ data.hasMobileBtnClicked = obj.hasMobileBtnClicked;
+ data.hasMylistAddDisplayed = obj.hasMylistAddDisplayed;
+ data.hasMylistAdded = obj.hasMylistAdded;
+ data.mylistPageJumpedType = obj.mylistPageJumpedType;
+ }
+ catch(e:*){
+ return null;
+ }
+
+ return data;
+ }
+
+ //constructor
+ public function _VideoenderLogData(hug1:Boolean, hug2:Boolean, hug3:String):void
+ { //MethodID:4326, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this.isTester = hug1;
+ this.isTestable = hug2;
+ this.date = hug3;
+ }
+
+ //variables/etc.
+ public var isTester:Boolean; //slotID:0
+ public var isTestable:Boolean; //slotID:0
+ public var date:String; //slotID:0
+ public var hasVideoEnded:Boolean = false; //slotID:0
+ public var hasDisplayed:Boolean = false; //slotID:0
+ public var hasMenuButtonClicked:Boolean = false; //slotID:0
+ public var relatedVideoType:String = null; //slotID:0
+ public var isGetRelationError:Boolean = false; //slotID:0
+ public var hasRelatedVideoClicked:Boolean = false; //slotID:0
+ public var hasLiveDJDisplayed:Boolean = false; //slotID:0
+ public var hasLiveDJClicked:Boolean = false; //slotID:0
+ public var hasOwnerVideoPageLinkDisplayed:Boolean = false; //slotID:0
+ public var hasOwnerVideoPageLinkClicked:Boolean = false; //slotID:0
+ public var hasMobileBtnClicked:Boolean = false; //slotID:0
+ public var hasMylistAddDisplayed:Boolean = false; //slotID:0
+ public var hasMylistAdded:Boolean = false; //slotID:0
+ public var mylistPageJumpedType:String = null; //slotID:0
+}
+
+//■class(instance)_index:344
+//private
+class _VideoenderLogDataReserver extends EventDispatcher
+{
+ //static constructor
+ public static function _VideoenderLogDataReserver$cinit()
+ { //MethodID:4327, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 33
+ _SLAVE_CHECK_INTERVAL = (10 * 1000);
+ _SO_NAME = "jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog._DatasReserver";
+ _SESSION_DOMAIN = "jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog._DatasReserver";
+ }
+
+ //static variables/etc.
+ private static const _SLAVE_CHECK_INTERVAL:Number = 10000.0; //slotID:1
+ private static const _SO_NAME:String = "jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog._DatasReserver";//slotID:2
+ private static const _SESSION_DOMAIN:String = "jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog._DatasReserver";//slotID:3
+
+ //constructor
+ public function _VideoenderLogDataReserver():void
+ { //MethodID:4328, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var _session:LocalSession; //slotID:0
+ private var _hasInitialized:Boolean = false; //slotID:0
+
+ public function initialize():void
+ { //MethodID:4332, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 83
+ private var initializeAsMaster:Function; //slotID:1
+
+ initializeAsMaster = function():void{ //MethodID:4330, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 66
+ private var slaveCheckTimer:Timer; //slotID:1
+ _dispatchSendableDatas();
+ _session.addEventListener(DataEvent.DATA, _dispatchSendableDatas);
+
+ slaveCheckTimer = new Timer(_SLAVE_CHECK_INTERVAL);
+
+ slaveCheckTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:4329, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 12
+ _session.sendAll("dummy_check", null);
+ });
+ slaveCheckTimer.start();
+ };
+
+ this._session = new LocalSession(_SESSION_DOMAIN);
+
+ this._session.join();
+
+ if(this._session.isMaster){
+ initializeAsMaster();
+ }else{
+ this._session.addEventListener(LocalSessionEvent.MASTERIZE, function(hug1:LocalSessionEvent):void{ //MethodID:4331, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 9
+ initializeAsMaster();
+ });
+ }
+
+ this._hasInitialized = true;
+ }
+
+ private function _dispatchSendableDatas(hug1:Event=null):void
+ { //MethodID:4333, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 43
+ var hug2:Vector.<_VideoenderLogData> = this._getSendableDatas();
+
+ if(hug2.length > 0) dispatchEvent(new _SendableLogDataEvent(hug2, _SendableLogDataEvent.SENDABLE));
+ }
+
+ public function reserveCurrentData(hug1:_VideoenderLogData):void
+ { //MethodID:4334, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 58
+ if(!this._hasInitialized) throw new IllegalOperationError("VideoenderLog._DatasReserver.reserveCurrentData: has not initialized.");
+
+ var hug2:LocalStorage = CrossSharedObject.getStorage(_SO_NAME, "/");
+ hug2.data[this._session.connectionName] = hug1;
+
+ hug2.flush();
+ }
+
+ private function _getSendableDatas():Vector.<_VideoenderLogData>
+ { //MethodID:4335, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 224
+ var hug4:String = null;
+ var hug5:_VideoenderLogData = null;
+
+ if(!this._session.isMaster) throw new IllegalOperationError("VideoenderLog$_VideoenderLogDataReserver._getSendableDatas: not master. _session.isMaster=" + this._session.isMaster);
+
+ var hug1:LocalStorage = CrossSharedObject.getStorage(_SO_NAME, "/");
+ var hug2:Vector.<_VideoenderLogData> = new Vector.<_VideoenderLogData>();
+ var hug3:int = 0;
+
+ for(hug4 in hug1.data){
+ hug3++;
+
+ if((this._session.slaveNames.indexOf(hug4) < 0) && (this._session.maseterConnectionName != hug4)){
+ hug5 = _VideoenderLogData.createByObject(hug1.data[hug4]);
+
+ if(hug5 != null) hug2.push(hug5);
+ delete hug1.data[hug4];
+ }
+ }
+
+ if(hug2.length == hug3) hug1.clear();
+
+ if(hug2.length > 0) hug1.flush();
+
+ return hug2;
+ }
+}
+
+//■class(instance)_index:345
+//private
+class _SendableLogDataEvent extends Event
+{
+ //static constructor
+ public static function _SendableLogDataEvent$cinit()
+ { //MethodID:4336, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ SENDABLE = "sendable";
+ }
+
+ //static variables/etc.
+ public static const SENDABLE:String = "sendable"; //slotID:1
+
+ //constructor
+ public function _SendableLogDataEvent(hug1:Vector.<_VideoenderLogData>, hug2:String, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:4337, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ super(hug2, hug3, hug4);
+
+ this._sendableDatas = hug1;
+ }
+
+ //variables/etc.
+ private var _sendableDatas:Vector.<_VideoenderLogData>; //slotID:0
+
+ public function get datas():Vector.<_VideoenderLogData>
+ { //MethodID:4338, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._sendableDatas;
+ }
+}
+
+//■script284■
+
+package jp.nicovideo.nicoplayer.models.log{
+
+ import jp.nicovideo.nicoplayer.models.log.elements.Playlen
+
+ //■class(instance)_index:346
+ public class LogEventObserverFactory extends Object
+ {
+ //static constructor
+ public static function LogEventObserverFactory$cinit()
+ { //MethodID:4340, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function create(hug1:Function=null, hug2:Playlen=null):ILogEventObservable
+ { //dispID:3, MethodID:4341, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 26
+ if(hug1 != null) return new _Observer(hug1, hug2);
+
+ return new _DummyObserver();
+ }
+
+ //constructor
+ public function LogEventObserverFactory()
+ { //MethodID:4342, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+import jp.nicovideo.nicoplayer.models.log.LogElementName
+import jp.nicovideo.nicoplayer.models.log.elements.LoadingFailLog
+import jp.nicovideo.nicoplayer.models.log.elements.PlayStats
+import jp.nicovideo.nicoplayer.models.log.elements.PlayerIdleLog
+import jp.nicovideo.nicoplayer.models.log.elements.Playlen
+import jp.nicovideo.nicoplayer.models.log.elements.PremiumLeadOnSliderLog
+import jp.nicovideo.nicoplayer.models.log.elements.VideoenderLog
+import jp.nicovideo.nicoplayer.models.playlist.VideoInfo
+import jp.nicovideo.util.events.EventResult
+
+use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver);
+
+//■class(instance)_index:347
+//private
+class _Observer extends Object implements ILogEventObservable
+{
+ //static constructor
+ public static function _Observer$cinit()
+ { //MethodID:4343, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Observer(hug1:Function, hug2:Playlen)
+ { //MethodID:4344, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 116
+ super();
+
+ this._playlen = hug2;
+ this._playStats = PlayStats(hug1(LogElementName.PLAY_STATS));
+ this._playerIdleLog = PlayerIdleLog(hug1(LogElementName.PLAYER_IDLE));
+ this._loadingFailLog = LoadingFailLog(hug1(LogElementName.LOADING_FAIL));
+ this._premiumLeadOnSliderLog = PremiumLeadOnSliderLog(hug1(LogElementName.PREMIUM_LEAD_ON_SLIDER));
+ this._videoenderLog = VideoenderLog(hug1(LogElementName.VIDEOENDER));
+ }
+
+ //variables/etc.
+ private var _playlen:Playlen; //slotID:0
+ private var _playStats:PlayStats; //slotID:0
+ private var _playerIdleLog:PlayerIdleLog; //slotID:0
+ private var _loadingFailLog:LoadingFailLog; //slotID:0
+ private var _premiumLeadOnSliderLog:PremiumLeadOnSliderLog; //slotID:0
+ private var _videoenderLog:VideoenderLog; //slotID:0
+
+ public function onWatchReloaded(hug1:String, hug2:Boolean):void
+ { //MethodID:4345, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoLoadStarted():void
+ { //MethodID:4346, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 27
+ this._playlen.onLoadVideo();
+ this._playStats.onVideoLoadStarted();
+ this._loadingFailLog.onVideoLoadStarted();
+ }
+
+ public function onVideoLoadCompleted(hug1:uint):void
+ { //MethodID:4347, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._playStats.onVideoLoadCompleted(hug1);
+ }
+
+ public function onVideoLoadErrorOccurred():void
+ { //MethodID:4348, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 19
+ this._playStats.onVideoLoadErrorOccurred();
+ this._loadingFailLog.onVideoLoadErrorOccurred();
+ }
+
+ public function onVideoBufferingStarted():void
+ { //MethodID:4349, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._playStats.onVideoBufferingStarted();
+ }
+
+ public function storeLoadingIdle(hug1:uint):void
+ { //MethodID:4350, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onThreadLoadStarted():void
+ { //MethodID:4351, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._playStats.onThreadLoadStarted();
+ }
+
+ public function onThreadLoadCompleted(hug1:Boolean):void
+ { //MethodID:4352, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._playStats.onThreadLoadCompleted(hug1);
+ }
+
+ public function onNGCommentInitialized(hug1:int, hug2:int):void
+ { //MethodID:4353, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onHirobaInitializeStarted():void
+ { //MethodID:4354, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._playStats.onHirobaConnectorLoadStarted();
+ }
+
+ public function onHirobaInitializeAborted():void
+ { //MethodID:4355, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._playStats.onHirobaConnected(false);
+ }
+
+ public function onHirobaConnected(hug1:Boolean, hug2:String, hug3:String, hug4:String):void
+ { //MethodID:4356, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._playStats.onHirobaConnected(hug1);
+ }
+
+ public function onHirobaDisconnected(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:4357, LocalCount= 4 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onPremleadOnSliderDisplayed():void
+ { //MethodID:4358, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._premiumLeadOnSliderLog.onPremleadOnSliderDisplayed();
+ }
+
+ public function onPremleadOnSliderClicked():void
+ { //MethodID:4359, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ this._premiumLeadOnSliderLog.onPremleadOnSliderClicked();
+ }
+
+ public function onVideoMenuOpened(hug1:String):void
+ { //MethodID:4360, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoenderOpened(hug1:String):void
+ { //MethodID:4361, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._videoenderLog.onOpened(hug1);
+ }
+
+ public function onVideoenderContentDisplayed(hug1:String):void
+ { //MethodID:4362, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._videoenderLog.onContentDisplayed(hug1);
+ }
+
+ public function onVideoenderContentUsed(hug1:String):void
+ { //MethodID:4363, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._videoenderLog.onContentUsed(hug1);
+ }
+
+ public function onVideoenderErrorOccured(hug1:String):void
+ { //MethodID:4364, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._videoenderLog.onErrorOccured(hug1);
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStarted():EventResult
+ { //MethodID:4365, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 16
+ this._playerIdleLog.onVideoStarted();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:4366, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 24
+ this._playlen.onVideoPlayed();
+ this._playerIdleLog.onVideoPlayed();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:4367, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 24
+ this._playlen.onVideoStopped();
+ this._playerIdleLog.onVideoStopped();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:4368, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 34
+ if(!hug1) this._playlen.onVideoEnded();
+
+ if(!hug1) this._videoenderLog.onVideoEnded();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAutomaticLoadingUpdated(hug1:Boolean):EventResult
+ { //MethodID:4369, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdateTried():EventResult
+ { //MethodID:4370, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdateCompleted(hug1:Boolean):EventResult
+ { //MethodID:4371, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistTargetUpdated(hug1:VideoInfo):EventResult
+ { //MethodID:4372, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 16
+ this._playStats.onPlaylistTargetUpdated();
+
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistInterrupted():EventResult
+ { //MethodID:4373, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+}
+
+//■class(instance)_index:348
+//private
+class _DummyObserver extends Object implements ILogEventObservable
+{
+ //static constructor
+ public static function _DummyObserver$cinit()
+ { //MethodID:4374, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _DummyObserver()
+ { //MethodID:4375, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public function onWatchReloaded(hug1:String, hug2:Boolean):void
+ { //MethodID:4376, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoLoadStarted():void
+ { //MethodID:4377, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoLoadCompleted(hug1:uint):void
+ { //MethodID:4378, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoLoadErrorOccurred():void
+ { //MethodID:4379, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoBufferingStarted():void
+ { //MethodID:4380, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function storeLoadingIdle(hug1:uint):void
+ { //MethodID:4381, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onThreadLoadStarted():void
+ { //MethodID:4382, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onThreadLoadCompleted(hug1:Boolean):void
+ { //MethodID:4383, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onNGCommentInitialized(hug1:int, hug2:int):void
+ { //MethodID:4384, LocalCount= 3 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onHirobaInitializeStarted():void
+ { //MethodID:4385, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onHirobaInitializeAborted():void
+ { //MethodID:4386, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onHirobaConnected(hug1:Boolean, hug2:String, hug3:String, hug4:String):void
+ { //MethodID:4387, LocalCount= 5 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onHirobaDisconnected(hug1:String, hug2:String, hug3:String):void
+ { //MethodID:4388, LocalCount= 4 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoMenuOpened(hug1:String):void
+ { //MethodID:4389, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoenderOpened(hug1:String):void
+ { //MethodID:4390, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoenderContentDisplayed(hug1:String):void
+ { //MethodID:4391, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoenderContentUsed(hug1:String):void
+ { //MethodID:4392, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onVideoenderErrorOccured(hug1:String):void
+ { //MethodID:4393, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onPremleadOnSliderDisplayed():void
+ { //MethodID:4394, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onPremleadOnSliderClicked():void
+ { //MethodID:4395, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStarted():EventResult
+ { //MethodID:4396, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoPlayed():EventResult
+ { //MethodID:4397, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoStopped():EventResult
+ { //MethodID:4398, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onVideoEnded(hug1:Boolean):EventResult
+ { //MethodID:4399, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlayerConfigAutomaticLoadingUpdated(hug1:Boolean):EventResult
+ { //MethodID:4400, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdateTried():EventResult
+ { //MethodID:4401, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onCommentListUpdateCompleted(hug1:Boolean):EventResult
+ { //MethodID:4402, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistTargetUpdated(hug1:VideoInfo):EventResult
+ { //MethodID:4403, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.event.EventPipe.event_receiver) function onPlaylistInterrupted():EventResult
+ { //MethodID:4404, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ return EventResult.THROUGH;
+ }
+}
+
+//■script285■
+
+package jp.nicovideo.nicoplayer.models{
+
+ //■class(instance)_index:349
+ public class PremiumLeadOnSliderTarget extends Object
+ {
+ //static constructor
+ public static function PremiumLeadOnSliderTarget$cinit()
+ { //MethodID:4406, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function isTargetUser(hug1:String, hug2:Boolean=false):Boolean
+ { //dispID:3, MethodID:4407, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ var hug3:Boolean = ((int(hug1) % 10) == 2);
+ return hug3;
+ }
+
+ //constructor
+ public function PremiumLeadOnSliderTarget()
+ { //MethodID:4408, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script286■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import __AS3__.vec.Vector
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+
+ //■class(instance)_index:350
+ public class PlayerIdleLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function PlayerIdleLog$cinit()
+ { //MethodID:4410, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlayerIdleLog(hug1:Function)
+ { //MethodID:4411, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.PLAYER_IDLE, LogElementSendType.WITH_OTHER_LOGS);
+ }
+
+ //variables/etc.
+ private const _PLAYER_IDLE_INTERVAL:int = 30000; //slotID:0
+ private const _STOCK_COUNT:int = 3; //slotID:0
+ private const _PRIVATE_KEY_CHANNEL_ID:String = "channelID"; //slotID:0
+ private const _PRIVATE_KEY_VIDEO_ID:String = "videoID"; //slotID:0
+ private const _PRIVATE_KEY_IDLE_TIMES:String = "idleTimes"; //slotID:0
+ private var _timer:Timer; //slotID:0
+ private var _idleTime:int; //slotID:0
+ private var _isChannel:Boolean = false; //slotID:0
+
+ public function initialize(hug1:Boolean, hug2:Boolean, hug3:String, hug4:String):void
+ { //MethodID:4413, LocalCount= 6 , MaxScope= 2, MaxStack= 4, CodeLength= 286
+ internal var enabled:Boolean; //slotID:1
+ internal var isChannel:Boolean; //slotID:2
+ internal var channelID:String; //slotID:3
+ internal var videoID:String; //slotID:4
+
+ enabled = hug1;
+ isChannel = hug2;
+ channelID = hug3;
+ videoID = hug4;
+
+ reset(function():void{ //MethodID:4412, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 15
+ if(_cacheStorage) _cacheStorage.close();
+ });
+
+ this._isChannel = isChannel;
+
+ if(!enabled) return;
+ _initializeCacheStorage("jp.nicovideo.nicoplayer.models.log.elements._PlayerIdleLog", "/");
+
+ if((_cacheStorage.data[this._PRIVATE_KEY_CHANNEL_ID] != null) && (_cacheStorage.data[this._PRIVATE_KEY_CHANNEL_ID] != undefined) && (_cacheStorage.data[this._PRIVATE_KEY_VIDEO_ID] != null) && (_cacheStorage.data[this._PRIVATE_KEY_VIDEO_ID] != undefined) && (_cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] != null) && (_cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] != undefined)) this._create();
+
+ if(this._isChannel){
+ _cacheStorage.data[this._PRIVATE_KEY_CHANNEL_ID] = channelID;
+ _cacheStorage.data[this._PRIVATE_KEY_VIDEO_ID] = videoID;
+ _cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] = new Vector.<int>();
+
+ _cacheStorage.flush();
+ }
+
+ super._onInitialized();
+ }
+
+ private function _create():void
+ { //MethodID:4414, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 102
+ if(this.idleTimes.length <= 0) return;
+
+ var hug1:Object = {};
+ hug1["cid"] = _cacheStorage.data[this._PRIVATE_KEY_CHANNEL_ID];
+ hug1["vid"] = _cacheStorage.data[this._PRIVATE_KEY_VIDEO_ID];
+ hug1["times"] = this._formatTimeString;
+
+ addData(hug1);
+
+ if(logObjects.length >= this._STOCK_COUNT) isSendable = true;
+ }
+
+ public function onVideoStarted():void
+ { //MethodID:4415, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 66
+ if((this._timer == null) && isInitialized && this._isChannel){
+ this._timer = new Timer(this._PLAYER_IDLE_INTERVAL, 0);
+
+ this._timer.addEventListener(TimerEvent.TIMER, this.onIdleIntervalHandler);
+ }
+ }
+
+ private function onIdleIntervalHandler(hug1:TimerEvent):void
+ { //MethodID:4416, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 20
+ this._idleTime += (this._PLAYER_IDLE_INTERVAL / 1000);
+ }
+
+ public function onVideoPlayed():void
+ { //MethodID:4417, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 55
+ if(this._timer != null){
+ this._timer.stop();
+
+ if(this._idleTime >= (this._PLAYER_IDLE_INTERVAL / 1000)){
+ this.idleTimes.push(this._idleTime);
+ _cacheStorage.flush();
+ }
+ }
+ }
+
+ public function onVideoStopped():void
+ { //MethodID:4418, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(this._timer != null){
+ this._idleTime = 0;
+
+ this._timer.start();
+ }
+ }
+
+ private function get idleTimes():Vector.<int>
+ { //MethodID:4419, LocalCount= 1 , MaxScope= 1, MaxStack= 4, CodeLength= 80
+ if((_cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] == null) || (_cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] == undefined)) _cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] = new Vector.<int>();
+
+ return _cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES];
+ }
+
+ private function set idleTimes(hug1:Vector.<int>):void
+ { //MethodID:4420, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 24
+ _cacheStorage.data[this._PRIVATE_KEY_IDLE_TIMES] = hug1;
+
+ _cacheStorage.flush();
+ }
+
+ private function get _formatTimeString():String
+ { //MethodID:4421, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 22
+ return ("[" + this.idleTimes.join(",") + "]");
+ }
+ }
+}
+
+//■script287■
+
+package jp.nicovideo.nicoplayer.models.log.elements{
+
+ import jp.nicovideo.nicoplayer.models.log.LogElementName
+ import jp.nicovideo.nicoplayer.models.log.LogElementSendType
+
+ //■class(instance)_index:351
+ public class NonSharedObjectCountLog extends AbstractLogElement
+ {
+ //static constructor
+ public static function NonSharedObjectCountLog$cinit()
+ { //MethodID:4423, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NonSharedObjectCountLog(hug1:Function)
+ { //MethodID:4424, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ super(hug1, LogElementName.NON_SHAREDOBJECT_COUNT, LogElementSendType.IMMEDIATE);
+ }
+
+ //variables/etc.
+ public function initialize():void
+ { //MethodID:4425, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 33
+ super.reset();
+
+ var hug1:Object = {};
+
+ addData(hug1);
+
+ isSendable = true;
+
+ super._onInitialized();
+ }
+ }
+}
+
+//■script288■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ //■class(instance)_index:352
+ public class CommentViewConstants extends Object
+ {
+ //static constructor
+ public static function CommentViewConstants$cinit()
+ { //MethodID:4427, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 29
+ COMMENT_SHOW_EXPIRE = 3000;
+ COMMENT_SHOW_AHEAD = 1000;
+ COMMENT_SHOW_AHEAD_POSY = 0;
+ }
+
+ //static variables/etc.
+ public static const COMMENT_SHOW_EXPIRE:uint = 3000; //slotID:1
+ public static const COMMENT_SHOW_AHEAD:uint = 1000; //slotID:2
+ public static const COMMENT_SHOW_AHEAD_POSY:uint = 0; //slotID:3
+
+ //constructor
+ public function CommentViewConstants()
+ { //MethodID:4428, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script289■
+
+package jp.nicovideo.nicoplayer.views.comment.elements{
+
+ import flash.display.DisplayObject
+ import flash.text.TextFormat
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.command.CommandSize
+ import jp.nicovideo.util.Assert
+
+ //■class(instance)_index:353
+ public class ClickableComment extends Object
+ {
+ //static constructor
+ public static function ClickableComment$cinit()
+ { //MethodID:4430, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ClickableComment()
+ { //MethodID:4431, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ super();
+
+ this._buttonContainer = new ButtonContainer();
+ }
+
+ //variables/etc.
+ private var _buttonContainer:ButtonContainer; //slotID:0
+
+ public function get displayObject():DisplayObject
+ { //MethodID:4432, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._buttonContainer;
+ }
+
+ public function reset(hug1:IComment):void
+ { //MethodID:4434, LocalCount= 4 , MaxScope= 2, MaxStack= 4, CodeLength= 677
+ internal var comment:IComment; //slotID:1
+ internal var result:Object; //slotID:2
+ internal var _fieldFormat:TextFormat; //slotID:3
+ internal var copyTextFormat:Function; //slotID:4
+ internal var _countFormat:TextFormat; //slotID:5
+ internal var _preCountFormat:TextFormat; //slotID:6
+
+ _countFormat = null;
+ _preCountFormat = null;
+ comment = hug1;
+ copyTextFormat = function(hug1:TextFormat):TextFormat{ //MethodID:4433, LocalCount= 2 , MaxScope= 0, MaxStack= 14, CodeLength= 60
+ return new TextFormat(hug1.font, hug1.size, hug1.color, hug1.bold, hug1.italic, hug1.underline, hug1.url, hug1.target, hug1.align, hug1.leftMargin, hug1.rightMargin, hug1.indent, hug1.leading);
+ };
+
+ result = new RegExp("^(.*?)\[(.*)\](.*)", "s").exec(comment.buttonComment);
+
+ Assert.assert(result, ("comment.buttonComment=" + comment.buttonComment));
+
+ this._buttonContainer.button.field.text = ((result[2] == "") ? " " : result[2]);
+ this._buttonContainer.prefix.text = result[1];
+ this._buttonContainer.postfix.text = result[3];
+
+ if(comment.clickCount == 0){
+ this._buttonContainer.button.counter.visible = false;
+ }else{
+ this._buttonContainer.button.counter.visible = true;
+ this._buttonContainer.button.counter.text = (" ×" + comment.clickCount);
+ }
+
+ _fieldFormat = copyTextFormat(CommentTextField.BASE_TEXTFORMAT);
+ _fieldFormat.color = comment.command.colorCode;
+
+ switch(comment.command.size){
+ case CommandSize.BIG:
+ _fieldFormat.size = CommentTextField.TEXT_FONTSIZE_BIG;
+ break;
+ case CommandSize.SMALL:
+ _fieldFormat.size = CommentTextField.TEXT_FONTSIZE_SMALL;
+ break;
+ default:
+ _fieldFormat.size = CommentTextField.TEXT_FONTSIZE_MEDIUM;
+ break;
+ }
+
+ this._buttonContainer.button.field.setTextFormat(_fieldFormat);
+ this._buttonContainer.prefix.setTextFormat(_fieldFormat);
+ this._buttonContainer.postfix.setTextFormat(_fieldFormat);
+
+ if(this._buttonContainer.button.counter.visible){
+ _countFormat = copyTextFormat(_fieldFormat);
+ _preCountFormat = copyTextFormat(_fieldFormat);
+ var hug3:int = 0xFFFF00;
+ _preCountFormat.color = hug3;
+ _countFormat.color = hug3;
+
+ this._buttonContainer.button.counter.setTextFormat(_countFormat);
+
+ _preCountFormat.size = (Number(_countFormat.size) * 0.6);
+
+ this._buttonContainer.button.counter.setTextFormat(_preCountFormat, 1, 2);
+ }
+
+ if(_fieldFormat.color == 0){
+ var hug3:Array = [CommentTextField.BEVELFILTER_BLACK];
+ this._buttonContainer.postfix.filters = hug3;
+ this._buttonContainer.prefix.filters = hug3;
+ }
+
+ this._buttonContainer.setupBoard();
+
+ if(comment.isClickable) this._buttonContainer.initMouseHandler(comment);
+
+ this._buttonContainer.visible = true;
+ }
+ }
+}
+
+//■script290■
+
+package jp.nicovideo.util{
+
+ import flash.display.DisplayObject
+ import flash.display.DisplayObjectContainer
+ import flash.utils.Dictionary
+
+ //■class(instance)_index:354
+ public class ZIndexManager extends Object
+ {
+ //static constructor
+ public static function ZIndexManager$cinit()
+ { //MethodID:4436, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ZIndexManager(hug1:DisplayObjectContainer)
+ { //MethodID:4438, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ this.__mapping = new Dictionary();
+ this.__children = new SortedArray(function(hug1:Number, hug2:_Pair):Number{ //MethodID:4437, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 7
+ return (hug1 - hug2._zIndex);
+ });
+ super();
+
+ this.__container = hug1;
+ }
+
+ //variables/etc.
+ private var __container:DisplayObjectContainer; //slotID:0
+ private var __mapping:Dictionary; //slotID:0
+ private var __children:SortedArray; //slotID:0
+
+ public function setZIndex(hug1:DisplayObject, hug2:Number):void
+ { //MethodID:4439, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 92
+ var hug3:_Pair = this.__mapping[hug1];
+
+ if(!hug3){
+ this.__mapping[hug1] = new _Pair(hug1, hug2);
+ hug3 = new _Pair(hug1, hug2);
+ }else{
+ if(hug3._zIndex == hug2) return;
+ this.__remove_0(hug3);
+ }
+
+ var hug4:int = this.__children.add(hug2, hug3);
+
+ this.__container.addChildAt(hug1, hug4);
+ }
+
+ public function remove(hug1:DisplayObject):void
+ { //MethodID:4440, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ var hug2:_Pair = this.__mapping[hug1];
+
+ if(!hug2) return;
+ this.__remove_0(hug2);
+ delete this.__mapping[hug1];
+ }
+
+ private function __remove_0(hug1:_Pair):void
+ { //MethodID:4442, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 30
+ internal var pair:_Pair; //slotID:1
+
+ pair = hug1;
+
+ this.__children.select(function(hug1:int, hug2:_Pair):uint{ //MethodID:4441, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 33
+ if(hug2 !== pair) return 0;
+ __container.removeChildAt(hug1);
+
+ return (SortedArray.BREAK | SortedArray.REMOVE);
+ }, pair._zIndex);
+ }
+ }
+}
+
+import flash.display.DisplayObject
+
+//■class(instance)_index:355
+//private
+class _Pair extends Object
+{
+ //static constructor
+ public static function _Pair$cinit()
+ { //MethodID:4443, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Pair(hug1:DisplayObject, hug2:Number)
+ { //MethodID:4444, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._dObj = hug1;
+ this._zIndex = hug2;
+ }
+
+ //variables/etc.
+ public var _dObj:DisplayObject; //slotID:0
+ public var _zIndex:Number; //slotID:0
+}
+
+//■script291■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:356
+ public class CommandConstants extends Object
+ {
+ //static constructor
+ public static function CommandConstants$cinit()
+ { //MethodID:4446, LocalCount= 1 , MaxScope= 1, MaxStack= 35, CodeLength= 487
+ PLACE_TOP = "ue";
+ PLACE_BOTTOM = "shita";
+ PLACE_MIDDLE = "naka";
+ PLACE_RIGHT = "migi";
+ PLACE_LEFT = "hidari";
+ COLOR_WHITE = "white";
+ COLOR_RED = "red";
+ COLOR_PINK = "pink";
+ COLOR_ORANGE = "orange";
+ COLOR_YELLOW = "yellow";
+ COLOR_GREEN = "green";
+ COLOR_CYAN = "cyan";
+ COLOR_BLUE = "blue";
+ COLOR_PURPLE = "purple";
+ COLOR_BLACK = "black";
+ COLOR_WHITE2 = "white2";
+ COLOR_RED2 = "red2";
+ COLOR_PINK2 = "pink2";
+ COLOR_ORANGE2 = "orange2";
+ COLOR_YELLOW2 = "yellow2";
+ COLOR_GREEN2 = "green2";
+ COLOR_CYAN2 = "cyan2";
+ COLOR_BLUE2 = "blue2";
+ COLOR_PURPLE2 = "purple2";
+ COLOR_BLACK2 = "black2";
+ HAS_BUTTON = "is_button";
+ SAGE = "sage";
+ ANONYMITY = "184";
+ FULL = "full";
+ FROMLIVE = "_live";
+ PATISSIER = "patissier";
+ PLACE_X = [PLACE_RIGHT, PLACE_LEFT];
+ PLACE_Y = [PLACE_TOP, PLACE_BOTTOM, PLACE_MIDDLE];
+ NORMAL_COLOR_CODES = {white:0xFFFFFF, red:0xFF0000, pink:0xFF8080, orange:0xFFC000, yellow:0xFFFF00, green:0xFF00, cyan:0xFFFF, blue:255, purple:0xC000FF, black:0};
+ PREMIUM_COLOR_CODES = {white2:0xCCCC99, niconicowhite:0xCCCC99, red2:0xCC0033, truered:0xCC0033, pink2:0xFF33CC, orange2:0xFF6600, passionorange:0xFF6600, yellow2:0x999900, madyellow:0x999900, green2:0xCC66, elementalgreen:0xCC66, cyan2:0xCCCC, blue2:0x3399FF, marineblue:0x3399FF, purple2:0x6633CC, nobleviolet:0x6633CC, black2:0x666666};
+ }
+
+ //static variables/etc.
+ public static const PLACE_TOP:String = "ue"; //slotID:1
+ public static const PLACE_BOTTOM:String = "shita"; //slotID:2
+ public static const PLACE_MIDDLE:String = "naka"; //slotID:3
+ public static const PLACE_RIGHT:String = "migi"; //slotID:4
+ public static const PLACE_LEFT:String = "hidari"; //slotID:5
+ public static const COLOR_WHITE:String = "white"; //slotID:6
+ public static const COLOR_RED:String = "red"; //slotID:7
+ public static const COLOR_PINK:String = "pink"; //slotID:8
+ public static const COLOR_ORANGE:String = "orange"; //slotID:9
+ public static const COLOR_YELLOW:String = "yellow"; //slotID:10
+ public static const COLOR_GREEN:String = "green"; //slotID:11
+ public static const COLOR_CYAN:String = "cyan"; //slotID:12
+ public static const COLOR_BLUE:String = "blue"; //slotID:13
+ public static const COLOR_PURPLE:String = "purple"; //slotID:14
+ public static const COLOR_BLACK:String = "black"; //slotID:15
+ public static const COLOR_WHITE2:String = "white2"; //slotID:16
+ public static const COLOR_RED2:String = "red2"; //slotID:17
+ public static const COLOR_PINK2:String = "pink2"; //slotID:18
+ public static const COLOR_ORANGE2:String = "orange2"; //slotID:19
+ public static const COLOR_YELLOW2:String = "yellow2"; //slotID:20
+ public static const COLOR_GREEN2:String = "green2"; //slotID:21
+ public static const COLOR_CYAN2:String = "cyan2"; //slotID:22
+ public static const COLOR_BLUE2:String = "blue2"; //slotID:23
+ public static const COLOR_PURPLE2:String = "purple2"; //slotID:24
+ public static const COLOR_BLACK2:String = "black2"; //slotID:25
+ public static const HAS_BUTTON:String = "is_button"; //slotID:26
+ public static const SAGE:String = "sage"; //slotID:27
+ public static const ANONYMITY:String = 184; //slotID:28
+ public static const FULL:String = "full"; //slotID:29
+ public static const FROMLIVE:String = "_live"; //slotID:30
+ public static const PATISSIER:String = "patissier"; //slotID:31
+ public static const PLACE_X:Array; //slotID:32
+ public static const PLACE_Y:Array; //slotID:33
+ public static const NORMAL_COLOR_CODES:Object; //slotID:34
+ public static const PREMIUM_COLOR_CODES:Object; //slotID:35
+
+ //constructor
+ public function CommandConstants()
+ { //MethodID:4447, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script292■
+
+package jp.nicovideo.nicoplayer.views.comment.elements{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:357
+ public interface ICommentDisplayObject
+ {
+ //static constructor
+ public static function ICommentDisplayObject$cinit()
+ { //MethodID:4449, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get comment():IComment; //MethodID:4450, dispID:0
+
+ function set comment(hug1:IComment):void; //MethodID:4451, dispID:0
+
+ //constructor
+ public function ICommentDisplayObject(); //MethodID:4452, dispID:0
+ }
+}
+
+//■script293■
+
+package jp.nicovideo.nicoplayer.views.comment.elements{
+
+ import flash.display.DisplayObject
+ import flash.filters.BevelFilter
+ import flash.text.TextFieldAutoSize
+ import flash.text.TextFormat
+ import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.command.CommandSize
+
+ //■class(instance)_index:358
+ public class CommentTextField extends Object
+ {
+ //static constructor
+ public static function CommentTextField$cinit()
+ { //MethodID:4454, LocalCount= 1 , MaxScope= 1, MaxStack= 13, CodeLength= 126
+ TEXT_FONTSIZE_MEDIUM = (16 * 1.5);
+ TEXT_FONTSIZE_BIG = (26 * 1.5);
+ TEXT_FONTSIZE_SMALL = (10 * 1.5);
+ BASE_TEXTFORMAT = new TextFormat("Arial", TEXT_FONTSIZE_MEDIUM, 0xFFFFFF, true);
+ BEVELFILTER_NORMAL = new BevelFilter(1, 45, 0, 1, 0, 1, 2, 2, 1, 1, "outer");
+ BEVELFILTER_BLACK = new BevelFilter(1, 45, 0xFFFFFF, 1, 0, 1, 2, 2, 1, 1, "outer");
+ }
+
+ //static variables/etc.
+ public static const TEXT_FONTSIZE_MEDIUM:Number = 24.0; //slotID:1
+ public static const TEXT_FONTSIZE_BIG:Number = 39.0; //slotID:2
+ public static const TEXT_FONTSIZE_SMALL:Number = 15.0; //slotID:3
+ public static const BASE_TEXTFORMAT:TextFormat; //slotID:4
+ public static const BEVELFILTER_NORMAL:BevelFilter; //slotID:5
+ public static const BEVELFILTER_BLACK:BevelFilter; //slotID:6
+
+ public static function getCommentFontSize(hug1:String):Number
+ { //dispID:3, MethodID:4455, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 89
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommandSize.BIG:
+ return TEXT_FONTSIZE_BIG;
+ case CommandSize.SMALL:
+ return TEXT_FONTSIZE_SMALL;
+ default:
+ return TEXT_FONTSIZE_MEDIUM;
+ break;
+ }
+ }
+
+ //constructor
+ public function CommentTextField()
+ { //MethodID:4456, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 46
+ super();
+
+ this._textField = new CommentText();
+ this._textField.autoSize = TextFieldAutoSize.CENTER;
+ this._textField.selectable = false;
+ this._textField.multiline = true;
+ }
+
+ //variables/etc.
+ private var _textField:CommentText; //slotID:0
+
+ public function get displayObject():DisplayObject
+ { //MethodID:4457, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._textField;
+ }
+
+ public function reset(hug1:IComment, hug2:int):void
+ { //MethodID:4458, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 280
+ var hug4:Number = NaN;
+ var hug5:String = null;
+ this._textField.comment = hug1;
+ this._textField.text = hug1.message;
+ var hug3:TextFormat = BASE_TEXTFORMAT;
+ hug3.color = hug1.command.colorCode;
+ hug3.size = getCommentFontSize(hug1.command.size);
+
+ this._textField.setTextFormat(hug3);
+
+ if(hug3.color == 0){
+ this._textField.filters = [BEVELFILTER_BLACK];
+ }else{
+ this._textField.filters = [BEVELFILTER_NORMAL];
+ }
+
+ if(hug1.justPosted){
+ this._textField.border = true;
+ hug4 = 0xFFFF00;
+
+ if(hug1.commentList){
+ hug5 = hug1.commentList.name;
+
+ if(hug5 == CommentConstants.CL_NICOS){
+ hug4 = 0xFF00;
+ }else if(hug5 == CommentConstants.CL_LOCAL){
+ hug4 = 255;
+ }
+ }
+
+ this._textField.borderColor = hug4;
+ this._textField.alpha = 1;
+ }else{
+ this._textField.border = false;
+
+ if(hug2 == (-1)){
+ this._textField.alpha = 1;
+ }else{
+ this._textField.alpha = (0.6 + ((hug1.resNo / hug2) * 0.4));
+ }
+ }
+
+ if(hug1.command.fromLive) this._textField.alpha = 0.5;
+ }
+ }
+}
+
+import flash.text.TextField
+import jp.nicovideo.nicoplayer.models.comment.IComment
+
+//■class(instance)_index:359
+//private
+class CommentText extends TextField implements ICommentDisplayObject
+{
+ //static constructor
+ public static function CommentText$cinit()
+ { //MethodID:4459, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentText()
+ { //MethodID:4460, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var _comment:IComment; //slotID:0
+
+ public function get comment():IComment
+ { //MethodID:4461, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comment;
+ }
+
+ public function set comment(hug1:IComment):void
+ { //MethodID:4462, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._comment = hug1;
+ }
+}
+
+//■script294■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:360
+ public interface IObjectPool
+ {
+ //static constructor
+ public static function IObjectPool$cinit()
+ { //MethodID:4464, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function create(... rest):*; //MethodID:4465, dispID:0
+
+ function restore(hug1:*):void; //MethodID:4466, dispID:0
+
+ //constructor
+ public function IObjectPool(); //MethodID:4467, dispID:0
+ }
+}
+
+//■script295■
+
+package jp.nicovideo.util{
+
+ //■class(instance)_index:361
+ public class ObjectPool extends Object implements IObjectPool
+ {
+ //static constructor
+ public static function ObjectPool$cinit()
+ { //MethodID:4469, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ObjectPool(hug1:Function, hug2:uint=0xFFFFFFFF, hug3:Function=null)
+ { //MethodID:4470, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ this._pool = [];
+
+ super();
+
+ this._create = hug1;
+ this._reset = hug3;
+ this._limit = hug2;
+ }
+
+ //variables/etc.
+ private var _create:Function; //slotID:0
+ private var _reset:Function; //slotID:0
+ private var _limit:uint; //slotID:0
+ private var _pool:Array; //slotID:0
+
+ public function create(... rest):*
+ { //MethodID:4471, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 105
+ var hug2:* = undefined;
+
+ if(this._pool.length != 0){
+ hug2 = this._pool.pop();
+
+ if(this._reset != null) hug2 = this._reset.apply(null, [hug2].concat(rest));
+ }else if(this._limit > 0){
+ this._limit--;
+ hug2 = this._create.apply(null, rest);
+ }
+
+ return hug2;
+ }
+
+ public function restore(hug1:*):void
+ { //MethodID:4472, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._pool.push(hug1);
+ }
+ }
+}
+
+//■script296■
+
+package jp.nicovideo.nicoplayer.views.comment{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.comment.CommandConstants
+
+ //■class(instance)_index:362
+ public class ViewEntry extends Object
+ {
+ //static constructor
+ public static function ViewEntry$cinit()
+ { //MethodID:4474, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ViewEntry(hug1:Number, hug2:uint, hug3:String, hug4:IDisplayObjectProvider, hug5:Number, hug6:Boolean)
+ { //MethodID:4475, LocalCount= 7 , MaxScope= 1, MaxStack= 2, CodeLength= 44
+ super();
+
+ this.__vpos = hug1;
+ this.__duration = hug2;
+ this.__type = hug3;
+ this.__provider = hug4;
+ this.__order = hug5;
+ this.type = hug3;
+ this._isFullWidth = hug6;
+ }
+
+ //variables/etc.
+ private var __vpos:Number; //slotID:0
+ private var __duration:uint; //slotID:0
+ private var __type:String; //slotID:0
+ private var __provider:IDisplayObjectProvider; //slotID:0
+ private var __order:Number; //slotID:0
+ private var _isFullWidth:Boolean = false; //slotID:0
+
+ public function get vpos():Number
+ { //MethodID:4476, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__vpos;
+ }
+
+ public function get type():String
+ { //MethodID:4477, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__type;
+ }
+
+ public function set type(hug1:String):void
+ { //MethodID:4478, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 133
+ if(hug1 == ""){
+ this.__type = CommandConstants.PLACE_MIDDLE;
+ return;
+ }
+
+ var hug2:String = hug1;
+
+ switch(hug2){
+ case CommandConstants.PLACE_BOTTOM:
+ case CommandConstants.PLACE_MIDDLE:
+ case CommandConstants.PLACE_TOP:
+ break;
+ default:
+ throw new IllegalOperationError("type=" + hug1);
+ }
+
+ this.__type = hug1;
+ }
+
+ public function get provider():IDisplayObjectProvider
+ { //MethodID:4479, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__provider;
+ }
+
+ public function get vend():Number
+ { //MethodID:4480, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return (this.__vpos + this.__duration);
+ }
+
+ public function get order():Number
+ { //MethodID:4481, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__order;
+ }
+
+ public function get isFullWidth():Boolean
+ { //MethodID:4482, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isFullWidth;
+ }
+ }
+}
+
+//■script297■
+
+package jp.nicovideo.nicoscript.macro.parsers{
+
+ import jp.nicovideo.nicoscript.macro.NicoScriptError
+ import jp.nicovideo.util.loka.__MSG__
+
+ //■class(instance)_index:363
+ public class MacroParser extends Object
+ {
+ //static constructor
+ public static function MacroParser$cinit()
+ { //MethodID:4484, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function findMacroName(hug1:String):String
+ { //dispID:3, MethodID:4485, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return _Parser.findMacroName(hug1);
+ }
+
+ public static function parse(hug1:String):IMacroParserResult
+ { //dispID:4, MethodID:4486, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 56
+ var hug2:Object = _Parser.parse(hug1);
+
+ if(!hug2) throw new NicoScriptError(__MSG__("ニコスクリプトが含まれていません。文法を確認してください。"));
+
+ return new _MacroParserResult(hug2.macroName, hug2.label, hug2.args);
+ }
+
+ //constructor
+ public function MacroParser()
+ { //MethodID:4487, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+
+//■class(instance)_index:364
+//private
+class _Parser extends Object
+{
+ //static constructor
+ public static function _Parser$cinit()
+ { //MethodID:4488, LocalCount= 1 , MaxScope= 1, MaxStack= 6, CodeLength= 619
+ SPACE_CHAR = " ";
+ SPACE = ("[" + SPACE_CHAR + "]");
+ SOME_SPACES = (SPACE + "+");
+ ANY_SPACES = (SPACE + "*");
+ LABEL_SYMBOL_CHAR = "::";
+ LABEL_SYMBOL = ("[" + LABEL_SYMBOL_CHAR + "]");
+ LABEL_NAME_CHAR = ("[^" + SPACE_CHAR + "]");
+ LABEL_NAME = ("(?P<label>" + LABEL_NAME_CHAR + "+)");
+ LABEL = ("(?:" + LABEL_SYMBOL + LABEL_NAME + ")");
+ MACRO_SYMBOL_CHAR = "@@";
+ MACRO_SYMBOL = ("[" + MACRO_SYMBOL_CHAR + "]");
+ MACRO_NAME_CHAR = ("[^" + LABEL_SYMBOL_CHAR + SPACE_CHAR + "]");
+ MACRO_NAME = ("(?P<macroName>" + MACRO_NAME_CHAR + "+)");
+ MACRO = ("(?:" + MACRO_SYMBOL + MACRO_NAME + ")");
+ ARG_VALUE_SEP_CHAR = ",、,、";
+ ARG_VALUE_SEP = ("[" + ARG_VALUE_SEP_CHAR + "]");
+ VALUE_QUOTES = ["''", "\"\"", "「」", "‘’", "“”"];
+ QUOTED_VALUE = _buildQuotedValuePattern(VALUE_QUOTES, false);
+ NAKED_VALUE = ("[^" + SPACE_CHAR + ARG_VALUE_SEP_CHAR + "]+");
+ ARG_VALUE = ("(?:" + QUOTED_VALUE + "|" + NAKED_VALUE + ")");
+ ARG = (ARG_VALUE + "(?:" + ARG_VALUE_SEP + ARG_VALUE + ")*");
+ ARG_SEP = SOME_SPACES;
+ ARG_LIST = (ARG + "(?:" + ARG_SEP + ARG + ")*");
+ ARGS = ("(?:" + SOME_SPACES + "(?P<args>" + ARG_LIST + ")" + ")");
+ FIND_MACRO_NAME = new RegExp(("^" + ANY_SPACES + MACRO), "x");
+ SOURCE_PARSER = new RegExp(("^" + ANY_SPACES + MACRO + LABEL + "?" + ARGS + "?" + ANY_SPACES + "$"), "x");
+ ARG_SCANNER = new RegExp(("(?:" + "^" + ANY_SPACES + "|" + ARG_SEP + ")" + "(?P<arg>" + ARG + ")"), "xg");
+ QUOTED_VALUE_TESTER = new RegExp("^(?:" + _buildQuotedValuePattern(VALUE_QUOTES, true) + ")$");
+ ARG_VALUE_SCANNER = new RegExp(("(?:" + "^" + "|" + ARG_VALUE_SEP + ")" + "(?P<value>" + ARG_VALUE + ")"), "xg");
+ }
+
+ //static variables/etc.
+ private static const SPACE_CHAR:String = " "; //slotID:1
+ private static const SPACE:String; //slotID:2
+ private static const SOME_SPACES:String; //slotID:3
+ private static const ANY_SPACES:String; //slotID:4
+ private static const LABEL_SYMBOL_CHAR:String = "::"; //slotID:5
+ private static const LABEL_SYMBOL:String; //slotID:6
+ private static const LABEL_NAME_CHAR:String; //slotID:7
+ private static const LABEL_NAME:String; //slotID:8
+ private static const LABEL:String; //slotID:9
+ private static const MACRO_SYMBOL_CHAR:String = "@@"; //slotID:10
+ private static const MACRO_SYMBOL:String; //slotID:11
+ private static const MACRO_NAME_CHAR:String; //slotID:12
+ private static const MACRO_NAME:String; //slotID:13
+ private static const MACRO:String; //slotID:14
+ private static const ARG_VALUE_SEP_CHAR:String = ",、,、"; //slotID:15
+ private static const ARG_VALUE_SEP:String; //slotID:16
+ private static const VALUE_QUOTES:Array; //slotID:17
+ private static const QUOTED_VALUE:String; //slotID:18
+ private static const NAKED_VALUE:String; //slotID:19
+ private static const ARG_VALUE:String; //slotID:20
+ private static const ARG:String; //slotID:21
+ private static const ARG_SEP:String; //slotID:22
+ private static const ARG_LIST:String; //slotID:23
+ private static const ARGS:String; //slotID:24
+ private static const FIND_MACRO_NAME:RegExp; //slotID:25
+ private static const SOURCE_PARSER:RegExp; //slotID:26
+ private static const ARG_SCANNER:RegExp; //slotID:27
+ private static const QUOTED_VALUE_TESTER:RegExp; //slotID:28
+ private static const ARG_VALUE_SCANNER:RegExp; //slotID:29
+
+ public static function findMacroName(hug1:String):String
+ { //dispID:3, MethodID:4489, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ var hug2:Object = FIND_MACRO_NAME.exec(hug1);
+ return (hug2 ? hug2.macroName : null);
+ }
+
+ public static function parse(hug1:String):Object
+ { //dispID:4, MethodID:4490, LocalCount= 6 , MaxScope= 1, MaxStack= 6, CodeLength= 100
+ var hug4:Object = null;
+ var hug2:Object = SOURCE_PARSER.exec(hug1);
+
+ if(!hug2) return null;
+
+ var hug3:Array = [];
+ ARG_SCANNER.lastIndex = 0;
+ hug4 = ARG_SCANNER.exec(hug2.args);
+
+ while(ARG_SCANNER.exec(hug2.args)){
+ hug3.push(hug4.arg);
+ }
+
+ return {macroName:hug2.macroName, label:hug2.label, args:hug3};
+ }
+
+ public static function unquote(hug1:String):String
+ { //dispID:5, MethodID:4491, LocalCount= 8 , MaxScope= 1, MaxStack= 4, CodeLength= 125
+ var hug4:String = null;
+ var hug5:String = null;
+ var hug2:Object = QUOTED_VALUE_TESTER.exec(hug1);
+
+ if(!hug2) return hug1;
+
+ var hug3:int = 1;
+
+ for each(hug4 in VALUE_QUOTES){
+ if(hug2[hug3] !== undefined){
+ hug5 = hug4.charAt(1);
+ return hug2[hug3].replace(new RegExp(("\\" + hug5 + "\\" + hug5), "g"), hug5);
+ }
+
+ hug3++;
+ }
+
+ return hug1;
+ }
+
+ public static function splitArgs(hug1:String):Array
+ { //dispID:6, MethodID:4492, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 64
+ var hug3:Object = null;
+ var hug2:Array = [];
+ ARG_VALUE_SCANNER.lastIndex = 0;
+ hug3 = ARG_VALUE_SCANNER.exec(hug1);
+
+ while(ARG_VALUE_SCANNER.exec(hug1)){
+ hug2.push(unquote(hug3.value));
+ }
+
+ return hug2;
+ }
+
+ private static function _buildQuotedValuePattern(hug1:Array, hug2:Boolean):String
+ { //dispID:7, MethodID:4493, LocalCount= 9 , MaxScope= 1, MaxStack= 3, CodeLength= 146
+ var hug4:String = null;
+ var hug5:String = null;
+ var hug6:String = null;
+ var hug3:Array = [];
+
+ for each(hug6 in hug1){
+ hug4 = hug6.charAt(0);
+ hug5 = hug6.charAt(1);
+
+ hug3.push(hug4 + (hug2 ? "(" : "") + "(?:[^" + hug5 + "]|" + hug5 + hug5 + ")*" + (hug2 ? ")" : "") + hug5);
+ }
+
+ return hug3.join("|");
+ }
+
+ //constructor
+ public function _Parser()
+ { //MethodID:4494, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■class(instance)_index:365
+//private
+class _MacroParserResult extends Object implements IMacroParserResult
+{
+ //static constructor
+ public static function _MacroParserResult$cinit()
+ { //MethodID:4495, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _MacroParserResult(hug1:String, hug2:String, hug3:Array)
+ { //MethodID:4496, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ super();
+
+ this._macroName = hug1;
+ this._label = hug2;
+ this._args = hug3;
+ this._cachedArgs = {};
+ }
+
+ //variables/etc.
+ private var _macroName:String; //slotID:0
+ private var _label:String; //slotID:0
+ private var _args:Array; //slotID:0
+ private var _cachedArgs:Object; //slotID:0
+
+ public function get macroName():String
+ { //MethodID:4497, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._macroName;
+ }
+
+ public function get label():String
+ { //MethodID:4498, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._label;
+ }
+
+ public function get argLength():int
+ { //MethodID:4499, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._args.length;
+ }
+
+ public function arg(hug1:int, hug2:String=null):String
+ { //MethodID:4500, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 64
+ if(hug1 in this._cachedArgs) return this._cachedArgs[hug1];
+
+ if(this._args.length <= hug1) return hug2;
+
+ this._cachedArgs[hug1] = _Parser.unquote(this._args[hug1]);
+ return _Parser.unquote(this._args[hug1]);
+ }
+
+ public function argArray(hug1:int, hug2:Array=null):Array
+ { //MethodID:4501, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 76
+ if(("a" + hug1) in this._cachedArgs) return this._cachedArgs["a" + hug1];
+
+ if(this._args.length <= hug1) return hug2;
+
+ this._cachedArgs["a" + hug1] = _Parser.splitArgs(this._args[hug1]);
+ return _Parser.splitArgs(this._args[hug1]);
+ }
+}
+
+//■script298■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+
+ //■class(instance)_index:366
+ public class Poller extends Object
+ {
+ //static constructor
+ public static function Poller$cinit()
+ { //MethodID:4503, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Poller(hug1:Function)
+ { //MethodID:4505, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 60
+ internal var poller:Function; //slotID:1
+
+ poller = hug1;
+ this.__timer = new Timer(1000 * 30);
+ this.__callback_Q = [];
+
+ super();
+
+ this.__poller = poller;
+
+ this.__timer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:4504, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 9
+ __doPoll(false);
+ });
+ }
+
+ //variables/etc.
+ private var __poller:Function; //slotID:0
+ private var __enabled:Boolean; //slotID:0
+ private var __waiting:Boolean; //slotID:0
+ private var __timer:Timer; //slotID:0
+ private var __callback_Q:Array; //slotID:0
+
+ public function get interval():int
+ { //MethodID:4506, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__timer.delay;
+ }
+
+ public function set interval(hug1:int):void
+ { //MethodID:4507, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ this.__timer.delay = hug1;
+ }
+
+ public function resume():void
+ { //MethodID:4508, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 23
+ if(this.__enabled) return;
+
+ this.__enabled = true;
+
+ this.__resetPoller(false);
+ }
+
+ public function suspend():void
+ { //MethodID:4509, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ if(!this.__enabled) return;
+
+ this.__enabled = false;
+
+ this.__timer.stop();
+ }
+
+ public function pollImmediately(hug1:Function=null):void
+ { //MethodID:4510, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ if(hug1 != null) this.__callback_Q.push(hug1);
+ this.__resetPoller(true);
+ }
+
+ private function __resetPoller(hug1:Boolean):void
+ { //MethodID:4511, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 43
+ if(this.__waiting) return;
+ this.__timer.stop();
+
+ if(hug1){
+ this.__doPoll(true);
+ }else{
+ this.__timer.start();
+ }
+ }
+
+ private function __doPoll(hug1:Boolean):void
+ { //MethodID:4514, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 25
+ internal var force:Boolean; //slotID:1
+
+ force = hug1;
+ this.__waiting = true;
+
+ this.__poller(function(hug1:Function):Function{ //MethodID:4513, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ internal var f:Function; //slotID:1
+
+ f = hug1;
+ return function(... rest):void{ //MethodID:4512, LocalCount= 5 , MaxScope= 0, MaxStack= 3, CodeLength= 97
+ var hug2:* = undefined;
+ __waiting = false;
+
+ if(__enabled || force){
+ if(__enabled) __resetPoller(false);
+ f.apply(null, rest);
+ }
+
+ for each(hug2 in __callback_Q){
+ hug2();
+ }
+
+ __callback_Q = [];
+ };
+ });
+ }
+ }
+}
+
+//■script299■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.util.ObjectUtils
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:367
+ public class RequestDispatcher extends Object
+ {
+ //static constructor
+ public static function RequestDispatcher$cinit()
+ { //MethodID:4516, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RequestDispatcher(hug1:Boolean)
+ { //MethodID:4517, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 29
+ this.__request_Q = [];
+ this.__actives = [];
+ this.__passives = [];
+
+ super();
+
+ this.__useChunk = hug1;
+ }
+
+ //variables/etc.
+ private var __useChunk:Boolean = false; //slotID:0
+ private var __request_Q:Array; //slotID:0
+ private var __actives:Array; //slotID:0
+ private var __passives:Array; //slotID:0
+ private var __sendRequest_Q:Array = null; //slotID:0
+ private var __proceeding:Boolean; //slotID:0
+
+ public function addRequest(hug1:Request):void
+ { //MethodID:4519, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 20
+ internal var req:Request; //slotID:1
+
+ req = hug1;
+
+ this.__proceed(function():void{ //MethodID:4518, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 49
+ if(__butting(req, __actives)){
+ __request_Q.push(req);
+
+ return;
+ }
+
+ __actives.push(req);
+ __proceedRequest(req);
+ });
+ }
+
+ public function addPassiveRequest(hug1:Request):void
+ { //MethodID:4521, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 20
+ internal var req:Request; //slotID:1
+
+ req = hug1;
+
+ this.__proceed(function():void{ //MethodID:4520, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 21
+ __passives.push(req);
+ __proceedRequest(req);
+ });
+ }
+
+ private function __butting(hug1:Request, hug2:Array):Boolean
+ { //MethodID:4522, LocalCount= 12 , MaxScope= 1, MaxStack= 2, CodeLength= 142
+ var hug3:Request = null;
+ var hug4:LockDesc = null;
+ var hug5:LockDesc = null;
+
+ for each(hug3 in hug2){
+ for each(hug4 in hug1.locks){
+ for each(hug5 in hug3.locks){
+ if(hug4.buttingWith(hug5)) return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+ private function __proceedRequest(hug1:Request):void
+ { //MethodID:4525, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 80
+ internal var req:Request; //slotID:1
+
+ req = hug1;
+
+ if(!req.transactor) return;
+
+ if(!this.__useChunk){
+ req.transactor.start();
+
+ return;
+ }
+
+ if(!this.__sendRequest_Q){
+ this.__sendRequest_Q = [];
+
+ ObjectUtils.callLater(function():void{ //MethodID:4524, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 78
+ if(__sendRequest_Q.length == 1){
+ Request(__sendRequest_Q[0]).transactor.start();
+ }else{
+ Request(__sendRequest_Q[0]).parent.__client.chunk(function(hug1:MessageServerClient):void{ //MethodID:4523, LocalCount= 5 , MaxScope= 0, MaxStack= 2, CodeLength= 47
+ var hug2:Request = null;
+
+ for each(hug2 in __sendRequest_Q){
+ hug2.transactor.start();
+ }
+ });
+ }
+
+ __sendRequest_Q = null;
+ });
+ }
+
+ this.__sendRequest_Q.push(req);
+ }
+
+ public function receive(hug1:String, hug2:Array):Boolean
+ { //MethodID:4527, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 26
+ internal var name:String; //slotID:1
+ internal var args:Array; //slotID:2
+
+ name = hug1;
+ args = hug2;
+ return this.__proceed(function():Boolean{ //MethodID:4526, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 158
+ var hug2:* = undefined;
+ var hug1:* = (__forEachMatchedRequest(__actives, name, args) || __forEachMatchedRequest(__passives, name, args) && -1);
+
+ if(hug1 == 0) return false;
+
+ if(hug1 != (-1)){
+ hug2 = 0;
+
+ while(hug2 < __request_Q.length){
+ if(!__butting(__request_Q[hug2], __actives)){
+ __actives.push(__request_Q[hug2]);
+ __proceedRequest(__request_Q.splice((hug2--), 1)[0]);
+ }
+
+ hug2++;
+ }
+ }
+
+ return true;
+ }, true);
+ }
+
+ public function spoil():void
+ { //MethodID:4530, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 25
+ internal var spoil_0:Function; //slotID:1
+
+ spoil_0 = function(hug1:Array):void{ //MethodID:4528, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 58
+ var hug3:Request = null;
+ var hug2:int = 0;
+
+ while(hug2 < hug1.length){
+ hug3 = hug1[hug2];
+
+ hug3.onDisconnect();
+
+ if(!hug3.indomitable) hug1.splice((hug2--), 1);
+
+ hug2++;
+ }
+ };
+
+ this.__proceed(function():void{ //MethodID:4529, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 23
+ spoil_0(__actives);
+ spoil_0(__passives);
+ }, true);
+ }
+
+ private function __forEachMatchedRequest(hug1:Array, hug2:String, hug3:Array):int
+ { //MethodID:4531, LocalCount= 7 , MaxScope= 5, MaxStack= 4, CodeLength= 617
+ internal var requests:Array; //slotID:1
+ internal var name:String; //slotID:2
+ internal var args:Array; //slotID:3
+ internal var j:int; //slotID:4
+ internal var req:Request; //slotID:5
+ internal var i:int; //slotID:6
+ internal var lock:LockDesc; //slotID:7
+ internal var found:Boolean; //slotID:8
+ internal var key:String; //slotID:9
+ internal var select:String; //slotID:10
+
+ j = 0;
+ req = null;
+ i = 0;
+ lock = null;
+ found = false;
+ key = null;
+ select = null;
+ requests = hug1;
+ name = hug2;
+ args = hug3;
+ j = 0;
+
+ while(j < requests.length){
+ req = requests[j];
+ i = 0;
+
+ while(i < req.locks.length){
+ lock = req.locks[i];
+
+ if(lock._name != name){
+ }else{
+ found = false;
+
+ for(key in lock._pattern){
+ if(lock._pattern[key] != args[int(key)]){
+ found = true;
+ break;
+ }
+ }
+
+ if(found) break;
+
+ try{
+ select = req.transactor.proceed(name, args);
+ }
+ catch(error:TransactorError){
+ req.onErrorOccured.apply(null, error.args);
+ requests.splice(j, 1);
+
+ return 1;
+ }
+
+ switch(select){
+ case AbstractTransactor.MSG_COMPLETE:
+ req.locks.splice(i, 1);
+
+ if(req.locks.length != 0) return 1;
+
+ case AbstractTransactor.MSG_QUIT:
+ case AbstractTransactor.MSG_REJECT_TO_QUIT:
+ requests.splice(j, 1);
+ req.onQuit();
+
+ if(select == AbstractTransactor.MSG_REJECT_TO_QUIT) break;
+
+ return 1;
+ case AbstractTransactor.MSG_CONTINUE:
+ return -1;
+ case AbstractTransactor.MSG_REJECT:
+ break;
+ default:
+ break;
+ }
+ }
+
+ i++;
+ }
+
+ j++;
+ }
+
+ return 0;
+ }
+
+ private function __proceed(hug1:Function, hug2:Boolean=false):*
+ { //MethodID:4532, LocalCount= 6 , MaxScope= 7, MaxStack= 4, CodeLength= 170
+ internal var f:Function; //slotID:1
+ internal var ensureImmediatelyCalling:Boolean = false; //slotID:2
+
+ f = hug1;
+ ensureImmediatelyCalling = hug2;
+
+ if(this.__proceeding){
+ if(ensureImmediatelyCalling) throw new IllegalOperationError("RequestDispatcher.__proceed: OMG.");
+ ObjectUtils.callLater(this.__proceed, f);
+
+ return undefined;
+ }
+
+ try{
+ this.__proceeding = true;
+ var hug4:* = f();
+ return hug4;
+ }
+ finally{
+ this.__proceeding = false;
+ }
+
+ return undefined;
+ }
+
+ private function __dumpLocks(hug1:String, hug2:Array):void
+ { //MethodID:4533, LocalCount= 9 , MaxScope= 1, MaxStack= 4, CodeLength= 141
+ var hug3:LockDesc = null;
+ var hug4:String = null;
+
+ if(hug2.length == 0) return;
+ trace(hug1);
+
+ for each(hug3 in hug2){
+ trace("\tlock:" + hug3._name);
+
+ for(hug4 in hug3._pattern){
+ trace(("\t\t*" + hug4 + "=") + hug3._pattern[hug4]);
+ }
+ }
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get actives():Array
+ { //MethodID:4534, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__actives;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get request_Q():Array
+ { //MethodID:4535, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this.__request_Q;
+ }
+ }
+}
+
+//■script300■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ import jp.nicovideo.nicoplayer.storages.CommentStorage
+
+ //■class(instance)_index:368
+ public final class Request extends Object
+ {
+ //static constructor
+ public static function Request$cinit()
+ { //MethodID:4537, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ __DUMMY_FUNC = function(... rest):void{ //MethodID:4538, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ };
+ }
+
+ //static variables/etc.
+ private static const __DUMMY_FUNC:Function; //slotID:1
+
+ //constructor
+ public function Request(hug1:Array, hug2:String="[?]")
+ { //MethodID:4539, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 37
+ this.onErrorOccured = __DUMMY_FUNC;
+ this.onQuit = __DUMMY_FUNC;
+ this.onDisconnect = __DUMMY_FUNC;
+
+ super();
+
+ this.locks = hug1;
+ this.id = hug2;
+ }
+
+ //variables/etc.
+ public var id:String; //slotID:0
+ public var parent:CommentStorage; //slotID:0
+ public var locks:Array; //slotID:0
+ public var transactor:AbstractTransactor; //slotID:0
+ public var indomitable:Boolean = false; //slotID:0
+ public var onErrorOccured:Function; //slotID:0
+ public var onQuit:Function; //slotID:0
+ public var onDisconnect:Function; //slotID:0
+ }
+}
+
+//■script301■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ //■class(instance)_index:369
+ public final class LockDesc extends Object
+ {
+ //static constructor
+ public static function LockDesc$cinit()
+ { //MethodID:4541, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LockDesc(hug1:String, hug2:Object=null)
+ { //MethodID:4542, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._name = hug1;
+ this._pattern = hug2;
+ }
+
+ //variables/etc.
+ public var _name:String; //slotID:0
+ public var _pattern:Object; //slotID:0
+
+ public function buttingWith(hug1:LockDesc):Boolean
+ { //MethodID:4543, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 119
+ var hug2:String = null;
+ var hug3:* = undefined;
+
+ if(this._name != hug1._name) return false;
+
+ if(!(this._pattern && hug1._pattern)) return true;
+
+ for(hug2 in this._pattern){
+ hug3 = hug1._pattern[hug2];
+
+ if((hug3 !== undefined) && (this._pattern[hug2] != hug3)) return false;
+ }
+
+ return true;
+ }
+ }
+}
+
+//■script302■
+
+package jp.nicovideo.nicoplayer.storages.transmitter{
+
+ //■class(instance)_index:370
+ public class TransmitterType extends Object
+ {
+ //static constructor
+ public static function TransmitterType$cinit()
+ { //MethodID:4545, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ XML_SOCKET = "xmlSocket";
+ HTTP = "http";
+ }
+
+ //static variables/etc.
+ public static const XML_SOCKET:String = "xmlSocket"; //slotID:1
+ public static const HTTP:String = "http"; //slotID:2
+
+ //constructor
+ public function TransmitterType()
+ { //MethodID:4546, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script303■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+
+ //■class(instance)_index:371
+ public class AbstractTransactor extends Object
+ {
+ //static constructor
+ public static function AbstractTransactor$cinit()
+ { //MethodID:4548, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ MSG_REJECT = "REJECT";
+ MSG_CONTINUE = "CONTINUE";
+ MSG_COMPLETE = "COMPLETE";
+ MSG_QUIT = "QUIT";
+ MSG_REJECT_TO_QUIT = "REJECT_TO_QUIT";
+ }
+
+ //static variables/etc.
+ public static const MSG_REJECT:String = "REJECT"; //slotID:1
+ public static const MSG_CONTINUE:String = "CONTINUE"; //slotID:2
+ public static const MSG_COMPLETE:String = "COMPLETE"; //slotID:3
+ public static const MSG_QUIT:String = "QUIT"; //slotID:4
+ public static const MSG_REJECT_TO_QUIT:String = "REJECT_TO_QUIT";//slotID:5
+
+ //constructor
+ public function AbstractTransactor()
+ { //MethodID:4549, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var client:MessageServerClient; //slotID:0
+
+ public function start():void
+ { //MethodID:4550, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function proceed(hug1:String, hug2:Array):String
+ { //MethodID:4551, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 18
+ return this["onCMsg" + hug1].apply(this, hug2);
+ }
+
+ public function error(... rest):void
+ { //MethodID:4552, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ throw new TransactorError(rest);
+ }
+ }
+}
+
+//■script304■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import flash.errors.IllegalOperationError
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+
+ //■class(instance)_index:372
+ public class CommentPoster extends AbstractTransactor
+ {
+ //static constructor
+ public static function CommentPoster$cinit()
+ { //MethodID:4554, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentPoster()
+ { //MethodID:4555, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var comment:IComment; //slotID:0
+ public var threadID:int; //slotID:0
+ public var ticket:String; //slotID:0
+ public var userID:String; //slotID:0
+ public var postkey:String; //slotID:0
+ public var yugi:Boolean = false; //slotID:0
+ public var premium:Boolean = false; //slotID:0
+ public var no:int; //slotID:0
+
+ override public function start():void
+ { //MethodID:4556, LocalCount= 1 , MaxScope= 1, MaxStack= 12, CodeLength= 127
+ if(!this.comment) throw new IllegalOperationError("_CommentPoster.start: comment が設定されていません。");
+ client.sendCMsgPostChat(this.comment.message, this.threadID, (this.comment.vpos / 10), this.comment.command.command, null, this.ticket, (this.comment.command.sage ? 1 : 0), this.userID, this.postkey, (this.premium ? 1 : 0), (this.yugi ? 1 : 0));
+ }
+
+ public function onCMsgPostChatResult(hug1:int, hug2:int, hug3:int, hug4:int):String
+ { //MethodID:4557, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ this.no = hug3;
+
+ if(hug2 != MessageServerClient.POST_SUCCESS) error(hug2);
+
+ return MSG_QUIT;
+ }
+ }
+}
+
+//■script305■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+
+ //■class(instance)_index:373
+ public class SimpleTransactor extends AbstractTransactor
+ {
+ //static constructor
+ public static function SimpleTransactor$cinit()
+ { //MethodID:4559, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function SimpleTransactor(hug1:Function)
+ { //MethodID:4560, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this.__f = hug1;
+ }
+
+ //variables/etc.
+ private var __f:Function; //slotID:0
+
+ override public function proceed(hug1:String, hug2:Array):String
+ { //MethodID:4561, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 16
+ this.__f.apply(null, hug2);
+
+ return MSG_CONTINUE;
+ }
+ }
+}
+
+//■script306■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+
+ //■class(instance)_index:374
+ public class ThreadUpdater extends AbstractTransactor
+ {
+ //static constructor
+ public static function ThreadUpdater$cinit()
+ { //MethodID:4563, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ThreadUpdater()
+ { //MethodID:4564, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this.comments = [];
+
+ super();
+ }
+
+ //variables/etc.
+ public var threadID:String; //slotID:0
+ public var userID:String; //slotID:0
+ public var ticket:String; //slotID:0
+ public var updatekey:String; //slotID:0
+ public var isPremium:Boolean; //slotID:0
+ public var comments:Array; //slotID:0
+
+ override public function start():void
+ { //MethodID:4566, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 17
+ client.chunk(function():void{ //MethodID:4565, LocalCount= 4 , MaxScope= 0, MaxStack= 7, CodeLength= 107
+ var hug1:IComment = null;
+
+ for each(hug1 in comments){
+ client.sendCMsgAddThreadItem(hug1.message, (hug1.vpos / 10), hug1.command.command, "");
+ }
+
+ client.sendCMsgUpdateThread(int(threadID), userID, comments.length, ticket, updatekey, (isPremium ? 1 : 0));
+ });
+ }
+
+ public function onCMsgUpdateThreadResult(hug1:int, hug2:String):String
+ { //MethodID:4567, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ if(hug1 != MessageServerClient.UPDATE_SUCCESS) error(hug1);
+
+ this.ticket = hug2;
+ return MSG_COMPLETE;
+ }
+ }
+}
+
+//■script307■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.ILeaf
+ import jp.nicovideo.nicoplayer.models.comment.Leaf
+ import jp.nicovideo.nicoplayer.models.video.VideoConstants
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+ import jp.nicovideo.util.ArrayUtils
+
+ //■class(instance)_index:375
+ public class ThreadLoader extends AbstractTransactor
+ {
+ //static constructor
+ public static function ThreadLoader$cinit()
+ { //MethodID:4569, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function commentMaker(hug1:String, hug2:int, hug3:int, hug4:int, hug5:int, hug6:String, hug7:String, hug8:Boolean, hug9:String, hug10:String, hug11:int, hug12:int, hug13:int, hug14:int, hug15:String, hug16:int):IComment
+ { //dispID:3, MethodID:4571, LocalCount= 18 , MaxScope= 2, MaxStack= 4, CodeLength= 313
+ internal var message:String; //slotID:1
+ internal var thread_id:int; //slotID:2
+ internal var no:int; //slotID:3
+ internal var vpos:int; //slotID:4
+ internal var date:int; //slotID:5
+ internal var mail:String; //slotID:6
+ internal var name:String; //slotID:7
+ internal var yourpost:Boolean; //slotID:8
+ internal var user_id:String; //slotID:9
+ internal var raw_user_id:String; //slotID:10
+ internal var deleted:int; //slotID:11
+ internal var premium:int; //slotID:12
+ internal var anonymity:int; //slotID:13
+ internal var fork:int; //slotID:14
+ internal var remote:String; //slotID:15
+ internal var leafID:int; //slotID:16
+ internal var builder:CommentBuilder; //slotID:17
+ internal var isPremium:Boolean; //slotID:18
+
+ message = hug1;
+ thread_id = hug2;
+ no = hug3;
+ vpos = hug4;
+ date = hug5;
+ mail = hug6;
+ name = hug7;
+ yourpost = hug8;
+ user_id = hug9;
+ raw_user_id = hug10;
+ deleted = hug11;
+ premium = hug12;
+ anonymity = hug13;
+ fork = hug14;
+ remote = hug15;
+ leafID = hug16;
+ builder = new CommentBuilder();
+ builder.message = message;
+ builder.resNo = no;
+ builder.vpos = (vpos * 10);
+ builder.date = new Date(date * 1000);
+ isPremium = (premium == 1);
+ builder.command = new Command(function(hug1:Command):void{ //MethodID:4570, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 8
+ hug1.command = mail;
+ }, isPremium);
+
+ builder.isPremium = isPremium;
+ builder.justPosted = yourpost;
+ builder.userID = user_id;
+ builder.userName = name;
+ builder.deleted = deleted;
+ builder.anonymity = anonymity;
+ builder.fork = fork;
+ builder.isOwner = (fork == 1);
+ builder.leafID = leafID;
+ return builder.make();
+ }
+
+ //constructor
+ public function ThreadLoader()
+ { //MethodID:4573, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this.num_click = {};
+ this.comments = [];
+ this.leaves = [];
+
+ super();
+ }
+
+ //variables/etc.
+ public var threadID:String; //slotID:0
+ public var resFrom:int = 0; //slotID:0
+ public var waybackkey:String; //slotID:0
+ public var when:int = 0; //slotID:0
+ public var userID:String; //slotID:0
+ public var noCompress:Boolean = false; //slotID:0
+ public var fork:int = 0; //slotID:0
+ public var threadkey:String; //slotID:0
+ public var force184:int = 0; //slotID:0
+ public var forceLeafMode:Boolean = false; //slotID:0
+ public var requestVersion:String = 20061206; //slotID:0
+ public var duration:int = 0; //slotID:0
+ public var lastRes:int = -1; //slotID:0
+ public var ticket:String; //slotID:0
+ public var revision:int = -1; //slotID:0
+ public var resOffset:int; //slotID:0
+ public var serverTime:int; //slotID:0
+ public var clickRevision:int = -1; //slotID:0
+ public var clicks:int = -1; //slotID:0
+ public var num_click:Object; //slotID:0
+ public var comments:Array; //slotID:0
+ public var leaves:Array; //slotID:0
+ public var leaf_get_num:int = 100; //slotID:0
+ public var requestNum:int = 1; //slotID:0
+ public var resBefore:int = 0; //slotID:0
+ public var onServerTime:Function; //slotID:0
+
+ public function leafMaker(hug1:int, hug2:int, hug3:int):ILeaf
+ { //MethodID:4572, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ var hug4:ILeaf = new Leaf(hug1, hug2, hug3);
+ return hug4;
+ }
+
+ public function isLeaf():Boolean
+ { //MethodID:4574, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ return (this.forceLeafMode && (this.fork == 0) && (this.resFrom <= 0));
+ }
+
+ override public function start():void
+ { //MethodID:4576, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 51
+ if(this.forceLeafMode){
+ this.requestVersion = MessageServerClient.NIWAVIDE_PACKET_LEAF_VERSION;
+
+ if(this.resFrom <= 0) this.resFrom = 0;
+ }
+
+ client.chunk(function():void{ //MethodID:4575, LocalCount= 1 , MaxScope= 0, MaxStack= 13, CodeLength= 129
+ client.sendCMsgGetThread(int(threadID), requestVersion, resFrom, waybackkey, when, userID, (noCompress ? 1 : 0), fork, null, clickRevision, threadkey, force184);
+
+ if(isLeaf()) client.sendCMsgGetThreadLeaves(_generateLeafExpression(leaf_get_num, true), int(threadID), waybackkey, when, userID, (noCompress ? 1 : 0), threadkey, force184, resBefore);
+ });
+ }
+
+ public function onCMsgGetThreadResult(hug1:uint, hug2:int, hug3:int, hug4:String, hug5:String, hug6:int, hug7:int, hug8:int, hug9:int, hug10:int, hug11:int, hug12:int, hug13:int):String
+ { //MethodID:4577, LocalCount= 14 , MaxScope= 1, MaxStack= 2, CodeLength= 115
+ if(this.onServerTime is Function) this.onServerTime(hug10);
+
+ if(hug1 != MessageServerClient.THREAD_FOUND) error(hug1);
+
+ this.lastRes = hug3;
+ this.ticket = hug4;
+ this.revision = hug7;
+ this.resOffset = hug8;
+ this.serverTime = hug10;
+ this.clickRevision = hug12;
+
+ if(this.isLeaf() && this.num_click){
+ this.clicks = hug13;
+ }else{
+ this.clicks = 0;
+ }
+
+ return MSG_CONTINUE;
+ }
+
+ public function onCMsgLeaf(... rest):String
+ { //MethodID:4578, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 29
+ var hug2:ILeaf = this.leafMaker.apply(null, rest);
+
+ this.leaves.push(hug2);
+
+ return MSG_CONTINUE;
+ }
+
+ public function onCMsgChat(... rest):String
+ { //MethodID:4579, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 149
+ var hug2:IComment = commentMaker.apply(null, rest);
+ var hug3:CommentBuilder = new CommentBuilder(hug2);
+
+ if((this.lastRes == (-1)) || (this.lastRes < hug2.resNo)) return MSG_REJECT;
+
+ if(this.num_click && this.num_click[hug2.resNo]){
+ hug3.clickCount = this.num_click[hug2.resNo];
+ hug2 = hug3.make();
+ }
+
+ if((this.lastRes - hug2.resNo) < this._union){
+ hug3.isTrunk = true;
+ hug2 = hug3.make();
+ }
+
+ this.comments.push(hug2);
+
+ return MSG_CONTINUE;
+ }
+
+ public function onCMsgNumberOfClick(hug1:int, hug2:int, hug3:int):String
+ { //MethodID:4581, LocalCount= 7 , MaxScope= 2, MaxStack= 5, CodeLength= 221
+ internal var thread_id:int; //slotID:1
+ internal var no:int; //slotID:2
+ internal var click:int; //slotID:3
+ internal var i:int; //slotID:4
+ internal var comment:IComment; //slotID:5
+ internal var builder:CommentBuilder; //slotID:6
+
+ i = 0;
+ comment = null;
+ builder = null;
+ thread_id = hug1;
+ no = hug2;
+ click = hug3;
+ this.clicks--;
+ this.num_click[no] = click;
+
+ if(this.comments.length > 0){
+ i = ArrayUtils.lowerBoundIndex(function(hug1:int, hug2:IComment):Number{ //MethodID:4580, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 7
+ return (hug1 - hug2.resNo);
+ }, no, this.comments);
+
+ comment = this.comments[i];
+
+ if((i == (-1)) || (this.comments[i].resNo != no)) return MSG_CONTINUE;
+
+ builder = new CommentBuilder(comment);
+ builder.clickCount = click;
+ this.comments[i] = builder.make();
+ }
+
+ return MSG_CONTINUE;
+ }
+
+ public function onCMsgClose(hug1:int, hug2:int):String
+ { //MethodID:4582, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ this.requestNum--;
+ return ((this.requestNum > 0) ? MSG_CONTINUE : MSG_QUIT);
+ }
+
+ private function _generateLeafExpression(hug1:uint, hug2:Boolean):String
+ { //MethodID:4583, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 103
+ var hug3:String = "";
+ var hug4:uint = Math.ceil((this.duration + VideoConstants.USER_SPONSOR_VIDEO_LENGTH) / (60 * 1000));
+
+ if(hug4 > 720) hug1 = Math.ceil((hug1 * 720) / hug4);
+
+ hug3 = (("0-" + hug4.toString() + ":") + hug1.toString());
+
+ if(hug2) hug3 += ("," + this._union.toString());
+
+ return hug3;
+ }
+
+ private function get _union():uint
+ { //MethodID:4584, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 78
+ return ((this.duration >= ((10 * 60) * 1000)) ? 1000 : ((this.duration >= ((5 * 60) * 1000)) ? 500 : ((this.duration >= (60 * 1000)) ? 250 : 100)));
+ }
+ }
+}
+
+//■script308■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+
+ //■class(instance)_index:376
+ public class Clicker extends AbstractTransactor
+ {
+ //static constructor
+ public static function Clicker$cinit()
+ { //MethodID:4586, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Clicker()
+ { //MethodID:4587, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var threadID:int; //slotID:0
+ public var no:int; //slotID:0
+ public var userID:String; //slotID:0
+ public var clickkey:String; //slotID:0
+
+ override public function start():void
+ { //MethodID:4588, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 26
+ client.sendCMsgClick(this.threadID, this.no, this.userID, this.clickkey);
+ }
+
+ public function onCMsgClickResult(hug1:int):String
+ { //MethodID:4589, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ if(hug1 != MessageServerClient.CLICK_SUCCESS) error(hug1);
+
+ return MSG_QUIT;
+ }
+ }
+}
+
+//■script309■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage.transactor{
+
+ import jp.nicovideo.nicoplayer.storages.MessageServerClient
+ import jp.nicovideo.nicoplayer.storages.commentStorage.AbstractTransactor
+
+ //■class(instance)_index:377
+ public class CommentDeleter extends AbstractTransactor
+ {
+ //static constructor
+ public static function CommentDeleter$cinit()
+ { //MethodID:4591, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function CommentDeleter()
+ { //MethodID:4592, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var threadID:int; //slotID:0
+ public var userID:String; //slotID:0
+ public var deletekey:String; //slotID:0
+ public var list:String; //slotID:0
+ public var undelete:Boolean = false; //slotID:0
+ public var revision:int; //slotID:0
+
+ override public function start():void
+ { //MethodID:4593, LocalCount= 1 , MaxScope= 1, MaxStack= 8, CodeLength= 48
+ client.sendCMsgDeleteComments(this.threadID, this.userID, this.deletekey, this.list, (this.undelete ? 1 : 0), this.revision, 0);
+ }
+
+ public function onCMsgDeleteCommentsResult(hug1:int, hug2:int, hug3:int, hug4:int):String
+ { //MethodID:4594, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ if(hug2 != MessageServerClient.DELETE_SUCCESS) error(hug2);
+
+ this.revision = hug3;
+ return MSG_QUIT;
+ }
+ }
+}
+
+//■script310■
+
+package jp.nicovideo.nicoplayer.remocon.method{
+
+ //■class(instance)_index:378
+ public interface IRemoconMethod
+ {
+ //static constructor
+ public static function IRemoconMethod$cinit()
+ { //MethodID:4596, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function call(hug1:Object):void; //MethodID:4597, dispID:0
+
+ //constructor
+ public function IRemoconMethod(); //MethodID:4598, dispID:0
+ }
+}
+
+//■script311■
+
+package jp.nicovideo.nicoplayer.remocon.method{
+
+ import jp.nicovideo.nicoplayer.remocon.RemoconReceiver
+
+ //■class(instance)_index:379
+ public class RemoconMethod extends Object implements IRemoconMethod
+ {
+ //static constructor
+ public static function RemoconMethod$cinit()
+ { //MethodID:4600, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RemoconMethod(hug1:Function)
+ { //MethodID:4601, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this._function = hug1;
+ }
+
+ //variables/etc.
+ private var _function:Function; //slotID:0
+
+ public function call(hug1:Object):void
+ { //MethodID:4602, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 23
+ this._function.apply(RemoconReceiver.instance.environment, [hug1]);
+ }
+ }
+}
+
+//■script312■
+
+package jp.nicovideo.nicoplayer.models.playlist{
+
+ //■class(instance)_index:380
+ public class PlaylistSortConstants extends Object
+ {
+ //static constructor
+ public static function PlaylistSortConstants$cinit()
+ { //MethodID:4604, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 147
+ CREATE_TIME_ASCEND = 0;
+ CREATE_TIME_DESCEND = 1;
+ MYLIST_COMMENT_ASCEND = 2;
+ MYLIST_COMMENT_DESCEND = 3;
+ TITLE_ASCEND = 4;
+ TITLE_DESCEND = 5;
+ FIRST_RETREVE_DESCEND = 6;
+ FIRST_RETREVE_ASCEND = 7;
+ VIEW_COUNTER_DESCEND = 8;
+ VIEW_COUNTER_ASCEND = 9;
+ UPDATE_TIME_DESCEND = 10;
+ UPDATE_TIME_ASCEND = 11;
+ NUM_RES_DESCEND = 12;
+ NUM_RES_ASCEND = 13;
+ MYLIST_COUNTER_DESCEND = 14;
+ MYLIST_COUNTER_ASCEND = 15;
+ LENGTH_SECONDS_DESCEND = 16;
+ LENGTH_SECONDS_ASCEND = 17;
+ }
+
+ //static variables/etc.
+ public static const CREATE_TIME_ASCEND:uint = 0; //slotID:1
+ public static const CREATE_TIME_DESCEND:uint = 1; //slotID:2
+ public static const MYLIST_COMMENT_ASCEND:uint = 2; //slotID:3
+ public static const MYLIST_COMMENT_DESCEND:uint = 3; //slotID:4
+ public static const TITLE_ASCEND:uint = 4; //slotID:5
+ public static const TITLE_DESCEND:uint = 5; //slotID:6
+ public static const FIRST_RETREVE_DESCEND:uint = 6; //slotID:7
+ public static const FIRST_RETREVE_ASCEND:uint = 7; //slotID:8
+ public static const VIEW_COUNTER_DESCEND:uint = 8; //slotID:9
+ public static const VIEW_COUNTER_ASCEND:uint = 9; //slotID:10
+ public static const UPDATE_TIME_DESCEND:uint = 10; //slotID:11
+ public static const UPDATE_TIME_ASCEND:uint = 11; //slotID:12
+ public static const NUM_RES_DESCEND:uint = 12; //slotID:13
+ public static const NUM_RES_ASCEND:uint = 13; //slotID:14
+ public static const MYLIST_COUNTER_DESCEND:uint = 14; //slotID:15
+ public static const MYLIST_COUNTER_ASCEND:uint = 15; //slotID:16
+ public static const LENGTH_SECONDS_DESCEND:uint = 16; //slotID:17
+ public static const LENGTH_SECONDS_ASCEND:uint = 17; //slotID:18
+
+ //constructor
+ public function PlaylistSortConstants()
+ { //MethodID:4605, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script313■
+
+package jp.nicovideo.nicoplayer.models.relation{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:381
+ public interface IVideoenderInfo
+ {
+ //static constructor
+ public static function IVideoenderInfo$cinit()
+ { //MethodID:4607, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get liveDJCatategoryName():String; //MethodID:4608, dispID:0
+
+ function get liveDJLinkURL():String; //MethodID:4609, dispID:0
+
+ function get liveDJThumbnailURL():String; //MethodID:4610, dispID:0
+
+ function get liveDJVideoTitle():String; //MethodID:4611, dispID:0
+
+ function get relatedListTarget():String; //MethodID:4612, dispID:0
+
+ function get relatedList():Vector.<IOwnerOtherVideo>; //MethodID:4613, dispID:0
+
+ function get ownerVideoListURL():String; //MethodID:4614, dispID:0
+
+ //constructor
+ public function IVideoenderInfo(); //MethodID:4615, dispID:0
+ }
+}
+
+//■script314■
+
+package jp.nicovideo.nicoplayer.models.relation{
+
+ import __AS3__.vec.Vector
+
+ //■class(instance)_index:382
+ public class VideoenderInfo extends Object implements IVideoenderInfo
+ {
+ //static constructor
+ public static function VideoenderInfo$cinit()
+ { //MethodID:4617, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoenderInfo(hug1:Vector.<IOwnerOtherVideo>, hug2:String, hug3:String=null, hug4:String=null, hug5:String=null, hug6:String=null, hug7:String=null)
+ { //MethodID:4618, LocalCount= 8 , MaxScope= 1, MaxStack= 2, CodeLength= 45
+ super();
+
+ this._liveDJCategoryName = hug4;
+ this._liveDJLinkURL = hug5;
+ this._liveDJVideoTitle = hug6;
+ this._liveDJThumbnailURL = hug7;
+ this._relatedListTarget = hug2;
+ this._relatedList = hug1;
+ this._ownerVideoListURL = hug3;
+ }
+
+ //variables/etc.
+ private var _liveDJCategoryName:String; //slotID:0
+ private var _liveDJLinkURL:String; //slotID:0
+ private var _liveDJThumbnailURL:String; //slotID:0
+ private var _liveDJVideoTitle:String; //slotID:0
+ private var _relatedListTarget:String; //slotID:0
+ private var _relatedList:Vector.<IOwnerOtherVideo>; //slotID:0
+ private var _ownerVideoListURL:String; //slotID:0
+
+ public function get liveDJCatategoryName():String
+ { //MethodID:4619, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveDJCategoryName;
+ }
+
+ public function get liveDJLinkURL():String
+ { //MethodID:4620, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveDJLinkURL;
+ }
+
+ public function get liveDJThumbnailURL():String
+ { //MethodID:4621, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveDJThumbnailURL;
+ }
+
+ public function get liveDJVideoTitle():String
+ { //MethodID:4622, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._liveDJVideoTitle;
+ }
+
+ public function get relatedListTarget():String
+ { //MethodID:4623, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._relatedListTarget;
+ }
+
+ public function get relatedList():Vector.<IOwnerOtherVideo>
+ { //MethodID:4624, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._relatedList;
+ }
+
+ public function get ownerVideoListURL():String
+ { //MethodID:4625, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ownerVideoListURL;
+ }
+ }
+}
+
+//■script315■
+//skip components :com.adobe.serialization.json
+//as filename :JSONEncoder.as
+
+//■script316■
+//skip components :com.adobe.serialization.json
+//as filename :JSONDecoder.as
+
+//■script317■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:385
+ public class Comment extends Object implements IComment
+ {
+ //static constructor
+ public static function Comment$cinit()
+ { //MethodID:4643, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Comment()
+ { //MethodID:4644, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var _commentList:ICommentList; //slotID:0
+ private var _comment:String = ""; //slotID:0
+ private var _buttonComment:String; //slotID:0
+ private var _resNo:uint; //slotID:0
+ private var _vpos:Number = 0.0; //slotID:0
+ private var _date:Date; //slotID:0
+ private var _userID:String; //slotID:0
+ private var _userName:String; //slotID:0
+ private var _isOwner:Boolean = false; //slotID:0
+ private var _deleted:uint = 0; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _anonymity:uint = 0; //slotID:0
+ private var _fromLive:uint = 0; //slotID:0
+ private var _fork:uint = 0; //slotID:0
+ private var _command:ICommand; //slotID:0
+ private var _justPosted:Boolean = false; //slotID:0
+ private var _ng:uint = 0; //slotID:0
+ private var _clickCount:uint = 0; //slotID:0
+ private var _leafID:uint = 0; //slotID:0
+ private var _isTrunk:Boolean = false; //slotID:0
+
+ public function get message():String
+ { //MethodID:4645, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comment;
+ }
+
+ internal function set message(hug1:String):void
+ { //MethodID:4646, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ this._comment = hug1;
+
+ if(this._command && this._command.hasButton) this._initButton();
+ }
+
+ public function get resNo():uint
+ { //MethodID:4647, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._resNo;
+ }
+
+ internal function set resNo(hug1:uint):void
+ { //MethodID:4648, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._resNo = hug1;
+ }
+
+ public function get vpos():Number
+ { //MethodID:4649, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._vpos;
+ }
+
+ internal function set vpos(hug1:Number):void
+ { //MethodID:4650, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 31
+ if((hug1 % 10) != 0) throw new ArgumentError("Commentのvpos値の精度は10e-2秒以上である必要があります。vpos=" + hug1);
+
+ this._vpos = hug1;
+ }
+
+ public function get date():Date
+ { //MethodID:4651, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._date;
+ }
+
+ internal function set date(hug1:Date):void
+ { //MethodID:4652, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._date = hug1;
+ }
+
+ public function get userID():String
+ { //MethodID:4653, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userID;
+ }
+
+ internal function set userID(hug1:String):void
+ { //MethodID:4654, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userID = hug1;
+ }
+
+ public function get userName():String
+ { //MethodID:4655, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userName;
+ }
+
+ internal function set userName(hug1:String):void
+ { //MethodID:4656, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userName = hug1;
+ }
+
+ public function get isOwner():Boolean
+ { //MethodID:4657, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isOwner;
+ }
+
+ internal function set isOwner(hug1:Boolean):void
+ { //MethodID:4658, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isOwner = hug1;
+ }
+
+ public function get deleted():uint
+ { //MethodID:4659, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._deleted;
+ }
+
+ internal function set deleted(hug1:uint):void
+ { //MethodID:4660, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._deleted = hug1;
+ }
+
+ public function get isPremium():Boolean
+ { //MethodID:4661, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPremium;
+ }
+
+ internal function set isPremium(hug1:Boolean):void
+ { //MethodID:4662, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isPremium = hug1;
+ }
+
+ public function get anonymity():uint
+ { //MethodID:4663, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._anonymity;
+ }
+
+ internal function set anonymity(hug1:uint):void
+ { //MethodID:4664, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._anonymity = hug1;
+ }
+
+ public function get fromLive():uint
+ { //MethodID:4665, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._fromLive;
+ }
+
+ internal function set fromLive(hug1:uint):void
+ { //MethodID:4666, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._fromLive = hug1;
+ }
+
+ public function get fork():uint
+ { //MethodID:4667, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._fork;
+ }
+
+ internal function set fork(hug1:uint):void
+ { //MethodID:4668, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._fork = hug1;
+ }
+
+ public function get justPosted():Boolean
+ { //MethodID:4669, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._justPosted;
+ }
+
+ internal function set justPosted(hug1:Boolean):void
+ { //MethodID:4670, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._justPosted = hug1;
+ }
+
+ public function get ng():uint
+ { //MethodID:4671, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._ng;
+ }
+
+ internal function set ng(hug1:uint):void
+ { //MethodID:4672, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._ng = hug1;
+ }
+
+ internal function set clickCount(hug1:uint):void
+ { //MethodID:4673, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._clickCount = hug1;
+ }
+
+ public function get clickCount():uint
+ { //MethodID:4674, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._clickCount;
+ }
+
+ public function get command():ICommand
+ { //MethodID:4675, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._command;
+ }
+
+ internal function set command(hug1:ICommand):void
+ { //MethodID:4676, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 24
+ this._command = hug1;
+
+ if(this._command.hasButton) this._initButton();
+ }
+
+ public function get isClickable():Boolean
+ { //MethodID:4677, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 35
+ if(!this.command.hasButton) return false;
+
+ if(this.commentList) return this.commentList.isClickable(this);
+
+ return false;
+ }
+
+ private function _initButton():void
+ { //MethodID:4678, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 188
+ var hug2:int = 0;
+ var hug3:int = 0;
+ var hug4:int = 0;
+ var hug5:int = 0;
+ var hug1:RegExp = new RegExp("^(.*?)(\[)(.*)(\])(.*)", "s");
+ this._buttonComment = this._comment;
+
+ if(!hug1.test(this._comment)){
+ hug2 = this._comment.indexOf("[");
+ hug3 = this._comment.indexOf("]");
+ hug4 = this._comment.lastIndexOf("[");
+ hug5 = this._comment.lastIndexOf("]");
+
+ if((hug2 == (-1)) || ((hug3 != (-1)) && (hug2 > hug3))) this._buttonComment = ("[" + this._comment);
+
+ if((hug3 == (-1)) || ((hug4 != (-1)) && (hug4 > hug5))) this._buttonComment += "]";
+ }
+ }
+
+ public function get buttonComment():String
+ { //MethodID:4679, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 20
+ if(!this._buttonComment) this._initButton();
+
+ return this._buttonComment;
+ }
+
+ public function get leafID():uint
+ { //MethodID:4680, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._leafID;
+ }
+
+ internal function set leafID(hug1:uint):void
+ { //MethodID:4681, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._leafID = hug1;
+ }
+
+ public function get isTrunk():Boolean
+ { //MethodID:4682, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isTrunk;
+ }
+
+ internal function set isTrunk(hug1:Boolean):void
+ { //MethodID:4683, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isTrunk = hug1;
+ }
+
+ public function get commentList():ICommentList
+ { //MethodID:4684, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentList;
+ }
+
+ internal function set commentList(hug1:ICommentList):void
+ { //MethodID:4685, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._commentList = hug1;
+ }
+ }
+}
+
+//■script318■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+
+ public const comment_builder:* = "jp.nicovideo.nicoplayer.models.comment:comment_builder";//slotID:0
+
+}
+
+//■script319■
+
+package jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowChildren{
+
+ import flash.display.MovieClip
+
+ //■class(instance)_index:386
+ public interface ITabContent
+ {
+ //static constructor
+ public static function ITabContent$cinit()
+ { //MethodID:4688, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get tab():Tab; //MethodID:4689, dispID:0
+
+ function get content():MovieClip; //MethodID:4690, dispID:0
+
+ function onShowingContent():void; //MethodID:4691, dispID:0
+
+ function onHidingContent():void; //MethodID:4692, dispID:0
+
+ //constructor
+ public function ITabContent(); //MethodID:4693, dispID:0
+ }
+}
+
+//■script320■
+
+package jp.nicovideo.app.applibar.externals.events{
+
+ import flash.events.Event
+ import jp.nicovideo.app.applibar.externals.IApplibarClient
+
+ //■class(instance)_index:387
+ public class ApplibarClientEvent extends Event
+ {
+ //static constructor
+ public static function ApplibarClientEvent$cinit()
+ { //MethodID:4695, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ CONTAINER_RESIZE = "containerResize";
+ SCREEN_RESIZE = "screenResize";
+ APPLIBAR_VISIBLE_UPDATE = "applibarVisibleUpdate";
+ }
+
+ //static variables/etc.
+ public static const CONTAINER_RESIZE:String = "containerResize";//slotID:1
+ public static const SCREEN_RESIZE:String = "screenResize"; //slotID:2
+ public static const APPLIBAR_VISIBLE_UPDATE:String = "applibarVisibleUpdate";//slotID:3
+
+ //constructor
+ public function ApplibarClientEvent(hug1:String, hug2:IApplibarClient, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:4696, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 10
+ super(hug1, hug3, hug4);
+ }
+
+ //variables/etc.
+ private var _client:IApplibarClient; //slotID:0
+
+ public function get client():IApplibarClient
+ { //MethodID:4697, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._client;
+ }
+ }
+}
+
+//■script321■
+
+package jp.nicovideo.app.api{
+
+ import jp.nicovideo.app.info.IAppliInfo
+
+ //■class(instance)_index:388
+ public interface IAPIObjectProvider
+ {
+ //static constructor
+ public static function IAPIObjectProvider$cinit()
+ { //MethodID:4699, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get majorVersion():uint; //MethodID:4700, dispID:0
+
+ function getObject(hug1:String, hug2:IAppliInfo):*; //MethodID:4701, dispID:0
+
+ function putObject(hug1:String, hug2:*):void; //MethodID:4702, dispID:0
+
+ function hasSet(hug1:String):Boolean; //MethodID:4703, dispID:0
+
+ //constructor
+ public function IAPIObjectProvider(); //MethodID:4704, dispID:0
+ }
+}
+
+//■script322■
+
+package jp.nicovideo.app.applibar.externals{
+
+ //■class(instance)_index:389
+ public class ContainerName extends Object
+ {
+ //static constructor
+ public static function ContainerName$cinit()
+ { //MethodID:4706, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ NICO_PLAYER = "nicoPlayer";
+ LIVE_PLAYER = "livePlayer";
+ CANVAS = "canvas";
+ PLAYWATCHER = "playwatcher";
+ }
+
+ //static variables/etc.
+ public static const NICO_PLAYER:String = "nicoPlayer"; //slotID:1
+ public static const LIVE_PLAYER:String = "livePlayer"; //slotID:2
+ public static const CANVAS:String = "canvas"; //slotID:3
+ public static const PLAYWATCHER:String = "playwatcher"; //slotID:4
+
+ //constructor
+ public function ContainerName()
+ { //MethodID:4707, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script323■
+
+package jp.nicovideo.nicoplayer.app.api.v1{
+
+ import jp.nicovideo.app.api.SoloObjectPool
+ import jp.nicovideo.app.api.api_system
+ import jp.nicovideo.app.conf.AppliConstants
+ import jp.nicovideo.app.info.IAppliInfo
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.common.Marquee
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.common.NGFilter
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.www.CommentServerClient
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.www.NicoThread
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.www.PlayerConfig
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.www.VideoInfo
+ import jp.nicovideo.nicoplayer.app.api.v1.plugin.www.VideoPlayer
+ import jp.nicovideo.nicoplayer.plugin.IPluginClient
+ import jp.nicovideo.util.ObjectPool
+
+
+ public function getPools(hug1:IPluginClient):Object
+ { //dispID:3, MethodID:4718, LocalCount= 3 , MaxScope= 2, MaxStack= 6, CodeLength= 210
+ internal var client:IPluginClient; //slotID:1
+ internal var ret:*; //slotID:2
+ internal var marquee:Marquee; //slotID:3
+
+ marquee = null;
+ client = hug1;
+ ret = {};
+ ret["jp.nicovideo.app.plugin.www.VideoInfo"] = new SoloObjectPool(function():VideoInfo{ //MethodID:4709, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ return new VideoInfo(client.videoDetail, client.flashVars);
+ });
+
+ ret["jp.nicovideo.app.plugin.www.VideoPlayer"] = new ObjectPool(function(hug1:IAppliInfo):VideoPlayer{ //MethodID:4710, LocalCount= 4 , MaxScope= 0, MaxStack= 4, CodeLength= 51
+ var hug2:* = new VideoPlayer(client.videoController, client.playerConfig, client.audioShutter);
+ var hug3:* = hug2;
+
+ hug3.reset(hug1.id);
+
+ return hug2;
+ }, AppliConstants.INSTALL_MAX_NUM, function(hug1:VideoPlayer, hug2:IAppliInfo):VideoPlayer{ //MethodID:4711, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 24
+ var hug3:VideoPlayer = hug1;
+
+ hug3.reset(hug2.id);
+
+ return hug1;
+ });
+
+ ret["jp.nicovideo.app.plugin.www.CommentServerClient"] = new ObjectPool(function(hug1:IAppliInfo):CommentServerClient{ //MethodID:4712, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 20
+ return new CommentServerClient(client.commentListContainer, client.filteredCommentPoolContainer);
+ });
+
+ ret["jp.nicovideo.app.plugin.www.NicoThread"] = new SoloObjectPool(function():NicoThread{ //MethodID:4713, LocalCount= 1 , MaxScope= 0, MaxStack= 4, CodeLength= 35
+ return new NicoThread(client.getFLV.threadID, client.flashVars.isMymemory, client.getFLV.optionalThreadID);
+ });
+
+ ret["jp.nicovideo.app.plugin.www.PlayerConfig"] = new SoloObjectPool(function():PlayerConfig{ //MethodID:4714, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 14
+ return new PlayerConfig(client.playerConfig);
+ });
+
+ ret["jp.nicovideo.app.plugin.common.NGFilter"] = new SoloObjectPool(function():NGFilter{ //MethodID:4715, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 14
+ return new NGFilter(client.ngFilter);
+ });
+
+ marquee = new Marquee();
+
+ client.addInitListener(["marqueeClient"], function():void{ //MethodID:4716, LocalCount= 1 , MaxScope= 0, MaxStack= 2, CodeLength= 14
+ marquee.init(client.marqueeClient);
+ });
+
+ ret["jp.nicovideo.app.plugin.common.Marquee"] = new SoloObjectPool(function():Marquee{ //MethodID:4717, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 4
+ return marquee;
+ });
+
+ return ret;
+ }
+
+}
+
+//■script324■
+
+package jp.nicovideo.app.api{
+
+ import jp.nicovideo.app.info.IAppliInfo
+ import jp.nicovideo.util.IObjectPool
+
+ //■class(instance)_index:390
+ public class APIObjectProvider extends Object implements IAPIObjectProvider
+ {
+ //static constructor
+ public static function APIObjectProvider$cinit()
+ { //MethodID:4720, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function APIObjectProvider(hug1:uint, hug2:Object)
+ { //MethodID:4721, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._majorVersion = hug1;
+ this._pools = hug2;
+ }
+
+ //variables/etc.
+ private var _majorVersion:uint; //slotID:0
+ private var _pools:Object; //slotID:0
+
+ public function get majorVersion():uint
+ { //MethodID:4722, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._majorVersion;
+ }
+
+ public function getObject(hug1:String, hug2:IAppliInfo):*
+ { //MethodID:4723, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 41
+ if(!this.hasSet(hug1)) throw new ArgumentError("APIObjectProvider.putObject: name has not been set.");
+
+ return (this._pools[hug1] as IObjectPool).create(hug2);
+ }
+
+ public function putObject(hug1:String, hug2:*):void
+ { //MethodID:4724, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 42
+ if(!this.hasSet(hug1)) throw new ArgumentError("APIObjectProvider.putObject: name has not been set.");
+
+ var hug3:IObjectPool = this._pools[hug1];
+
+ hug3.restore(hug2);
+ }
+
+ public function hasSet(hug1:String):Boolean
+ { //MethodID:4725, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ return this._pools.hasOwnProperty(hug1);
+ }
+ }
+}
+
+//■script325■
+
+package jp.nicovideo.app.applibar.externals{
+
+ //■class(instance)_index:391
+ public interface IBalloonController implements IEventDispatcher
+ {
+ //static constructor
+ public static function IBalloonController$cinit()
+ { //MethodID:4727, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isShowing():Boolean; //MethodID:4728, dispID:0
+
+ function get containerWidth():Number; //MethodID:4729, dispID:0
+
+ function get containerHeight():Number; //MethodID:4730, dispID:0
+
+ function close():void; //MethodID:4731, dispID:0
+
+ //constructor
+ public function IBalloonController(); //MethodID:4732, dispID:0
+ }
+}
+
+//■script326■
+
+package jp.nicovideo.util.stream{
+
+ import flash.events.AsyncErrorEvent
+ import flash.events.ErrorEvent
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.NetStatusEvent
+ import flash.events.SecurityErrorEvent
+ import flash.events.TimerEvent
+ import flash.net.NetConnection
+ import flash.net.NetStream
+ import flash.utils.Timer
+ import jp.nicovideo.util.events.EventBarrier
+ import jp.nicovideo.util.stream.events.StreamErrorEvent
+ import jp.nicovideo.util.stream.events.StreamEvent
+
+ //■class(instance)_index:392
+ public class AbstractStreamClient extends EventDispatcher
+ {
+ //static constructor
+ public static function AbstractStreamClient$cinit()
+ { //MethodID:4734, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function AbstractStreamClient(hug1:StreamSource)
+ { //MethodID:4737, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 103
+ internal var stream:StreamSource; //slotID:1
+
+ stream = hug1;
+
+ super();
+
+ this._stream = stream;
+ this._metaDataDelayTimer = new Timer(StreamSource._DEFAULT_BUFFER_TIME, 1);
+
+ this._metaDataDelayTimer.addEventListener(TimerEvent.TIMER, this._onMetaDataDelayHandler);
+
+ this._completeBarrier = new EventBarrier();
+
+ this._stream.addEventListenerClosure(StreamEvent.PAUSED, this._completeBarrier.bind(function(hug1:Event):void{ //MethodID:4735, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }));
+ this._completeBarrier.finish(function():void{ //MethodID:4736, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _stream.init();
+ });
+ }
+
+ //variables/etc.
+ protected var _metaDataDelayTimer:Timer; //slotID:0
+ protected var _stream:StreamSource; //slotID:0
+ private var _metaData:Object; //slotID:0
+ protected var _ns:NetStream; //slotID:0
+ protected var _nc:NetConnection; //slotID:0
+ private var _vposWatcher:Timer; //slotID:0
+ protected var _completeBarrier:EventBarrier; //slotID:0
+
+ public function seek(hug1:Number):void
+ { //MethodID:4738, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function resume():void
+ { //MethodID:4739, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function pause():void
+ { //MethodID:4740, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function close():void
+ { //MethodID:4741, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 44
+ if(this._vposWatcher) this._vposWatcher.stop();
+
+ if(this._metaDataDelayTimer) this._metaDataDelayTimer.removeEventListener(TimerEvent.TIMER, this._onMetaDataDelayHandler);
+ }
+
+ public function end():void
+ { //MethodID:4742, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 21
+ this._stream.dispatchEvent(new StreamEvent(StreamEvent.ENDED));
+ }
+
+ public function get loadedLength():Number
+ { //MethodID:4743, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return 0;
+ }
+
+ public function get vpos():Number
+ { //MethodID:4744, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 5
+ return 0;
+ }
+
+ public function set netSteram(hug1:NetStream):void
+ { //MethodID:4745, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 89
+ if(this._ns) return;
+
+ this._ns = hug1;
+
+ this._ns.removeEventListener(NetStatusEvent.NET_STATUS, this._onNetStatus);
+ this._ns.removeEventListener(AsyncErrorEvent.ASYNC_ERROR, this._onError);
+ this._ns.addEventListener(NetStatusEvent.NET_STATUS, this._onNetStatus);
+ this._ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, this._onError);
+ }
+
+ public function set netConnection(hug1:NetConnection):void
+ { //MethodID:4746, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 87
+ if(this._nc) return;
+
+ this._nc = hug1;
+
+ this._nc.removeEventListener(NetStatusEvent.NET_STATUS, this._onNetStatus);
+ this._nc.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, this._onError);
+ this._nc.addEventListener(NetStatusEvent.NET_STATUS, this._onNetStatus);
+ this._nc.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this._onError);
+ }
+
+ private function _onMetaDataDelayHandler(hug1:TimerEvent):void
+ { //MethodID:4747, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 47
+ this._metaDataDelayTimer.stop();
+
+ if(this._metaData) this._stream.setMetaData(this._metaData);
+
+ if(!this._stream.isConnected) this._onInit();
+ }
+
+ protected function _onInit():void
+ { //MethodID:4748, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 8
+ this.pause();
+ }
+
+ protected function _onSuccess():void
+ { //MethodID:4754, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 32
+ internal var catchEnd:Function; //slotID:1
+
+ catchEnd = function():void{ //MethodID:4753, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 91
+ internal var lastTime:Number; //slotID:1
+
+ lastTime = NaN;
+ lastTime = 0;
+ _vposWatcher = new Timer(250);
+
+ _vposWatcher.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:4749, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 105
+ var hug2:Number = NaN;
+
+ if(_stream.length == (-1)) return;
+
+ if((_stream.vpos >= (_stream.length - 2000)) && (lastTime == _ns.time)){
+ hug2 = (lastTime * 1000);
+
+ if(hug2 != _stream.length) _stream.setLength(hug2, true);
+ end();
+ }
+
+ lastTime = _ns.time.valueOf();
+ });
+ _stream.addEventListenerClosure(StreamEvent.PLAYED, function(hug1:StreamEvent):void{ //MethodID:4750, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _vposWatcher.start();
+ });
+ _stream.addEventListenerClosure(StreamEvent.PAUSED, function(hug1:StreamEvent):void{ //MethodID:4751, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _vposWatcher.stop();
+ });
+ _stream.addEventListenerClosure(StreamEvent.ENDED, function(hug1:StreamEvent):void{ //MethodID:4752, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 8
+ _vposWatcher.stop();
+ });
+ };
+
+ this._stream.createNetStream();
+ catchEnd();
+ }
+
+ private function _onNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4755, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 170
+ switch(hug1.info.level){
+ case "status":
+ this._onNormalNetStatus(hug1);
+ this._stream.dispatchEvent(new StreamEvent(StreamEvent.NET_STATUS, hug1.info));
+ break;
+ case "warning":
+ this._onWarningNetStatus(hug1);
+ this._stream.dispatchEvent(new StreamEvent(StreamEvent.NET_STATUS, hug1.info));
+ break;
+ case "error":
+ this._onErrorNetStatus(hug1);
+ break;
+ default:
+ break;
+ }
+ }
+
+ protected function _onNormalNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4756, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 114
+ switch(hug1.info.code){
+ case "NetConnection.Connect.Success":
+ this._onSuccess();
+ break;
+ case "NetConnection.Connect.Closed":
+ this.close();
+ this._stream.dispatchEvent(new StreamEvent(StreamEvent.CLOSE));
+ break;
+ default:
+ break;
+ }
+ }
+
+ protected function _onErrorNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4757, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 91
+ switch(hug1.info.code){
+ case "NetStream.Play.StreamNotFound":
+ this.close();
+ break;
+ default:
+ break;
+ }
+
+ this._stream.dispatchEvent(new StreamErrorEvent(StreamErrorEvent.ERROR, hug1.info));
+ }
+
+ protected function _onWarningNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4758, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ protected function _onError(hug1:ErrorEvent):void
+ { //MethodID:4759, LocalCount= 2 , MaxScope= 1, MaxStack= 7, CodeLength= 37
+ this._stream.dispatchEvent(new StreamErrorEvent(StreamErrorEvent.ERROR, {code:hug1.type, description:hug1.text}));
+ }
+
+ public function onMetaData(hug1:Object, ...rest):void
+ { //MethodID:4760, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 69
+ if(!this._metaData){
+ this._metaData = hug1;
+
+ if(!this._metaDataDelayTimer.running){
+ this._metaDataDelayTimer.removeEventListener(TimerEvent.TIMER, this._onMetaDataDelayHandler);
+ this._metaDataDelayTimer.addEventListener(TimerEvent.TIMER, this._onMetaDataDelayHandler);
+ this._metaDataDelayTimer.start();
+ }
+ }
+ }
+
+ public function onPlayStatus(hug1:Object):void
+ { //MethodID:4761, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onXMPData(hug1:Object):void
+ { //MethodID:4762, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onImageData(hug1:Object):void
+ { //MethodID:4763, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onTextData(hug1:Object):void
+ { //MethodID:4764, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onCuePoint(hug1:Object):void
+ { //MethodID:4765, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onLastSecond(hug1:Object):void
+ { //MethodID:4766, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+ }
+}
+
+//■script327■
+
+package jp.nicovideo.util.stream{
+
+ import flash.events.NetStatusEvent
+ import flash.utils.setTimeout
+ import jp.nicovideo.util.stream.events.StreamEvent
+
+ //■class(instance)_index:393
+ public class RtmpClient extends AbstractStreamClient
+ {
+ //static constructor
+ public static function RtmpClient$cinit()
+ { //MethodID:4768, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function RtmpClient(hug1:StreamSource)
+ { //MethodID:4769, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 7
+ super(hug1);
+ }
+
+ //variables/etc.
+ private var _hasSetTimeout4NoMetaData:Boolean = false; //slotID:0
+ private var _sending:Boolean = false; //slotID:0
+
+ override protected function _onSuccess():void
+ { //MethodID:4771, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 72
+ super._onSuccess();
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.START_LOAD));
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.COMPLETE_LOAD));
+
+ if(!this._hasSetTimeout4NoMetaData){
+ setTimeout(function():void{ //MethodID:4770, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 18
+ if(!_stream.isConnected) _metaDataDelayTimer.start();
+ }, 3000);
+
+ this._hasSetTimeout4NoMetaData = true;
+ }
+ }
+
+ override public function get loadedLength():Number
+ { //MethodID:4772, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 9
+ return _stream.length;
+ }
+
+ override public function seek(hug1:Number):void
+ { //MethodID:4773, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ _ns.seek(hug1);
+
+ this._sending = true;
+ }
+
+ override public function resume():void
+ { //MethodID:4774, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ _ns.resume();
+
+ this._sending = true;
+ }
+
+ override public function pause():void
+ { //MethodID:4775, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ _ns.pause();
+
+ this._sending = true;
+ }
+
+ override public function get vpos():Number
+ { //MethodID:4776, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return (_ns.time * 1000);
+ }
+
+ override protected function _onNormalNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4780, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 204
+ internal var event:NetStatusEvent; //slotID:1
+
+ event = hug1;
+
+ super._onNormalNetStatus(event);
+
+ switch(event.info.code){
+ case "NetStream.Unpause.Notify":
+ setTimeout(function():void{ //MethodID:4777, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 25
+ _sending = false;
+
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.PLAYED));
+ }, 0);
+ break;
+ case "NetStream.Pause.Notify":
+ setTimeout(function():void{ //MethodID:4778, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 25
+ _sending = false;
+
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.PAUSED));
+ }, 0);
+ break;
+ case "NetStream.Seek.Notify":
+ setTimeout(function():void{ //MethodID:4779, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 25
+ _sending = false;
+
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.SEEKED));
+ }, 100);
+ break;
+ case "NetStream.Buffer.Flush":
+ case "NetStream.Buffer.Full":
+ break;
+ default:
+ break;
+ }
+ }
+
+ override protected function _onErrorNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4781, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ super._onErrorNetStatus(hug1);
+
+ this._sending = false;
+ }
+
+ override public function onPlayStatus(hug1:Object):void
+ { //MethodID:4782, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 74
+ super.onPlayStatus(hug1);
+
+ switch(hug1.code){
+ case "NetStream.Play.Complete":
+ end();
+ break;
+ default:
+ break;
+ }
+ }
+
+ public function onBWDone(... rest):void
+ { //MethodID:4783, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ public function onBWCheck(... rest):void
+ { //MethodID:4784, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+ }
+}
+
+import flash.events.EventDispatcher
+import flash.utils.setTimeout
+import jp.nicovideo.util.stream.events.StreamEvent
+
+//■class(instance)_index:394
+//private
+class AsynchronousMethods extends Object
+{
+ //static constructor
+ public static function AsynchronousMethods$cinit()
+ { //MethodID:4785, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function AsynchronousMethods(hug1:EventDispatcher)
+ { //MethodID:4786, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ this._processes = [];
+
+ super();
+
+ this._dispatcher = hug1;
+ }
+
+ //variables/etc.
+ private var _processed:Boolean = false; //slotID:0
+ private var _dispatcher:EventDispatcher; //slotID:0
+ private var _doEvent:String; //slotID:0
+ private var _processes:Array; //slotID:0
+
+ public function send(hug1:Function, hug2:String):void
+ { //MethodID:4787, LocalCount= 3 , MaxScope= 1, MaxStack= 5, CodeLength= 74
+ if(!this.processed){
+ this._doEvent = hug2;
+
+ this._processes.push({type:hug2.toString(), method:hug1});
+ hug1();
+ }else{
+ this._doEvent = hug2;
+
+ this._processes.push({type:hug2.toString(), method:hug1});
+ }
+ }
+
+ public function reset():void
+ { //MethodID:4788, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ this._doEvent = "";
+ this._processed = false;
+ this._processes = [];
+ }
+
+ public function get processed():Boolean
+ { //MethodID:4789, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 14
+ return (this._processes.length != 0);
+ }
+
+ public function recieve(hug1:String):void
+ { //MethodID:4791, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 50
+ private var type:String; //slotID:1
+
+ type = hug1;
+ this._processes = this._processes.filter(function(hug1:*, hug2:Number, hug3:Array):Boolean{ //MethodID:4790, LocalCount= 4 , MaxScope= 0, MaxStack= 3, CodeLength= 28
+ if(hug1.type != type){
+ setTimeout(hug1.method, 0);
+
+ return true;
+ }
+
+ return false;
+ });
+ this._doEvent = type;
+ this._processed = (this._processes.length != 0);
+ }
+
+ public function dispatchDoEvent():void
+ { //MethodID:4792, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 51
+ if((this._doEvent != "") && (this._doEvent != null)){
+ this._dispatcher.dispatchEvent(new StreamEvent(this._doEvent));
+
+ this._doEvent = "";
+ }
+ }
+}
+
+//■script328■
+
+package jp.nicovideo.util.stream{
+
+ import flash.events.Event
+ import flash.events.NetStatusEvent
+ import flash.events.TimerEvent
+ import flash.utils.Timer
+ import flash.utils.setTimeout
+ import jp.nicovideo.util.stream.events.StreamEvent
+
+ //■class(instance)_index:395
+ public class HttpClient extends AbstractStreamClient
+ {
+ //static constructor
+ public static function HttpClient$cinit()
+ { //MethodID:4794, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function HttpClient(hug1:StreamSource)
+ { //MethodID:4796, LocalCount= 3 , MaxScope= 2, MaxStack= 4, CodeLength= 41
+ internal var stream:StreamSource; //slotID:1
+
+ stream = hug1;
+
+ super(stream);
+ _stream.addEventListenerClosure(StreamEvent.SEEKED, _completeBarrier.bind(function(hug1:Event):void{ //MethodID:4795, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }));
+ }
+
+ //variables/etc.
+ private var _progressTimer:Timer; //slotID:0
+ private var _hasSetTimeout4NoMetaData:Boolean = false; //slotID:0
+
+ override protected function _onSuccess():void
+ { //MethodID:4800, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 29
+ internal var caetchLoaded:Function; //slotID:1
+
+ caetchLoaded = function():void{ //MethodID:4799, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 50
+ internal var _isLoadStarted:Boolean; //slotID:1
+
+ _isLoadStarted = false;
+ _isLoadStarted = false;
+ _progressTimer = new Timer(40);
+
+ _progressTimer.addEventListener(TimerEvent.TIMER, function(hug1:TimerEvent):void{ //MethodID:4798, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 121
+ internal var event:TimerEvent; //slotID:1
+
+ event = hug1;
+
+ if(_ns.bytesLoaded <= 0) return;
+
+ if(!_isLoadStarted){
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.START_LOAD));
+
+ _isLoadStarted = true;
+ }
+
+ if(!_hasSetTimeout4NoMetaData){
+ setTimeout(function():void{ //MethodID:4797, LocalCount= 1 , MaxScope= 0, MaxStack= 1, CodeLength= 18
+ if(!_stream.isConnected) _metaDataDelayTimer.start();
+ }, 3000);
+
+ _hasSetTimeout4NoMetaData = true;
+ }
+
+ if(_ns.bytesLoaded >= _ns.bytesTotal){
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.COMPLETE_LOAD));
+ _progressTimer.stop();
+ }
+ });
+ _progressTimer.start();
+ };
+
+ super._onSuccess();
+ caetchLoaded();
+ }
+
+ override protected function _onInit():void
+ { //MethodID:4801, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 15
+ this.seek(0);
+ super._onInit();
+ }
+
+ override public function resume():void
+ { //MethodID:4803, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 26
+ _ns.resume();
+ setTimeout(function():void{ //MethodID:4802, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.PLAYED));
+ }, 0);
+ }
+
+ override public function pause():void
+ { //MethodID:4805, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 26
+ _ns.pause();
+ setTimeout(function():void{ //MethodID:4804, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.PAUSED));
+ }, 0);
+ }
+
+ override public function seek(hug1:Number):void
+ { //MethodID:4806, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ _ns.seek(hug1);
+ }
+
+ override public function get vpos():Number
+ { //MethodID:4807, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ return (_ns.time * 1000);
+ }
+
+ override protected function _onNormalNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4809, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 97
+ internal var event:NetStatusEvent; //slotID:1
+
+ event = hug1;
+
+ super._onNormalNetStatus(event);
+
+ switch(event.info.code){
+ case "NetStream.Seek.Notify":
+ setTimeout(function():void{ //MethodID:4808, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 18
+ _stream.dispatchEvent(new StreamEvent(StreamEvent.SEEKED));
+ }, 0);
+ break;
+ default:
+ break;
+ }
+ }
+
+ override public function close():void
+ { //MethodID:4810, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 16
+ super.close();
+ this._progressTimer.stop();
+ }
+
+ override protected function _onErrorNetStatus(hug1:NetStatusEvent):void
+ { //MethodID:4811, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 70
+ switch(hug1.info.code){
+ case "NetStream.Seek.InvalidTime":
+ break;
+ default:
+ break;
+ }
+
+ super._onErrorNetStatus(hug1);
+ }
+
+ override public function get loadedLength():Number
+ { //MethodID:4812, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 38
+ return ((Number(_ns.bytesLoaded) / Number(_ns.bytesTotal)) * Number(_stream.length));
+ }
+ }
+}
+
+//■script329■
+
+package jp.nicovideo.nicoplayer.models.comment.command{
+
+ //■class(instance)_index:396
+ public class CommandSize extends Object
+ {
+ //static constructor
+ public static function CommandSize$cinit()
+ { //MethodID:4814, LocalCount= 1 , MaxScope= 1, MaxStack= 7, CodeLength= 89
+ BIG = "big";
+ BIG_SIZE = (26 * 1.5);
+ SMALL = "small";
+ SMALL_SIZE = (10 * 1.5);
+ MEDIUM = "medium";
+ MEDIUM_SIZE = (16 * 1.5);
+ SIZES = {big:BIG_SIZE, small:SMALL_SIZE, medium:MEDIUM_SIZE};
+ }
+
+ //static variables/etc.
+ public static const BIG:String = "big"; //slotID:1
+ public static const BIG_SIZE:Number = 39.0; //slotID:2
+ public static const SMALL:String = "small"; //slotID:3
+ public static const SMALL_SIZE:Number = 15.0; //slotID:4
+ public static const MEDIUM:String = "medium"; //slotID:5
+ public static const MEDIUM_SIZE:Number = 24.0; //slotID:6
+ public static const SIZES:Object; //slotID:7
+
+ //constructor
+ public function CommandSize()
+ { //MethodID:4815, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script330■
+
+package jp.nicovideo.util.net.local{
+
+ import flash.events.SecurityErrorEvent
+ import flash.net.LocalConnection
+
+ //■class(instance)_index:397
+ public class LocalConnectionFactory extends Object
+ {
+ //static constructor
+ public static function LocalConnectionFactory$cinit()
+ { //MethodID:4817, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function create():LocalConnection
+ { //dispID:3, MethodID:4819, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 41
+ internal var lc:LocalConnection; //slotID:1
+
+ lc = new LocalConnection();
+
+ lc.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(hug1:SecurityErrorEvent):void{ //MethodID:4818, LocalCount= 2 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ });
+
+ return lc;
+ }
+
+ //constructor
+ public function LocalConnectionFactory()
+ { //MethodID:4820, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script331■
+//skip components :com.adobe.utils
+//as filename :IntUtil.as
+
+//■script332■
+//skip components :mx.utils
+//as filename :Base64Encoder.as
+
+//■script333■
+
+package jp.nicovideo.nicoplayer.models.log.elements.videoMenu{
+
+ //■class(instance)_index:400
+ public class VideoenderContentType extends Object
+ {
+ //static constructor
+ public static function VideoenderContentType$cinit()
+ { //MethodID:4839, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 84
+ RELATED_VIDEO = "relatedVideo";
+ OWNER_VIDEO = "ownerVideo";
+ LIVE_DJ = "liveDJ";
+ OWNER_VIDEO_LIST_PAGE_LINK = "ownerVideoListPageLink";
+ MOBILE_LEAD = "mobileLead";
+ ADD_MYLIST = "addMylist";
+ ALREADY_ADDED_MYLIST_LINK = "alreadyAddedMylistLink";
+ JUST_ADDED_MYLIST_LINK = "justAddedMylistLink";
+ GET_RELATION_VIDEOS = "getRelationVideos";
+ }
+
+ //static variables/etc.
+ public static const RELATED_VIDEO:String = "relatedVideo"; //slotID:1
+ public static const OWNER_VIDEO:String = "ownerVideo"; //slotID:2
+ public static const LIVE_DJ:String = "liveDJ"; //slotID:3
+ public static const OWNER_VIDEO_LIST_PAGE_LINK:String = "ownerVideoListPageLink";//slotID:4
+ public static const MOBILE_LEAD:String = "mobileLead"; //slotID:5
+ public static const ADD_MYLIST:String = "addMylist"; //slotID:6
+ public static const ALREADY_ADDED_MYLIST_LINK:String = "alreadyAddedMylistLink";//slotID:7
+ public static const JUST_ADDED_MYLIST_LINK:String = "justAddedMylistLink";//slotID:8
+ public static const GET_RELATION_VIDEOS:String = "getRelationVideos";//slotID:9
+
+ //constructor
+ public function VideoenderContentType()
+ { //MethodID:4840, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script334■
+
+package jp.nicovideo.nicoplayer.models.log.elements.videoMenu{
+
+ //■class(instance)_index:401
+ public class VideoenderTorrigerType extends Object
+ {
+ //static constructor
+ public static function VideoenderTorrigerType$cinit()
+ { //MethodID:4842, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ BUTTON_CLICK = "buttonClick";
+ END = "end";
+ }
+
+ //static variables/etc.
+ public static const BUTTON_CLICK:String = "buttonClick"; //slotID:1
+ public static const END:String = "end"; //slotID:2
+
+ //constructor
+ public function VideoenderTorrigerType()
+ { //MethodID:4843, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script335■
+
+package jp.nicovideo.util.net.local{
+
+ import flash.events.DataEvent
+ import flash.events.Event
+ import flash.events.EventDispatcher
+
+ use namespace (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test);
+
+ //■class(instance)_index:402
+ public class LocalSession extends EventDispatcher
+ {
+ //static constructor
+ public static function LocalSession$cinit()
+ { //MethodID:4845, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ SLAVE_PING_INTERVAL = 1000;
+ }
+
+ //static variables/etc.
+ internal static const SLAVE_PING_INTERVAL:Number = 1000.0; //slotID:1
+
+ //constructor
+ public function LocalSession(hug1:String)
+ { //MethodID:4846, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 163
+ this._receiver = {};
+ this._slaveNames = [];
+
+ super();
+
+ this._master = new LocalSessionMaster(hug1);
+ this._slave = new LocalSessionSlave(this._master);
+
+ this._slave.addEventListener(Event.INIT, dispatchEvent);
+ this._slave.addEventListener(DataEvent.DATA, dispatchEvent);
+ this._slave.addEventListener(LocalSessionEvent.SEND_SUCCEEDED, dispatchEvent);
+ this._slave.addEventListener(LocalSessionEvent.SEND_FAILURE, dispatchEvent);
+ this._master.addEventListener(LocalSessionEvent.MASTERIZE, dispatchEvent);
+ this._master.addEventListener(LocalSessionEvent.MASTER_PRESENCE, dispatchEvent);
+ this._slave.addEventListener(LocalSessionEvent.MASTER_ABSENCE, dispatchEvent);
+ }
+
+ //variables/etc.
+ private var _receiver:Object; //slotID:0
+ private var _slaveNames:Array; //slotID:0
+ private var _hasJoined:Boolean = false; //slotID:0
+ private var _slave:LocalSessionSlave; //slotID:0
+ private var _master:LocalSessionMaster; //slotID:0
+
+ public function get hasJoined():Boolean
+ { //MethodID:4847, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasJoined;
+ }
+
+ public function join():void
+ { //MethodID:4848, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ this._master.masterize([]);
+ this._slave.join();
+ }
+
+ public function setReceiver(hug1:String, hug2:Function=null):void
+ { //MethodID:4849, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ this._slave.setReceiver(hug1, hug2);
+ }
+
+ public function get slaveNames():Array
+ { //MethodID:4850, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._slave.slaveNames;
+ }
+
+ public function get connectionName():String
+ { //MethodID:4851, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._slave.name;
+ }
+
+ public function send(hug1:String, hug2:String, hug3:*):void
+ { //MethodID:4852, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._slave.send(hug1, hug2, hug3);
+ }
+
+ public function sendAll(hug1:String, hug2:*):void
+ { //MethodID:4853, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 13
+ this._slave.sendAll(hug1, hug2);
+ }
+
+ public function ping(hug1:String):void
+ { //MethodID:4854, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._slave.ping(hug1);
+ }
+
+ public function close():void
+ { //MethodID:4855, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 36
+ this._slave.close();
+ this._master.close();
+ dispatchEvent(new Event(Event.CLOSE));
+ }
+
+ public function get maseterConnectionName():String
+ { //MethodID:4856, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._master.masterName;
+ }
+
+ public function get isMaster():Boolean
+ { //MethodID:4857, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._master.isMaster;
+ }
+
+ public function get hasInitialized():Boolean
+ { //MethodID:4858, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._slave.hasInitialized;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get master():LocalSessionMaster
+ { //MethodID:4859, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._master;
+ }
+
+ (http://www.nicovideo.jp/as3_ns/nicoplayer/util.test) function get slave():LocalSessionSlave
+ { //MethodID:4860, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._slave;
+ }
+ }
+}
+
+//■script336■
+
+package jp.nicovideo.util.net.local{
+
+ import flash.events.Event
+
+ //■class(instance)_index:403
+ public class LocalSessionEvent extends Event
+ {
+ //static constructor
+ public static function LocalSessionEvent$cinit()
+ { //MethodID:4862, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ MASTERIZE = "masterize";
+ MASTER_ABSENCE = "masterAbsense";
+ MASTER_PRESENCE = "masterPresense";
+ SEND_SUCCEEDED = "sendSucceeded";
+ SEND_FAILURE = "sendFailure";
+ }
+
+ //static variables/etc.
+ public static const MASTERIZE:String = "masterize"; //slotID:1
+ public static const MASTER_ABSENCE:String = "masterAbsense"; //slotID:2
+ public static const MASTER_PRESENCE:String = "masterPresense"; //slotID:3
+ public static const SEND_SUCCEEDED:String = "sendSucceeded"; //slotID:4
+ public static const SEND_FAILURE:String = "sendFailure"; //slotID:5
+
+ //constructor
+ public function LocalSessionEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false, hug4:String=null)
+ { //MethodID:4863, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ super(hug1, hug2, hug3);
+
+ this._connectionName = hug4;
+ }
+
+ //variables/etc.
+ private var _connectionName:String; //slotID:0
+
+ public function get connectionName():String
+ { //MethodID:4864, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._connectionName;
+ }
+
+ override public function clone():Event
+ { //MethodID:4865, LocalCount= 1 , MaxScope= 1, MaxStack= 5, CodeLength= 23
+ return new LocalSessionEvent(type, bubbles, cancelable, this.connectionName);
+ }
+ }
+}
+
+//■script337■
+
+package jp.nicovideo.nicoplayer.views.comment.elements{
+
+ import flash.display.MovieClip
+ import flash.events.MouseEvent
+ import flash.filters.GlowFilter
+ import flash.text.TextField
+ import flash.text.TextFieldAutoSize
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+
+ //■class(instance)_index:404
+ public class ButtonContainer extends MovieClip
+ {
+ //static constructor
+ public static function ButtonContainer$cinit()
+ { //MethodID:4867, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function ButtonContainer()
+ { //MethodID:4868, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 135
+ this._prefix = new TextField();
+ this._postfix = new TextField();
+ this._button = new UserButton();
+
+ super();
+
+ this._postfix.autoSize = TextFieldAutoSize.LEFT;
+ this._prefix.autoSize = TextFieldAutoSize.LEFT;
+ var hug2:Boolean = false;
+ this._postfix.selectable = hug2;
+ this._prefix.selectable = hug2;
+ var hug2:Boolean = true;
+ this._postfix.multiline = hug2;
+ this._prefix.multiline = hug2;
+ var hug1:Array = [CommentTextField.BEVELFILTER_NORMAL];
+ var hug2:Array = hug1;
+ this._postfix.filters = hug2;
+ this._prefix.filters = hug2;
+ }
+
+ //variables/etc.
+ private var _comment:IComment; //slotID:0
+ private var _prefix:TextField; //slotID:0
+ private var _postfix:TextField; //slotID:0
+ private var _button:UserButton; //slotID:0
+
+ public function setupBoard():void
+ { //MethodID:4869, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 396
+ this._button.baseCenter.width = this._button.field.width;
+
+ if(this._button.counter.visible) this._button.baseCenter.width += this._button.counter.width;
+
+ this._button.baseRight.height = this._button.field.height;
+ this._button.baseCenter.height = this._button.field.height;
+ this._button.baseLeft.height = this._button.field.height;
+ var hug1:int = 0;
+ this._button.y = hug1;
+ this._postfix.y = hug1;
+ this._prefix.y = hug1;
+
+ if(this._prefix.text != ""){
+ this._prefix.x = 0;
+ this._button.baseLeft.x = (this._prefix.x + this._prefix.width);
+
+ addChild(this._prefix);
+ }else{
+ this._button.baseLeft.x = 0;
+ }
+
+ this._button.field.x = (this._button.baseLeft.x + this._button.baseLeft.width);
+ this._button.baseCenter.x = (this._button.baseLeft.x + this._button.baseLeft.width);
+ this._button.counter.x = (this._button.field.x + this._button.field.width);
+ this._button.baseRight.x = (this._button.baseCenter.x + this._button.baseCenter.width);
+
+ if(this._postfix.text != ""){
+ this._postfix.x = (this._button.baseRight.x + this._button.baseRight.width);
+
+ addChild(this._postfix);
+ }
+
+ addChild(this._button);
+ }
+
+ public function initMouseHandler(hug1:IComment):void
+ { //MethodID:4870, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 87
+ this._button.mouseChildren = false;
+ var hug2:Boolean = true;
+ this._button.buttonMode = hug2;
+ this._button.useHandCursor = hug2;
+
+ this._button.addEventListener(MouseEvent.MOUSE_OVER, this.mouseOverHandler);
+ this._button.addEventListener(MouseEvent.MOUSE_OUT, this.mouseOutHandler);
+ this._button.addEventListener(MouseEvent.CLICK, this.onClickButton);
+
+ this._comment = hug1;
+ }
+
+ public function releaseClickHandler():void
+ { //MethodID:4871, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 83
+ this._button.mouseChildren = false;
+ this._button.useHandCursor = false;
+ this._button.buttonMode = false;
+
+ this._button.removeEventListener(MouseEvent.MOUSE_OVER, this.mouseOverHandler);
+ this._button.removeEventListener(MouseEvent.MOUSE_OUT, this.mouseOutHandler);
+ this._button.removeEventListener(MouseEvent.CLICK, this.onClickButton);
+
+ this._comment = null;
+ }
+
+ private function mouseOverHandler(hug1:MouseEvent):void
+ { //MethodID:4872, LocalCount= 6 , MaxScope= 1, MaxStack= 8, CodeLength= 83
+ var hug2:GlowFilter = new GlowFilter(0xFFFFFF, 0.5, 100, 100, 10, 3, true);
+ var hug3:Array = [hug2];
+ var hug4:UserButton = (hug1.target as UserButton);
+ var hug5:Array = hug3;
+ hug4.baseRight.filters = hug5;
+ hug4.baseCenter.filters = hug5;
+ hug4.baseLeft.filters = hug5;
+ }
+
+ private function mouseOutHandler(hug1:MouseEvent):void
+ { //MethodID:4873, LocalCount= 4 , MaxScope= 1, MaxStack= 5, CodeLength= 48
+ var hug2:UserButton = (hug1.target as UserButton);
+ var hug3:Array = [];
+ hug2.baseRight.filters = hug3;
+ hug2.baseCenter.filters = hug3;
+ hug2.baseLeft.filters = hug3;
+ }
+
+ private function onClickButton(hug1:MouseEvent):void
+ { //MethodID:4874, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 34
+ this._comment.commentList.clickButtonComment(this._comment);
+
+ if(!this._comment.isClickable) this.releaseClickHandler();
+ }
+
+ public function get prefix():TextField
+ { //MethodID:4875, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._prefix;
+ }
+
+ public function get postfix():TextField
+ { //MethodID:4876, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._postfix;
+ }
+
+ public function get button():UserButton
+ { //MethodID:4877, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._button;
+ }
+
+ public function get comment():IComment
+ { //MethodID:4878, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comment;
+ }
+ }
+}
+
+import flash.display.MovieClip
+import flash.text.TextField
+import flash.text.TextFieldAutoSize
+import jp.nicovideo.nicoplayer.views.comment.elements.CommentTextField
+
+//■class(instance)_index:405
+//private
+class UserButton extends MovieClip
+{
+ //static constructor
+ public static function UserButton$cinit()
+ { //MethodID:4879, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function UserButton()
+ { //MethodID:4880, LocalCount= 4 , MaxScope= 1, MaxStack= 7, CodeLength= 263
+ this._ButtonClass = UserButton__ButtonClass;
+ this.field = new TextField();
+ this.counter = new TextField();
+
+ super();
+
+ var hug1:Object = new this._ButtonClass();
+ this.baseLeft = hug1.BaseLeft;
+ this.baseCenter = hug1.BaseCenter;
+ this.baseRight = hug1.BaseRight;
+ var hug2:Array = [CommentTextField.BEVELFILTER_NORMAL];
+ this.field.multiline = true;
+ var hug3:Boolean = false;
+ this.counter.selectable = hug3;
+ this.field.selectable = hug3;
+ this.counter.autoSize = TextFieldAutoSize.LEFT;
+ this.field.autoSize = TextFieldAutoSize.LEFT;
+ var hug3:int = 0;
+ this.baseRight.y = hug3;
+ this.baseCenter.y = hug3;
+ this.baseLeft.y = hug3;
+ this.counter.y = hug3;
+ this.field.y = hug3;
+ var hug3:Array = hug2;
+ this.counter.filters = hug3;
+ this.field.filters = hug3;
+
+ addChild(this.baseLeft);
+ addChild(this.baseCenter);
+ addChild(this.baseRight);
+ addChild(this.field);
+ addChild(this.counter);
+ }
+
+ //variables/etc.
+ private var _ButtonClass:Class; //slotID:0
+ public var baseLeft:MovieClip; //slotID:0
+ public var baseCenter:MovieClip; //slotID:0
+ public var baseRight:MovieClip; //slotID:0
+ public var field:TextField; //slotID:0
+ public var counter:TextField; //slotID:0
+}
+
+//■script338■
+
+package jp.nicovideo.util{
+
+ import flash.utils.Proxy
+ import flash.utils.flash_proxy
+
+ use namespace flash_proxy;
+
+ //■class(instance)_index:406
+ public class SortedArray extends Proxy
+ {
+ //static constructor
+ public static function SortedArray$cinit()
+ { //MethodID:4882, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 19
+ REMOVE = 1;
+ BREAK = 2;
+ }
+
+ //static variables/etc.
+ public static const REMOVE:uint = 1; //slotID:1
+ public static const BREAK:uint = 2; //slotID:2
+
+ //constructor
+ public function SortedArray(hug1:Function=null)
+ { //MethodID:4884, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ this.__a = [];
+ this.__sorter = function(hug1:*, hug2:*):*{ //MethodID:4883, LocalCount= 3 , MaxScope= 0, MaxStack= 2, CodeLength= 32
+ return ((hug1 < hug2) ? (-1) : ((hug1 == hug2) ? 0 : 1));
+ };
+ super();
+
+ if(hug1 != null) this.__sorter = hug1;
+ }
+
+ //variables/etc.
+ private var __a:Array; //slotID:0
+ private var __sorter:Function; //slotID:0
+
+ public function get length():uint
+ { //MethodID:4885, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this.__a.length;
+ }
+
+ public function add(hug1:*, hug2:*):int
+ { //MethodID:4886, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 69
+ if(hug2 === undefined) hug2 = hug1;
+
+ var hug3:int = this.__bSearch(hug1);
+
+ if((hug3 == (-1)) || (this.__sorter(hug1, this.__a[hug3]) != 0)) hug3++;
+ this.__a.splice(hug3, 0, hug2);
+
+ return hug3;
+ }
+
+ public function addRepeatedly(... rest):void
+ { //MethodID:4887, LocalCount= 5 , MaxScope= 1, MaxStack= 3, CodeLength= 42
+ var hug2:* = undefined;
+
+ for each(hug2 in rest){
+ this.add(hug2, hug2);
+ }
+ }
+
+ public function remove(hug1:*, hug2:Boolean=true):void
+ { //MethodID:4890, LocalCount= 4 , MaxScope= 2, MaxStack= 3, CodeLength= 82
+ internal var key:*; //slotID:1
+ internal var all:Boolean = true; //slotID:2
+ internal var remove_all:Function; //slotID:3
+ internal var remove_first:Function; //slotID:4
+
+ remove_all = null;
+ remove_first = null;
+ key = hug1;
+ all = hug2;
+ remove_all = function(... rest):uint{ //MethodID:4888, LocalCount= 2 , MaxScope= 0, MaxStack= 1, CodeLength= 4
+ return REMOVE;
+ };
+
+ remove_first = function(... rest):uint{ //MethodID:4889, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 8
+ return (REMOVE | BREAK);
+ };
+
+ this.select((all ? remove_all : remove_first), key);
+ }
+
+ public function select(hug1:Function, hug2:*):void
+ { //MethodID:4891, LocalCount= 5 , MaxScope= 1, MaxStack= 5, CodeLength= 127
+ var hug4:uint = 0;
+ var hug3:int = this.__bSearch(hug2);
+
+ if(hug3 == (-1)) return;
+
+ while(this.__sorter(hug2, this.__a[hug3]) == 0){
+ hug4 = hug1(hug3, this.__a[hug3]);
+
+ if((hug4 & REMOVE) != 0) this.__a.splice((hug3--), 1);
+
+ if(((hug4 & BREAK) != 0) || ((++hug3) >= this.__a.length)) break;
+ }
+ }
+
+ public function find(hug1:*):*
+ { //MethodID:4892, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 60
+ var hug2:int = this.__bSearch(hug1);
+ return (((hug2 != (-1)) && (this.__sorter(hug1, this.__a[hug2]) == 0)) ? this.__a[hug2] : undefined);
+ }
+
+ public function contains(hug1:*):Boolean
+ { //MethodID:4893, LocalCount= 3 , MaxScope= 1, MaxStack= 4, CodeLength= 39
+ var hug2:int = this.__bSearch(hug1);
+ return ((hug2 != (-1)) && (this.__sorter(hug1, this.__a[hug2]) == 0));
+ }
+
+ public function clear():void
+ { //MethodID:4894, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 13
+ this.__a.splice(0);
+ }
+
+ private function __bSearch(hug1:*):int
+ { //MethodID:4895, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 19
+ return ArrayUtils.lowerBoundIndex(this.__sorter, hug1, this.__a);
+ }
+
+ override flash_proxy function nextNameIndex(hug1:int):int
+ { //MethodID:4896, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ return ((hug1 < this.__a.length) ? (hug1 + 1) : 0);
+ }
+
+ override flash_proxy function nextValue(hug1:int):*
+ { //MethodID:4897, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 12
+ return this.__a[hug1 - 1];
+ }
+ }
+}
+
+//■script339■
+
+package jp.nicovideo.nicoscript.macro{
+
+ //■class(instance)_index:407
+ public class NicoScriptError extends Error
+ {
+ //static constructor
+ public static function NicoScriptError$cinit()
+ { //MethodID:4899, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NicoScriptError(hug1:String)
+ { //MethodID:4900, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 7
+ super(hug1);
+ }
+ }
+}
+
+//■script340■
+
+package jp.nicovideo.nicoplayer.storages.commentStorage{
+
+ //■class(instance)_index:408
+ public class TransactorError extends Error
+ {
+ //static constructor
+ public static function TransactorError$cinit()
+ { //MethodID:4902, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function TransactorError(hug1:Array)
+ { //MethodID:4903, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 15
+ super("", 0);
+
+ this.args = hug1;
+ }
+
+ //variables/etc.
+ public var args:Array; //slotID:0
+ }
+}
+
+//■script341■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:409
+ public interface ILeaf
+ {
+ //static constructor
+ public static function ILeaf$cinit()
+ { //MethodID:4905, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get id():int; //MethodID:4906, dispID:0
+
+ function get threadID():int; //MethodID:4907, dispID:0
+
+ function get count():int; //MethodID:4908, dispID:0
+
+ //constructor
+ public function ILeaf(); //MethodID:4909, dispID:0
+ }
+}
+
+//■script342■
+
+package jp.nicovideo.nicoplayer.models.comment{
+
+ //■class(instance)_index:410
+ public class Leaf extends Object implements ILeaf
+ {
+ //static constructor
+ public static function Leaf$cinit()
+ { //MethodID:4911, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Leaf(hug1:int, hug2:int, hug3:int)
+ { //MethodID:4912, LocalCount= 4 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ super();
+
+ this._id = hug1;
+ this._threadID = hug2;
+ this._count = hug3;
+ }
+
+ //variables/etc.
+ private var _id:int = 0; //slotID:0
+ private var _threadID:int = 0; //slotID:0
+ private var _count:int = 0; //slotID:0
+
+ public function get id():int
+ { //MethodID:4913, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._id;
+ }
+
+ public function get threadID():int
+ { //MethodID:4914, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+
+ public function get count():int
+ { //MethodID:4915, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._count;
+ }
+ }
+}
+
+//■script343■
+//skip components :com.adobe.serialization.json
+//as filename :JSONTokenizer.as
+
+//■script344■
+//skip components :com.adobe.serialization.json
+//as filename :JSONToken.as
+
+//■script345■
+//skip components :com.adobe.serialization.json
+//as filename :JSONTokenType.as
+
+//■script346■
+
+package jp.nicovideo.nicoplayer.tpls.NicoplayerTemplateChildren.WindowChildren{
+
+ import flash.display.MovieClip
+ import flash.events.MouseEvent
+ import flash.text.TextField
+ import flash.text.TextFormat
+ import flash.text.TextFormatAlign
+ import flash.utils.getDefinitionByName
+
+ //■class(instance)_index:414
+ public class Tab extends Object
+ {
+ //static constructor
+ public static function Tab$cinit()
+ { //MethodID:4941, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Tab(hug1:String, hug2:Function, hug3:String="Window_Tab")
+ { //MethodID:4944, LocalCount= 5 , MaxScope= 2, MaxStack= 11, CodeLength= 219
+ internal var label:String; //slotID:1
+ internal var onClick:Function; //slotID:2
+ internal var name:String = "Window_Tab"; //slotID:3
+ internal var tabClass:Class; //slotID:4
+
+ label = hug1;
+ onClick = hug2;
+ name = hug3;
+ this._ENABLED_TEXT_FORMAT = new TextFormat("_ゴシック", 12, 0, null, null, null, null, null, TextFormatAlign.CENTER);
+ this._DISABLED_TEXT_FORMAT = new TextFormat("_ゴシック", 12, 0xFFFFFF, null, null, null, null, null, TextFormatAlign.CENTER);
+
+ super();
+
+ tabClass = (getDefinitionByName(name) as Class);
+ this._tab = new tabClass();
+ this._label = this._tab.Label;
+ this._field = this._label.Field;
+ this._field.text = label;
+ this._tab.buttonMode = true;
+ this._tab.mouseChildren = false;
+
+ this._tab.addEventListener(MouseEvent.CLICK, onClick);
+ this._tab.addEventListener(MouseEvent.MOUSE_OVER, function(hug1:MouseEvent):void{ //MethodID:4942, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ if(!_isActive) _tab.gotoAndStop(2);
+ });
+ this._tab.addEventListener(MouseEvent.MOUSE_OUT, function(hug1:MouseEvent):void{ //MethodID:4943, LocalCount= 2 , MaxScope= 0, MaxStack= 2, CodeLength= 17
+ if(!_isActive) _tab.gotoAndStop(1);
+ });
+
+ this.isActive = false;
+ }
+
+ //variables/etc.
+ private const _ENABLED_TEXT_FORMAT:TextFormat; //slotID:0
+ private const _DISABLED_TEXT_FORMAT:TextFormat; //slotID:0
+ private var _isActive:Boolean = false; //slotID:0
+ private var _tab:MovieClip; //slotID:0
+ private var _label:MovieClip; //slotID:0
+ private var _newPopup:MovieClip; //slotID:0
+ private var _field:TextField; //slotID:0
+
+ public function get tab():MovieClip
+ { //MethodID:4945, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._tab;
+ }
+
+ public function get label():MovieClip
+ { //MethodID:4946, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._label;
+ }
+
+ public function set labelText(hug1:String):void
+ { //MethodID:4947, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ this._field.text = hug1;
+ }
+
+ public function set isActive(hug1:Boolean):void
+ { //MethodID:4948, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 73
+ this._isActive = hug1;
+ this._tab.useHandCursor = !hug1;
+
+ this._field.setTextFormat(hug1 ? this._ENABLED_TEXT_FORMAT : this._DISABLED_TEXT_FORMAT);
+ this._tab.gotoAndStop(hug1 ? 3 : 1);
+ }
+
+ public function get isActive():Boolean
+ { //MethodID:4949, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isActive;
+ }
+
+ public function get newPopupVisible():Boolean
+ { //MethodID:4950, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._newPopup.visible;
+ }
+
+ public function set newPopupVisible(hug1:Boolean):void
+ { //MethodID:4951, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ this._newPopup.visible = hug1;
+ }
+ }
+}
+
+//■script347■
+
+package jp.nicovideo.app.info{
+
+ //■class(instance)_index:415
+ public interface IAppliInfo
+ {
+ //static constructor
+ public static function IAppliInfo$cinit()
+ { //MethodID:4953, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get id():String; //MethodID:4954, dispID:0
+
+ function get version():String; //MethodID:4955, dispID:0
+
+ function get title():String; //MethodID:4956, dispID:0
+
+ function get isDevelopmentVersion():Boolean; //MethodID:4957, dispID:0
+
+ function get threads():IAppliThreads; //MethodID:4958, dispID:0
+
+ //constructor
+ public function IAppliInfo(); //MethodID:4959, dispID:0
+ }
+}
+
+//■script348■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:416
+ public interface IThread
+ {
+ //static constructor
+ public static function IThread$cinit()
+ { //MethodID:4961, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get threadID():String; //MethodID:4962, dispID:0
+
+ //constructor
+ public function IThread(); //MethodID:4963, dispID:0
+ }
+}
+
+//■script349■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ import jp.nicovideo.app.api.v1.plugin.common.IThread
+
+ //■class(instance)_index:417
+ public interface INicoThread implements IThread
+ {
+ //static constructor
+ public static function INicoThread$cinit()
+ { //MethodID:4965, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isMymemory():Boolean; //MethodID:4966, dispID:0
+
+ function get optionalThread():IThread; //MethodID:4967, dispID:0
+
+ //constructor
+ public function INicoThread(); //MethodID:4968, dispID:0
+ }
+}
+
+//■script350■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import jp.nicovideo.app.api.v1.plugin.common.IThread
+
+ //■class(instance)_index:418
+ public class NicoThread extends Object implements INicoThread
+ {
+ //static constructor
+ public static function NicoThread$cinit()
+ { //MethodID:4970, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NicoThread(hug1:String, hug2:Boolean=false, hug3:String=null)
+ { //MethodID:4971, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 33
+ super();
+
+ this._threadID = hug1;
+ this._isMymemory = hug2;
+
+ if(hug3) this._optionalThread = new _Thread(hug3);
+ }
+
+ //variables/etc.
+ private var _threadID:String; //slotID:0
+ private var _isMymemory:Boolean; //slotID:0
+ private var _optionalThread:_Thread = null; //slotID:0
+
+ public function get isMymemory():Boolean
+ { //MethodID:4972, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isMymemory;
+ }
+
+ public function get optionalThread():IThread
+ { //MethodID:4973, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._optionalThread;
+ }
+
+ public function get threadID():String
+ { //MethodID:4974, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+ }
+}
+
+
+//■class(instance)_index:419
+//private
+class _Thread extends Object implements IThread
+{
+ //static constructor
+ public static function _Thread$cinit()
+ { //MethodID:4975, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _Thread(hug1:String)
+ { //MethodID:4976, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ super();
+
+ this._threadID = hug1;
+ }
+
+ //variables/etc.
+ private var _threadID:String; //slotID:0
+
+ public function get threadID():String
+ { //MethodID:4977, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._threadID;
+ }
+}
+
+//■script351■
+
+package jp.nicovideo.app.api{
+
+ //■class(instance)_index:421
+ public class SoloObjectPool extends Object implements IObjectPool
+ {
+ //static constructor
+ public static function SoloObjectPool$cinit()
+ { //MethodID:4981, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function SoloObjectPool(hug1:Function)
+ { //MethodID:4982, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 22
+ this._object = new _NullObject();
+
+ super();
+
+ this._create = hug1;
+ }
+
+ //variables/etc.
+ private var _create:Function; //slotID:0
+ private var _object:*; //slotID:0
+
+ public function create(... rest):*
+ { //MethodID:4983, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 33
+ if(this._object is _NullObject) this._object = this._create.apply(null, rest);
+
+ return this._object;
+ }
+
+ public function restore(hug1:*):void
+ { //MethodID:4984, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+ }
+}
+
+
+//■class(instance)_index:420
+//private
+class _NullObject extends Object
+{
+ //static constructor
+ public static function _NullObject$cinit()
+ { //MethodID:4979, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _NullObject()
+ { //MethodID:4980, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+}
+
+//■script352■
+
+package jp.nicovideo.app.conf{
+
+ //■class(instance)_index:422
+ public class AppliConstants extends Object
+ {
+ //static constructor
+ public static function AppliConstants$cinit()
+ { //MethodID:4986, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 20
+ INSTALL_MAX_NUM = 100;
+ NICOPO_SITE_CODE = "S000E";
+ }
+
+ //static variables/etc.
+ public static const INSTALL_MAX_NUM:Number = 100.0; //slotID:1
+ public static const NICOPO_SITE_CODE:String = "S000E"; //slotID:2
+
+ //constructor
+ public function AppliConstants()
+ { //MethodID:4987, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script353■
+
+package jp.nicovideo.app.api{
+
+
+ public const api_system:* = "jp.nicovideo.app.api.api_system"; //slotID:0
+
+}
+
+//■script354■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ //■class(instance)_index:423
+ public interface IVideoInfo
+ {
+ //static constructor
+ public static function IVideoInfo$cinit()
+ { //MethodID:4990, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get watchID():String; //MethodID:4991, dispID:0
+
+ function get videoID():String; //MethodID:4992, dispID:0
+
+ function get title():String; //MethodID:4993, dispID:0
+
+ function get description():String; //MethodID:4994, dispID:0
+
+ function get thumbTitle():String; //MethodID:4995, dispID:0
+
+ function get thumbDescription():String; //MethodID:4996, dispID:0
+
+ function get thumbnailImageURL():String; //MethodID:4997, dispID:0
+
+ function get tags():Array; //MethodID:4998, dispID:0
+
+ function get postedAt():Date; //MethodID:4999, dispID:0
+
+ function get viewCount():Number; //MethodID:5000, dispID:0
+
+ //constructor
+ public function IVideoInfo(); //MethodID:5001, dispID:0
+ }
+}
+
+//■script355■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import jp.nicovideo.nicoplayer.models.IVideoDetail
+ import jp.nicovideo.nicoplayer.models.flashvars.NicoFlashVars
+
+ //■class(instance)_index:424
+ public class VideoInfo extends Object implements IVideoInfo
+ {
+ //static constructor
+ public static function VideoInfo$cinit()
+ { //MethodID:5003, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoInfo(hug1:IVideoDetail, hug2:NicoFlashVars)
+ { //MethodID:5004, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._videoDetail = hug1;
+ this._flashVars = hug2;
+ }
+
+ //variables/etc.
+ private var _videoDetail:IVideoDetail; //slotID:0
+ private var _flashVars:NicoFlashVars; //slotID:0
+
+ public function get watchID():String
+ { //MethodID:5005, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._flashVars.watchID;
+ }
+
+ public function get videoID():String
+ { //MethodID:5006, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._flashVars.originalVideoID;
+ }
+
+ public function get title():String
+ { //MethodID:5007, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoDetail.title;
+ }
+
+ public function get description():String
+ { //MethodID:5008, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoDetail.description;
+ }
+
+ public function get thumbTitle():String
+ { //MethodID:5009, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._flashVars.videoTitle;
+ }
+
+ public function get thumbDescription():String
+ { //MethodID:5010, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._flashVars.videoDescription;
+ }
+
+ public function get thumbnailImageURL():String
+ { //MethodID:5011, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 13
+ return this._flashVars.watchFlashVars.thumbImage;
+ }
+
+ public function get tags():Array
+ { //MethodID:5012, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoDetail.tags;
+ }
+
+ public function get postedAt():Date
+ { //MethodID:5013, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoDetail.postedAt;
+ }
+
+ public function get viewCount():Number
+ { //MethodID:5014, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._videoDetail.viewCount;
+ }
+ }
+}
+
+//■script356■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.v1.plugin.www.CommentType
+ import jp.nicovideo.app.api.v1.plugin.www.events.CommentEvent
+ import jp.nicovideo.nicoplayer.models.comment.Command
+ import jp.nicovideo.nicoplayer.models.comment.CommentBuilder
+ import jp.nicovideo.nicoplayer.models.comment.CommentConstants
+ import jp.nicovideo.nicoplayer.models.comment.CommentPoolContainer
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.ICommentList
+ import jp.nicovideo.util.events.event_sender
+
+ //■class(instance)_index:425
+ public class CommentServerClient extends EventDispatcher
+ {
+ //static constructor
+ public static function CommentServerClient$cinit()
+ { //MethodID:5016, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ private static function _removeBadComments(hug1:Array):Array
+ { //dispID:3, MethodID:5017, LocalCount= 6 , MaxScope= 1, MaxStack= 2, CodeLength= 63
+ var hug3:IComment = null;
+ var hug2:Array = [];
+
+ for each(hug3 in hug1){
+ if(!_isBadComment(hug3)) hug2.push(hug3);
+ }
+
+ return hug2;
+ }
+
+ private static function _isBadComment(hug1:IComment):Boolean
+ { //dispID:4, MethodID:5018, LocalCount= 2 , MaxScope= 1, MaxStack= 1, CodeLength= 4
+ return false;
+ }
+
+ private static function _convert2API(hug1:*):*
+ { //dispID:5, MethodID:5019, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 102
+ var hug2:Array = null;
+ var hug3:IComment = null;
+
+ if(hug1 is IComment) return NicoCommentConverter.convertNico2API(hug1);
+
+ if(hug1 is Array){
+ hug2 = [];
+
+ for each(hug3 in hug1){
+ hug2.push(NicoCommentConverter.convertNico2API(hug3));
+ }
+
+ return hug2;
+ }else{
+ throw new ArgumentError("CommentServerClient._convert2API: argument must be IComment or Array of IComment");
+ }
+ }
+
+ //constructor
+ public function CommentServerClient(hug1:Object, hug2:CommentPoolContainer)
+ { //MethodID:5020, LocalCount= 9 , MaxScope= 1, MaxStack= 5, CodeLength= 349
+ var hug3:String = null;
+ var hug4:String = null;
+ var hug5:String = null;
+ var hug6:ICommentList = null;
+ this._beRefleshTypes = {};
+ this._exCommentLists = {};
+ this._contains = [];
+ this._typeMap = {};
+
+ super(null);
+
+ this._nativeCommentLists = hug1;
+ this._filteredCommentPools = hug2;
+ this._typeMap[CommentConstants.CL_MAIN] = CommentType.NORMAL;
+ this._typeMap[CommentConstants.CL_NICOS] = CommentType.NICOSCRIPT_TRIGGER;
+ this._typeMap[CommentConstants.CL_LOCAL] = CommentType.LOCAL;
+ this._typeMap[CommentConstants.CL_PRIVATE] = CommentType.COMMUNITY;
+ this._typeMap[CommentConstants.CL_OWNER] = CommentType.OWNER;
+
+ for(hug3 in this._filteredCommentPools.lists){
+ hug5 = this._typeMap[hug3];
+
+ this._contains.push(hug5);
+
+ this._beRefleshTypes[hug5] = true;
+ this._filteredCommentPools.lists[hug3] = _removeBadComments(this._filteredCommentPools.lists[hug3]);
+ }
+
+ this._filteredCommentPools.onCommentPoolContainerUpdated.add(this._updateListener);
+
+ for(hug4 in this._nativeCommentLists){
+ hug6 = this._nativeCommentLists[hug4];
+
+ if(hug4 != CommentConstants.CL_OWNER) hug6.onCommentPost.add(this._postListener);
+ }
+ }
+
+ //variables/etc.
+ private var _beRefleshTypes:Object; //slotID:0
+ private var _exCommentLists:Object; //slotID:0
+ private var _contains:Array; //slotID:0
+ private var _typeMap:Object; //slotID:0
+ private var _nativeCommentLists:Object; //slotID:0
+ private var _filteredCommentPools:CommentPoolContainer; //slotID:0
+
+ private function _updateListener(hug1:Array, hug2:Array, hug3:Boolean, hug4:String):void
+ { //MethodID:5021, LocalCount= 6 , MaxScope= 1, MaxStack= 5, CodeLength= 79
+ if(hug4 == CommentConstants.CL_OWNER) return;
+
+ hug1 = _removeBadComments(hug1);
+ var hug5:String = this._typeMap[hug4];
+ this._beRefleshTypes[hug5] = true;
+
+ dispatchEvent(new CommentEvent(CommentEvent.RECEIVE, _convert2API(hug1), hug5));
+ }
+
+ private function _postListener(hug1:IComment, hug2:String):void
+ { //MethodID:5022, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 53
+ if(!_isBadComment(hug1)) dispatchEvent(new CommentEvent(CommentEvent.POST, [_convert2API(hug1)], this._typeMap[hug2]));
+ }
+
+ public function get contains():Array
+ { //MethodID:5023, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._contains;
+ }
+
+ public function getCommentList(hug1:String):Array
+ { //MethodID:5024, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 52
+ if(this._contains.indexOf(hug1) == (-1)) throw new ArgumentError();
+
+ if(this._beRefleshTypes[hug1]) this._reflesh(hug1);
+
+ return this._exCommentLists[hug1];
+ }
+
+ public function postLocalComment(hug1:*):void
+ { //MethodID:5025, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 62
+ var hug2:CommentBuilder = new CommentBuilder();
+ hug2.message = hug1.message;
+ hug2.command = new Command(hug1.mail);
+
+ (this._nativeCommentLists[CommentConstants.CL_LOCAL] as ICommentList).post(hug2.make());
+ }
+
+ private function _reflesh(hug1:String):void
+ { //MethodID:5026, LocalCount= 8 , MaxScope= 1, MaxStack= 3, CodeLength= 159
+ var hug3:String = null;
+
+ if(this._contains.indexOf(hug1) == (-1)) throw new ArgumentError();
+
+ var hug2:String = null;
+
+ for(hug3 in this._filteredCommentPools.lists){
+ if(this._typeMap[hug3] == hug1){
+ hug2 = hug3;
+ break;
+ }
+ }
+
+ if(hug2 == null) throw new Error("指定したタイプが更新対象ではないエラーが発生しました。");
+
+ var hug4:Array = [];
+ var hug5:Array = this._filteredCommentPools.lists[hug2];
+ hug4 = _convert2API(hug5);
+ this._exCommentLists[hug1] = hug4;
+ this._beRefleshTypes[hug1] = false;
+ }
+ }
+}
+
+//■script357■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.v1.plugin.www.events.VideoEvent
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.video.IVideo
+ import jp.nicovideo.nicoplayer.models.video.IVideoController
+ import jp.nicovideo.nicoplayer.models.video.VideoConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.AudioShutterConstants
+ import jp.nicovideo.nicoplayer.tpls.shutter.IControllerShutter
+ import jp.nicovideo.util.events.EventResult
+ import jp.nicovideo.util.events.event_sender
+ import jp.nicovideo.util.loka.__MSG__
+
+ use namespace jp.nicovideo.app.api.api_system;
+
+ //■class(instance)_index:426
+ public class VideoPlayer extends EventDispatcher
+ {
+ //static constructor
+ public static function VideoPlayer$cinit()
+ { //MethodID:5028, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function VideoPlayer(hug1:IVideoController, hug2:IPlayerConfig, hug3:IControllerShutter)
+ { //MethodID:5034, LocalCount= 5 , MaxScope= 2, MaxStack= 2, CodeLength= 161
+ internal var videoController:IVideoController; //slotID:1
+ internal var playerConfig:IPlayerConfig; //slotID:2
+ internal var audioShutter:IControllerShutter; //slotID:3
+
+ videoController = hug1;
+ playerConfig = hug2;
+ audioShutter = hug3;
+
+ super();
+
+ this._controller = videoController;
+ this._video = videoController.videoWrapper;
+ this._audioShutter = audioShutter;
+ this._config = playerConfig;
+
+ this._video.onVideoStarted.add(function():EventResult{ //MethodID:5029, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ dispatchEvent(new VideoEvent(VideoEvent.STARTED));
+
+ return EventResult.THROUGH;
+ });
+ this._video.onVideoPlayed.add(function():EventResult{ //MethodID:5030, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ dispatchEvent(new VideoEvent(VideoEvent.PLAYED));
+
+ return EventResult.THROUGH;
+ });
+ this._video.onVideoStopped.add(function():EventResult{ //MethodID:5031, LocalCount= 1 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ dispatchEvent(new VideoEvent(VideoEvent.PAUSED));
+
+ return EventResult.THROUGH;
+ });
+ this._video.onVideoEnded.add(function(hug1:Boolean):EventResult{ //MethodID:5032, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ dispatchEvent(new VideoEvent(VideoEvent.ENDED));
+
+ return EventResult.THROUGH;
+ });
+ this._video.onVideoSeeked.add(function(hug1:Number):EventResult{ //MethodID:5033, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ dispatchEvent(new VideoEvent(VideoEvent.SEEKED));
+
+ return EventResult.THROUGH;
+ });
+ }
+
+ //variables/etc.
+ private var _controller:IVideoController; //slotID:0
+ private var _video:IVideo; //slotID:0
+ private var _audioShutter:IControllerShutter; //slotID:0
+ private var _config:IPlayerConfig; //slotID:0
+ private var _hasLocked:Boolean = false; //slotID:0
+ private var _appliID:String; //slotID:0
+
+ jp.nicovideo.app.api.api_system function reset(hug1:String):void
+ { //MethodID:5035, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._appliID = hug1;
+ }
+
+ public function play():void
+ { //MethodID:5036, LocalCount= 1 , MaxScope= 1, MaxStack= 3, CodeLength= 73
+ if(this.isPlaying && !this.isPausing) return;
+
+ if(this.hasLocked){
+ this._audioShutter.open(AudioShutterConstants.SHUTTER_PLUGIN);
+ this._controller.play(VideoConstants.OPERATION_PLUGIN_PREFIX + this._appliID);
+ }
+
+ this._controller.play();
+ }
+
+ public function pause(hug1:Boolean=false):void
+ { //MethodID:5037, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 71
+ if(hug1 && !this.hasLocked){
+ this._audioShutter.close(AudioShutterConstants.SHUTTER_PLUGIN, __MSG__("アプリにより制限されています。"));
+ this._controller.stop(VideoConstants.OPERATION_PLUGIN_PREFIX + this._appliID);
+ }
+
+ this._controller.stop();
+ }
+
+ public function get hasLocked():Boolean
+ { //MethodID:5038, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ return this._audioShutter.isClosing(AudioShutterConstants.SHUTTER_PLUGIN);
+ }
+
+ public function releaseLock():void
+ { //MethodID:5039, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 39
+ var hug1:Boolean = (!this.isPlaying || this.isPausing);
+
+ this.play();
+
+ if(hug1) this._controller.stop();
+ }
+
+ public function seek(hug1:Number):void
+ { //MethodID:5040, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 12
+ this._controller.seek(hug1);
+ }
+
+ public function get vpos():Number
+ { //MethodID:5041, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.vpos;
+ }
+
+ public function get length():Number
+ { //MethodID:5042, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.length;
+ }
+
+ public function get isPlaying():Boolean
+ { //MethodID:5043, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.isPlaying;
+ }
+
+ public function get isPausing():Boolean
+ { //MethodID:5044, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.isPausing;
+ }
+
+ public function get isSeeking():Boolean
+ { //MethodID:5045, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.isSeeking;
+ }
+
+ public function get isEnd():Boolean
+ { //MethodID:5046, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.isEnd;
+ }
+
+ public function get isBuffering():Boolean
+ { //MethodID:5047, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._video.isBuffering;
+ }
+
+ public function get bufferedRatio():Number
+ { //MethodID:5048, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 18
+ return (this._video.loadedLength / this._video.length);
+ }
+ }
+}
+
+//■script358■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:427
+ public interface IMarquee implements IEventDispatcher
+ {
+ //static constructor
+ public static function IMarquee$cinit()
+ { //MethodID:5050, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get isInterrupting():Boolean; //MethodID:5051, dispID:0
+
+ //constructor
+ public function IMarquee(); //MethodID:5052, dispID:0
+ }
+}
+
+//■script359■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.common{
+
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.v1.plugin.common.events.MarqueeEvent
+ import jp.nicovideo.marquee.IMarqueeClient
+ import jp.nicovideo.marquee.models.info.IMarqueeInfo
+ import jp.nicovideo.util.events.event_sender
+
+ //■class(instance)_index:428
+ public class Marquee extends EventDispatcher implements IMarquee
+ {
+ //static constructor
+ public static function Marquee$cinit()
+ { //MethodID:5054, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Marquee()
+ { //MethodID:5055, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ private var _isInterrupting:Boolean = false; //slotID:0
+ private var _client:IMarqueeClient; //slotID:0
+
+ public function init(hug1:IMarqueeClient=null):void
+ { //MethodID:5056, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ if(hug1 == null) return;
+
+ this._client = hug1;
+
+ this._client.onMarqueeClientNicowariStarted.add(this._onInterruptStart);
+ this._client.onMarqueeClientNicowariEnded.add(this._onInterruptEnd);
+ }
+
+ private function _onInterruptStart(hug1:IMarqueeInfo):void
+ { //MethodID:5057, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 28
+ this._isInterrupting = true;
+
+ dispatchEvent(new MarqueeEvent(MarqueeEvent.INTERRUPT_START));
+ }
+
+ private function _onInterruptEnd(hug1:IMarqueeInfo):void
+ { //MethodID:5058, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 37
+ if(!this._isInterrupting) return;
+
+ this._isInterrupting = false;
+
+ dispatchEvent(new MarqueeEvent(MarqueeEvent.INTERRUPT_END));
+ }
+
+ public function get isInterrupting():Boolean
+ { //MethodID:5059, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isInterrupting;
+ }
+ }
+}
+
+//■script360■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:429
+ public interface INGFilter implements IEventDispatcher
+ {
+ //static constructor
+ public static function INGFilter$cinit()
+ { //MethodID:5061, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get list():Array; //MethodID:5062, dispID:0
+
+ //constructor
+ public function INGFilter(); //MethodID:5063, dispID:0
+ }
+}
+
+//■script361■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.common{
+
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.v1.events.ListEvent
+ import jp.nicovideo.app.api.v1.plugin.common.NGSource
+ import jp.nicovideo.app.api.v1.plugin.common.NGSourceType
+ import jp.nicovideo.nicoplayer.models.filter.INGComment
+ import jp.nicovideo.nicoplayer.models.filter.NGInfo
+ import jp.nicovideo.nicoplayer.models.filter.NGResponseConstants
+ import jp.nicovideo.nicoplayer.models.filter.NGType
+
+ //■class(instance)_index:430
+ public class NGFilter extends EventDispatcher implements INGFilter
+ {
+ //static constructor
+ public static function NGFilter$cinit()
+ { //MethodID:5065, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NGFilter(hug1:INGComment)
+ { //MethodID:5067, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 48
+ internal var nativeObj:INGComment; //slotID:1
+
+ nativeObj = hug1;
+ this._list = [];
+
+ super();
+
+ this._obj = nativeObj;
+
+ this._obj.onUpdated.add(function(hug1:Array, hug2:String):void{ //MethodID:5066, LocalCount= 3 , MaxScope= 0, MaxStack= 4, CodeLength= 43
+ if(hug2 != NGResponseConstants.OK) return;
+ _convert();
+ dispatchEvent(new ListEvent(ListEvent.CHANGE, _list));
+ });
+ this._convert();
+ }
+
+ //variables/etc.
+ private var _obj:INGComment; //slotID:0
+ private var _list:Array; //slotID:0
+
+ private function _convert():void
+ { //MethodID:5069, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 27
+ this._list = [];
+
+ this._obj.list.forEach(function(hug1:NGInfo, hug2:int, hug3:Array):void{ //MethodID:5068, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 115
+ var hug4:uint = 0;
+
+ if(hug1.type == NGType.USER_ID){
+ hug4 = NGSourceType.USER;
+ }else if(hug1.type == NGType.MESSAGE){
+ hug4 = NGSourceType.KEYWORD;
+ }else if(hug1.type == NGType.COMMAND){
+ hug4 = NGSourceType.COMMAND;
+ }else{
+ throw new TypeError();
+ }
+
+ _list.push(new NGSource(hug4, hug1.source));
+ });
+ }
+
+ public function get list():Array
+ { //MethodID:5070, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._list;
+ }
+ }
+}
+
+//■script362■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ //■class(instance)_index:431
+ public interface IPlayerConfig implements IEventDispatcher
+ {
+ //static constructor
+ public static function IPlayerConfig$cinit()
+ { //MethodID:5072, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get screenMode():String; //MethodID:5073, dispID:0
+
+ function get screenAspectRatio():String; //MethodID:5074, dispID:0
+
+ function get isMute():Boolean; //MethodID:5075, dispID:0
+
+ function get volume():Number; //MethodID:5076, dispID:0
+
+ function get useAnonymity():Boolean; //MethodID:5077, dispID:0
+
+ function get isRepeat():Boolean; //MethodID:5078, dispID:0
+
+ function get isAutoPlay():Boolean; //MethodID:5079, dispID:0
+
+ function get commentVisible():Boolean; //MethodID:5080, dispID:0
+
+ function get marqueeInterruptionEnabled():Boolean; //MethodID:5081, dispID:0
+
+ function get deepenedComment():Boolean; //MethodID:5082, dispID:0
+
+ function get clockMessageVisible():Boolean; //MethodID:5083, dispID:0
+
+ function get sponsorVisibleOnRepeat():Boolean; //MethodID:5084, dispID:0
+
+ //constructor
+ public function IPlayerConfig(); //MethodID:5085, dispID:0
+ }
+}
+
+//■script363■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import flash.events.EventDispatcher
+ import jp.nicovideo.app.api.v1.plugin.www.PlayerConfigScreenAspectRatio
+ import jp.nicovideo.app.api.v1.plugin.www.PlayerConfigScreenMode
+ import jp.nicovideo.app.api.v1.plugin.www.events.PlayerConfigEvent
+ import jp.nicovideo.nicoplayer.models.IPlayerConfig
+ import jp.nicovideo.nicoplayer.models.ScreenAspectRatio
+ import jp.nicovideo.nicoplayer.models.ScreenMode
+ import jp.nicovideo.util.events.event_sender
+
+ //■class(instance)_index:432
+ public class PlayerConfig extends EventDispatcher implements IPlayerConfig
+ {
+ //static constructor
+ public static function PlayerConfig$cinit()
+ { //MethodID:5087, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function PlayerConfig(hug1:IPlayerConfig)
+ { //MethodID:5088, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 17
+ super(null);
+
+ this._config = hug1;
+
+ this._PlayerConfig();
+ }
+
+ //variables/etc.
+ private var _config:IPlayerConfig; //slotID:0
+
+ private function _PlayerConfig():void
+ { //MethodID:5092, LocalCount= 2 , MaxScope= 2, MaxStack= 2, CodeLength= 67
+ this._config.onPlayerConfigIsMuteUpdated.add(function(hug1:Boolean):void{ //MethodID:5089, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 50
+ if(hug1){
+ dispatchEvent(new PlayerConfigEvent(PlayerConfigEvent.MUTE_SET));
+ }else{
+ dispatchEvent(new PlayerConfigEvent(PlayerConfigEvent.MUTE_UNSET));
+ }
+ });
+ this._config.onPlayerConfigCommentVisibleUpdated.add(function(hug1:Boolean):void{ //MethodID:5090, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 50
+ if(hug1){
+ dispatchEvent(new PlayerConfigEvent(PlayerConfigEvent.COMMENT_VISIBLE));
+ }else{
+ dispatchEvent(new PlayerConfigEvent(PlayerConfigEvent.COMMENT_INVISIBLE));
+ }
+ });
+ this._config.onPlayerConfigAspectRatioUpdate.add(function(hug1:uint):void{ //MethodID:5091, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 21
+ dispatchEvent(new PlayerConfigEvent(PlayerConfigEvent.ASPECT_RATIO_UPDATE));
+ });
+ }
+
+ public function get screenMode():String
+ { //MethodID:5093, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ if(this._config.screenMode == ScreenMode.NORMAL) return PlayerConfigScreenMode.NORMAL;
+
+ if(this._config.screenMode == ScreenMode.BROWSER_FULL) return PlayerConfigScreenMode.BROWSER_FULL;
+
+ return PlayerConfigScreenMode.DISPLAY_FULL;
+ }
+
+ public function get screenAspectRatio():String
+ { //MethodID:5094, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 57
+ if(this._config.aspectRatio == ScreenAspectRatio.NORMAL) return PlayerConfigScreenAspectRatio.SD;
+
+ if(this._config.aspectRatio == ScreenAspectRatio.WIDE) return PlayerConfigScreenAspectRatio.HD;
+
+ return PlayerConfigScreenAspectRatio.SD;
+ }
+
+ public function get isMute():Boolean
+ { //MethodID:5095, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.isMute;
+ }
+
+ public function get volume():Number
+ { //MethodID:5096, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.volume;
+ }
+
+ public function get useAnonymity():Boolean
+ { //MethodID:5097, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.use184;
+ }
+
+ public function get isRepeat():Boolean
+ { //MethodID:5098, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.isLoop;
+ }
+
+ public function get isAutoPlay():Boolean
+ { //MethodID:5099, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.autoPlay;
+ }
+
+ public function get commentVisible():Boolean
+ { //MethodID:5100, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.commentVisible;
+ }
+
+ public function get marqueeInterruptionEnabled():Boolean
+ { //MethodID:5101, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 11
+ return !this._config.isNicowariSkip;
+ }
+
+ public function get deepenedComment():Boolean
+ { //MethodID:5102, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.deepenedComment;
+ }
+
+ public function get clockMessageVisible():Boolean
+ { //MethodID:5103, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.clockMessageVisible;
+ }
+
+ public function get sponsorVisibleOnRepeat():Boolean
+ { //MethodID:5104, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 10
+ return this._config.sponsorVisibleOnLoop;
+ }
+ }
+}
+
+//■script364■
+
+package jp.nicovideo.util.net.local{
+
+ import flash.errors.IllegalOperationError
+ import flash.events.DataEvent
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.StatusEvent
+ import flash.events.TimerEvent
+ import flash.net.LocalConnection
+ import flash.utils.Timer
+
+ //■class(instance)_index:433
+ public class LocalSessionSlave extends EventDispatcher
+ {
+ //static constructor
+ public static function LocalSessionSlave$cinit()
+ { //MethodID:5106, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LocalSessionSlave(hug1:LocalSessionMaster)
+ { //MethodID:5107, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 52
+ this._connection = LocalConnectionFactory.create();
+ this._pingTimer = new Timer(LocalSession.SLAVE_PING_INTERVAL);
+ this._slaveNames = [];
+
+ super();
+
+ this._master = hug1;
+ this._connection.client = {};
+ }
+
+ //variables/etc.
+ private var _connection:LocalConnection; //slotID:0
+ private var _name:String; //slotID:0
+ private var _hasJoined:Boolean = false; //slotID:0
+ private var _master:LocalSessionMaster; //slotID:0
+ private var _pingTimer:Timer; //slotID:0
+ private var _slaveNames:Array; //slotID:0
+ private var _lastReceiver:Object; //slotID:0
+ private var _hasInitialized:Boolean = false; //slotID:0
+
+ public function join(hug1:Object=null):void
+ { //MethodID:5108, LocalCount= 4 , MaxScope= 5, MaxStack= 5, CodeLength= 312
+ internal var receiver:Object = null; //slotID:1
+ internal var time:Number; //slotID:2
+ internal var attempts:int; //slotID:3
+ internal var err:Error; //slotID:4
+ internal var name:String; //slotID:5
+
+ err = null;
+ name = null;
+ receiver = hug1;
+ time = new Date().getTime();
+ attempts = 3;
+
+ while(true){
+ try{
+ name = (time.toString() + Math.round(Math.random() * 1000).toString());
+
+ this._connection.connect(name);
+
+ this._name = name;
+ this._master.mySlaveName = this._name;
+ this._hasJoined = true;
+ break;
+ }
+ catch(e:ArgumentError){
+ err = e;
+ }
+
+ attempts -= 1;
+
+ if((attempts - 1) < 0) throw new Error(("LocalSessionSlave.join: can not connect to LocalConnection. attempts has been lost. attempts=" + attempts + " LocalConnection.connect's Error=") + err.toString());
+
+ time += 1;
+ }
+
+ this._connection.client = this._createClient(this._connection.client);
+
+ this._connection.send(this._master.masterName, (this._master.domain + ".getSlaveNames"), name);
+ this._pingTimer.addEventListener(TimerEvent.TIMER, this._pingMaster);
+ this._pingTimer.start();
+ this._connection.addEventListener(StatusEvent.STATUS, this._connectionStatusListener);
+ }
+
+ private function _connectionStatusListener(hug1:StatusEvent):void
+ { //MethodID:5109, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 47
+ if(hug1.level != "error") return;
+ dispatchEvent(new LocalSessionEvent(LocalSessionEvent.MASTER_ABSENCE));
+ this._master.masterize(this._slaveNames);
+ }
+
+ private function _pingMaster(hug1:TimerEvent=null):void
+ { //MethodID:5110, LocalCount= 2 , MaxScope= 1, MaxStack= 4, CodeLength= 33
+ this._connection.send(this._master.masterName, (this._master.domain + ".ping"), this.name);
+ }
+
+ public function setReceiver(hug1:String, hug2:Function=null):void
+ { //MethodID:5111, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 52
+ var hug3:String = (this._master.domain + ".method." + hug1);
+
+ if(hug2 == null){
+ delete this._connection.client[hug3];
+ }else{
+ this._connection.client[hug3] = hug2;
+ }
+ }
+
+ private function _createClient(hug1:Object):Object
+ { //MethodID:5114, LocalCount= 5 , MaxScope= 2, MaxStack= 4, CodeLength= 169
+ internal var original:Object; //slotID:1
+ internal var domain:String; //slotID:2
+ internal var client:Object; //slotID:3
+ internal var name:String; //slotID:4
+ internal var receiveSlaveNames:Function; //slotID:5
+ internal var receiveIsAliveResult:Function; //slotID:6
+
+ name = null;
+ receiveSlaveNames = null;
+ receiveIsAliveResult = null;
+ original = hug1;
+ receiveSlaveNames = function(hug1:Array):void{ //MethodID:5112, LocalCount= 2 , MaxScope= 0, MaxStack= 3, CodeLength= 59
+ _slaveNames = hug1;
+
+ if(!_hasInitialized){
+ dispatchEvent(new Event(Event.INIT));
+
+ _hasInitialized = true;
+ }
+
+ dispatchEvent(new DataEvent(DataEvent.DATA));
+ };
+
+ receiveIsAliveResult = function(hug1:*):void{ //MethodID:5113, LocalCount= 3 , MaxScope= 0, MaxStack= 6, CodeLength= 50
+ var hug2:String = (hug1.isAlive ? LocalSessionEvent.SEND_SUCCEEDED : LocalSessionEvent.SEND_FAILURE);
+
+ dispatchEvent(new LocalSessionEvent(hug2, false, false, hug1.targetName));
+ };
+
+ domain = this._master.domain;
+ client = {};
+
+ for(name in original){
+ client[name] = original[name];
+ }
+
+ client[domain + ".receiveSlaveNames"] = receiveSlaveNames;
+ client[domain + ".receiveIsAliveResult"] = receiveIsAliveResult;
+ return client;
+ }
+
+ public function ping(hug1:String):void
+ { //MethodID:5115, LocalCount= 2 , MaxScope= 1, MaxStack= 5, CodeLength= 34
+ this._connection.send(this._master.masterName, (this._master.domain + ".isAlive"), hug1, this._name);
+ }
+
+ public function get name():String
+ { //MethodID:5116, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 26
+ if(!this.hasJoined) throw new IllegalOperationError("has not joined");
+
+ return this._name;
+ }
+
+ public function get slaveNames():Array
+ { //MethodID:5117, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._slaveNames;
+ }
+
+ public function get hasJoined():Boolean
+ { //MethodID:5118, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasJoined;
+ }
+
+ public function get hasInitialized():Boolean
+ { //MethodID:5119, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._hasInitialized;
+ }
+
+ public function send(hug1:String, hug2:String, hug3:*):void
+ { //MethodID:5120, LocalCount= 4 , MaxScope= 1, MaxStack= 6, CodeLength= 32
+ this._connection.send(this._master.masterName, (this._master.domain + ".method"), hug1, hug2, hug3);
+ }
+
+ public function sendAll(hug1:String, hug2:*):void
+ { //MethodID:5121, LocalCount= 3 , MaxScope= 1, MaxStack= 6, CodeLength= 32
+ this._connection.send(this._master.masterName, (this._master.domain + ".method"), null, hug1, hug2);
+ }
+
+ public function close():void
+ { //MethodID:5122, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ this._connection.close();
+ this._pingTimer.stop();
+
+ this._slaveNames = [];
+ }
+ }
+}
+
+//■script365■
+
+package jp.nicovideo.util.net.local{
+
+ import flash.events.DataEvent
+ import flash.events.Event
+ import flash.events.EventDispatcher
+ import flash.events.StatusEvent
+ import flash.net.LocalConnection
+ import jp.nicovideo.util.TimeUtils
+
+ //■class(instance)_index:434
+ public class LocalSessionMaster extends EventDispatcher
+ {
+ //static constructor
+ public static function LocalSessionMaster$cinit()
+ { //MethodID:5124, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function LocalSessionMaster(hug1:String)
+ { //MethodID:5125, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 26
+ this._slaves = {};
+
+ super();
+
+ this._domain = hug1;
+ this._masterName = (hug1 + ".master");
+ }
+
+ //variables/etc.
+ private var _connection:LocalConnection; //slotID:0
+ private var _isMaster:Boolean = false; //slotID:0
+ private var _domain:String; //slotID:0
+ private var _masterName:String; //slotID:0
+ private var _slaves:Object; //slotID:0
+ private var _slaveChecker:_SlaveChecker; //slotID:0
+ private var _mySlaveName:String; //slotID:0
+
+ public function set mySlaveName(hug1:String):void
+ { //MethodID:5126, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._mySlaveName = hug1;
+ }
+
+ public function masterize(hug1:Array):Boolean
+ { //MethodID:5127, LocalCount= 5 , MaxScope= 5, MaxStack= 5, CodeLength= 241
+ internal var slaveNames:Array; //slotID:1
+ internal var connection:LocalConnection; //slotID:2
+ internal var name:String; //slotID:3
+
+ name = null;
+ slaveNames = hug1;
+ connection = LocalConnectionFactory.create();
+
+ try{
+ connection.connect(this.masterName);
+ }
+ catch(error:ArgumentError){
+ dispatchEvent(new LocalSessionEvent(LocalSessionEvent.MASTER_PRESENCE));
+
+ return false;
+ }
+
+ this._connection = connection;
+ this._connection.client = this._createClient();
+
+ this._connection.addEventListener(StatusEvent.STATUS, this._connectionStatusListener);
+
+ this._slaveChecker = new _SlaveChecker(this._connection, (this._domain + ".ping"));
+
+ for each(name in slaveNames){
+ this._slaves[name] = 0;
+ }
+
+ this._isMaster = true;
+
+ dispatchEvent(new LocalSessionEvent(LocalSessionEvent.MASTERIZE));
+ dispatchEvent(new LocalSessionEvent(LocalSessionEvent.MASTER_PRESENCE));
+
+ return true;
+ }
+
+ private function _createClient():Object
+ { //MethodID:5135, LocalCount= 2 , MaxScope= 2, MaxStack= 3, CodeLength= 159
+ internal var client:Object; //slotID:1
+ internal var ping:Function; //slotID:2
+ internal var getSlaveNames:Function; //slotID:3
+ internal var method:Function; //slotID:4
+ internal var isAlive:Function; //slotID:5
+
+ ping = null;
+ getSlaveNames = null;
+ method = null;
+ isAlive = null;
+ ping = function(hug1:String):void{ //MethodID:5128, LocalCount= 7 , MaxScope= 0, MaxStack= 4, CodeLength= 99
+ var hug4:String = null;
+ var hug2:Boolean = false;
+
+ if(!_slaves.hasOwnProperty(hug1)) hug2 = true;
+
+ _slaves[hug1] = TimeUtils.time;
+
+ if(!hug2) return;
+
+ var hug3:Array = _getSlaveNames();
+
+ for each(hug4 in hug3){
+ send(hug4, (_domain + ".receiveSlaveNames"), hug3);
+ }
+ };
+
+ getSlaveNames = function(hug1:String):void{ //MethodID:5129, LocalCount= 7 , MaxScope= 0, MaxStack= 4, CodeLength= 118
+ var hug4:String = null;
+ var hug2:Boolean = false;
+
+ if(!_slaves.hasOwnProperty(hug1)) hug2 = true;
+
+ _slaves[hug1] = TimeUtils.time;
+ var hug3:Array = _getSlaveNames();
+
+ if(hug2){
+ for each(hug4 in hug3){
+ send(hug4, (_domain + ".receiveSlaveNames"), hug3);
+ }
+ }else{
+ send(hug1, (_domain + ".receiveSlaveNames"), hug3);
+ }
+ };
+
+ method = function(hug1:String, hug2:String, hug3:*):void{ //MethodID:5130, LocalCount= 5 , MaxScope= 0, MaxStack= 4, CodeLength= 80
+ var hug4:String = (_domain + ".method." + hug2);
+
+ if(hug1 == null){
+ sendAll(hug4, hug3);
+ }else if(hug1 == _masterName){
+ send(_mySlaveName, hug4, hug3);
+ send(hug1, hug4, hug3);
+ }else{
+ send(hug1, hug4, hug3);
+ }
+ };
+
+ isAlive = function(hug1:String, hug2:String):void{ //MethodID:5134, LocalCount= 4 , MaxScope= 1, MaxStack= 3, CodeLength= 62
+ internal var targetName:String; //slotID:1
+ internal var replyName:String; //slotID:2
+ internal var check:Function; //slotID:3
+
+ targetName = hug1;
+ replyName = hug2;
+ check = function():void{ //MethodID:5132, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 35
+ _slaveChecker.addEventListener(DataEvent.DATA, function(hug1:DataEvent, ...args):void{ //MethodID:5131, LocalCount= 7 , MaxScope= 0, MaxStack= 7, CodeLength= 115
+ var hug4:String = null;
+
+ _slaveChecker.removeEventListener(DataEvent.DATA, args.callee);
+
+ var hug3:Array = hug1.data.split(",");
+
+ for each(hug4 in hug3){
+ delete _slaves[hug4];
+ }
+
+ send(replyName, (_domain + ".receiveIsAliveResult"), {isAlive:_slaves.hasOwnProperty(targetName), targetName:targetName});
+ });
+ _slaveChecker.check(_getSlaveNames());
+ };
+
+ if(_slaveChecker.isChecking){
+ _slaveChecker.addEventListener(DataEvent.DATA, function(hug1:Event, ...args):void{ //MethodID:5133, LocalCount= 3 , MaxScope= 0, MaxStack= 3, CodeLength= 26
+ _slaveChecker.removeEventListener(DataEvent.DATA, args.callee);
+ check();
+ });
+ }else{
+ check();
+ }
+ };
+
+ client = {};
+ client[this._domain + ".ping"] = ping;
+ client[this._domain + ".getSlaveNames"] = getSlaveNames;
+ client[this._domain + ".method"] = method;
+ client[this._domain + ".isAlive"] = isAlive;
+ return client;
+ }
+
+ private function _getSlaveNames():Array
+ { //MethodID:5136, LocalCount= 5 , MaxScope= 1, MaxStack= 2, CodeLength= 50
+ var hug2:String = null;
+ var hug1:Array = [];
+
+ for(hug2 in this._slaves){
+ hug1.push(hug2);
+ }
+
+ return hug1;
+ }
+
+ private function _getInactiveNames():Array
+ { //MethodID:5137, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 83
+ var hug3:String = null;
+ var hug1:Array = [];
+ var hug2:Number = (TimeUtils.time - LocalSession.SLAVE_PING_INTERVAL + 25);
+
+ for(hug3 in this._slaves){
+ if(hug2 >= this._slaves[hug3]) hug1.push(hug3);
+ }
+
+ return hug1;
+ }
+
+ private function _connectionStatusListener(hug1:StatusEvent):void
+ { //MethodID:5139, LocalCount= 3 , MaxScope= 2, MaxStack= 3, CodeLength= 69
+ internal var event:StatusEvent; //slotID:1
+
+ event = hug1;
+
+ if(event.level != "error") return;
+
+ if(this._slaveChecker.isChecking) return;
+ this._slaveChecker.addEventListener(DataEvent.DATA, function(hug1:DataEvent, ...args):void{ //MethodID:5138, LocalCount= 7 , MaxScope= 0, MaxStack= 3, CodeLength= 109
+ var hug4:String = null;
+
+ _slaveChecker.removeEventListener(DataEvent.DATA, args.callee);
+
+ if(hug1.data == "") return;
+
+ var hug3:Array = hug1.data.split(",");
+
+ for each(hug4 in hug3){
+ delete _slaves[hug4];
+ }
+
+ sendAll((_domain + ".receiveSlaveNames"), _getSlaveNames());
+ });
+ this._slaveChecker.check(this._getInactiveNames());
+ }
+
+ public function get isMaster():Boolean
+ { //MethodID:5140, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isMaster;
+ }
+
+ public function get domain():String
+ { //MethodID:5141, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._domain;
+ }
+
+ public function get masterName():String
+ { //MethodID:5142, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._masterName;
+ }
+
+ public function send(hug1:String, hug2:String, hug3:*):void
+ { //MethodID:5143, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 14
+ this._connection.send(hug1, hug2, hug3);
+ }
+
+ public function sendAll(hug1:String, hug2:*):void
+ { //MethodID:5144, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 51
+ var hug3:String = null;
+
+ for(hug3 in this._slaves){
+ this._connection.send(hug3, hug1, hug2);
+ }
+ }
+
+ public function close():void
+ { //MethodID:5145, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 25
+ if(!this._isMaster) return;
+ this._connection.close();
+
+ this._isMaster = false;
+ }
+ }
+}
+
+import flash.errors.IllegalOperationError
+import flash.events.DataEvent
+import flash.events.EventDispatcher
+import flash.events.StatusEvent
+import flash.net.LocalConnection
+
+//■class(instance)_index:435
+//private
+class _SlaveChecker extends EventDispatcher
+{
+ //static constructor
+ public static function _SlaveChecker$cinit()
+ { //MethodID:5146, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function _SlaveChecker(hug1:LocalConnection, hug2:String)
+ { //MethodID:5147, LocalCount= 3 , MaxScope= 1, MaxStack= 3, CodeLength= 34
+ super();
+
+ this._connection = hug1;
+ this._pingMethodName = hug2;
+
+ this._connection.addEventListener(StatusEvent.STATUS, this._statusListener);
+ }
+
+ //variables/etc.
+ private var _targets:Array; //slotID:0
+ private var _connection:LocalConnection; //slotID:0
+ private var _currentIndex:int = -1; //slotID:0
+ private var _pingMethodName:String; //slotID:0
+ private var _closedNames:Array; //slotID:0
+
+ public function check(hug1:Array):void
+ { //MethodID:5148, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 59
+ if(this.isChecking) throw new IllegalOperationError();
+
+ this._targets = hug1;
+
+ if(this._targets.length == 0) return;
+
+ this._closedNames = [];
+ this._currentIndex = 0;
+
+ this._check(this._currentIndex);
+ }
+
+ private function _check(hug1:int):void
+ { //MethodID:5149, LocalCount= 2 , MaxScope= 1, MaxStack= 3, CodeLength= 23
+ this._connection.send(this._targets[hug1], this._pingMethodName);
+ }
+
+ private function _statusListener(hug1:StatusEvent):void
+ { //MethodID:5150, LocalCount= 4 , MaxScope= 1, MaxStack= 7, CodeLength= 124
+ if(!this.isChecking) return;
+
+ if(hug1.level == "error") this._closedNames.push(this._targets[this._currentIndex]);
+
+ this._currentIndex++;
+
+ if(this._currentIndex <= (this._targets.length - 1)){
+ this._check(this._currentIndex);
+
+ return;
+ }
+
+ this._currentIndex = -1;
+
+ dispatchEvent(new DataEvent(DataEvent.DATA, false, false, this._closedNames.join(",")));
+ }
+
+ public function get isChecking():Boolean
+ { //MethodID:5151, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 11
+ return (this._currentIndex != (-1));
+ }
+}
+
+//■script366■
+//skip components :mx.core
+//as filename :IFlexAsset.as
+
+//■script367■
+//skip components :mx.core
+//as filename :FlexSprite.as
+
+//■script368■
+//skip components :mx.core
+//as filename :ILayoutDirectionElement.as
+
+//■script369■
+//skip components :mx.core
+//as filename :IFlexDisplayObject.as
+
+//■script370■
+//skip components :mx.core
+//as filename :IBorder.as
+
+//■script371■
+//skip components :mx.core
+//as filename :SpriteAsset.as
+
+//■script372■
+
+package{
+
+ import flash.display.DisplayObject
+ import mx.core.SpriteAsset
+
+ //■class(instance)_index:442
+ public class UserButton__ButtonClass extends SpriteAsset
+ {
+ //static constructor
+ public static function UserButton__ButtonClass$cinit()
+ { //MethodID:5265, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function UserButton__ButtonClass()
+ { //MethodID:5266, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+
+ //variables/etc.
+ public var BaseRight:DisplayObject; //slotID:0
+ public var BaseCenter:DisplayObject; //slotID:0
+ public var BaseLeft:DisplayObject; //slotID:0
+ }
+}
+
+//■script373■
+//skip components :com.adobe.serialization.json
+//as filename :JSONParseError.as
+
+//■script374■
+
+package jp.nicovideo.app.info{
+
+ //■class(instance)_index:444
+ public interface IAppliThreads
+ {
+ //static constructor
+ public static function IAppliThreads$cinit()
+ { //MethodID:5273, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get active():IThreadInfo; //MethodID:5274, dispID:0
+
+ function get running():IThreadInfo; //MethodID:5275, dispID:0
+
+ function get source():*; //MethodID:5276, dispID:0
+
+ //constructor
+ public function IAppliThreads(); //MethodID:5277, dispID:0
+ }
+}
+
+//■script375■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ //■class(instance)_index:445
+ public final class CommentType extends Object
+ {
+ //static constructor
+ public static function CommentType$cinit()
+ { //MethodID:5279, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ NORMAL = "normal";
+ OWNER = "owner";
+ COMMUNITY = "community";
+ LOCAL = "local";
+ NICOSCRIPT_TRIGGER = "nicoscriptTrigger";
+ }
+
+ //static variables/etc.
+ public static const NORMAL:String = "normal"; //slotID:1
+ public static const OWNER:String = "owner"; //slotID:2
+ public static const COMMUNITY:String = "community"; //slotID:3
+ public static const LOCAL:String = "local"; //slotID:4
+ public static const NICOSCRIPT_TRIGGER:String = "nicoscriptTrigger";//slotID:5
+
+ //constructor
+ public function CommentType()
+ { //MethodID:5280, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script376■
+
+package jp.nicovideo.app.api.v1.plugin.www.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:446
+ public class CommentEvent extends Event
+ {
+ //static constructor
+ public static function CommentEvent$cinit()
+ { //MethodID:5282, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ POST = "post";
+ RECEIVE = "receive";
+ }
+
+ //static variables/etc.
+ public static const POST:String = "post"; //slotID:1
+ public static const RECEIVE:String = "receive"; //slotID:2
+
+ //constructor
+ public function CommentEvent(hug1:String, hug2:Array, hug3:String, hug4:Boolean=false, hug5:Boolean=false)
+ { //MethodID:5283, LocalCount= 6 , MaxScope= 1, MaxStack= 4, CodeLength= 21
+ super(hug1, hug4, hug5);
+
+ this._comments = hug2;
+ this._commentType = hug3;
+ }
+
+ //variables/etc.
+ private var _comments:Array; //slotID:0
+ private var _commentType:String; //slotID:0
+
+ public function get commentType():String
+ { //MethodID:5284, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._commentType;
+ }
+
+ public function get comments():Array
+ { //MethodID:5285, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._comments;
+ }
+ }
+}
+
+//■script377■
+
+package jp.nicovideo.nicoplayer.app.api.v1.plugin.www{
+
+ import jp.nicovideo.app.api.v1.plugin.common.Comment
+ import jp.nicovideo.app.api.v1.plugin.common.CommentAlign
+ import jp.nicovideo.app.api.v1.plugin.common.CommentFontSize
+ import jp.nicovideo.app.api.v1.plugin.common.CommentValign
+ import jp.nicovideo.nicoplayer.models.comment.CommandConstants
+ import jp.nicovideo.nicoplayer.models.comment.IComment
+ import jp.nicovideo.nicoplayer.models.comment.command.CommandSize
+
+ //■class(instance)_index:447
+ public class NicoCommentConverter extends Object
+ {
+ //static constructor
+ public static function NicoCommentConverter$cinit()
+ { //MethodID:5287, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //static variables/etc.
+ public static function convertNico2API(hug1:IComment):Comment
+ { //dispID:3, MethodID:5288, LocalCount= 6 , MaxScope= 1, MaxStack= 3, CodeLength= 326
+ var hug2:Comment = new Comment();
+ hug2.date = new Date(hug1.date);
+ hug2.fontSize = CommentFontSize.NORMAL;
+ var hug3:String = hug1.command.size;
+
+ if(hug3 == CommandSize.BIG){
+ hug2.fontSize = CommentFontSize.BIG;
+ }else if(hug3 == CommandSize.SMALL){
+ hug2.fontSize = CommentFontSize.SMALL;
+ }
+
+ hug2.isAnonymity = (hug1.anonymity == 1);
+ hug2.isPremium = hug1.isPremium;
+ hug2.mail = hug1.command.command;
+ hug2.message = (hug1.command.hasButton ? hug1.buttonComment : hug1.message);
+ hug2.name = hug1.userName;
+ hug2.resNo = hug1.resNo;
+ hug2.userID = hug1.userID;
+ hug2.align = CommentAlign.NORMAL;
+ var hug4:String = hug1.command.posX;
+
+ if(hug4 == CommandConstants.PLACE_RIGHT){
+ hug2.align = CommentAlign.RIGHT;
+ }else if(hug4 == CommandConstants.PLACE_LEFT){
+ hug2.align = CommentAlign.LEFT;
+ }
+
+ hug2.valign = CommentValign.NORMAL;
+ var hug5:String = hug1.command.posY;
+
+ if(hug5 == CommandConstants.PLACE_TOP){
+ hug2.valign = CommentValign.TOP;
+ }else if(hug5 == CommandConstants.PLACE_BOTTOM){
+ hug2.valign = CommentValign.BOTTOM;
+ }
+
+ hug2.vpos = hug1.vpos;
+ hug2.yourpost = hug1.justPosted;
+ return hug2;
+ }
+
+ //constructor
+ public function NicoCommentConverter()
+ { //MethodID:5289, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script378■
+
+package jp.nicovideo.app.api.v1.plugin.www.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:448
+ public class VideoEvent extends Event
+ {
+ //static constructor
+ public static function VideoEvent$cinit()
+ { //MethodID:5291, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ STARTED = "started";
+ PLAYED = "played";
+ PAUSED = "paused";
+ SEEKED = "seeked";
+ ENDED = "ended";
+ }
+
+ //static variables/etc.
+ public static const STARTED:String = "started"; //slotID:1
+ public static const PLAYED:String = "played"; //slotID:2
+ public static const PAUSED:String = "paused"; //slotID:3
+ public static const SEEKED:String = "seeked"; //slotID:4
+ public static const ENDED:String = "ended"; //slotID:5
+
+ //constructor
+ public function VideoEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:5292, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 9
+ super(hug1, hug2, hug3);
+ }
+
+ //variables/etc.
+ private var _vpos:Number; //slotID:0
+ }
+}
+
+//■script379■
+
+package jp.nicovideo.app.api.v1.plugin.common.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:449
+ public class MarqueeEvent extends Event
+ {
+ //static constructor
+ public static function MarqueeEvent$cinit()
+ { //MethodID:5294, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ INTERRUPT_START = "interruptStart";
+ INTERRUPT_END = "interruptEnd";
+ }
+
+ //static variables/etc.
+ public static const INTERRUPT_START:String = "interruptStart"; //slotID:1
+ public static const INTERRUPT_END:String = "interruptEnd"; //slotID:2
+
+ //constructor
+ public function MarqueeEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:5295, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 9
+ super(hug1, hug2, hug3);
+ }
+ }
+}
+
+//■script380■
+
+package jp.nicovideo.app.api.v1.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:450
+ public class ListEvent extends Event
+ {
+ //static constructor
+ public static function ListEvent$cinit()
+ { //MethodID:5297, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ ADD = "add";
+ DELETE = "delete";
+ CHANGE = "change";
+ }
+
+ //static variables/etc.
+ public static const ADD:String = "add"; //slotID:1
+ public static const DELETE:String = "delete"; //slotID:2
+ public static const CHANGE:String = "change"; //slotID:3
+
+ //constructor
+ public function ListEvent(hug1:String, hug2:Array, hug3:Boolean=false, hug4:Boolean=false)
+ { //MethodID:5298, LocalCount= 5 , MaxScope= 1, MaxStack= 4, CodeLength= 15
+ super(hug1, hug3, hug4);
+
+ this._target = hug2;
+ }
+
+ //variables/etc.
+ private var _target:Array; //slotID:0
+
+ override public function get target():Object
+ { //MethodID:5299, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._target;
+ }
+
+ override public function get currentTarget():Object
+ { //MethodID:5300, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._target;
+ }
+ }
+}
+
+//■script381■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:451
+ public class NGSource extends Object
+ {
+ //static constructor
+ public static function NGSource$cinit()
+ { //MethodID:5302, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function NGSource(hug1:uint, hug2:String)
+ { //MethodID:5303, LocalCount= 3 , MaxScope= 1, MaxStack= 2, CodeLength= 16
+ super();
+
+ this._type = hug1;
+ this._source = hug2;
+ }
+
+ //variables/etc.
+ private var _type:uint; //slotID:0
+ private var _source:String; //slotID:0
+
+ public function get type():uint
+ { //MethodID:5304, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._type;
+ }
+
+ public function get source():String
+ { //MethodID:5305, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._source;
+ }
+ }
+}
+
+//■script382■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:452
+ public class NGSourceType extends Object
+ {
+ //static constructor
+ public static function NGSourceType$cinit()
+ { //MethodID:5307, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ KEYWORD = 0;
+ USER = 1;
+ COMMAND = 2;
+ }
+
+ //static variables/etc.
+ public static const KEYWORD:uint = 0; //slotID:1
+ public static const USER:uint = 1; //slotID:2
+ public static const COMMAND:uint = 2; //slotID:3
+
+ //constructor
+ public function NGSourceType()
+ { //MethodID:5308, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script383■
+
+package jp.nicovideo.app.api.v1.plugin.www.events{
+
+ import flash.events.Event
+
+ //■class(instance)_index:453
+ public class PlayerConfigEvent extends Event
+ {
+ //static constructor
+ public static function PlayerConfigEvent$cinit()
+ { //MethodID:5310, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 48
+ MUTE_SET = "muteSet";
+ MUTE_UNSET = "muteUnset";
+ COMMENT_VISIBLE = "commentVisible";
+ COMMENT_INVISIBLE = "commentInvisible";
+ ASPECT_RATIO_UPDATE = "aspectRatioUpdate";
+ }
+
+ //static variables/etc.
+ public static const MUTE_SET:String = "muteSet"; //slotID:1
+ public static const MUTE_UNSET:String = "muteUnset"; //slotID:2
+ public static const COMMENT_VISIBLE:String = "commentVisible"; //slotID:3
+ public static const COMMENT_INVISIBLE:String = "commentInvisible";//slotID:4
+ public static const ASPECT_RATIO_UPDATE:String = "aspectRatioUpdate";//slotID:5
+
+ //constructor
+ public function PlayerConfigEvent(hug1:String, hug2:Boolean=false, hug3:Boolean=false)
+ { //MethodID:5311, LocalCount= 4 , MaxScope= 1, MaxStack= 4, CodeLength= 9
+ super(hug1, hug2, hug3);
+ }
+ }
+}
+
+//■script384■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ //■class(instance)_index:454
+ public class PlayerConfigScreenMode extends Object
+ {
+ //static constructor
+ public static function PlayerConfigScreenMode$cinit()
+ { //MethodID:5313, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 30
+ NORMAL = "normal";
+ BROWSER_FULL = "browserFull";
+ DISPLAY_FULL = "displayFull";
+ }
+
+ //static variables/etc.
+ public static const NORMAL:String = "normal"; //slotID:1
+ public static const BROWSER_FULL:String = "browserFull"; //slotID:2
+ public static const DISPLAY_FULL:String = "displayFull"; //slotID:3
+
+ //constructor
+ public function PlayerConfigScreenMode()
+ { //MethodID:5314, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script385■
+
+package jp.nicovideo.app.api.v1.plugin.www{
+
+ //■class(instance)_index:455
+ public class PlayerConfigScreenAspectRatio extends Object
+ {
+ //static constructor
+ public static function PlayerConfigScreenAspectRatio$cinit()
+ { //MethodID:5316, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 21
+ SD = "sd";
+ HD = "hd";
+ }
+
+ //static variables/etc.
+ public static const SD:String = "sd"; //slotID:1
+ public static const HD:String = "hd"; //slotID:2
+
+ //constructor
+ public function PlayerConfigScreenAspectRatio()
+ { //MethodID:5317, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script386■
+//skip components :mx.core
+//as filename :mx_internal.as
+
+//■script387■
+//skip components :mx.utils
+//as filename :NameUtil.as
+
+//■script388■
+//skip components :mx.core
+//as filename :EdgeMetrics.as
+
+//■script389■
+//skip components :mx.core
+//as filename :IAssetLayoutFeatures.as
+
+//■script390■
+
+package jp.nicovideo.app.info{
+
+ //■class(instance)_index:459
+ public interface IThreadInfo
+ {
+ //static constructor
+ public static function IThreadInfo$cinit()
+ { //MethodID:5373, LocalCount= 1 , MaxScope= 0, MaxStack= 0, CodeLength= 1
+ }
+
+ //variables/etc.
+ function get id():String; //MethodID:5374, dispID:0
+
+ function get threadKey():String; //MethodID:5375, dispID:0
+
+ //constructor
+ public function IThreadInfo(); //MethodID:5376, dispID:0
+ }
+}
+
+//■script391■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:460
+ public class Comment extends Object
+ {
+ //static constructor
+ public static function Comment$cinit()
+ { //MethodID:5378, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 3
+ }
+
+ //constructor
+ public function Comment()
+ { //MethodID:5379, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 36
+ this._fontSize = CommentFontSize.NORMAL;
+ this._valign = CommentValign.NORMAL;
+ this._align = CommentAlign.NORMAL;
+
+ super();
+ }
+
+ //variables/etc.
+ private var _message:String = ""; //slotID:0
+ private var _mail:String = ""; //slotID:0
+ private var _userID:String; //slotID:0
+ private var _yourpost:Boolean; //slotID:0
+ private var _date:Date; //slotID:0
+ private var _resNo:Number; //slotID:0
+ private var _vpos:Number; //slotID:0
+ private var _isPremium:Boolean = false; //slotID:0
+ private var _isAnonymity:Boolean = true; //slotID:0
+ private var _fontSize:uint; //slotID:0
+ private var _valign:uint; //slotID:0
+ private var _align:uint; //slotID:0
+ private var _name:String; //slotID:0
+
+ public function get message():String
+ { //MethodID:5380, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._message;
+ }
+
+ public function set message(hug1:String):void
+ { //MethodID:5381, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._message = hug1;
+ }
+
+ public function get mail():String
+ { //MethodID:5382, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._mail;
+ }
+
+ public function set mail(hug1:String):void
+ { //MethodID:5383, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._mail = hug1;
+ }
+
+ public function get name():String
+ { //MethodID:5384, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._name;
+ }
+
+ public function set name(hug1:String):void
+ { //MethodID:5385, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._name = hug1;
+ }
+
+ public function get date():Date
+ { //MethodID:5386, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._date;
+ }
+
+ public function set date(hug1:Date):void
+ { //MethodID:5387, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._date = hug1;
+ }
+
+ public function get userID():String
+ { //MethodID:5388, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._userID;
+ }
+
+ public function set userID(hug1:String):void
+ { //MethodID:5389, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._userID = hug1;
+ }
+
+ public function get yourpost():Boolean
+ { //MethodID:5390, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._yourpost;
+ }
+
+ public function set yourpost(hug1:Boolean):void
+ { //MethodID:5391, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._yourpost = hug1;
+ }
+
+ public function get resNo():Number
+ { //MethodID:5392, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._resNo;
+ }
+
+ public function set resNo(hug1:Number):void
+ { //MethodID:5393, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._resNo = hug1;
+ }
+
+ public function get vpos():Number
+ { //MethodID:5394, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._vpos;
+ }
+
+ public function set vpos(hug1:Number):void
+ { //MethodID:5395, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._vpos = hug1;
+ }
+
+ public function get isPremium():Boolean
+ { //MethodID:5396, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isPremium;
+ }
+
+ public function set isPremium(hug1:Boolean):void
+ { //MethodID:5397, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isPremium = hug1;
+ }
+
+ public function get isAnonymity():Boolean
+ { //MethodID:5398, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._isAnonymity;
+ }
+
+ public function set isAnonymity(hug1:Boolean):void
+ { //MethodID:5399, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._isAnonymity = hug1;
+ }
+
+ public function get fontSize():uint
+ { //MethodID:5400, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._fontSize;
+ }
+
+ public function set fontSize(hug1:uint):void
+ { //MethodID:5401, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._fontSize = hug1;
+ }
+
+ public function get valign():uint
+ { //MethodID:5402, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._valign;
+ }
+
+ public function set valign(hug1:uint):void
+ { //MethodID:5403, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._valign = hug1;
+ }
+
+ public function get align():uint
+ { //MethodID:5404, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 7
+ return this._align;
+ }
+
+ public function set align(hug1:uint):void
+ { //MethodID:5405, LocalCount= 2 , MaxScope= 1, MaxStack= 2, CodeLength= 8
+ this._align = hug1;
+ }
+ }
+}
+
+//■script392■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:461
+ public class CommentAlign extends Object
+ {
+ //static constructor
+ public static function CommentAlign$cinit()
+ { //MethodID:5407, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NORMAL = 0;
+ LEFT = 1;
+ RIGHT = 2;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:int = 0; //slotID:1
+ public static const LEFT:int = 1; //slotID:2
+ public static const RIGHT:int = 2; //slotID:3
+
+ //constructor
+ public function CommentAlign()
+ { //MethodID:5408, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script393■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:462
+ public class CommentValign extends Object
+ {
+ //static constructor
+ public static function CommentValign$cinit()
+ { //MethodID:5410, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NORMAL = 0;
+ TOP = 1;
+ BOTTOM = 2;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:int = 0; //slotID:1
+ public static const TOP:int = 1; //slotID:2
+ public static const BOTTOM:int = 2; //slotID:3
+
+ //constructor
+ public function CommentValign()
+ { //MethodID:5411, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script394■
+
+package jp.nicovideo.app.api.v1.plugin.common{
+
+ //■class(instance)_index:463
+ public class CommentFontSize extends Object
+ {
+ //static constructor
+ public static function CommentFontSize$cinit()
+ { //MethodID:5413, LocalCount= 1 , MaxScope= 1, MaxStack= 2, CodeLength= 27
+ NORMAL = 0;
+ BIG = 1;
+ SMALL = 2;
+ }
+
+ //static variables/etc.
+ public static const NORMAL:int = 0; //slotID:1
+ public static const BIG:int = 1; //slotID:2
+ public static const SMALL:int = 2; //slotID:3
+
+ //constructor
+ public function CommentFontSize()
+ { //MethodID:5414, LocalCount= 1 , MaxScope= 1, MaxStack= 1, CodeLength= 6
+ super();
+ }
+ }
+}
+
+//■script395■
+//skip components :mx.core
+//as filename :IRepeaterClient.as
+