//■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 = ("
" + __MSG__("ユーザー情報の取得に失敗しました。") + "
" + "" + __MSG__("ログインしていない可能性があります。") + "
");
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 = (("" + __MSG__("動画情報の取得に失敗しました。") + "
" + "" + __MSG__("ログイン状態が解除されているか、動画が非公開状態にある可能性があります。") + "
") + __MSG__("リロードして再度ログイン", hug3) + "
");
systemMessage.alert(hug2);
return;
}
if(!initializeInfo){
initializeInfo = InitializeInfo.getInstance();
nicoViewControllerClient.initializeInfo = initializeInfo;
pluginClient.setProperty("initializeInfo", initializeInfo);
}
if(!initializeInfo.userID){
systemMessage.informln(__MSG__("ユーザー情報の取得に失敗"));
hug2 = ("" + __MSG__("ユーザー情報の取得に失敗しました。") + "
" + "" + __MSG__("以下のページにアクセスしログインしてください。") + "" + hug3 + "" + "
");
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 = ("" + __MSG__("引用動画の情報の取得に失敗しました。") + "
" + "" + __MSG__("お手数ですが以下のリンクをおしてページをロードしてください。") + "" + hug3 + "" + "
");
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("" + __MSG__("NG設定の読み込みに失敗") + "
" + "" + __MSG__("時間を空けてアクセスしていただくか、下のリンクからお知らせください。") + "
" + "" + "お問い合わせ" + "" + "
");
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__("入力された@コメントは、以下のどちらかの理由で使用できません。
") + __MSG__("・存在しない
") + __MSG__("・投稿者以外は使えない
") + __MSG__("現在、動画閲覧者が使用できるのは、") + "" + __MSG__("@ボタン(閲覧者用)") + "、" + __MSG__("@ピザ") + "" + __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]]のみ使用可能です。", "", ""));
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, (("") + (this.flashVars.isChannel ? __MSG__("コメントするにはチャンネルに入会してください") : __MSG__("コメントするにはコミュニティに入会してください")) + ""));
}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, ("" + __MSG__("ローカル記憶領域が使用できないため、コメント機能を制限をしています") + "
"));
if(!this._isShowedDialog){
this._isShowedDialog = true;
this.systemMessage.informln(__MSG__("SharedObjectの初期に失敗しました。"));
pageURL = this._playerPageMyselfURL;
messageHTML = ("" + __MSG__("ローカル記憶領域の書き込みが出来ません。") + "
" + "" + __MSG__("NG設定、音量設定の保存、ニコニコニュース、RSS、") + "
" + __MSG__("生放送開始のお知らせ、ユーザーが設定した@CMなど、") + "
" + __MSG__("プレーヤーの機能がご利用出来ない状態です。") + "
" + __MSG__("プレーヤーの各機能を有効にするため、Flashの設定を変更してください。") + "
" + "ローカル記憶領域の設定を変更する方法について" + "
");
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 = ("マイメモリーの編集に失敗しました。" + "再度編集しなおす場合は、以下のURLからお願いします。
" + "" + hug3 + "");
}else{
hug3 = StringUtils.joinQuery(hug2, {edit:"comment"});
hug4 = ("編集の保存に失敗しました。" + "再度編集しなおす場合は、以下のURLからお願いします。
" + "" + hug3 + "");
}
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(("" + __MSG__("動画の読み込みができません。") + "
" + "" + __MSG__("別のタブかウィンドウで、動画をいくつか読み込み中です。
") + __MSG__("読み込みが完了してから再度アクセスしてください。
") + "
") + __MSG__("リロードする", hug2) + "
");
}
}
}));
}
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("" + __MSG__("引用動画の読み込みに失敗") + "
" + "" + __MSG__("問題解消に向けて努力しております。") + "
" + __MSG__("しばらく時間をおいて再度アクセスしてみて下さい。") + "
");
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 = ("" + __MSG__("ただ今、サーバーが大変混み合っております。") + "
" + "" + __MSG__("しばらく時間をおいて再度お試しください。") + "
");
break;
case MAINTENANCE:
hug5 = ("" + __MSG__("ただ今連続再生はメンテナンス中のため、ご利用になれません。") + "
");
break;
case URGENT:
hug5 = ("" + __MSG__("ただ今ニコニコ動画はメンテナンス中のため、ご利用になれません。") + "
");
break;
case LIMITED_OPEN:
hug5 = ("" + __MSG__("この時間帯は連続再生をご利用になれません。") + "
");
break;
case NEED_LOGIN:
hug5 = (("" + __MSG__("動画情報の取得に失敗しました。") + "
" + "" + __MSG__("ログイン状態が解除されているか、動画が非公開状態にある可能性があります。") + "
") + __MSG__("リロードして再度ログイン", hug3) + "
");
break;
case ACCESS_LOCK:
hug5 = ("" + __MSG__("短時間での連続アクセスがあったため、連続再生のご利用を一時停止しております。") + "
" + "" + __MSG__("しばらく時間をおいて再度お試しください。") + "
");
break;
case THREAD_IS_NOT_IN_PLAYLIST:
case VIDEO_ERROR:
hug5 = (("" + __MSG__("「[[title]]」", hug1.title) + "
" + "" + __MSG__("連続再生には対応していない動画です。") + "
" + "") + __MSG__("詳しくは動画視聴ページをご確認ください。", hug4) + "
");
break;
case NO_VIDEO:
hug5 = (("" + __MSG__("「[[title]]」", hug1.title) + "
" + "" + __MSG__("存在しないか、または削除された動画です。") + "
" + "") + __MSG__("詳しくは動画視聴ページをご確認ください。", hug4) + "
");
break;
case INVALID_TOKEN:
case TOKEN_TIMEOUT:
hug5 = ("" + __MSG__("正常にアクセスできませんでした。ページを更新してください。") + "
");
break;
case VIDEO_LOAD_STOP:
hug5 = (("" + __MSG__("動画の読み込みができません。") + "
" + "" + __MSG__("別のタブかウィンドウで、動画をいくつか読み込み中です。") + "
" + __MSG__("読み込みが完了してから再度アクセスしてください。") + "
") + __MSG__("リロードする", hug3) + "" + "
");
break;
case NO_LIST:
hug5 = ("" + __MSG__("このマイリストには再生できる動画が含まれていません。") + "
");
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.; //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.; //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.();
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.
{ //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("");
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("" + leavesfrom + "");
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("");
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("" + message + "");
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("" + message + "");
__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("" + list + "");
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("" + message + "");
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("");
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("");
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("");
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("");
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("");
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) + "
");
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. = 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.();
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.)
{ //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.; //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.
{ //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., hug3:Vector.=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.([GetRelationTarget.RELATED_VIDEO, GetRelationTarget.OWNER_VIDEO, GetRelationTarget.LIVE_DJ]);
LOAD_SORT_VALUES = Vector.([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.([RelatedConstants.ORDER_UP, RelatedConstants.ORDER_DOWN]);
}
//static variables/etc.
public static const LOAD_TARGETS:Vector.; //slotID:1
public static const LOAD_SORT_VALUES:Vector.; //slotID:2
public static const LOAD_ORDER_VALUES:Vector.; //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., hug3:Vector.=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.; //slotID:2
internal var extTargets:Vector. = 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.; //slotID:11
internal var extTargets2Load:Vector.; //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., hug2:Object, hug3:Object):Vector.{ //MethodID:1839, LocalCount= 9 , MaxScope= 0, MaxStack= 3, CodeLength= 97
var hug5:String = null;
var hug6:IGetRelationResult = null;
var hug4:Vector. = new Vector.();
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. = null;
var hug4:Vector. = 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., hug2:Vector.=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., hug2:Vector.=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) + "
"), 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) + "
"), 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) + "
"), 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) + "
"), 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 + "
"), 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.; //MethodID:2549, dispID:0
function get logs():Vector.; //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("");
LOGS_XML_TEMPLATE = new XML("");
LOG_XML_TEMPLATE = new XML("");
}
//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.();
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.):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.; //slotID:0
private var _sentLogs:Vector.; //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.):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.):void{ //MethodID:2574, LocalCount= 4 , MaxScope= 0, MaxStack= 1, CodeLength= 6
hug1.onLogSent();
});
this._sentLogs = new Vector.();
}
this._isLogSending = false;
if(this._isSendAfterSending){
this._isSendAfterSending = false;
this.send();
}else{
dispatchEvent(new LogEvent(LogEvent.SEND_COMPLETE));
}
}
private function _clean(hug1:Vector., hug2:Boolean=false):void
{ //MethodID:2577, LocalCount= 4 , MaxScope= 2, MaxStack= 2, CodeLength= 28
internal var target:Vector.; //slotID:1
internal var isCompel:Boolean = false; //slotID:2
target = hug1;
isCompel = hug2;
target.forEach(function(hug1:ILogElement, hug2:int, hug3:Vector.):void{ //MethodID:2576, LocalCount= 4 , MaxScope= 0, MaxStack= 2, CodeLength= 25
if(hug1.isExpired || isCompel) hug1.clearLocalStorage();
});
}
private function _createXML(hug1:Vector.):XML
{ //MethodID:2581, LocalCount= 3 , MaxScope= 2, MaxStack= 2, CodeLength= 81
internal var vector:Vector.; //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.):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.; //slotID:3
item = hug1;
index = hug2;
vector = hug3;
item.logObjects.forEach(function(hug1:Object, hug2:int, hug3:Vector.