diff --git a/view/peko/activity/act-magicSchool/css/index.css b/view/peko/activity/act-magicSchool/css/index.css
new file mode 100644
index 0000000..11e5bfc
--- /dev/null
+++ b/view/peko/activity/act-magicSchool/css/index.css
@@ -0,0 +1,1120 @@
+html,
+body {
+ width: 100%;
+ background: linear-gradient(-50deg, #114364 0%, #0E3D5B 100%);
+}
+
+.back {
+ position: fixed;
+ top: 0.9333333333rem;
+ left: 0.4533333333rem;
+ z-index: 999;
+ width: 0.8266666667rem;
+ height: 0.8266666667rem;
+}
+.back img {
+ width: 100%;
+ height: 100%;
+}
+
+.hdader {
+ width: 9.9866666667rem;
+ height: 7.1466666667rem;
+ margin: 0 auto 0;
+ background: url(../images/header.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+}
+.hdader .rule_icon {
+ width: 1.6rem;
+ height: 0.64rem;
+ right: 0;
+ top: 1.4133333333rem;
+ position: absolute;
+}
+
+.limitedGift {
+ width: 9rem;
+ height: 8.5733333333rem;
+ margin: 0.08rem auto 0.4933333333rem;
+ background: url(../images/limitedGift.png) no-repeat;
+ background-size: 100% 100%;
+}
+
+.tab {
+ width: 9.3333333333rem;
+ height: 0.88rem;
+ margin: 0 auto 0.6133333333rem;
+ display: flex;
+ justify-content: space-between;
+}
+.tab div {
+ width: 2.4rem;
+ height: 0.88rem;
+}
+.tab div:nth-child(1) {
+ background: url(../images/tab_1.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab div:nth-child(2) {
+ background: url(../images/tab_2.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab div:nth-child(3) {
+ background: url(../images/tab_3.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab div:nth-child(4) {
+ background: url(../images/tab_4.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab #tab1 {
+ background: url(../images/tab1.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab #tab2 {
+ background: url(../images/tab2.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab #tab3 {
+ background: url(../images/tab3.png) no-repeat;
+ background-size: 100% 100%;
+}
+.tab #tab4 {
+ background: url(../images/tab4.png) no-repeat;
+ background-size: 100% 100%;
+}
+
+.page1 .darkForest {
+ width: 9rem;
+ height: 10.2rem;
+ background: url(../images/darkForest.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ margin: 0 auto 0.52rem;
+}
+.page1 .darkForest .rough {
+ position: absolute;
+ width: 3.7333333333rem;
+ text-align: center;
+ color: #fff;
+ font-size: 0.2933333333rem;
+ top: 1.36rem;
+ left: 0.3333333333rem;
+}
+.page1 .darkForest .rough b {
+ color: #FFF8BA;
+}
+.page1 .darkForest .prizePoolRecord {
+ width: 2.1466666667rem;
+ height: 0.6533333333rem;
+ position: absolute;
+ right: 0.32rem;
+ top: 1.1866666667rem;
+ z-index: 2;
+}
+.page1 .darkForest .amethystStones {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 1;
+ top: 2.4rem;
+ width: 7.8666666667rem;
+ height: 5.0666666667rem;
+}
+.page1 .darkForest .csvags {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 2.4rem;
+ width: 7.8666666667rem;
+ height: 5.0666666667rem;
+ display: none;
+ overflow: hidden;
+}
+.page1 .darkForest .csvags div {
+ width: 100%;
+ height: 100%;
+}
+.page1 .darkForest .gsvags {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 2.4rem;
+ width: 7.8666666667rem;
+ height: 5.0666666667rem;
+ display: none;
+ overflow: hidden;
+}
+.page1 .darkForest .gsvags div {
+ width: 100%;
+ height: 100%;
+}
+.page1 .darkForest .primaryBut {
+ width: 3.84rem;
+ height: 1.2933333333rem;
+ background: url(../images/primaryBut.png) no-repeat;
+ background-size: 100% 100%;
+ float: left;
+ position: absolute;
+ left: 0.4533333333rem;
+ bottom: 0.5466666667rem;
+ z-index: 2;
+}
+.page1 .darkForest .seniorBut {
+ float: right;
+ width: 3.84rem;
+ height: 1.2933333333rem;
+ background: url(../images/seniorBut.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ right: 0.4533333333rem;
+ bottom: -8.38rem;
+ z-index: 2;
+}
+.page1 .darkForest .seniorBut img {
+ width: 2.0133333333rem;
+ height: 0.7733333333rem;
+ position: absolute;
+ left: 62%;
+ transform: translateX(-50%);
+ top: -0.65rem;
+}
+.page1 .toast {
+ width: 9rem;
+ height: 13.2133333333rem;
+ background: url(../images/toast.png) no-repeat;
+ background-size: 100% 100%;
+ margin: 0 auto 1.0266666667rem;
+}
+.page1 .toast .to {
+ position: relative;
+ left: 0.32rem;
+ width: 8.3866666667rem;
+ height: 1.2666666667rem;
+ background: #104161;
+ border-radius: 0.16rem;
+}
+.page1 .toast .to p {
+ color: #fff;
+ font-size: 0.2933333333rem;
+ position: absolute;
+ left: 0.4133333333rem;
+ top: 0.5066666667rem;
+}
+.page1 .toast .to .but {
+ width: 1.6266666667rem;
+ height: 0.6133333333rem;
+ background: url(../images/toast_go.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ left: none;
+ right: 0.4rem;
+ top: 0.3466666667rem;
+}
+.page1 .toast .to .toast_out {
+ background: url(../images/toast_out.png) no-repeat;
+ background-size: 100% 100%;
+}
+.page1 .toast .to .toast_ing {
+ background: url(../images/notOut.png) no-repeat;
+ background-size: 100% 100%;
+}
+.page1 .toast .to .gray {
+ background: url(../images/gray.png) no-repeat;
+ background-size: 100% 100%;
+}
+.page1 .toast .toast1 {
+ top: 3.3466666667rem;
+}
+.page1 .toast .toast2 {
+ top: 3.8rem;
+}
+.page1 .toast .toast3 {
+ top: 4.25rem;
+}
+.page1 .toast .toast4 {
+ top: 4.7rem;
+}
+.page1 .toast .toast4 p {
+ color: #fff;
+ font-size: 0.2933333333rem;
+ position: absolute;
+ left: 0.4133333333rem;
+ top: 0.2533333333rem;
+}
+.page1 .toast .toast4 span {
+ width: 5.04rem;
+ height: 0.32rem;
+ border-radius: 0.32rem;
+ position: relative;
+ top: 0.7333333333rem;
+ left: 0.4266666667rem;
+ background: #24618A;
+ display: block;
+}
+.page1 .toast .toast4 span b {
+ width: 30%;
+ height: 100%;
+ border-radius: 0.32rem;
+ background: linear-gradient(90deg, #F9DC9F 0%, #44E4AA 97%);
+ position: absolute;
+ left: 0;
+ top: 0;
+ display: block;
+}
+.page1 .toast .toast4 span i {
+ font-style: normal;
+ font-size: 0.24rem;
+ text-align: center;
+ color: #fff;
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ left: 0;
+ top: 50%;
+ transform: translateY(-50%);
+ display: block;
+ line-height: 0.32rem;
+}
+.page1 .toast .toast5 {
+ top: 6.2rem;
+}
+
+.page2 {
+ display: none;
+}
+.page2 .amethystStone {
+ width: 9rem;
+ height: 11.2266666667rem;
+ background: url(../images/amethystStone.png) no-repeat;
+ background-size: 100% 100%;
+ margin: 0 auto 0.52rem;
+ position: relative;
+}
+.page2 .amethystStone .left {
+ width: 0.9333333333rem;
+ height: 0.6933333333rem;
+ position: absolute;
+ right: 0.5466666667rem;
+ top: 5.2rem;
+ z-index: 2;
+}
+.page2 .amethystStone .right {
+ width: 0.9333333333rem;
+ height: 0.6933333333rem;
+ position: absolute;
+ left: 0.5466666667rem;
+ top: 5.2rem;
+ transform: rotate(180deg);
+ z-index: 2;
+}
+.page2 .amethystStone .amethystStoneGift {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 1;
+ top: 3rem;
+ width: 7.8666666667rem;
+ height: 5.0666666667rem;
+}
+.page2 .amethystStone .amethystStoneGiftSvgas {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 3rem;
+ width: 7.8666666667rem;
+ height: 5.0666666667rem;
+ overflow: hidden;
+ display: none;
+}
+.page2 .amethystStone .amethystStoneGiftSvgas .ssvag {
+ width: 100%;
+ height: 100%;
+}
+.page2 .amethystStone .stoneNick {
+ position: absolute;
+ width: 1.6533333333rem;
+ height: 0.4266666667rem;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.0266666667rem;
+ z-index: 2;
+}
+.page2 .amethystStone .lineBox {
+ position: relative;
+ top: 1.3066666667rem;
+ left: 50%;
+ transform: translateX(-50%);
+ width: 8.3866666667rem;
+ height: 0.4rem;
+ border-radius: 0.2666666667rem;
+ border: 0.0133333333rem solid #94ECB5;
+ background: #104161;
+}
+.page2 .amethystStone .lineBox span {
+ position: absolute;
+ width: 0%;
+ height: 0.3866666667rem;
+ border-radius: 0.3866666667rem;
+ left: 0.0066666667rem;
+ top: 50%;
+ transform: translateY(-50%);
+ background: linear-gradient(90deg, #F9DC9F 0%, #44E4AA 97%);
+}
+.page2 .amethystStone .lineBox p {
+ font-size: 0.2933333333rem;
+ color: #fff;
+ position: absolute;
+ left: 0;
+ bottom: -0.48rem;
+}
+.page2 .amethystStone .lineBox p b {
+ color: #FFF8BA;
+}
+.page2 .amethystStone .lineBox i {
+ font-style: normal;
+ position: absolute;
+ bottom: -0.48rem;
+ color: #fff;
+ font-size: 0.2933333333rem;
+ right: 0;
+}
+.page2 .amethystStone .amethystStoneBut1 {
+ width: 3.84rem;
+ height: 1.2933333333rem;
+ position: absolute;
+ left: 0.44rem;
+ bottom: 0.5466666667rem;
+}
+.page2 .amethystStone .amethystStoneBut5 {
+ width: 3.84rem;
+ height: 1.2933333333rem;
+ position: absolute;
+ right: 0.44rem;
+ bottom: 0.5466666667rem;
+}
+.page2 .amethystStone .amethystStoneOut {
+ width: 3.84rem;
+ height: 1.2933333333rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: 0.5466666667rem;
+}
+.page2 .amethystStoneList {
+ width: 9rem;
+ height: 7.9466666667rem;
+ margin: 0 auto 1.2rem;
+ background: url(../images/amethystStoneList.png) no-repeat;
+ background-size: 100% 100%;
+ overflow: hidden;
+ position: relative;
+}
+.page2 .amethystStoneList .wenhao {
+ position: absolute;
+ width: 0.4533333333rem;
+ height: 0.4533333333rem;
+ top: 0.6266666667rem;
+ right: 0.5333333333rem;
+}
+.page2 .amethystStoneList ul {
+ width: 100%;
+ height: 6rem;
+ margin: 1.2rem auto 0;
+ box-sizing: border-box;
+ padding: 0 0 0 0.4266666667rem;
+ overflow-y: scroll;
+}
+.page2 .amethystStoneList ul::-webkit-scrollbar {
+ width: 0;
+ height: 0;
+ color: transparent;
+}
+.page2 .amethystStoneList ul li {
+ position: relative;
+ width: 1.36rem;
+ height: 1.36rem;
+ margin-right: 0.3333333333rem;
+ margin-bottom: 0.8133333333rem;
+ float: left;
+}
+.page2 .amethystStoneList ul li img {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ box-sizing: border-box;
+ border: 0.0266666667rem solid #FFFFC8;
+ left: 0;
+ top: 0;
+ border-radius: 50%;
+}
+.page2 .amethystStoneList ul li span {
+ position: absolute;
+ width: 110%;
+ left: 50%;
+ text-align: center;
+ transform: translateX(-50%);
+ bottom: -0.4rem;
+ color: #fff;
+ font-size: 0.2666666667rem;
+}
+
+.page3 {
+ display: none;
+}
+.page3 .list {
+ width: 9rem;
+ height: 33.7333333333rem;
+ margin: 0 auto 2.4rem;
+ background: url(../images/listBg.png) no-repeat;
+ background-size: 100% 100%;
+ overflow: hidden;
+ position: relative;
+}
+.page3 .list .rule_list_icon {
+ position: absolute;
+ width: 1.8rem;
+ height: 0.6rem;
+ right: 0;
+ top: 0.71rem;
+}
+.page3 .list .tabs {
+ width: 6.44rem;
+ height: 0.88rem;
+ line-height: 0.88rem;
+ margin: 1.48rem auto 0.3866666667rem;
+ background: url(../images/listTabBg.png) no-repeat;
+ background-size: 100% 100%;
+ display: flex;
+ justify-content: space-between;
+}
+.page3 .list .tabs div {
+ width: 3.2266666667rem;
+ height: 0.88rem;
+ color: #fff;
+ font-size: 0.4266666667rem;
+ text-align: center;
+ flex: 1;
+}
+.page3 .list .tabs .tabAcative {
+ background: url(../images/tabAcative.png) no-repeat;
+ background-size: 100% 100%;
+}
+.page3 .list .time {
+ width: 3.7333333333rem;
+ height: 0.6666666667rem;
+ line-height: 0.6666666667rem;
+ border-radius: 0.6666666667rem;
+ margin: 0 auto 0;
+ background: #104161;
+ text-align: center;
+ color: #fff;
+ font-size: 0.3466666667rem;
+ position: relative;
+}
+.page3 .list .time img {
+ position: absolute;
+ width: 0.9066666667rem;
+ height: 0.6666666667rem;
+ top: 0;
+}
+.page3 .list .time .timeLeftBg {
+ left: 0;
+ transform: rotate(180deg);
+}
+.page3 .list .time .timeRightBg {
+ right: 0;
+}
+.page3 .list .top {
+ width: 3.0133333333rem;
+ position: relative;
+ height: 4.1866666667rem;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 0.44rem;
+}
+.page3 .list .top .bg {
+ width: 3.0133333333rem;
+ height: 3.0133333333rem;
+ background: url(../images/top1.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: 3;
+}
+.page3 .list .top .txBg {
+ position: absolute;
+ width: 2.4rem;
+ height: 2.4rem;
+ border-radius: 50%;
+ top: 0.32rem;
+ left: 0.32rem;
+}
+.page3 .list .top .nick {
+ width: 2.8666666667rem;
+ height: 0.6133333333rem;
+ line-height: 0.6133333333rem;
+ background: url(../images/nickBg.png) no-repeat;
+ background-size: 100% 100%;
+ text-align: center;
+ color: #fff;
+ font-size: 0.32rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3rem;
+}
+.page3 .list .top p {
+ width: 100%;
+ text-align: center;
+ color: #FFF8BA;
+ font-size: 0.2933333333rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.7rem;
+}
+.page3 .list .top2,
+.page3 .list .top3 {
+ width: 2.16rem;
+ position: relative;
+ height: 3.5733333333rem;
+ left: 1.64rem;
+ top: -2.6rem;
+}
+.page3 .list .top2 .bg,
+.page3 .list .top3 .bg {
+ width: 2.16rem;
+ height: 2.2266666667rem;
+ background: url(../images/top2.png);
+ background-size: 100% 100%;
+ left: 0.13rem;
+ top: 0.2rem;
+}
+.page3 .list .top2 .txBg,
+.page3 .list .top3 .txBg {
+ width: 1.8666666667rem;
+ height: 1.8666666667rem;
+ top: 0.4rem;
+ left: 0.3rem;
+}
+.page3 .list .top2 .nick,
+.page3 .list .top3 .nick {
+ top: 2.53rem;
+ left: 50%;
+ transform: translateX(-50%);
+}
+.page3 .list .top2 p,
+.page3 .list .top3 p {
+ top: 3.25rem;
+ left: 50%;
+ transform: translateX(-50%);
+}
+.page3 .list .top3 {
+ left: 7.2rem;
+ top: -6.25rem;
+}
+.page3 .list .top3 .bg {
+ background: url(../images/top3.png);
+ background-size: 100% 100%;
+}
+.page3 .list .notTop {
+ width: 8.6rem;
+ height: 24.3866666667rem;
+ background: #104161;
+ margin: -6rem auto 0;
+ border-radius: 0.2rem;
+}
+.page3 .list .notTop li {
+ width: 100%;
+ height: 2.0266666667rem;
+ border-bottom: 0.0133333333rem solid #24618A;
+ overflow: hidden;
+ box-sizing: border-box;
+ padding: 0 0.3866666667rem;
+}
+.page3 .list .notTop li .num {
+ color: #fff;
+ font-size: 0.3466666667rem;
+ height: 100%;
+ line-height: 2.0266666667rem;
+ margin-right: 0.44rem;
+ float: left;
+}
+.page3 .list .notTop li img {
+ width: 1.3466666667rem;
+ height: 1.3466666667rem;
+ border: 0.0133333333rem solid #fff;
+ border-radius: 50%;
+ margin-top: 0.4266666667rem;
+ margin-right: 0.2933333333rem;
+ float: left;
+}
+.page3 .list .notTop li .nick {
+ height: 100%;
+ line-height: 2.0266666667rem;
+ color: #fff;
+ font-size: 0.2933333333rem;
+ float: left;
+}
+.page3 .list .notTop li .score {
+ float: right;
+ height: 100%;
+ line-height: 2.0266666667rem;
+ color: #FFF8BA;
+ font-size: 0.32rem;
+}
+.page3 .list2 {
+ background: url(../images/listBg2.png) no-repeat;
+ background-size: 100% 100%;
+}
+.page3 .myList {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ overflow: hidden;
+ box-sizing: border-box;
+ padding: 0 0.3866666667rem;
+ height: 1.8533333333rem;
+ background: linear-gradient(0deg, #24618A 0%, #4699B4 100%);
+ border-radius: 0.16rem 0.16rem 0px 0px;
+}
+.page3 .myList .num {
+ color: #fff;
+ font-size: 0.3466666667rem;
+ height: 100%;
+ line-height: 1.8533333333rem;
+ margin-right: 0.44rem;
+ float: left;
+}
+.page3 .myList img {
+ width: 1.3466666667rem;
+ height: 1.3466666667rem;
+ border: 0.0133333333rem solid #fff;
+ border-radius: 50%;
+ margin-top: 0.2666666667rem;
+ margin-right: 0.2933333333rem;
+ float: left;
+}
+.page3 .myList .nick {
+ height: 100%;
+ line-height: 1.8533333333rem;
+ color: #fff;
+ font-size: 0.2933333333rem;
+ float: left;
+}
+.page3 .myList .score {
+ float: right;
+ height: 100%;
+ line-height: 1.8533333333rem;
+ color: #FFF8BA;
+ font-size: 0.32rem;
+}
+
+.list_r {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, 0.6);
+ z-index: 99999;
+}
+.list_r .list_r_in {
+ width: 8.56rem;
+ height: 11.6666666667rem;
+ background: url(../images/ruleBg.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ overflow: hidden;
+}
+.list_r .list_r_in .box {
+ width: 7.9333333333rem;
+ margin: 2.3333333333rem auto 0;
+ height: 8.5rem;
+ overflow-y: scroll;
+}
+.list_r .list_r_in .box img {
+ width: 100%;
+ height: 23.7733333333rem;
+}
+
+.forestReward {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, 0.6);
+ z-index: 99999;
+}
+.forestReward .forestReward_in {
+ width: 8.64rem;
+ height: 9.1733333333rem;
+ background: url(../images/forestReward.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
+.forestReward .forestReward_in .forestRewardTab {
+ width: 90%;
+ height: 1rem;
+ position: absolute;
+ top: -0.1rem;
+ left: 50%;
+ transform: translateX(-50%);
+ display: flex;
+ justify-content: space-between;
+}
+.forestReward .forestReward_in .forestRewardTab div {
+ width: 3.5866666667rem;
+ height: 1rem;
+}
+.forestReward .forestReward_in .forestRewardTab .forestRewardTab1 {
+ background: url(../images/forestRewardTab1.png) no-repeat;
+ background-size: 100% 100%;
+}
+.forestReward .forestReward_in .forestRewardTab .forestRewardTab2 {
+ background: url(../images/forestRewardTab2.png) no-repeat;
+ background-size: 100% 100%;
+}
+.forestReward .forestReward_in .forestRewardTab .forestRewardTab1_active {
+ background: url(../images/forestRewardTab1_active.png) no-repeat;
+ background-size: 100% 100%;
+}
+.forestReward .forestReward_in .forestRewardTab .forestRewardTab2_active {
+ background: url(../images/forestRewardTab2_active.png) no-repeat;
+ background-size: 100% 100%;
+}
+.forestReward .forestReward_in .forestRewardPage1 .box1 {
+ width: 3.2rem;
+ height: 0.5333333333rem;
+ background: #104161;
+ position: absolute;
+ top: 1.52rem;
+ left: 50%;
+ transform: translateX(-50%);
+ display: flex;
+ justify-content: space-between;
+ border-radius: 0.5333333333rem;
+}
+.forestReward .forestReward_in .forestRewardPage1 .box1 div {
+ width: 1.6rem;
+ height: 0.5333333333rem;
+ line-height: 0.5333333333rem;
+ border-radius: 0.5333333333rem;
+ text-align: center;
+ color: #fff;
+ font-size: 0.2933333333rem;
+}
+.forestReward .forestReward_in .forestRewardPage1 .box1 .active {
+ background: linear-gradient(0deg, #4283B0 0%, #63B7CA 100%);
+}
+.forestReward .forestReward_in .forestRewardPage1 .forestRewardPage1Bg {
+ width: 7.7333333333rem;
+ height: 5.8133333333rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: 0.6266666667rem;
+}
+.forestReward .forestReward_in .forestRewardPage2 {
+ overflow: hidden;
+ display: none;
+}
+.forestReward .forestReward_in .forestRewardPage2 .title {
+ width: 65%;
+ display: flex;
+ justify-content: space-between;
+ position: absolute;
+ top: 1.7333333333rem;
+ left: 50%;
+ transform: translateX(-50%);
+}
+.forestReward .forestReward_in .forestRewardPage2 .title div {
+ color: #fff;
+ font-size: 0.4266666667rem;
+ width: 1.7333333333rem;
+ text-align: center;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul {
+ width: 65%;
+ margin: 2.5333333333rem auto 0;
+ height: 6.5rem;
+ overflow-y: scroll;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul::-webkit-scrollbar {
+ width: 0;
+ height: 0;
+ color: transparent;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li {
+ width: 100%;
+ height: 1rem;
+ margin-bottom: 0.2666666667rem;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .left {
+ float: left;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .left p {
+ width: 1.8666666667rem;
+ text-align: center;
+ color: #FFF8BA;
+ font-size: 0.32rem;
+ margin-bottom: 0.1333333333rem;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .left b {
+ display: block;
+ width: 1.8666666667rem;
+ text-align: center;
+ color: #50BEDA;
+ font-size: 0.2933333333rem;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .right {
+ float: right;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .right p {
+ width: 2rem;
+ text-align: center;
+ color: #FFF8BA;
+ font-size: 0.32rem;
+ margin-bottom: 0.1333333333rem;
+}
+.forestReward .forestReward_in .forestRewardPage2 ul li .right b {
+ display: block;
+ width: 1.8666666667rem;
+ text-align: center;
+ color: #50BEDA;
+ font-size: 0.2933333333rem;
+}
+
+.rule {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, 0.6);
+ z-index: 99999;
+}
+.rule img {
+ position: absolute;
+ width: 8.6266666667rem;
+ height: 14.7733333333rem;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
+
+.look_put {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, 0.6);
+ z-index: 99999;
+}
+.look_put .look_put_in {
+ width: 8.56rem;
+ height: 8.9066666667rem;
+ background: url(../images/look_put.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
+.look_put .look_put_in p {
+ width: 4.5333333333rem;
+ text-align: center;
+ color: #fff;
+ font-size: 0.3733333333rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 1.1866666667rem;
+ line-height: 0.5rem;
+}
+.look_put .look_put_in .gift {
+ width: 1.9733333333rem;
+ height: 1.9733333333rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.02rem;
+ z-index: 1;
+}
+.look_put .look_put_in .gift1 {
+ width: 2rem;
+ height: 0.7rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.7rem;
+ z-index: 1;
+}
+.look_put .look_put_in .gift2 {
+ width: 3rem;
+ height: 2rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 2.9rem;
+ z-index: 1;
+}
+.look_put .look_put_in .obtained {
+ z-index: 2;
+ width: 1.5333333333rem;
+ height: 1.5333333333rem;
+ position: absolute;
+ right: 2.5066666667rem;
+ top: 4.0266666667rem;
+}
+.look_put .look_put_in .giftNick {
+ width: 100%;
+ position: absolute;
+ text-align: center;
+ color: #FFF8BA;
+ left: 0;
+ top: 5.7066666667rem;
+ font-size: 0.3466666667rem;
+}
+.look_put .look_put_in .num {
+ width: 100%;
+ position: absolute;
+ text-align: center;
+ color: #50BEDA;
+ left: 0;
+ top: 6.2933333333rem;
+ font-size: 0.32rem;
+}
+.look_put .look_put_in .but {
+ width: 3.7rem;
+ height: 1rem;
+ position: absolute;
+ bottom: 0.6rem;
+ left: 50%;
+ transform: translateX(-50%);
+}
+
+.gx {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, 0.6);
+ z-index: 99999;
+}
+.gx .gx_in {
+ width: 8.56rem;
+ height: 8.9066666667rem;
+ background: url(../images/gxBg.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
+.gx .gx_in .gift_bg {
+ width: 2.7466666667rem;
+ height: 2.6133333333rem;
+ position: absolute;
+ overflow: hidden;
+ top: 2.7466666667rem;
+ left: 50%;
+ transform: translateX(-50%);
+ background: linear-gradient(0deg, #3085BD 1%, #2A75A6 100%);
+}
+.gx .gx_in .gift_bg img {
+ display: block;
+ width: 1.9333333333rem;
+ height: 1.9733333333rem;
+ margin: 0.3rem auto 0;
+}
+.gx .gx_in .gift_bg .img1 {
+ display: block;
+ width: 2.4rem;
+ height: 0.7rem;
+ margin: 1rem auto 0;
+}
+.gx .gx_in .gift {
+ color: #FFF8BA;
+ width: 100%;
+ text-align: center;
+ font-size: 0.3466666667rem;
+ position: absolute;
+ top: 5.7066666667rem;
+ left: 0;
+}
+.gx .gx_in .num {
+ color: #50BEDA;
+ width: 100%;
+ text-align: center;
+ font-size: 0.32rem;
+ position: absolute;
+ top: 6.2933333333rem;
+ left: 0;
+}
+.gx .gx_in .but {
+ width: 3.7rem;
+ height: 1rem;
+ position: absolute;
+ bottom: 0.6rem;
+ left: 50%;
+ transform: translateX(-50%);
+}
+
+.actOut {
+ position: fixed;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ background: rgba(0, 0, 0, 0.6);
+ display: none;
+ z-index: 9999;
+}
+.actOut .actOut_in {
+ width: 8.56rem;
+ height: 5.5733333333rem;
+ background: url(../images/actOut.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
+.actOut .actOut_in .but {
+ position: absolute;
+ width: 4rem;
+ height: 1rem;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: 1rem;
+}
+
+::-webkit-scrollbar {
+ display: none;
+ width: 0px;
+ background: rgba(0, 0, 0, 0);
+}
+
+/*# sourceMappingURL=index.css.map */
diff --git a/view/peko/activity/act-magicSchool/css/index.scss b/view/peko/activity/act-magicSchool/css/index.scss
new file mode 100644
index 0000000..6072541
--- /dev/null
+++ b/view/peko/activity/act-magicSchool/css/index.scss
@@ -0,0 +1,1278 @@
+@function px2rem($px, $rem:75) {
+ @return $px / $rem+rem;
+}
+
+html,
+body {
+ width: 100%;
+ background: linear-gradient(-50deg, #114364 0%, #0E3D5B 100%);
+ // height: auto;
+}
+
+.back {
+ position: fixed;
+ top: px2rem(70, );
+ left: px2rem(34, );
+ z-index: 999;
+ width: px2rem(62, );
+ height: px2rem(62, );
+
+ img {
+ width: 100%;
+ height: 100%;
+ }
+}
+
+.hdader {
+ width: px2rem(749, );
+ height: px2rem(536, );
+ margin: 0 auto 0;
+ background: url(../images/header.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+
+ .rule_icon {
+ width: px2rem(120, );
+ height: px2rem(48, );
+ right: 0;
+ top: px2rem(106, );
+ position: absolute;
+ }
+}
+
+.limitedGift {
+ width: px2rem(675, );
+ height: px2rem(643, );
+ margin: px2rem(6, ) auto px2rem(37, );
+ background: url(../images/limitedGift.png) no-repeat;
+ background-size: 100% 100%;
+}
+
+.tab {
+ width: px2rem(700, );
+ height: px2rem(66, );
+ margin: 0 auto px2rem(46, );
+ display: flex;
+ justify-content: space-between;
+
+ div {
+ width: px2rem(180, );
+ height: px2rem(66, );
+
+ &:nth-child(1) {
+ background: url(../images/tab_1.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ &:nth-child(2) {
+ background: url(../images/tab_2.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ &:nth-child(3) {
+ background: url(../images/tab_3.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ &:nth-child(4) {
+ background: url(../images/tab_4.png) no-repeat;
+ background-size: 100% 100%;
+ }
+ }
+
+ #tab1 {
+ background: url(../images/tab1.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ #tab2 {
+ background: url(../images/tab2.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ #tab3 {
+ background: url(../images/tab3.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ #tab4 {
+ background: url(../images/tab4.png) no-repeat;
+ background-size: 100% 100%;
+ }
+}
+
+.page1 {
+
+ .darkForest {
+ width: px2rem(675, );
+ height: px2rem(765, );
+ background: url(../images/darkForest.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ margin: 0 auto px2rem(39, );
+
+ .rough {
+ position: absolute;
+ width: px2rem(280, );
+ text-align: center;
+ color: #fff;
+ font-size: px2rem(22, );
+ top: px2rem(102, );
+ left: px2rem(25, );
+
+ b {
+ color: #FFF8BA;
+ }
+ }
+
+ .prizePoolRecord {
+ width: px2rem(161, );
+ height: px2rem(49, );
+ position: absolute;
+ right: px2rem(24, );
+ top: px2rem(89, );
+ z-index: 2;
+ }
+
+ .amethystStones {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 1;
+ top: 2.4rem;
+ width: px2rem(590, );
+ height: px2rem(380, );
+ }
+
+ .csvags {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 2.4rem;
+ width: px2rem(590, );
+ height: px2rem(380, );
+ display: none;
+ overflow: hidden;
+
+ div {
+ width: 100%;
+ height: 100%;
+ }
+ }
+
+ .gsvags {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 2.4rem;
+ width: px2rem(590, );
+ height: px2rem(380, );
+ display: none;
+ overflow: hidden;
+
+ div {
+ width: 100%;
+ height: 100%;
+ }
+
+ }
+
+ .primaryBut {
+ width: px2rem(288, );
+ height: px2rem(97, );
+ background: url(../images/primaryBut.png) no-repeat;
+ background-size: 100% 100%;
+ float: left;
+ position: absolute;
+ left: px2rem(34, );
+ bottom: px2rem(41, );
+ z-index: 2;
+ }
+
+ .seniorBut {
+ float: right;
+ width: px2rem(288, );
+ height: px2rem(97, );
+ background: url(../images/seniorBut.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ right: px2rem(34, );
+ bottom: -8.38rem;
+ z-index: 2;
+
+ img {
+ width: px2rem(151, );
+ height: px2rem(58, );
+ position: absolute;
+ left: 62%;
+ transform: translateX(-50%);
+ top: -0.65rem;
+ }
+ }
+ }
+
+ .toast {
+ width: px2rem(675, );
+ height: px2rem(991, );
+ background: url(../images/toast.png) no-repeat;
+ background-size: 100% 100%;
+ margin: 0 auto px2rem(77, );
+
+ .to {
+ position: relative;
+ left: px2rem(24, );
+ width: px2rem(629, );
+ height: px2rem(95, );
+ background: #104161;
+ border-radius: px2rem(12, );
+
+ p {
+ color: #fff;
+ font-size: px2rem(22, );
+ position: absolute;
+ left: px2rem(31, );
+ top: px2rem(38, );
+ }
+
+
+
+ .but {
+ width: px2rem(122, );
+ height: px2rem(46, );
+ background: url(../images/toast_go.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ left: none;
+ right: px2rem(30, );
+ top: px2rem(26, );
+ }
+
+ .toast_out {
+ background: url(../images/toast_out.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .toast_ing {
+ background: url(../images/notOut.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .gray {
+ background: url(../images/gray.png) no-repeat;
+ background-size: 100% 100%;
+ // -webkit-filter: grayscale(100%);
+ // -moz-filter: grayscale(100%);
+ // -ms-filter: grayscale(100%);
+ // -o-filter: grayscale(100%);
+ // filter: grayscale(100%);
+ // filter: gray;
+ // filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
+ }
+
+ }
+
+ .toast1 {
+ top: px2rem(251, );
+ }
+
+ .toast2 {
+ top: 3.8rem;
+ }
+
+ .toast3 {
+ top: 4.25rem;
+
+
+ }
+
+ .toast4 {
+ top: 4.7rem;
+
+ p {
+ color: #fff;
+ font-size: px2rem(22, );
+ position: absolute;
+ left: px2rem(31, );
+ top: px2rem(19, );
+ }
+
+ span {
+ width: px2rem(378, );
+ height: px2rem(24, );
+ border-radius: px2rem(24, );
+ position: relative;
+ top: px2rem(55, );
+ left: px2rem(32, );
+ background: #24618A;
+ display: block;
+
+ b {
+ width: 30%;
+ height: 100%;
+ border-radius: px2rem(24, );
+ background: linear-gradient(90deg, #F9DC9F 0%, #44E4AA 97%);
+ position: absolute;
+ left: 0;
+ top: 0;
+ display: block;
+ }
+
+ i {
+ font-style: normal;
+ font-size: px2rem(18, );
+ text-align: center;
+ color: #fff;
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ left: 0;
+ top: 50%;
+ transform: translateY(-50%);
+ display: block;
+ line-height: px2rem(24, );
+ }
+ }
+ }
+
+ .toast5 {
+ top: 6.2rem;
+ }
+ }
+}
+
+.page2 {
+ display: none;
+
+ .amethystStone {
+ width: px2rem(675, );
+ height: px2rem(842, );
+ background: url(../images/amethystStone.png) no-repeat;
+ background-size: 100% 100%;
+ margin: 0 auto px2rem(39, );
+ position: relative;
+
+ .left {
+ width: px2rem(70, );
+ height: px2rem(52, );
+ position: absolute;
+ right: px2rem(41, );
+ top: px2rem(390, );
+ z-index: 2;
+ }
+
+ .right {
+ width: px2rem(70, );
+ height: px2rem(52, );
+ position: absolute;
+ left: px2rem(41, );
+ top: px2rem(390, );
+ transform: rotate(180deg);
+ z-index: 2;
+ }
+
+ .amethystStoneGift {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 1;
+ top: 3rem;
+ width: px2rem(590, );
+ height: px2rem(380, );
+ }
+
+ .amethystStoneGiftSvgas {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 3;
+ top: 3rem;
+ width: px2rem(590, );
+ height: px2rem(380, );
+ overflow: hidden;
+ display: none;
+
+ .ssvag {
+ width: 100%;
+ height: 100%;
+ }
+ }
+
+ .stoneNick {
+ position: absolute;
+ width: px2rem(124, );
+ height: px2rem(32, );
+ left: 50%;
+ transform: translateX(-50%);
+ top: px2rem(227, );
+ z-index: 2;
+ }
+
+ .lineBox {
+ position: relative;
+ top: px2rem(98, );
+ left: 50%;
+ transform: translateX(-50%);
+ width: px2rem(629, );
+ height: px2rem(30, );
+ border-radius: px2rem(20, );
+ border: px2rem(1, ) solid #94ECB5;
+ background: #104161;
+
+ span {
+ position: absolute;
+ width: 0%;
+ height: px2rem(29, );
+ border-radius: px2rem(29, );
+ left: px2rem(0.5, );
+ top: 50%;
+ transform: translateY(-50%);
+ background: linear-gradient(90deg, #F9DC9F 0%, #44E4AA 97%);
+ }
+
+ p {
+ font-size: px2rem(22, );
+ color: #fff;
+ position: absolute;
+ left: 0;
+ bottom: -0.48rem;
+
+ b {
+ color: #FFF8BA;
+ }
+ }
+
+ i {
+ font-style: normal;
+ position: absolute;
+ bottom: -0.48rem;
+ color: #fff;
+ font-size: px2rem(22, );
+ right: 0;
+ }
+ }
+
+ .amethystStoneBut1 {
+ width: px2rem(288, );
+ height: px2rem(97, );
+ position: absolute;
+ left: px2rem(33, );
+ bottom: px2rem(41, );
+ }
+
+ .amethystStoneBut5 {
+ width: px2rem(288, );
+ height: px2rem(97, );
+ position: absolute;
+ right: px2rem(33, );
+ bottom: px2rem(41, );
+ }
+
+ .amethystStoneOut {
+ width: px2rem(288, );
+ height: px2rem(97, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: px2rem(41, );
+ }
+ }
+
+ .amethystStoneList {
+ width: px2rem(675, );
+ height: px2rem(596, );
+ margin: 0 auto px2rem(90, );
+ background: url(../images/amethystStoneList.png) no-repeat;
+ background-size: 100% 100%;
+ overflow: hidden;
+ position: relative;
+
+ .wenhao {
+ position: absolute;
+ width: px2rem(34, );
+ height: px2rem(34, );
+ top: px2rem(47, );
+ right: px2rem(40, );
+ }
+
+ ul {
+ width: 100%;
+ height: 6rem;
+ margin: 1.2rem auto 0;
+ box-sizing: border-box;
+ padding: 0 0 0 px2rem(32, );
+ overflow-y: scroll;
+
+ &::-webkit-scrollbar {
+ width: 0;
+ height: 0;
+ color: transparent;
+ }
+
+ li {
+ position: relative;
+ width: px2rem(102, );
+ height: px2rem(102, );
+ margin-right: px2rem(25, );
+ margin-bottom: px2rem(61, );
+ float: left;
+
+ img {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ box-sizing: border-box;
+ border: px2rem(2, ) solid #FFFFC8;
+ left: 0;
+ top: 0;
+ border-radius: 50%;
+ }
+
+ span {
+ position: absolute;
+ width: 110%;
+ left: 50%;
+ text-align: center;
+ transform: translateX(-50%);
+ bottom: px2rem(-30, );
+ color: #fff;
+ font-size: px2rem(20, );
+ }
+ }
+ }
+ }
+}
+
+.page3 {
+ display: none;
+
+ .list {
+ width: px2rem(675, );
+ height: px2rem(2530, );
+ margin: 0 auto px2rem(180, );
+ background: url(../images/listBg.png) no-repeat;
+ background-size: 100% 100%;
+ overflow: hidden;
+ position: relative;
+
+ .rule_list_icon {
+ position: absolute;
+ width: 1.8rem;
+ height: 0.6rem;
+ right: 0;
+ top: 0.71rem;
+ }
+
+ .tabs {
+ width: px2rem(483, );
+ height: px2rem(66, );
+ line-height: px2rem(66, );
+ margin: px2rem(111, ) auto px2rem(29, );
+ background: url(../images/listTabBg.png) no-repeat;
+ background-size: 100% 100%;
+ display: flex;
+ justify-content: space-between;
+
+ div {
+ width: px2rem(242, );
+ height: px2rem(66, );
+ color: #fff;
+ font-size: px2rem(32, );
+ text-align: center;
+ flex: 1;
+ }
+
+ .tabAcative {
+ background: url(../images/tabAcative.png) no-repeat;
+ background-size: 100% 100%;
+ }
+ }
+
+ .time {
+ width: px2rem(280, );
+ height: px2rem(50, );
+ line-height: px2rem(50, );
+ border-radius: px2rem(50, );
+ margin: 0 auto 0;
+ background: #104161;
+ text-align: center;
+ color: #fff;
+ font-size: px2rem(26, );
+ position: relative;
+
+ img {
+ position: absolute;
+ width: px2rem(68, );
+ height: px2rem(50, );
+ top: 0;
+ }
+
+ .timeLeftBg {
+ left: 0;
+ transform: rotate(180deg);
+ }
+
+ .timeRightBg {
+ right: 0;
+ }
+ }
+
+ .top {
+ width: px2rem(226, );
+ position: relative;
+ height: px2rem(314, );
+ left: 50%;
+ transform: translateX(-50%);
+ top: px2rem(33, );
+
+ .bg {
+ width: px2rem(226, );
+ height: px2rem(226, );
+ background: url(../images/top1.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: 3;
+ }
+
+ .txBg {
+ position: absolute;
+ width: px2rem(180, );
+ height: px2rem(180, );
+ border-radius: 50%;
+ top: 0.32rem;
+ left: 0.32rem;
+ }
+
+ .nick {
+ width: px2rem(215, );
+ height: px2rem(46, );
+ line-height: px2rem(46, );
+ background: url(../images/nickBg.png) no-repeat;
+ background-size: 100% 100%;
+ text-align: center;
+ color: #fff;
+ font-size: px2rem(24, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3rem;
+ }
+
+ p {
+ width: 100%;
+ text-align: center;
+ color: #FFF8BA;
+ font-size: px2rem(22, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.7rem;
+ }
+ }
+
+ .top2,
+ .top3 {
+ width: px2rem(162, );
+ position: relative;
+ height: px2rem(268, );
+ left: 1.64rem;
+ top: -2.6rem;
+
+ .bg {
+ width: px2rem(162, );
+ height: px2rem(167, );
+ background: url(../images/top2.png);
+ background-size: 100% 100%;
+ left: 0.13rem;
+ top: 0.2rem;
+ }
+
+ .txBg {
+ width: px2rem(140, );
+ height: px2rem(140, );
+ top: 0.4rem;
+ left: 0.3rem;
+ }
+
+ .nick {
+ top: 2.53rem;
+ left: 50%;
+ transform: translateX(-50%);
+ }
+
+ p {
+ top: 3.25rem;
+ left: 50%;
+ transform: translateX(-50%);
+ }
+ }
+
+ .top3 {
+ left: 7.2rem;
+ top: -6.25rem;
+
+ .bg {
+ background: url(../images/top3.png);
+ background-size: 100% 100%;
+ }
+ }
+
+ .notTop {
+ width: px2rem(645, );
+ height: px2rem(1829, );
+ background: #104161;
+ margin: -6rem auto 0;
+ border-radius: px2rem(15, );
+
+ li {
+ width: 100%;
+ height: px2rem(152, );
+ border-bottom: px2rem(1) solid #24618A;
+ overflow: hidden;
+ box-sizing: border-box;
+ padding: 0 px2rem(29, );
+
+ .num {
+ color: #fff;
+ font-size: px2rem(26, );
+ height: 100%;
+ line-height: px2rem(152, );
+ margin-right: px2rem(33, );
+ float: left;
+ }
+
+ img {
+ width: px2rem(101, );
+ height: px2rem(101, );
+ border: px2rem(1, ) solid #fff;
+ border-radius: 50%;
+ margin-top: px2rem(32, );
+ margin-right: px2rem(22, );
+ float: left;
+ }
+
+ .nick {
+ height: 100%;
+ line-height: px2rem(152, );
+ color: #fff;
+ font-size: px2rem(22, );
+ float: left;
+ }
+
+ .score {
+ float: right;
+ height: 100%;
+ line-height: px2rem(152, );
+ color: #FFF8BA;
+ font-size: px2rem(24, );
+ }
+ }
+ }
+
+ }
+
+ .list2 {
+ background: url(../images/listBg2.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .myList {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ overflow: hidden;
+ box-sizing: border-box;
+ padding: 0 px2rem(29, );
+ height: px2rem(139, );
+ background: linear-gradient(0deg, #24618A 0%, #4699B4 100%);
+ border-radius: px2rem(12, ) px2rem(12, ) 0px 0px;
+
+ .num {
+ color: #fff;
+ font-size: px2rem(26, );
+ height: 100%;
+ line-height: px2rem(139, );
+ margin-right: px2rem(33, );
+ float: left;
+ }
+
+ img {
+ width: px2rem(101, );
+ height: px2rem(101, );
+ border: px2rem(1, ) solid #fff;
+ border-radius: 50%;
+ margin-top: px2rem(20, );
+ margin-right: px2rem(22, );
+ float: left;
+ }
+
+ .nick {
+ height: 100%;
+ line-height: px2rem(139, );
+ color: #fff;
+ font-size: px2rem(22, );
+ float: left;
+ }
+
+ .score {
+ float: right;
+ height: 100%;
+ line-height: px2rem(139, );
+ color: #FFF8BA;
+ font-size: px2rem(24, );
+ }
+
+ }
+}
+
+.list_r {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, .6);
+ z-index: 99999;
+
+ .list_r_in {
+ width: px2rem(642, );
+ height: px2rem(875, );
+ background: url(../images/ruleBg.png) no-repeat;
+ background-size: 100% 100%;
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ overflow: hidden;
+
+ .box {
+ width: px2rem(595, );
+ margin: px2rem(175, ) auto 0;
+ height: 8.5rem;
+ overflow-y: scroll;
+
+ img {
+ width: 100%;
+ height: px2rem(1783, );
+ }
+ }
+ }
+}
+
+.forestReward {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, .6);
+ z-index: 99999;
+
+ .forestReward_in {
+ width: px2rem(648, );
+ height: px2rem(688, );
+ background: url(../images/forestReward.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+
+ .forestRewardTab {
+ width: 90%;
+ height: px2rem(75, );
+ position: absolute;
+ top: -0.1rem;
+ left: 50%;
+ transform: translateX(-50%);
+ display: flex;
+ justify-content: space-between;
+
+ div {
+ width: px2rem(269, );
+ height: px2rem(75, );
+ }
+
+ .forestRewardTab1 {
+ background: url(../images/forestRewardTab1.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .forestRewardTab2 {
+ background: url(../images/forestRewardTab2.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .forestRewardTab1_active {
+ background: url(../images/forestRewardTab1_active.png) no-repeat;
+ background-size: 100% 100%;
+ }
+
+ .forestRewardTab2_active {
+ background: url(../images/forestRewardTab2_active.png) no-repeat;
+ background-size: 100% 100%;
+ }
+ }
+
+ .forestRewardPage1 {
+ .box1 {
+ width: px2rem(240, );
+ height: px2rem(40, );
+ background: #104161;
+ position: absolute;
+ top: px2rem(114, );
+ left: 50%;
+ transform: translateX(-50%);
+ display: flex;
+ justify-content: space-between;
+ border-radius: px2rem(40, );
+
+ div {
+ width: px2rem(120, );
+ height: px2rem(40, );
+ line-height: px2rem(40, );
+ border-radius: px2rem(40, );
+ text-align: center;
+ color: #fff;
+ font-size: px2rem(22, );
+ }
+
+ .active {
+ background: linear-gradient(0deg, #4283B0 0%, #63B7CA 100%);
+ }
+ }
+
+ .forestRewardPage1Bg {
+ width: px2rem(580, );
+ height: px2rem(436, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: px2rem(47, );
+ }
+ }
+
+ .forestRewardPage2 {
+ overflow: hidden;
+ display: none;
+
+ .title {
+ width: 65%;
+ display: flex;
+ justify-content: space-between;
+ position: absolute;
+ top: px2rem(130, );
+ left: 50%;
+ transform: translateX(-50%);
+
+ div {
+ color: #fff;
+ font-size: px2rem(32, );
+ width: px2rem(130, );
+ text-align: center;
+ }
+ }
+
+ ul {
+ width: 65%;
+ margin: px2rem(190, ) auto 0;
+ height: 6.5rem;
+ overflow-y: scroll;
+
+ &::-webkit-scrollbar {
+ width: 0;
+ height: 0;
+ color: transparent;
+ }
+
+ li {
+ width: 100%;
+ height: px2rem(75, );
+ margin-bottom: px2rem(20, );
+
+ .left {
+ float: left;
+
+ p {
+ width: px2rem(140, );
+ text-align: center;
+ color: #FFF8BA;
+ font-size: px2rem(24, );
+ margin-bottom: px2rem(10, );
+ }
+
+ b {
+ display: block;
+ width: px2rem(140, );
+ text-align: center;
+ color: #50BEDA;
+ font-size: px2rem(22, );
+ }
+ }
+
+ .right {
+ float: right;
+
+ p {
+ width: px2rem(150, );
+ text-align: center;
+ color: #FFF8BA;
+ font-size: px2rem(24, );
+ margin-bottom: px2rem(10, );
+ }
+
+ b {
+ display: block;
+ width: px2rem(140, );
+ text-align: center;
+ color: #50BEDA;
+ font-size: px2rem(22, );
+ }
+ }
+ }
+ }
+ }
+ }
+}
+
+.rule {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, .6);
+ z-index: 99999;
+
+ img {
+ position: absolute;
+ width: px2rem(647, );
+ height: px2rem(1108, );
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ }
+}
+
+.look_put {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, .6);
+ z-index: 99999;
+
+ .look_put_in {
+ width: px2rem(642, );
+ height: px2rem(668, );
+ background: url(../images/look_put.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+
+ p {
+ width: px2rem(340, );
+ text-align: center;
+ color: #fff;
+ font-size: px2rem(28, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: px2rem(89, );
+ line-height: 0.5rem;
+ }
+
+ .gift {
+ width: px2rem(148, );
+ height: px2rem(148, );
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.02rem;
+ z-index: 1;
+ }
+
+ .gift1 {
+ width: 2rem;
+ height: 0.7rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 3.7rem;
+ z-index: 1;
+ }
+
+ .gift2 {
+ width: 3rem;
+ height: 2rem;
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ top: 2.9rem;
+ z-index: 1;
+ }
+
+ .obtained {
+ z-index: 2;
+ width: px2rem(115, );
+ height: px2rem(115, );
+ position: absolute;
+ right: px2rem(188, );
+ top: px2rem(302, );
+ }
+
+ .giftNick {
+ width: 100%;
+ position: absolute;
+ text-align: center;
+ color: #FFF8BA;
+ left: 0;
+ top: px2rem(428, );
+ font-size: px2rem(26, );
+ }
+
+ .num {
+ width: 100%;
+ position: absolute;
+ text-align: center;
+ color: #50BEDA;
+ left: 0;
+ top: px2rem(472, );
+ font-size: px2rem(24, );
+ }
+
+ .but {
+ width: 3.7rem;
+ height: 1rem;
+ position: absolute;
+ bottom: 0.6rem;
+ left: 50%;
+ transform: translateX(-50%);
+ }
+ }
+}
+
+.gx {
+ display: none;
+ position: fixed;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background: rgba(0, 0, 0, .6);
+ z-index: 99999;
+
+ .gx_in {
+
+ width: px2rem(642, );
+ height: px2rem(668, );
+ background: url(../images/gxBg.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+
+ .gift_bg {
+ width: px2rem(206, );
+ height: px2rem(196, );
+ position: absolute;
+ overflow: hidden;
+ top: px2rem(206, );
+ left: 50%;
+ transform: translateX(-50%);
+ background: linear-gradient(0deg, #3085BD 1%, #2A75A6 100%);
+
+ img {
+ display: block;
+ width: px2rem(145, );
+ height: px2rem(148, );
+ margin: 0.3rem auto 0;
+ }
+
+ .img1 {
+ display: block;
+ width: 2.4rem;
+ height: 0.7rem;
+ margin: 1rem auto 0;
+ }
+ }
+
+ .gift {
+ color: #FFF8BA;
+ width: 100%;
+ text-align: center;
+ font-size: px2rem(26, );
+ position: absolute;
+ top: px2rem(428, );
+ left: 0;
+ }
+
+ .num {
+ color: #50BEDA;
+ width: 100%;
+ text-align: center;
+ font-size: px2rem(24, );
+ position: absolute;
+ top: px2rem(472, );
+ left: 0;
+ }
+
+ .but {
+ width: 3.7rem;
+ height: 1rem;
+ position: absolute;
+ bottom: 0.6rem;
+ left: 50%;
+ transform: translateX(-50%);
+ }
+ }
+}
+
+.actOut {
+ position: fixed;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ background: rgba(0, 0, 0, 0.6);
+ display: none;
+ z-index: 9999;
+
+ .actOut_in {
+ width: px2rem(642, );
+ height: px2rem(418, );
+ background: url(../images/actOut.png) no-repeat;
+ background-size: 100% 100%;
+ position: relative;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+
+ .but {
+ position: absolute;
+ width: 4rem;
+ height: 1rem;
+ left: 50%;
+ transform: translateX(-50%);
+ bottom: 1rem;
+ }
+ }
+}
+
+::-webkit-scrollbar {
+ display: none;
+ width: 0px;
+ background: rgba(0, 0, 0, 0);
+}
\ No newline at end of file
diff --git a/view/peko/activity/act-magicSchool/images/actOut.png b/view/peko/activity/act-magicSchool/images/actOut.png
new file mode 100644
index 0000000..e6c9bfc
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/actOut.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStone.png b/view/peko/activity/act-magicSchool/images/amethystStone.png
new file mode 100644
index 0000000..eee5192
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStone.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStone1.png b/view/peko/activity/act-magicSchool/images/amethystStone1.png
new file mode 100644
index 0000000..7e2f2b3
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStone1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStone2.png b/view/peko/activity/act-magicSchool/images/amethystStone2.png
new file mode 100644
index 0000000..43d92ca
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStone2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStone3.png b/view/peko/activity/act-magicSchool/images/amethystStone3.png
new file mode 100644
index 0000000..1f17b91
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStone3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneBut1.png b/view/peko/activity/act-magicSchool/images/amethystStoneBut1.png
new file mode 100644
index 0000000..ecad8bc
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneBut1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneBut5.png b/view/peko/activity/act-magicSchool/images/amethystStoneBut5.png
new file mode 100644
index 0000000..a42d48e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneBut5.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneButOut.png b/view/peko/activity/act-magicSchool/images/amethystStoneButOut.png
new file mode 100644
index 0000000..064baaf
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneButOut.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneList.png b/view/peko/activity/act-magicSchool/images/amethystStoneList.png
new file mode 100644
index 0000000..c24ae13
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneList.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneText1.png b/view/peko/activity/act-magicSchool/images/amethystStoneText1.png
new file mode 100644
index 0000000..02136da
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneText1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneText2.png b/view/peko/activity/act-magicSchool/images/amethystStoneText2.png
new file mode 100644
index 0000000..9b6b385
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneText2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStoneText3.png b/view/peko/activity/act-magicSchool/images/amethystStoneText3.png
new file mode 100644
index 0000000..07e8a1f
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStoneText3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/amethystStones.png b/view/peko/activity/act-magicSchool/images/amethystStones.png
new file mode 100644
index 0000000..18ebf4f
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/amethystStones.png differ
diff --git a/view/peko/activity/act-magicSchool/images/csvag.svga b/view/peko/activity/act-magicSchool/images/csvag.svga
new file mode 100644
index 0000000..ceed343
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/csvag.svga differ
diff --git a/view/peko/activity/act-magicSchool/images/darkForest.png b/view/peko/activity/act-magicSchool/images/darkForest.png
new file mode 100644
index 0000000..33c9a40
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/darkForest.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestReward.png b/view/peko/activity/act-magicSchool/images/forestReward.png
new file mode 100644
index 0000000..bc31d1d
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestReward.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg1.png b/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg1.png
new file mode 100644
index 0000000..c3c29a5
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg2.png b/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg2.png
new file mode 100644
index 0000000..da81a95
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardPage1Bg2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardTab1.png b/view/peko/activity/act-magicSchool/images/forestRewardTab1.png
new file mode 100644
index 0000000..c5d950d
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardTab1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardTab1_active.png b/view/peko/activity/act-magicSchool/images/forestRewardTab1_active.png
new file mode 100644
index 0000000..075f8e5
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardTab1_active.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardTab2.png b/view/peko/activity/act-magicSchool/images/forestRewardTab2.png
new file mode 100644
index 0000000..67432c6
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardTab2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/forestRewardTab2_active.png b/view/peko/activity/act-magicSchool/images/forestRewardTab2_active.png
new file mode 100644
index 0000000..657ea6e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/forestRewardTab2_active.png differ
diff --git a/view/peko/activity/act-magicSchool/images/gray.png b/view/peko/activity/act-magicSchool/images/gray.png
new file mode 100644
index 0000000..12a9a7b
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/gray.png differ
diff --git a/view/peko/activity/act-magicSchool/images/gscag.svga b/view/peko/activity/act-magicSchool/images/gscag.svga
new file mode 100644
index 0000000..ad0c00e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/gscag.svga differ
diff --git a/view/peko/activity/act-magicSchool/images/gxBg.png b/view/peko/activity/act-magicSchool/images/gxBg.png
new file mode 100644
index 0000000..913c206
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/gxBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/header.png b/view/peko/activity/act-magicSchool/images/header.png
new file mode 100644
index 0000000..0eb5ee8
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/header.png differ
diff --git a/view/peko/activity/act-magicSchool/images/img1.png b/view/peko/activity/act-magicSchool/images/img1.png
new file mode 100644
index 0000000..eb9aa5d
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/img1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/img2.png b/view/peko/activity/act-magicSchool/images/img2.png
new file mode 100644
index 0000000..2276b6d
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/img2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/img3.png b/view/peko/activity/act-magicSchool/images/img3.png
new file mode 100644
index 0000000..92e6645
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/img3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/limitedGift.png b/view/peko/activity/act-magicSchool/images/limitedGift.png
new file mode 100644
index 0000000..6b25215
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/limitedGift.png differ
diff --git a/view/peko/activity/act-magicSchool/images/listBg.png b/view/peko/activity/act-magicSchool/images/listBg.png
new file mode 100644
index 0000000..6513add
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/listBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/listBg2.png b/view/peko/activity/act-magicSchool/images/listBg2.png
new file mode 100644
index 0000000..be0b78e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/listBg2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/listTabBg.png b/view/peko/activity/act-magicSchool/images/listTabBg.png
new file mode 100644
index 0000000..209b51e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/listTabBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/logo.png b/view/peko/activity/act-magicSchool/images/logo.png
new file mode 100644
index 0000000..f51a3a1
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/logo.png differ
diff --git a/view/peko/activity/act-magicSchool/images/look_put.png b/view/peko/activity/act-magicSchool/images/look_put.png
new file mode 100644
index 0000000..4e984d3
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/look_put.png differ
diff --git a/view/peko/activity/act-magicSchool/images/nickBg.png b/view/peko/activity/act-magicSchool/images/nickBg.png
new file mode 100644
index 0000000..d8d562b
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/nickBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/notOut.png b/view/peko/activity/act-magicSchool/images/notOut.png
new file mode 100644
index 0000000..7b7d3dd
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/notOut.png differ
diff --git a/view/peko/activity/act-magicSchool/images/obtained.png b/view/peko/activity/act-magicSchool/images/obtained.png
new file mode 100644
index 0000000..a099df8
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/obtained.png differ
diff --git a/view/peko/activity/act-magicSchool/images/primaryBut.png b/view/peko/activity/act-magicSchool/images/primaryBut.png
new file mode 100644
index 0000000..9d33dc9
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/primaryBut.png differ
diff --git a/view/peko/activity/act-magicSchool/images/prizePoolRecord_icon.png b/view/peko/activity/act-magicSchool/images/prizePoolRecord_icon.png
new file mode 100644
index 0000000..e33c874
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/prizePoolRecord_icon.png differ
diff --git a/view/peko/activity/act-magicSchool/images/qiehuan.png b/view/peko/activity/act-magicSchool/images/qiehuan.png
new file mode 100644
index 0000000..3d4b465
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/qiehuan.png differ
diff --git a/view/peko/activity/act-magicSchool/images/rule.png b/view/peko/activity/act-magicSchool/images/rule.png
new file mode 100644
index 0000000..1f369c3
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/rule.png differ
diff --git a/view/peko/activity/act-magicSchool/images/ruleBg.png b/view/peko/activity/act-magicSchool/images/ruleBg.png
new file mode 100644
index 0000000..4bab550
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/ruleBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/rule_c.png b/view/peko/activity/act-magicSchool/images/rule_c.png
new file mode 100644
index 0000000..6121b24
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/rule_c.png differ
diff --git a/view/peko/activity/act-magicSchool/images/rule_icon.png b/view/peko/activity/act-magicSchool/images/rule_icon.png
new file mode 100644
index 0000000..7213457
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/rule_icon.png differ
diff --git a/view/peko/activity/act-magicSchool/images/sc.png b/view/peko/activity/act-magicSchool/images/sc.png
new file mode 100644
index 0000000..3b24166
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/sc.png differ
diff --git a/view/peko/activity/act-magicSchool/images/seniorBut.png b/view/peko/activity/act-magicSchool/images/seniorBut.png
new file mode 100644
index 0000000..9ee8e7e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/seniorBut.png differ
diff --git a/view/peko/activity/act-magicSchool/images/shanhu.png b/view/peko/activity/act-magicSchool/images/shanhu.png
new file mode 100644
index 0000000..c11004d
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/shanhu.png differ
diff --git a/view/peko/activity/act-magicSchool/images/ssvag.svga b/view/peko/activity/act-magicSchool/images/ssvag.svga
new file mode 100644
index 0000000..88ff1d8
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/ssvag.svga differ
diff --git a/view/peko/activity/act-magicSchool/images/tab1.png b/view/peko/activity/act-magicSchool/images/tab1.png
new file mode 100644
index 0000000..b9fb9bd
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab2.png b/view/peko/activity/act-magicSchool/images/tab2.png
new file mode 100644
index 0000000..117d0b8
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab3.png b/view/peko/activity/act-magicSchool/images/tab3.png
new file mode 100644
index 0000000..6f19034
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab4.png b/view/peko/activity/act-magicSchool/images/tab4.png
new file mode 100644
index 0000000..39f5131
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab4.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tabAcative.png b/view/peko/activity/act-magicSchool/images/tabAcative.png
new file mode 100644
index 0000000..af983d7
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tabAcative.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab_1.png b/view/peko/activity/act-magicSchool/images/tab_1.png
new file mode 100644
index 0000000..164a9dc
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab_1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab_2.png b/view/peko/activity/act-magicSchool/images/tab_2.png
new file mode 100644
index 0000000..3b31e78
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab_2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab_3.png b/view/peko/activity/act-magicSchool/images/tab_3.png
new file mode 100644
index 0000000..fc0750b
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab_3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/tab_4.png b/view/peko/activity/act-magicSchool/images/tab_4.png
new file mode 100644
index 0000000..5939268
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/tab_4.png differ
diff --git a/view/peko/activity/act-magicSchool/images/timeBg.png b/view/peko/activity/act-magicSchool/images/timeBg.png
new file mode 100644
index 0000000..ff8c5da
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/timeBg.png differ
diff --git a/view/peko/activity/act-magicSchool/images/toast.png b/view/peko/activity/act-magicSchool/images/toast.png
new file mode 100644
index 0000000..1ad637c
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/toast.png differ
diff --git a/view/peko/activity/act-magicSchool/images/toast_go.png b/view/peko/activity/act-magicSchool/images/toast_go.png
new file mode 100644
index 0000000..97ab439
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/toast_go.png differ
diff --git a/view/peko/activity/act-magicSchool/images/toast_ing.png b/view/peko/activity/act-magicSchool/images/toast_ing.png
new file mode 100644
index 0000000..4f547b0
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/toast_ing.png differ
diff --git a/view/peko/activity/act-magicSchool/images/toast_out.png b/view/peko/activity/act-magicSchool/images/toast_out.png
new file mode 100644
index 0000000..543bf1e
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/toast_out.png differ
diff --git a/view/peko/activity/act-magicSchool/images/top1.png b/view/peko/activity/act-magicSchool/images/top1.png
new file mode 100644
index 0000000..a745a98
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/top1.png differ
diff --git a/view/peko/activity/act-magicSchool/images/top2.png b/view/peko/activity/act-magicSchool/images/top2.png
new file mode 100644
index 0000000..c7420b9
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/top2.png differ
diff --git a/view/peko/activity/act-magicSchool/images/top3.png b/view/peko/activity/act-magicSchool/images/top3.png
new file mode 100644
index 0000000..d071ffa
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/top3.png differ
diff --git a/view/peko/activity/act-magicSchool/images/travel/back.png b/view/peko/activity/act-magicSchool/images/travel/back.png
new file mode 100644
index 0000000..7b81adb
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/travel/back.png differ
diff --git a/view/peko/activity/act-magicSchool/images/wenhao.png b/view/peko/activity/act-magicSchool/images/wenhao.png
new file mode 100644
index 0000000..870e012
Binary files /dev/null and b/view/peko/activity/act-magicSchool/images/wenhao.png differ
diff --git a/view/peko/activity/act-magicSchool/index.html b/view/peko/activity/act-magicSchool/index.html
new file mode 100644
index 0000000..1ccef1b
--- /dev/null
+++ b/view/peko/activity/act-magicSchool/index.html
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+
+
魔法学院
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+
原石:
+
+

+
+
+
+
+
+

+
+
+
+
+

+
+
+
+
+
+
+
+
+
完成每日任务获得原石*1
+
+
+ 1/3
+
+
+
+
+
+
+
+
+
+
+

+
+

+
+
+
+

+

+
+

+
+

+
+

+
+
+
+

+
+ -
+
+ 虚以为逮
+
+
+
+
+
+
+
+
+
+
+
+
+

+
8月25日
+

+
+
+
+
+

+
最多六个字啊
+
魅力值:12234
+
+
+
+

+
最多六个字啊
+
魅力值:12234
+
+
+
+

+
最多六个字啊
+
魅力值:12234
+
+
+
+ -
+
NO.4
+
+ 用户昵称压压
+ 魅力值:12234
+
+
+
+
+
+
未上榜
+

+
用户昵称压压
+
魅力值:12234
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+

+
+
+
+
+
前十位魔法师完成试炼点亮
成就墙可获得
+
试炼此水晶原石可获得
+

+

+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/view/peko/activity/act-magicSchool/js/index.js b/view/peko/activity/act-magicSchool/js/index.js
new file mode 100644
index 0000000..7651351
--- /dev/null
+++ b/view/peko/activity/act-magicSchool/js/index.js
@@ -0,0 +1,894 @@
+// 封装layer消息提醒框
+let layerIndex
+const showLoading = (content = '加载中...') => {
+ layer.open({
+ type: 2,
+ shadeClose: false,
+ content,
+ success (e) {
+ layerIndex = $(e).attr('index')
+ }
+ })
+}
+const hideLoading = (index) => {
+ layer.close(index)
+}
+const toastMsg = (content = '操作完成', time = 2) => {
+ layer.open({
+ content,
+ time,
+ skin: 'msg'
+ })
+}
+let urlPrefix = getUrlPrefix()
+let browser = checkVersion()
+let env = EnvCheck();
+var startTime;//活动开始时间
+var endTime;//活动结束时间
+var nowTime = new Date().getTime();
+var firstExplorer;//是否首次高级探险
+var roomUid;
+let page = 0;
+let scrollBool = true;
+var passStatus;//水晶通关状态
+var caystalTrialLevel;//水晶当前等级
+var caystalTrialLevelIndex;//水晶当前等级
+var rankType = 0;//默认日榜
+var currentTimes = 1;
+var amethystStoneArr = [
+ {
+ giftNick: './images/amethystStoneText1.png',
+ img: './images/amethystStone3.png',
+ num: 700,
+ value: '3天',
+ awardName: '丛林秘藏',
+ imgs: './images/img1.png'
+ },
+ {
+ giftNick: './images/amethystStoneText2.png',
+ img: './images/amethystStone2.png',
+ num: 1500,
+ value: '3天',
+ awardName: '大魔导师',
+ imgs: './images/img2.png'
+ },
+ {
+ giftNick: './images/amethystStoneText3.png',
+ img: './images/amethystStone1.png',
+ num: 1800,
+ value: '3天',
+ awardName: '独角兽座驾',
+ imgs: './images/img3.png'
+ },
+]
+
+if (env == 'test') {
+ new VConsole();
+}
+var xsSvgaClick = true;
+
+
+$(function () {
+ getInfoFromClient();
+ setTimeout(function () {
+ // 页面全屏
+ if (browser.app) {
+ if (browser.android) {
+ window.androidJsObj.initShowNav(false)
+ } else {
+ window.webkit.messageHandlers.initShowNav.postMessage(0)
+ }
+ };
+ // 顶部返回事件
+ $('.back').click(() => {
+ if (browser.android) {
+ window.androidJsObj.closeWebView()
+ } else {
+ window.webkit.messageHandlers.closeWebView.postMessage(null)
+ }
+ })
+ getPageInfo();
+ getRecommendRoom();
+ }, 100)
+})
+var player1;
+var player2;
+var player3;
+function xsSvgaFun1 () {
+ bodyScroolFun(true);
+ $('.page1 .darkForest .csvags').show();
+ player1 = new SVGA.Player('.csvag');
+ parser1 = new SVGA.Parser('.csvag');
+ console.log(parser1);
+ parser1.load('./images/csvag.svga', function (videoItem) {
+ player1.loops = 1;
+ player1.clearsAfterStop = false;
+ player1.setVideoItem(videoItem);
+ player1.startAnimation();
+ player1.setContentMode('AspectFill')
+ player1.onFinished(() => {
+ $('.page1 .darkForest .csvags').hide();
+ bodyScroolFun(false);
+ })
+ })
+
+}
+function xsSvgaFun2 () {
+ bodyScroolFun(true);
+ $('.page1 .darkForest .gsvags').show();
+ player1 = new SVGA.Player('.gsvag');
+ parser1 = new SVGA.Parser('.gsvag');
+ parser1.load('./images/gscag.svga', function (videoItem) {
+ player1.loops = 1;
+ player1.clearsAfterStop = false;
+ player1.setVideoItem(videoItem);
+ player1.startAnimation();
+ player1.setContentMode('AspectFill')
+ player1.onFinished(() => {
+ bodyScroolFun(false);
+ $('.page1 .darkForest .gsvags').hide();
+ })
+ })
+
+}
+function xsSvgaFun3 () {
+ bodyScroolFun(true);
+ $('.page2 .amethystStone .amethystStoneGiftSvgas').show();
+ player1 = new SVGA.Player('.ssvag');
+ parser1 = new SVGA.Parser('.ssvag');
+ parser1.load('./images/ssvag.svga', function (videoItem) {
+ player1.loops = 1;
+ player1.clearsAfterStop = false;
+ player1.setVideoItem(videoItem);
+ player1.startAnimation();
+ player1.setContentMode('AspectFill')
+ player1.onFinished(() => {
+ bodyScroolFun(false);
+ $('.page2 .amethystStone .amethystStoneGiftSvgas').hide();
+ })
+ })
+}
+// 获取魔法师成就墙接口
+function getMagicList () {
+ $('.page2 .amethystStoneList ul li').remove();
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/activity/magic/magicList',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid },
+ success (res) {
+ if (res.code === 200) {
+ var str = '';
+ res.data.forEach((res => {
+ str += `
+
+
+ ${res.nick.length > 4 ? res.nick.slice(0, 4) + '...' : res.nick}
+
+ `
+ }))
+ $('.page2 .amethystStoneList ul').append(str)
+ hideLoading(layerIndex)
+ } else {
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 获取房间接口
+function getRecommendRoom () {
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/act/cp/2022/getRecommendRoom',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid },
+ success (res) {
+ if (res.code === 200) {
+ roomUid = res.data;
+ hideLoading(layerIndex)
+ } else {
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 初始化
+function getPageInfo () {
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/activity/magic/info',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid },
+ success (res) {
+ if (res.code === 200) {
+ startTime = res.data.startTime;
+ endTime = res.data.endTime;
+ console.log(dateFormat(startTime, "MM月dd日"));
+ console.log(dateFormat(endTime, "MM月dd日"));
+ $('.page3 .list .time b').attr('time', nowTime);
+ $('.page3 .list .time b').text(dateFormat(nowTime, "MM月dd日"));
+ if (nowTime > endTime) {
+ $('.page3 .list .time b').attr('time', endTime);
+ $('.page3 .list .time b').text(dateFormat(endTime, "MM月dd日"));
+ console.log(sessionStorage.getItem('bool'));
+ if (sessionStorage.getItem('bool') != "true") {
+ $('.actOut').show();
+ bodyScroolFun(true);
+ }
+ }
+ firstExplorer = res.data.firstExplorer
+ if (firstExplorer) {
+ $('.page1 .darkForest .seniorBut img').hide();
+ } else {
+ $('.page1 .darkForest .seniorBut img').show();
+ }
+ $('.page1 .darkForest .rough b').text(res.data.stoneNum);
+ var nums = 0;
+ res.data.taskList.forEach((res, index) => {
+ $(`.page1 .toast .toast${index + 1} p b`).text(res.num != undefined ? res.num : '');
+ if (res.taskStatus == 2) {
+ nums = nums + 33.33333333333333;
+ }
+ if (index + 1 == 3) {
+ $(`.page1 .toast .toast${index + 1} p b`).text(res.taskStatus == 2 ? 30 : 0);
+ }
+
+ if (res.taskStatus == 1) {
+ $(`.page1 .toast .toast${index + 1} div`).attr('click', 0);
+ if (index + 1 < 4) {
+ $(`.page1 .toast .toast${index + 1} div`).addClass('but');
+ } else {
+ $(`.page1 .toast .toast${index + 1} div`).addClass('toast_ing');
+ }
+ } else {
+ $(`.page1 .toast .toast${index + 1} div`).attr('click', 1);
+ if (index + 1 > 4) {
+ $(`.page1 .toast .toast${index + 1} div`).addClass('toast_out');
+ } else {
+ $(`.page1 .toast .toast${index + 1} div`).addClass('toast_out');
+ }
+ }
+ if (index + 1 == 1 || index + 1 == 3) {
+ $(`.page1 .toast .toast${index + 1} div`).attr('room', 1);
+ } else {
+ $(`.page1 .toast .toast${index + 1} div`).attr('room', 0);
+ }
+ if (index + 1 == 4) {
+ $(`.page1 .toast .toast4 span i`).text(`(${res.num}/3)`);
+ if (res.taskStatus == 2) {
+ $(`.page1 .toast .toast${index + 1} span b`).css('width', '100%')
+ } else {
+ $(`.page1 .toast .toast${index + 1} span b`).css('width', `${nums}%`)
+ }
+ }
+ hideLoading(layerIndex)
+ })
+ } else {
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 查看榜单按钮
+$('.actOut .actOut_in .but').click(function () {
+ sessionStorage.setItem("bool", 'true');
+ bodyScroolFun(false);
+ $('.page1').hide();
+ $('.page2').hide();
+ $('.tab div:nth-child(3)').attr('id', 'tab3');
+ $('.tab div:nth-child(1)').attr('id', '');
+ currentTimes = 1;
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ $('.page3 .list').removeClass('list2');
+ $('.page3').show();
+ $('.actOut').hide();
+})
+// 探险记录接口
+function getExplorerRecord (page) {
+ scrollBool = false;
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/activity/magic/explorerRecord',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid, page, pageSize: 10 },
+ success (res) {
+ if (res.code === 200) {
+ scrollBool = true;
+ var str = ``;
+ if (res.data.length == 0) {
+ scrollBool = false;
+ } else {
+
+ res.data.forEach((res, index) => {
+ str += `
+
+
+
${dateFormat(res.createTime, 'yyyy/MM/dd')}
+
${dateFormat(res.createTime, 'hh:mm:ss')}
+
+
+
+ `
+ })
+ }
+ $('.forestReward .forestReward_in .forestRewardPage2 ul').append(str);
+ console.log(page);
+ hideLoading(layerIndex)
+ } else {
+ scrollBool = true;
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ scrollBool = true;
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 探险接口
+function getExplorer (explorerType) {
+ showLoading()
+ networkRequest({
+ type: 'post',
+ url: urlPrefix + '/activity/magic/explorer',
+ data: { explorerType, pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid, },
+ success (res) {
+ if (res.code === 200) {
+ $('.gx .gx_in .gift').text(res.data.awardName);
+ $('.gx .gx_in .gift_bg img').removeClass('img1');
+ if (res.data.awardType == 3 || res.data.awardType == 1 || res.data.awardType == 2) {
+ if (res.data.awardType == 1) {
+ $('.gx .gx_in .gift_bg img').addClass('img1');
+ }
+ $('.gx .gx_in .num').text(res.data.awardPrice + '天');
+ } else if (res.data.awardType == 4) {
+ $('.gx .gx_in .num').text(res.data.awardPrice + '钻石');
+ } else if (res.data.awardType == 5) {
+ $('.gx .gx_in .gift').text(res.data.awardName + '*' + res.data.awardPrice);
+ $('.gx .gx_in .num').text('');
+ }
+
+ $('.gx .gx_in .gift_bg img').attr('src', res.data.awardUrl);
+ $('.gx').show();
+ getPageInfo();
+ hideLoading(layerIndex)
+ xsSvgaClick = true;
+ } else if (res.code == 10007) {
+ hideLoading(layerIndex);
+ hideLoading(layerIndex);
+ $('.actOut').show();
+ } else {
+ xsSvgaClick = true;
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ xsSvgaClick = true;
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 水晶试炼场接口
+function getCaystalTrial (num) {
+ showLoading()
+ networkRequest({
+ type: 'POST',
+ url: urlPrefix + '/activity/magic/caystalTrial',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid, num },
+ success (res) {
+ if (res.code === 200) {
+ xsSvgaClick = true;
+ if (res.data != undefined) {
+ $('.gx .gx_in .gift').text(res.data.awardName);
+ $('.gx .gx_in .gift_bg img').removeClass('img1');
+ if (res.data.awardType == 3 || res.data.awardType == 1 || res.data.awardType == 2) {
+ if (res.data.awardType == 1) {
+ $('.gx .gx_in .gift_bg img').addClass('img1');
+ }
+ $('.gx .gx_in .num').text(res.data.awardNum + '天');
+ } else if (res.data.awardType == 4) {
+ $('.gx .gx_in .num').text(res.data.awardNum + '钻石');
+ } else if (res.data.awardType == 5) {
+ $('.gx .gx_in .gift').text(res.data.awardName + '*' + res.data.awardNum);
+ $('.gx .gx_in .num').text('');
+ }
+ $('.gx .gx_in .gift_bg img').attr('src', res.data.awardUrl);
+ $('.gx').show();
+ // $('.gx').show();
+ // $('.gx .gx_in .gift_bg img').attr('src', res.data.awardUrl);
+ // $('.gx .gx_in .gift').text(res.data.awardName);
+ // $('.gx .gx_in .num').text(res.data.awardNum + '天');
+ }
+ getCaystalTrialInit();
+ hideLoading(layerIndex)
+ } else {
+ xsSvgaClick = true;
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ xsSvgaClick = true;
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+$('.page2 .amethystStone .amethystStoneBut1').click(function () {
+ if (xsSvgaClick) {
+ var num = $('.page2 .amethystStone .lineBox p b').text();
+ if (num != 0) {
+ xsSvgaClick = false;
+ xsSvgaFun3()
+ setTimeout(function () {
+ getCaystalTrial(1)
+ }, 2000)
+ } else {
+ toastMsg('水晶石不足')
+ }
+ }
+
+})
+$('.page2 .amethystStone .amethystStoneBut5').click(function () {
+ if (xsSvgaClick) {
+ var num = $('.page2 .amethystStone .lineBox p b').text();
+ if (num != 0) {
+ xsSvgaClick = false;
+ xsSvgaFun3()
+ setTimeout(function () {
+ getCaystalTrial(5)
+ }, 2000)
+ } else {
+ toastMsg('水晶石不足')
+ }
+ }
+})
+// 获取水晶试炼场初始化接口
+var schedulevale;
+function getCaystalTrialInit () {
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/activity/magic/caystalTrialInit',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid },
+ success (res) {
+ if (res.code === 200) {
+ passStatus = res.data.passStatus;
+ if (passStatus == true) {
+ caystalTrialLevel = 2;
+ caystalTrialLevelIndex = 2;
+ } else {
+ caystalTrialLevel = res.data.caystalTrialLevel;
+ caystalTrialLevelIndex = res.data.caystalTrialLevel;
+ }
+ $('.page2 .amethystStone .lineBox p b').text(res.data.caystalNum);
+ $('.page2 .amethystStone .lineBox i strong').text(res.data.schedule);
+ schedulevale = res.data.schedule;
+ crystalTestingHround(schedulevale);
+ hideLoading(layerIndex)
+ } else {
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 处理水晶切换
+function crystalTestingHround (schedulevale) {
+ if (passStatus == true) {
+ $('.page2 .amethystStone .amethystStoneGift').attr('src', amethystStoneArr[caystalTrialLevel].img);
+ $('.page2 .amethystStone .stoneNick').attr('src', amethystStoneArr[caystalTrialLevel].giftNick);
+ $('.page2 .amethystStone .lineBox span').css('width', `${100}%`);
+ $('.page2 .amethystStone .lineBox i em').text(amethystStoneArr[caystalTrialLevel].num);
+ $('.page2 .amethystStone .lineBox i strong').text(amethystStoneArr[caystalTrialLevel].num);
+ $('.amethystStoneBut1').hide();
+ $('.amethystStoneBut5').hide();
+ $('.amethystStoneOut').show();
+ } else {
+ $('.page2 .amethystStone .amethystStoneGift').attr('src', amethystStoneArr[caystalTrialLevel].img);
+ $('.page2 .amethystStone .stoneNick').attr('src', amethystStoneArr[caystalTrialLevel].giftNick);
+ $('.page2 .amethystStone .lineBox i em').text(amethystStoneArr[caystalTrialLevel].num);
+ $('.page2 .amethystStone .lineBox span').css('width', `${(schedulevale / amethystStoneArr[caystalTrialLevel].num) * 100}%`);
+ if (caystalTrialLevel < caystalTrialLevelIndex) {
+ $('.amethystStoneBut1').hide();
+ $('.amethystStoneBut5').hide();
+ $('.amethystStoneOut').show();
+ $('.page2 .amethystStone .lineBox i strong').text(amethystStoneArr[caystalTrialLevel].num);
+ $('.page2 .amethystStone .lineBox span').css('width', `${100}%`);
+ } else if (caystalTrialLevel > caystalTrialLevelIndex) {
+ $('.amethystStoneBut1').hide();
+ $('.amethystStoneBut5').hide();
+ $('.amethystStoneOut').hide();
+ $('.page2 .amethystStone .lineBox i strong').text(0);
+ $('.page2 .amethystStone .lineBox span').css('width', `${0}%`);
+ }
+ else if (caystalTrialLevel == caystalTrialLevelIndex) {
+ $('.amethystStoneBut1').show();
+ $('.amethystStoneBut5').show();
+ $('.amethystStoneOut').hide();
+ $('.page2 .amethystStone .lineBox i strong').text(schedulevale);
+ }
+ }
+ if (caystalTrialLevel == 0) {
+ $('.page2 .amethystStone .right').hide();
+ } else {
+ $('.page2 .amethystStone .right').show();
+ }
+ if (caystalTrialLevel == amethystStoneArr.length - 1) {
+ $('.page2 .amethystStone .left').hide();
+ } else {
+ $('.page2 .amethystStone .left').show();
+ }
+}
+// 水晶左切换
+$('.page2 .amethystStone .right').click(function () {
+ if (caystalTrialLevel < amethystStoneArr.length - 1) {
+ caystalTrialLevel = 0;
+ } else {
+ caystalTrialLevel = caystalTrialLevel - 1;
+ }
+ crystalTestingHround(schedulevale);
+})
+// 水晶右切换
+$('.page2 .amethystStone .left').click(function () {
+ if (caystalTrialLevel >= amethystStoneArr.length - 1) {
+ caystalTrialLevel = amethystStoneArr.length - 1;
+ } else {
+ caystalTrialLevel = caystalTrialLevel + 1;
+ }
+
+ crystalTestingHround(schedulevale);
+})
+//点击查看原石奖励
+$('.page2 .amethystStone .amethystStoneGift').click(function () {
+ $('.look_put .look_put_in .gift').removeClass('gift2');
+ if (caystalTrialLevel != 0) {
+ $('.look_put .look_put_in .gift').addClass('gift1');
+ if (caystalTrialLevel == 2) {
+ $('.look_put .look_put_in .gift').removeClass('gift1');
+ $('.look_put .look_put_in .gift').addClass('gift2');
+ }
+ } else {
+ $('.look_put .look_put_in .gift').removeClass('gift1');
+ }
+ $('.look_put .look_put_in .gift').attr('src', amethystStoneArr[caystalTrialLevel].imgs);
+ $('.look_put .look_put_in .giftNick').text(amethystStoneArr[caystalTrialLevel].awardName)
+ $('.look_put .look_put_in .num').text(amethystStoneArr[caystalTrialLevel].value);
+ if (passStatus == true || caystalTrialLevel < caystalTrialLevelIndex) {
+ $('.look_put .obtained').show();
+ };
+ $('.look_put .p2').show();
+ $('.look_put').show();
+ bodyScroolFun(true);
+})
+// 问号查看奖励
+$('.page2 .amethystStoneList .wenhao').click(function () {
+ $('.look_put .look_put_in .gift').attr('src', './images/shanhu.png');
+ $('.look_put .look_put_in .giftNick').text("珊瑚头饰")
+ $('.look_put .look_put_in .num').text('3天');
+ $('.look_put .p1').show();
+ $('.look_put').show();
+})
+// 关闭查看奖励弹窗
+$('.look_put .look_put_in .but').click(function () {
+ $('.look_put .p2').hide();
+ $('.look_put .p1').hide();
+ $('.look_put .obtained').hide();
+ $('.look_put').hide();
+ bodyScroolFun(false);
+})
+//关闭恭喜弹窗
+$('.gx .gx_in .but').click(function () {
+ $('.gx').hide();
+})
+// 监听滚动
+$('.forestReward .forestReward_in .forestRewardPage2 ul').scroll(function () {
+ let scrollTop = $(this).scrollTop()
+ let scrollHeight = $('.forestReward .forestReward_in .forestRewardPage2 ul')[0].scrollHeight
+ let ulHeight = $(this).innerHeight()
+ if (scrollTop + ulHeight + 100 >= scrollHeight) {
+ if (scrollBool) {
+ page++;
+ getExplorerRecord(page);
+ }
+ }
+})
+// 初级探险
+$('.page1 .darkForest .primaryBut').click(function () {
+ if (xsSvgaClick) {
+ var num = $('.page1 .darkForest .rough b').text();
+ if (num != 0) {
+ xsSvgaClick = false;
+ xsSvgaFun1()
+ setTimeout(function () {
+ getExplorer(0, 1)
+ }, 2000)
+ } else {
+ toastMsg('原石不足')
+ }
+ }
+
+})
+// 高级探险
+$('.page1 .darkForest .seniorBut').click(function () {
+ if (xsSvgaClick) {
+ var num = $('.page1 .darkForest .rough b').text();
+ if (num != 0) {//num != 0
+ xsSvgaClick = false;
+ xsSvgaFun2()
+ setTimeout(function () {
+ getExplorer(1, 3)
+ }, 3000)
+ } else {
+ if (firstExplorer == false) {
+ xsSvgaClick = false;
+ xsSvgaFun2()
+ setTimeout(function () {
+ getExplorer(1, 3)
+ }, 3000)
+ } else {
+ toastMsg('原石不足')
+ }
+ }
+ }
+})
+// 处理时间函数
+function timeFun (LR,) {
+ var times = Number($('.page3 .list .time b').attr('time'));
+ if (LR == 1) {
+ times = (times - (1000 * 60 * 60 * 24));
+ if (startTime > times) {
+ $('.page3 .list .time b').text(dateFormat(startTime, "MM月dd日"));
+ $('.page3 .list .time b').attr('time', startTime);
+ times = startTime
+ toastMsg('不能小于活动开始时间');
+ } else {
+ $('.page3 .list .time b').attr('time', (times));
+ $('.page3 .list .time b').text(dateFormat(times, "MM月dd日"));
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ }
+ } else {
+ if (times >= endTime) {
+ $('.page3 .list .time b').text(dateFormat(endTime, "MM月dd日"));
+ $('.page3 .list .time b').attr('time', endTime);
+ times = endTime
+ toastMsg('不能大于活动结束时间');
+ } else {
+ $('.page3 .list .time b').text(dateFormat((times + (1000 * 60 * 60 * 24)), "MM月dd日"));
+ $('.page3 .list .time b').attr('time', (times + (1000 * 60 * 60 * 24)));
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ }
+ }
+}
+// 左时间切换按钮
+$('.page3 .list .time .timeLeftBg').click(function () {
+ timeFun(1,)
+})
+// 右时间切换按钮
+$('.page3 .list .time .timeRightBg').click(function () {
+ timeFun(2,)
+})
+// tab切换
+$('.tab div').click(function () {
+ var i = $(this).index() + 1;
+ $(this).siblings().attr('id', '');
+ $(this).attr("id", `tab${i}`);
+ $(`.page${i}`).show();
+ if (i == 1) {
+ $('.page2').hide();
+ $('.page3').hide();
+ } else if (i == 2) {
+ $('.page1').hide();
+ $('.page3').hide();
+ getCaystalTrialInit();
+ getMagicList();
+ } else if (i == 3) {
+ $('.page1').hide();
+ $('.page2').hide();
+ currentTimes = 1;
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ $('.page3 .list').removeClass('list2');
+ $('.page3').show();
+ } else if (i == 4) {
+ $('.page1').hide();
+ $('.page2').hide();
+ currentTimes = 2;
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ $('.page3 .list').addClass('list2');
+ $('.page3').show();
+ }
+})
+// 切换总榜日榜
+$('.page3 .list .tabs div').click(function () {
+ var i = $(this).index() + 1;
+ $(this).addClass('tabAcative').siblings().removeClass('tabAcative');
+ if (i == 1) {
+ $('.page3 .list .tabs').css('margin',"1.48rem auto 0.3866666667rem")
+ $('.page3 .list .time').show();
+ rankType = 0;
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ } else {
+ $('.page3 .list .tabs').css('margin',"1.48rem auto 1rem")
+ $('.page3 .list .time').hide();
+ rankType = 1;
+ getRank(rankType, Number($('.page3 .list .time b').attr('time')), currentTimes);
+ }
+})
+// 获取榜单接口
+function getRank (rankType, currentTime, comeFrom) {
+ $('.page3 .list .notTop li').remove()
+ showLoading()
+ networkRequest({
+ type: 'GEt',
+ url: urlPrefix + '/activity/magic/rank',
+ data: { pub_ticket: pubInfo.ticket, pub_uid: pubInfo.uid, rankType, currentTime: Number(currentTime), comeFrom },
+ success (res) {
+ if (res.code === 200) {
+ var top3 = res.data.rankList.slice(0, 3);
+ var notTop3 = res.data.rankList.slice(3);
+ // 处理自己榜单
+ $('.page3 .myList img').attr('src', res.data.userRank.avatar);
+ $('.page3 .myList .num').text(res.data.userRank.rank == 0 ? '未上榜' : res.data.userRank.rank);
+ $('.page3 .myList .nick').text(res.data.userRank.nick.length > 8 ? res.data.userRank.nick.slice(0, 8) + '...' : res.data.userRank.nick);
+ $('.page3 .myList .score').text(comeFrom == 1 ? 'peko值:' + unitProcessing(res.data.userRank.rankValue, 10000, 1, 'w') : '魅力值:' + unitProcessing(res.data.userRank.rankValue, 10000, 1, 'w'));
+ hideLoading(layerIndex)
+ // 处理前三
+ if (top3.length < 3) {
+ let arr = new Array(3 - top3.length).fill({
+ avatar: './images/logo.png',
+ nick: '虚位以待',
+ rankValue: ""
+ })
+ top3.push(...arr)
+ }
+ top3.forEach((res, index) => {
+ $(`.page3 .list .top${index + 1} .txBg`).attr('src', res.avatar);
+ $(`.page3 .list .top${index + 1} .nick`).text(res.nick.length > 6 ? res.nick.slice(0, 6) + '...' : res.nick);
+ $(`.page3 .list .top${index + 1} p`).text(comeFrom == 1 ? 'peko值:' + unitProcessing(res.rankValue, 10000, 1, 'w') : '魅力值:' + unitProcessing(res.rankValue, 10000, 1, 'w'));
+ })
+ // 非前三
+ var str = '';
+ notTop3.forEach((res, index) => {
+ str += `
+
+ NO.${index + 4}
+
+ ${res.nick.length > 6 ? res.nick.slice(0, 6) + '...' : res.nick}
+ ${comeFrom == 1 ? 'peko值:' + unitProcessing(res.rankValue, 10000, 1, 'w') : '魅力值:' + unitProcessing(res.rankValue, 10000, 1, 'w')}
+ `
+ })
+ $('.page3 .list .notTop').append(str);
+ } else {
+ hideLoading(layerIndex)
+ toastMsg(res.message)
+ }
+ },
+ error (err) {
+ hideLoading(layerIndex)
+ toastMsg('网络错误,请退出重进')
+ }
+ })
+}
+// 打开榜单奖励
+$('.page3 .list .rule_list_icon').click(function () {
+ $('.list_r').show();
+ bodyScroolFun(true);
+})
+$('.list_r').click(function () {
+ $(this).hide();
+ bodyScroolFun(false);
+})
+// 首页跳转房间
+$('.page1 .toast .to div').click(function (params) {
+ var room = $(this).attr('room');
+ var click = $(this).attr('click');
+ if (click == 1) {
+ console.log('已完成');
+ } else {
+ if (browser.ios) {
+ window.webkit.messageHandlers.openRoom.postMessage(roomUid);
+ } else if (browser.android) {
+ if (androidJsObj && typeof androidJsObj === 'object') {
+ window.androidJsObj.openRoom(roomUid);
+ }
+ }
+ }
+})
+
+// 控制body是否可以滑动
+function bodyScroolFun (bool) {
+ if (bool) {
+ $('body').css('overflow', 'hidden');
+ } else {
+ $('body').css('overflow', 'auto');
+
+ }
+}
+// 切换森林奖励/记录按钮
+var forestRewardPageClick = true;
+$('.forestReward .forestReward_in .forestRewardTab div').click(function () {
+ var i = $(this).index() + 1;
+ if (i == 1) {
+ $(this).addClass('forestRewardTab1_active').siblings().removeClass('forestRewardTab2_active').addClass('forestRewardTab2s');
+ $('.forestRewardPage1').show();
+ $('.forestRewardPage2').hide();
+ } else {
+ $(this).addClass('forestRewardTab2_active').siblings().removeClass('forestRewardTab1_active').addClass('forestRewardTab1');
+ $('.forestRewardPage2').show();
+ $('.forestRewardPage1').hide();
+ }
+ return false
+})
+// 高级探险/初级探险切换按钮
+$('.forestReward .forestReward_in .forestRewardPage1 .box1 div').click(function () {
+ var i = $(this).index() + 1;
+ $(this).addClass('active').siblings().removeClass('active')
+ if (i == 1) {
+ $('.forestReward .forestReward_in .forestRewardPage1 .forestRewardPage1Bg').attr('src', './images/forestRewardPage1Bg1.png');
+ } else {
+ $('.forestReward .forestReward_in .forestRewardPage1 .forestRewardPage1Bg').attr('src', './images/forestRewardPage1Bg2.png');
+ }
+ return false
+})
+// 打开活动规则
+$('.hdader .rule_icon').click(function (params) {
+ $('.rule').show();
+ bodyScroolFun(true);
+})
+//关闭活动规则
+$('.rule').click(function (params) {
+ $('.rule').hide();
+ bodyScroolFun(false);
+})
+// 打开记录以及奖池
+$('.page1 .darkForest .prizePoolRecord').click(function (params) {
+ bodyScroolFun(true);
+ $('.forestReward .forestReward_in .forestRewardPage2 ul li').remove();
+ page = 1;
+ getExplorerRecord(page);
+ $(".forestReward").show();
+})
+// 关闭记录以及奖池
+$(".forestReward").click(function (params) {
+ bodyScroolFun(false);
+ $(this).hide();
+})
+
+// 返回页面 重新请求接口
+var hiddenProperty = 'hidden' in document ? 'hidden' :
+ 'webkitHidden' in document ? 'webkitHidden' :
+ 'mozHidden' in document ? 'mozHidden' : null;
+
+var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');
+var onVisibilityChange = function () {
+ if (!document[hiddenProperty]) {
+ location.reload()
+ }
+}
+document.addEventListener(visibilityChangeEvent, onVisibilityChange);
\ No newline at end of file
diff --git a/view/peko/activity/act-midAutumnFestival-2022/index.html b/view/peko/activity/act-midAutumnFestival-2022/index.html
index 5669ee2..e340e38 100644
--- a/view/peko/activity/act-midAutumnFestival-2022/index.html
+++ b/view/peko/activity/act-midAutumnFestival-2022/index.html
@@ -121,7 +121,7 @@
