const BtlTuto_Path = "pictures/Btl_Tutorial/";
const Tuto_Buzzer = "Btl_Tuto_Buzzer";
//使用方法：スクリプトで this.Btl_TutorialSetting(); の後、チュートリアル敵と戦闘
const PN_BtlTutoBack = 411;
const PN_BtlTutoImg = PN_BtlTutoBack + 1;
let _Btl_TutorialNo = -1; 
let _Btl_TutoFlame = 0; 
let _Tuto_EnemyDO_Arr = [0,0,0,0,0,0];  
let _Tuto_Em_DoViewArr = [-1,-1,-1,-1,-1,-1]; 
let _Tuto_強制命中 = [-1,-1,-1,-1,-1,-1]; 
Game_Interpreter.prototype.Btl_TutorialSetting = function () {
    _Btl_TutorialNo = 0;
    _Tuto_EnemyDO_Arr = [S_散弾 , S_散弾 , S_待機 , S_散弾 , S_待機 , S_回避];
    _Tuto_Em_DoViewArr = [1,1,1,1,1,1]; 
    _Tuto_強制命中 = [1,1,1,1,1,0]; 
}
Game_Interpreter.prototype.Blt_TutorialUpdate = function () {
    _Btl_TutoFlame++;
    if (_Btl_TutorialNo == 0) return true;
    if (_Btl_TutorialNo == 1) { 
        this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_1");
        Btl_TutorialNo_Set(2);
        return true;
    }
    if (_Btl_TutorialNo == 2) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_2_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_2");
            Btl_TutorialNo_Set(3);
        }
        return true;
    }
    if (_Btl_TutorialNo == 3) { 
        if(Tuto_ClickOrOk()) {
            this.MoveSprite(PN_BtlTutoBack , true , true , 10 , 0);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_3");
            Btl_TutorialNo_Set(4);
        }
        return true;
    }
    if (_Btl_TutorialNo == 4) {
        _Tuto_EnemyDO_Arr = [S_散弾 , S_散弾 , S_回避 , S_待機 , S_回避 , S_散弾];
    } 
    if (_Btl_TutorialNo == 5) { 
        _Tuto_強制命中 = [-1,-1,-1,1,-1,-1]; 
        this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_4");
        Btl_TutorialNo_Set(6);
        return true;
    }
    if (_Btl_TutorialNo == 6) { 
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_5_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_5");
            Btl_TutorialNo_Set(7);
        }
        return true;
    }
    if (_Btl_TutorialNo == 7) { 
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_5_2");
            Btl_TutorialNo_Set(8);
        }
        return true;
    }
    if (_Btl_TutorialNo == 8) { 
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_5_3");
            Btl_TutorialNo_Set(9);
        }
        return true;
    }
    if (_Btl_TutorialNo == 9) { 
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_6");
            Btl_TutorialNo_Set(10);
        }
        return true;
    }
    if (_Btl_TutorialNo == 10) { 
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_7_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_7");
            Btl_TutorialNo_Set(11);
        }
        return true;
    }
    if (_Btl_TutorialNo == 11) { 
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_8");
            Btl_TutorialNo_Set(12);
        }
        return true;
    }
    if (_Btl_TutorialNo == 12) { 
        if(Tuto_ClickOrOk()) {
            this.MoveSprite(PN_BtlTutoBack , true , true , 10 , 0);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_9");
            Btl_TutorialNo_Set(13);
        }
        return true;
    }
    if (_Btl_TutorialNo == 13) {
        _Tuto_EnemyDO_Arr = [S_待機 , S_回避 , S_待機 , S_散弾 , S_散弾 , S_待機];
        _Tuto_Em_DoViewArr = [0 , 0 , 0 , 1 , 1 , 1]; 
    }
    if (_Btl_TutorialNo == 14) {
        _Tuto_強制命中 = [-1,-1,-1,-1,-1,1]; 
        this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_10");
        Btl_TutorialNo_Set(15);
        return true;
    }
    if (_Btl_TutorialNo == 15) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_11_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_11");
            Btl_TutorialNo_Set(16);
        }
        return true;
    }
    if (_Btl_TutorialNo == 16) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_11_2" , +1);
            Btl_TutorialNo_Set(17);
        }
        return true;
    }
    if (_Btl_TutorialNo == 17) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_11_3back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_11_3" , +2);
            Btl_TutorialNo_Set(18);
        }
        return true;
    }
    if (_Btl_TutorialNo == 18) {
        if(Tuto_ClickOrOk()) {
            this.MoveSprite(PN_BtlTutoBack , true , true , 10 , 0);
            this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_12" , +2);
            Btl_TutorialNo_Set(19);
        }
        return true;
    }
    if (_Btl_TutorialNo == 19) {} 
    if (_Btl_TutorialNo == 20) {
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
        this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_13_back" , 0 , 0 , 0 , 0 , 10);
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_13");
        Btl_TutorialNo_Set(21);
        return true;
    }
    if (_Btl_TutorialNo == 21) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_14");
            Btl_TutorialNo_Set(22);
        }
        return true;
    }
    if (_Btl_TutorialNo == 22) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_15_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_15");
            Btl_TutorialNo_Set(23);
        }
        return true;
    }
    if (_Btl_TutorialNo == 23) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_16_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_16");
            Btl_TutorialNo_Set(24);
        }
        return true;
    }
    if (_Btl_TutorialNo == 24) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_16_2");
            Btl_TutorialNo_Set(25);
        }
        return true;
    }
    if (_Btl_TutorialNo == 25) {
        if(Tuto_ClickOrOk()) {
            this.MoveSprite(PN_BtlTutoBack , true , true , 10 , 0);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_17");
            Btl_TutorialNo_Set(26);
            this.BltSelMove(0);
        }
        return true;
    }
    if (_Btl_TutorialNo == 26) {} 
    if (_Btl_TutorialNo == 27) {
        this.N_Btl_DoView(true);
        this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_18");
        Btl_TutorialNo_Set(28);
        return true;
    }
    if (_Btl_TutorialNo == 28) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_18_2");
            Btl_TutorialNo_Set(29);
        }
        return true;
    }
    if (_Btl_TutorialNo == 29) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn(PN_BtlTutoBack , BtlTuto_Path + "1_19_back" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_19");
            Btl_TutorialNo_Set(30);
        }
        return true;
    }
    if (_Btl_TutorialNo == 30) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_19_2");
            Btl_TutorialNo_Set(31);
        }
        return true;
    }
    if (_Btl_TutorialNo == 31) {
        if(Tuto_ClickOrOk()) {
            this.SetSpriteFIn( PN_BtlTutoBack , BtlTuto_Path + "1_blackback" , 0 , 0 , 0 , 0 , 10);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_20");
            Btl_TutorialNo_Set(32);
        }
        return true;
    }
    if (_Btl_TutorialNo == 32) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_20_2");
            Btl_TutorialNo_Set(33);
        }
        return true;
    }
    if (_Btl_TutorialNo == 33) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_20_3");
            Btl_TutorialNo_Set(34);
            NPlayer.Do_Mp = NPlayer.Do_MaxMp;
            NPlayer._tp = 100;
            btlSelect_PlTp = 100;
            this.N_Btl_DoView();
            this.N_Btl_PlStView(PLStPos._x, PLStPos._y, true);
        }
        return true;
    }
    if (_Btl_TutorialNo == 34) {
        if(Tuto_ClickOrOk()) {
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_20_4");
            Btl_TutorialNo_Set(35);
        }
        return true;
    }
    if (_Btl_TutorialNo == 35) {
        if(Tuto_ClickOrOk()) {
            this.MoveSprite(PN_BtlTutoBack , true , true , 10 , 0);
            this.Blt_Tuto_説明表示(BtlTuto_Path + "1_21");
            Btl_TutorialNo_Set(36);
        }
        return true;
    }
    if (_Btl_TutorialNo == 36) {} 
    if (_Btl_TutorialNo == 37) {
        this.Blt_Tuto_説明表示(BtlTuto_Path + "1_22");
        Btl_TutorialNo_Set(38);
        return true;
    }
    if (_Btl_TutorialNo == 38) {} 
    return false; 
}
Game_Interpreter.prototype.Blt_TutorialCheck = function () {
    let _RtnBool = true;
    if (_Btl_TutorialNo == 4) { 
        for (let i = 0; i <= NPlayer.DO_Arr.length - 1; i++) {
            if(NPlayer.DO_Arr[i] != SNo_射撃) {
                NPlayer.DO_Arr[i] = 0;
                _BtlNxt_flame = -1;
                SelectDoNo = 0;
                _PL_DoArrDraw = false;
                _RtnBool = false;
            }
        }
        if(!_RtnBool) {
            this.N_Btl_DoView();
            this.PlaySe("Btl_Tuto_Buzzer");
        }
    }
    if (_Btl_TutorialNo == 13) { 
        for (let i = 0; i <= NPlayer.DO_Arr.length - 1; i++) {
            let _PlSkillNo = NPlayer.DO_Arr[i];
            let _EmSkillNo = NEnemy.DO_Arr[i];
            let _相性 = Skill相性Ck(_PlSkillNo,_EmSkillNo);
            if(_相性 != _相性結果.Win) { 
                SelectDoNo = 0;
                NPlayer.DO_Arr[i] = 0;
                _RtnBool = false;
            }
        }
        if(!_RtnBool) {
            this.N_Btl_DoView();
            this.PlaySe("Btl_Tuto_Buzzer");
        }
    }
    if (_Btl_TutorialNo == 26) { 
        if(NPlayer.DO_Arr[5] != SNo_急所狙いLv4) {
            SelectDoNo = 5;
            NPlayer.DO_Arr[5] = 0;
            _RtnBool = false;
        }
        if(!_RtnBool) {
            this.N_Btl_DoView();
            this.PlaySe("Btl_Tuto_Buzzer");
        }
    }
    return _RtnBool; 
}
Game_Interpreter.prototype.Blt_Tutorial_SelCheck = function () {
    let _RtnBool = true;
    if (_Btl_TutorialNo == 19 && (SelectDoNo == 5)) { 
        for (let i = 0; i <= NPlayer.DO_Arr.length - 2; i++) {
            if(NPlayer.DO_Arr[i] != SNo_防御) {
                NPlayer.DO_Arr[i] = 0;
                _BtlNxt_flame = -1;
                SelectDoNo = 0;
                _PL_DoArrDraw = false;
                this.N_Btl_DoView();
                this.N_Btl_Select_1_Draw();
                _RtnBool = false; 
            }
        }
        if (_RtnBool) { 
            _Btl_TutorialNo = 20;
        } else {
            this.PlaySe("Btl_Tuto_Buzzer");
        }
    }
    if (_Btl_TutorialNo == 36 && (SelectDoNo == 1)) { 
        NPlayer.DO_Arr[i] = 0;
        _BtlNxt_flame = -1;
        SelectDoNo = 0;
        _PL_DoArrDraw = false;
        this.N_Btl_DoView();
        this.N_Btl_Select_1_Draw();
        this.PlaySe("Btl_Tuto_Buzzer");
    }
    if (_Btl_TutorialNo == 38) { 
        if(NPlayer.DO_Arr[0] != SNo_ドミニオン) {
            _BtlNxt_flame = -1;
            SelectDoNo = 0;
            _PL_DoArrDraw = false;
            this.N_Btl_DoView();
            this.N_Btl_Select_1_Draw();
            this.PlaySe("Btl_Tuto_Buzzer");
        }
    }
}
Game_Interpreter.prototype.Blt_Tutorial_CheckShift = function () {
    if (_Btl_TutorialNo == 36) {
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
        _Btl_TutorialNo = 37;
    }
}
Game_Interpreter.prototype.Blt_Tutorial決戦開始 = function () {
    if (_Btl_TutorialNo == 4) {
        Btl_TutorialNo_Set(5);
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
    }
    if (_Btl_TutorialNo == 13) {
        Btl_TutorialNo_Set(14);
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
    }
    if (_Btl_TutorialNo == 26) {
        Btl_TutorialNo_Set(27);
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
    }
    if (_Btl_TutorialNo == 38) {
        _Btl_TutorialNo = -1; 
        _Tuto_EnemyDO_Arr = [0,0,0,0,0,0];  
        _Tuto_Em_DoViewArr = [-1,-1,-1,-1,-1,-1]; 
        _Tuto_強制命中 = [-1,-1,-1,-1,-1,-1]; 
        this.DelSpriteSpan(PN_BtlTutoBack , PN_BtlTutoImg + 5);
    }
}
Game_Interpreter.prototype.Blt_Tuto_説明表示 = function (_ImgStr , _AddNo) {
    _AddNo = typeof _AddNo !== 'undefined' ? _AddNo : 0;
    EasingStr = "easeOutQuad";
    this.SetSpriteC(PN_BtlTutoImg + _AddNo , _ImgStr , 720 , 405 , 255 , 100 , 0);
    this.MoveSprite(PN_BtlTutoImg + _AddNo , true , true , 10);
    EasingStr = "";
}
let Tuto_ClickOrOk = function () { 
    if (_Btl_TutoFlame < 30) return false;
    if (Input.isTriggered('ok') || (TouchInput.isTriggered())) {
        return true;
    }
    return false;
}
let Btl_TutorialNo_Set = function (_SetNo) {
    _Btl_TutorialNo = _SetNo;
    _Btl_TutoFlame = 0;
}
let Tutorial_KeyName = ""; 
let Nupu_isTriggerd = Input.isTriggered;
Input.isTriggered = function(keyName) {
    if (Tutorial_KeyName != "" && Tutorial_KeyName != keyName) {
        return false;
    }
    return Nupu_isTriggerd.apply(this, arguments);
};
let Tutorial_ClickPN = -1; 
Game_Screen.prototype.isPointerInnerSprite = function(_No) {
    if(Tutorial_ClickPN != -1) {
        if(Tutorial_ClickPN != _No) return false;
    }
    for (var i = 0; i <= N_Sprite_L.children.length - 1; i++) {
        if(N_Sprite_L.children[i].No == _No && N_Sprite_L.children[i].dLayer == N_Sprite_DLayer) {
            return N_Sprite_L.children[i].isIncludePointer();
        }
    }
    for (var i = 0; i <= N_Sprite_M.children.length - 1; i++) {
        if(N_Sprite_M.children[i].No == _No && N_Sprite_M.children[i].dLayer == N_Sprite_DLayer) {
            return N_Sprite_M.children[i].isIncludePointer();
        }
    }
    for (var i = 0; i <= N_Sprite_T.children.length - 1; i++) {
        if(N_Sprite_T.children[i].No == _No && N_Sprite_T.children[i].dLayer == N_Sprite_DLayer) {
            return N_Sprite_T.children[i].isIncludePointer();
        }
    }
    return false;
};
Game_Screen.prototype.isPointerInnerSpriteTm = function(_No) {
    if(Tutorial_ClickPN != -1) {
        if(Tutorial_ClickPN != _No) return false;
    }
    for (var i = 0; i <= N_Sprite_L.children.length - 1; i++) {
        if(N_Sprite_L.children[i].No == _No && N_Sprite_L.children[i].dLayer == N_Sprite_DLayer){
            return N_Sprite_L.children[i].isIncludePointerTm();
        }
    }
    for (var i = 0; i <= N_Sprite_M.children.length - 1; i++) {
        if(N_Sprite_M.children[i].No == _No && N_Sprite_M.children[i].dLayer == N_Sprite_DLayer){
            return N_Sprite_M.children[i].isIncludePointerTm();
        }
    }
    for (var i = 0; i <= N_Sprite_T.children.length - 1; i++) {
        if(N_Sprite_T.children[i].No == _No && N_Sprite_T.children[i].dLayer == N_Sprite_DLayer){
            return N_Sprite_T.children[i].isIncludePointerTm();
        }
    }
    return false;
};
