NOVEL Reincarnated To Evolve My Bee Empire Chapter 10: Giving out titles

Reincarnated To Evolve My Bee Empire

Chapter 10: Giving out titles
  • Prev Chapter
  • Background
    Font family
    Font size
    Line hieght
    Full frame
    No line breaks
    Text to Speech
  • Next Chapter

Chapter 10: Giving out titles

</p><p> 〔Foreman Bee〕: +10% to base strength and endurance. </p><p> My Foremen Bees raised their hammers, mirroring me. Their stats grew right before my eyes. </p><p> 〔Nurse Bee〕 〔Ally〕 〔Progeny〕 </p><p> 〔Name〕: B1 </p><p> 〔Active title〕: Foreman Bee </p><p> 〔Health〕: 11 / 11 </p><p> 〔Stamina〕: 11 / 11 </p><p> 〔Species〕: Common Honey Bee </p><p> 〔Age〕: 30 d </p><p> 〔Remaining lifespan〕: 76 d </p><p> 〔Attributes〕 </p><p> > Strength: 9 </p><p> > Agility: 40 </p><p> > Endurance: 10 </p><p> > Defense: 9 </p><p> > Intelligence: 100 </p><p> > Perception: 43 </p><p> 〔Special abilities〕 </p><p> Flight, Barbed Stinger, Royal Jelly Production </p><p> 〔Genes〕 </p><p> Enhanced Intelligence X </p><p> 〔〕〔〕〔〕 </p><p> As I beamed at them, I heard the system's voice. </p><p> <Congratulations, for training your first specialists, you gain an achievement: "Teacher of the Masses"! Your reward: 'Fast Learner I' gene.> </p><p> 〔Fast Learner I: increases training speed by 10%.〕 </p><p> <Congratulations! You have implemented a 'Foraging Posts' technology in your colony. You gain 1 Development Point.> </p><p> Well, that was just nice! </p><p> Now my students had to take their own students. </p><p> Even after Ambrosia's pheromones wore off, the smarter bees still recognized my authority. At least, as long as I told them that what we were doing would help the colony. </p><p> Only older, dumber bees had problems with obeying orders from someone besides a Queen Bee, since they were mostly led by instincts. </p><p> By my directive, each new Foreman Bee took 10 students, while I took 10 more pupils from among my daughters and began teaching them how to make stone hammers. </p><p> They were going to become Craftsmen Bees and free me from the terror of having to make those *fucking hammers* ever again! </p><p> <Title created: 'Craftsman Bee'. Requirements: knowledge of at least 1 technology that allows producing items.> </p><p> 〔Craftsman Bee〕: +10% to crafting speed. </p><p> And the system gave them a simple, solid bonus. </p><p> A week later, there were 110 Foreman Bees and 10 Craftsman Bees. </p><p> Then each of the Foreman Bees each took 10 more students. </p><p> 10 Craftsman Bees began working too, tirelessly making more hammers (and 10% faster than I could), each making at least 8 hammers a day—if Forager Bees brought them enough materials. But I ensured they would (by shouting a lot at Foragers). </p><p> It was most of what I did the next week. Foragers with 3 intelligence needed a lot of micromanaging. </p><p> But I got 1 Development Point for implementing 'Stone Hammers' in the colony. </p><p> My colony's brainpower and development points kept growing during this time, but the overall populace count stayed still. 12000 bees matured during this week, but 12000 bees had died to old age and the so-called "hunters". </p><p> Worse, the colony's food supplies kept dwindling. As the system told me when I asked, a thousand bees ate a unit of food a day... So there wasn't a lot in the first place. </p><p> I could only guess that too many Forager Bees were dying outside to get enough food for the hive. </p><p> And my development points were still agonizingly close and far away to the next development level! </p><p> 〔Your colony〕 </p><p> 〔Wellness〕: 85 % </p><p> 〔Population〕: 23 thousand </p><p> 〔Development level〕: 1 </p><p> 〔Development points〕: 59 / 60 </p><p> 〔Species〕: Common Honey Bee </p><p> 〔Attributes〕 </p><p> > Workpower: 13 </p><p> > Military: 11 </p><p> > Brainpower: 61 </p><p> > Logistics: 15 </p><p> > Resilience: 8 </p><p> 〔Resources〕: </p><p> > Food: 73 units </p><p> > Building materials: 10 units </p><p> 〔Technologies〕 </p><p> Dance Communication </p><p> Hive Building </p><p> Food Preservation </p><p> Stone Hammers </p><p> Forager Posts </p><p> 〔〕〔〕〔〕 </p><p> 73 units of food. The colony lost an average amount of 4 units of food per day. And *only* I knew, because only I knew how to count above 20. The way things were going, the colony would die from hunger long before I would die from old age! </p><p> The hive really was down on times, but I planned to change that. </p><p> The training of my 550 Foremen Bees was complete, and all their hammers were ready. </p><p> These bees had to be enough to protect my colony's Forager Bees, or my dream of living a long and peaceful life will end before it could even begin. And it was already a hair's breadth away from an abrupt end. </p><p> When my Foreman Bees prepared for their first workday, I watched them anxiously. </p><p> In the morning, a first Forager Bee returned with her fuzz soaked in nectar and pollen and danced a dance that pointed at the flowers where she got it from. </p><p> As soon as she finished, other bees helped her bring her haul and store it in the hive; while five dozen Forager Bees flew off at where the bee pointed. </p><p> There were 50 Foreman Bees with me, which I already separated into groups of ten. Now I addressed the first one. </p><p> "Alright, girls! Time to establish your first forager post. Go forth, and good luck!" </p><p> I gave each of them a head rub for good measure. </p><p> "Don't worry, Father, we got this!" a Foreman Bee said. "We will return soon with lots of food!" </p><p> 'Soon' was several hours, but she was right. The bees returned safely, carrying nectar and pollen with them in droves. None of the bees were wounded, but several Foreman Bees had hammers stained with blood. They fought! </p><p> Then I counted the heads again and realized. There were one fewer Forager Bees than when the group left... </p><p> "What happened? Where did the last Forager Bees go?" I asked a returned Foreman Bee. </p><p> "Oh, a huge hunter snatched her from a flower. Even if we tried to fight, it was too fast. But we fought off all the other hunters, Father!" the bee boasted. </p><p> "Good job, girls," I said weakly. "At least you weren't hurt. Just clean your hammers at some point." </p><p> The hunters... </p><p> I knew I was probably going to regret the next thing, but I had to see more of the outside world with my own eyes. I had to know what was killing my bees. </p> <p> When the next group of Foreman Bees prepared to leave the hive, I declared I was going with them. </p><p> "What?! Father, but it's dangerous out there, even with our protection! And you are the only Drone in the colony!" </p><p> I stared down at the Foreman Bee that said this. </p><p> 'I'm so proud that they can understand such complex things, but...' </p><p> "Look, I'm older than you. And I'm your father. I know what I'm doing, yeah?" I narrowed my eyes. "Just... guard me. And the Foragers. And yourself, too." </p><p> "Alright... You *do* know a lot, I guess, Father. And you've trained us to be strong enough to protect you." </p><p> "Oh, c'mon! Why do you act like I have no credibility at all? Did you inherit Ambrosia's sass gene, or what? Have some respect for your dad..." </p><p> "Alright, Father." </p><p> It didn't sound respectful at all. </p><p> And like that, I and 60 other bees took off into the grand and terrible outside again.</p> </div> <!--<div style="margin-top: 0px; margin-bottom: 10px;">--> <!--<div id="pf-6777-1"><script>window.pubfuturetag = window.pubfuturetag || [];window.pubfuturetag.push({unit: "6571a4a2256794003ccac48b", id: "pf-6777-1"})</script></div>--> <!--</div>--> </div> <div class="chapter-end"></div> <ul class="ul-list7"> <li> <a href="/nov/reincarnated-to-evolve-my-bee-empire/chapter-9" id="prev_url" title="Read Privious Chapter"><span class="glyphicon glyphicon-chevron-left"></span>Prev Chapter</a> </li> <li> <a href="javascript:;" class="a1"><span class="glyphicon glyphicon-list-alt"></span></a> <div class="catalog"> <select onchange="location.href=options[selectedIndex].value"> </select> </div> </li> <li> <a href="/nov/reincarnated-to-evolve-my-bee-empire/chapter-11" id="next_url" title="Read Next chapter">Next Chapter<span class="glyphicon glyphicon-chevron-right"></span></a> </li> </ul> <div class="text-center" style="text-align:center"> <a href="javascript:;" class="library set-case" data-articleid="5907" data-chapterid="10"><span class="glyphicon glyphicon-plus"></span> Add to Library</a> <a href="javascript:;" class="showcomment"><span class="glyphicon glyphicon-comment"></span> <span id="total-tomm2">0</span> Comments</a> </div> <p class="tips">Use arrow keys (or A / D) to PREV/NEXT chapter</p> <div id="e-comments" class="m-newest3" style="display: none;margin-bottom: 1em"> <style> .comment-vip-level-image { width: 45px; height: 15px; vertical-align: middle; } .comment-child-vip-level-image { width: 45px; height: 15px; vertical-align: middle; } </style> <div class="m-newest3"> <div class="g-tit"> <h3 class="tit" style="text-align:left;margin: 0;"><span class="text-align: left; glyphicon glyphicon-comment"></span> Comments</h3> </div> <div class="flex-col" style="gap: 8px;padding: 1em"> <div class="flex-col comment-box" style="align-items: end;gap: 8px;"> <!-- Edit box --> <textarea placeholder="Share your thoughts." class="e-edit comm-inp" id = 'comm-text' rows="5"></textarea> <!-- Submit Button --> <button type="button" class="e-show-more comm-btn comment-submit"> <span class="glyphicon glyphicon-circle-arrow-up"></span> Submit </button> </div> <!-- Best and Newest --> <div class="flex-row justify-end color2" style="gap: 8px;align-items: stretch;"> <div class="flex-row f16" style="flex-grow: 1;font-weight: bold;align-items: center;"> <span><span id="total-tomm">0</span> Comments</span> </div> <div class="flex-row e-label order-box" data-sort="best" style="align-items: center;">Best</div> <div class="flex-row e-label order-box selected" data-sort="newest" style="align-items: center;">Newest</div> </div> <div class="flex-col e-comment-list align-center" style="gap: 1em"> <div class="comment-list w100"> </div> <button type="button" class="e-show-more f14 pointer load-comment"> <span class="glyphicon glyphicon-plus-sign load-icon"></span> <span class="btn-text">Load More Comments</span> </button> </div> </div> </div> <script> let page = 1; let articleid = 5907; let chapterid = 0; $(function(){ $('body').on("click",".reply-btn",function(){ if($(this).parent().parent().find(".flex-col").is(":visible")){ $(this).parent().parent().find(".flex-col").hide(200) }else{ $(this).parent().parent().find(".flex-col").show(200) } }) if(localStorage.comment_cache){ $('#comm-text').val(localStorage.comment_cache); } let defContent = '<span class="glyphicon glyphicon-circle-arrow-up"></span> Submit'; let comment_submit = false; $('body').on('click','.comment-submit',function(){ if(comment_submit){ return } $(this).html('<span class="glyphicon glyphicon-refresh spin"></span> Sending...'); let that = $(this); comment_submit = true; submitComm(this,function(){ comment_submit = false; that.html(defContent); }); }) function submitComm(e,after){ var pid = 0; var ppid = 0; let content = ''; let pUserUid = 0; if($(e).is('.child')){ pid = $(e).attr('data-pid')*1; if(pid == 0) { alert('pid is empty!') if(after != null) { after() } return } ppid = $(e).attr('data-ppid')*1; if(ppid == 0) { alert('ppid is empty!') if(after != null) { after() } return } content = $(e).parent().find('.comm-text').val(); }else{ content = $('#comm-text').val(); } pUserUid = $(e).attr('data-puserid')*1; if(pUserUid == 0) { alert('puserId is empty!') if(after != null) { after() } return } if(content == '') { alert('comment is empty!') if(after != null) { after() } return } localStorage.comment_cache = content; let that = $(e); $.ajax({ type: "post", url: '/api/comments.php', async:true, data: { pid:pid, ppid:ppid, p_user_uid:pUserUid, action:'add', articleid:articleid, chapterid:chapterid, content:content }, xhrFields: { withCredentials: true }, crossDomain: true, dataType: "json", success: function(res) { if(res.code == 403) { window.location.replace('/login'); return } if (res.code == 0) { $('#comm-text').val(''); getList(true); }else{ alert(res.msg) } if(after != null) { after() } localStorage.comment_cache = ''; }, error: function(){ if(after != null) { after() } localStorage.comment_cache = ''; } }) } let agree_ing = false; $('.comment-list').on('click','.agree-click',function(){ if(agree_ing){ return } agree_ing = true; let commid = $(this).attr('data-commid'); if(commid <= 0) { alert('commid is empty!') agree_ing = false; return } let articleid = $(this).attr('data-articleid'); if(articleid <= 0) { alert('articleid is empty!') agree_ing = false; return } let isOn = true; let action = 'addArgee'; if($(this).find('.glyphicon').is('.glyphicon-heart')) { isOn = false; action = 'delArgee'; } let that = $(this); $.ajax({ type: "post", url: '/api/comments.php', data: { action:action, commid:commid, articleid:articleid }, xhrFields: { withCredentials: true }, crossDomain: true, dataType: "json", success: function(res) { if(res.code == 403) { window.location.replace('/login'); return } if (res.code == 0) { if(isOn){ that.find('.glyphicon').addClass('glyphicon-heart') that.find('.glyphicon').removeClass('glyphicon-thumbs-up') that.find('.argee_num').html(that.find('.argee_num').html()*1 + 1) }else{ that.find('.glyphicon').addClass('glyphicon-thumbs-up') that.find('.glyphicon').removeClass('glyphicon-heart') that.find('.argee_num').html(that.find('.argee_num').html()*1 - 1) } }else{ alert(res.msg) } agree_ing = false; }, error: function(){ agree_ing = false; } }) }) $('.comment-list').on('click','#delbut',function(){ var res = confirm('Do you want to remove this comment?'); if (!res) { return } if($(this).is('.run_ing')){ return } $(this).addClass('run_ing'); let commid = $(this).attr('data-commid'); if(commid <= 0) { alert('commid is empty!') return } let articleid = $(this).attr('data-articleid'); if(articleid <= 0) { alert('articleid is empty!') return } let that = $(this); $.ajax({ type: "post", url: '/api/comments.php', data: { action:'del', commid:commid, articleid:articleid }, xhrFields: { withCredentials: true }, crossDomain: true, dataType: "json", success: function(res) { that.removeClass('run_ing'); if(res.code == 403) { window.location.replace('/login'); return } if (res.code == 0) { getList(true); }else{ alert(res.msg) } }, error: function(){ that.removeClass('run_ing'); } }) }) let orderIng = false; $('.order-box').click(function(){ if(orderIng){ return } orderIng = true let boxs = document.querySelectorAll('.order-box') for(const box of boxs) { if (box === this) { box.classList.add('selected') }else { box.classList.remove('selected') } } let od = $(this).attr('data-sort'); this.classList.add('selected'); getList(true,od); orderIng = false; }) $('.vcode').click(function(){ $('.vcode').attr('src',"/api/vcode.php?t="+Math.random()); }) $('.load-comment').click(function(){ if($(this).hasClass('btn-loading') || $(this).hasClass('loaded-all')) { return; } getList(); }) let firstLoad = false; $('.showcomment').click(function(){ let container = document.querySelector('#e-comments') if(!container)return; if (container.style.display === "none") { if(!firstLoad) { firstLoad = true getList(); } container.style.display = ""; } else { container.style.display = "none"; } }) getcount(); }) function getcount() { $.ajax({ type: "post", url: '/api/comments.php', data: { action:'count', articleid:articleid, chapterid:chapterid, }, xhrFields: { withCredentials: true }, crossDomain: true, dataType: "json", success: function(res) { if(res.code == 403) { window.location.replace('/login'); return; } if (res.code == 0) { $('#total-tomm').html(res.data.total); $('#total-tomm2').html(res.data.total); } else { alert(res.msg); $btnText.text('Load More Comments'); } }, error: function(){ } }); } function getList(reLoad, order) { var $btn = $('.load-comment'); var $btnText = $btn.find('.btn-text'); if(reLoad !== true) { $btn.addClass('btn-loading').prop('disabled', true); $btn.find('.load-icon').removeClass('glyphicon-plus-sign').addClass('glyphicon-refresh spin'); $btnText.text('Loading...'); } if(reLoad === true){ page = 1; } $.ajax({ type: "post", url: '/api/comments.php', data: { action:'list', articleid:articleid, chapterid:chapterid, order:order, page:page }, xhrFields: { withCredentials: true }, crossDomain: true, dataType: "json", success: function(res) { $btn.removeClass('btn-loading').prop('disabled', false); $btn.find('.load-icon').removeClass('glyphicon-refresh spin').addClass('glyphicon-plus-sign'); if(res.code == 403) { window.location.replace('/login'); return; } if (res.code == 0) { page++; if(reLoad === true){ $('.comment-list').html(''); } res.data.data_list.forEach(function(v,i){ let con = getCommLi({ uid:v.user_info.uid, userName:v.user_info.nickname, headPic:v.user_info.picture, level:v.user_info.level, adv_exp:v.user_info.adv_exp, content:v.content, addTime:v.created_at, agree:v.agree, myAagree:v.my_agree, atricleid:v.article_id, commid:v.id, child:v.child, }); $('.comment-list').append(con); }); // 新增判断:如果总评论数不超过一页数量,或者已经加载完且只有一页 if(res.data.total <= res.data.data_list.length || (res.data.is_end && page <= 2)) { $btn.hide(); // 直接隐藏整个按钮 } else if(res.data.is_end) { $btn.show() .find('.load-icon').removeClass('glyphicon-plus-sign').addClass('glyphicon-ok'); $btnText.text('All Comments Loaded'); $btn.addClass('loaded-all'); } else { $btn.show() .find('.load-icon').removeClass('glyphicon-ok').addClass('glyphicon-plus-sign'); $btnText.text('Load More Comments'); $btn.removeClass('loaded-all'); } $('#total-tomm').html(res.data.total); $('#total-tomm2').html(res.data.total); } else { alert(res.msg); $btnText.text('Load More Comments'); } }, error: function(){ $btn.removeClass('btn-loading').prop('disabled', false) .find('.load-icon').removeClass('glyphicon-refresh spin').addClass('glyphicon-plus-sign'); $btn.find('.btn-text').text('Load More Comments'); alert('Failed to load comments. Please try again.'); } }); } function getCommLi(opt){ let uid = opt['uid']; let child = opt['child']; let userName = opt['userName']; let headPic = opt['headPic']; let level = opt['level']; let advExp = opt['adv_exp']*1; let content = opt['content']; let addTime = opt['addTime']; let agree = opt['agree']; let myAagree = opt['myAagree']; let articleId = opt['atricleid']; let commId = opt['commid']; let nowUid = 0; let agOn = ' <span class="glyphicon glyphicon-thumbs-up"></span>'; if(myAagree){ agOn = '<span class="glyphicon glyphicon-heart"></span>'; } let del = `<button class="e-reply flex-center color3 delate" id="delbut" data-articleid="`+articleId+`" data-commid="`+commId+`"><span class="glyphicon glyphicon-trash" style="top: 0"></span></button>`; if(uid != nowUid) { del = ''; } let showAll = `<button class="e-show-more-re" id="showButton" onclick="showMoreReplies(this)"><span class="glyphicon glyphicon-eye-open"></span> Show More Replies</button> <button class="e-show-more-re" style="display:none;" id="showButton" onclick="showMoreReplies(this)"><span class="glyphicon glyphicon-eye-close"></span> Close Replies</button>` if(child == null || child.length <= 1) { showAll = ''; } let childHtml = ''; if (child != null && child.length >0) { child.forEach(function(v,i){ var childAgOn = ' <span class="glyphicon glyphicon-thumbs-up"></span>'; if(v.my_agree){ childAgOn = '<span class="glyphicon glyphicon-heart"></span>'; } var attr = 'id="reply-item" style="display: none;"'; if (i == 0) { attr = ''; } let childDel = `<button class="e-reply flex-center color3 delate" id="delbut" data-articleid="`+v.article_id+`" data-commid="`+v.id+`"> <span class="glyphicon glyphicon-trash" style="top: 0"></span> </button>`; if(v.user_info.uid != nowUid) { childDel = ''; } let vipLogColor = ''; if((new Date()).getSeconds() > v.user_info.adv_exp) { vipLogColor = 'style="filter: grayscale(100%);"'; } let vipLog = ` <img `+vipLogColor+` class="comment-child-vip-level-image" src="/static/novpub/images/vip`+v.user_info.level+`.webp">`; if(v.user_info.level == 0) { vipLog = ''; } let pvipLogColor = ''; if((new Date()).getSeconds() > v.p_user_info.adv_exp) { pvipLogColor = 'style="filter: grayscale(100%);"'; } let pvipLog = ` <img `+pvipLogColor+` class="comment-child-vip-level-image" src="/static/novpub/images/vip`+v.p_user_info.level+`.webp">`; if(v.p_user_info.level == 0) { pvipLog = ''; } childHtml += ` <div class="flex-row e-comment-item" `+attr+`> <img class="e-avatar" src="`+v.user_info.picture+`" alt=""> <div class="flex-col" style="flex-grow: 1;gap: 8px;"> <div class="flex-row justify-between e-username"> <span class="color1" style="flex-shrink: 1;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;"> <span style="flex-shrink: 1">`+v.user_info.nickname+vipLog+`</span> <span style="flex-shrink: 1" class="color3 glyphicon glyphicon-share-alt"></span> <span style="flex-shrink: 1" class="color3">`+v.p_user_info.nickname+pvipLog+`</span> </span> <div class="color2 f14 main-color-hs agree-click" data-articleid="`+v.article_id+`" data-commid="`+v.id+`"> `+childAgOn+` <span class="argee_num">`+v.agree+`</span> </div> </div> <div class="e-comment">`+v.content+`</div> <div class="flex-row justify-between"> <div class="color3 f14">`+v.created_at+`</div> `+childDel+` <div style="flex-grow: 1"></div> <button class="e-reply reply-btn" onclick="if (!window.__cfRLUnblockHandlers) return false; switchDisplayNone(this)"> <span class="glyphicon glyphicon-comment"></span> Reply </button> </div> <div class="flex-col" style="align-items: end; gap: 8px; display: none;"> <textarea placeholder="Share your thoughts." class="e-edit comm-text" rows="5"></textarea> <button class="e-show-more comment-submit child" data-puserid="`+v.user_info.uid +`" data-pid="`+v.id +`" data-ppid="`+v.ppid +`"><span class="glyphicon glyphicon-circle-arrow-up"></span> Submit</button> </div> </div> </div>`; }) } if(childHtml != '') { childHtml += showAll; } let vipLogColor = ''; if((new Date()).getSeconds() > advExp) { vipLogColor = 'style="filter: grayscale(100%);"'; } let vipLog = ` <img `+vipLogColor+` class="comment-vip-level-image" src="/static/novpub/images/vip`+level+`.webp">`; if(level == 0) { vipLog = ''; } let commHtml = `<div class="flex-col e-border-bottom w100"> <div class="flex-row e-comment-item w100"> <img class="e-avatar" src="`+headPic+`" alt=""> <div class="flex-col" style="flex-grow: 1;gap: 8px;width:calc(100% - 48px"> <!-- 用户名 and 点赞 --> <div class="flex-row justify-between e-username"> <div class="color1"> <span style="display: inline-block;">`+userName+vipLog+`</span> </div> <div class="color2 f14 main-color-hs agree-click" data-articleid="`+articleId+`" data-commid="`+commId+`"> `+agOn+` <span class="argee_num">`+agree+`</span> </div> </div> <div class="e-comment w100">`+content+`</div> <div class="flex-row justify-between"> <div class="color3 f14">`+addTime+`</div> `+del+` <div style="flex-grow: 1"></div> <button class="e-reply reply-btn" onclick="if (!window.__cfRLUnblockHandlers) return false; switchDisplayNone(this)"> <span class="glyphicon glyphicon-comment"></span> Reply </button> </div> <!-- textarea --> <div class="flex-col" style="align-items: end; gap: 8px; display: none;"> <textarea placeholder="Share your thoughts." class="e-edit comm-text" rows="5"></textarea> <button class="e-show-more comment-submit child" data-puserid="`+uid +`" data-pid="`+commId +`" data-ppid="`+commId +`"><span class="glyphicon glyphicon-circle-arrow-up"></span> Submit</button> </div> </div> </div> <div class="flex-col" style="padding-left: 1em;"> `+childHtml +` </div> </div>`; return commHtml; } function showMoreReplies(element) { let parent = element.parentElement; if (!parent) return; parent.querySelectorAll("& > #reply-item").forEach((item, index) => { if (item.style.display === "none") { item.style.display = ""; } else { item.style.display = "none"; } }); parent.querySelectorAll("& > #showButton").forEach((item, index) => { if (item.style.display === "none") { item.style.display = ""; } else { item.style.display = "none"; } }); } </script> </div> </div> </div> <!-- Floating Button --> <div class="float-container flex-row align-center speak-float-btn" style="display:none;"> <button class="control-btn flex-center glyphicon glyphicon-play speak-switch-fl" style="top: 0;vertical-align: baseline;"> </button> <button class="control-btn flex-center glyphicon glyphicon-stop speak-close-fl" style="top: 0;vertical-align: baseline;"> </button> </div> <a href="javascript:;" id="goTop"> <span class="glyphicon glyphicon-circle-arrow-up"></span> </a> </div> <script src="/static/novpub/js/reader.js?v=1.14"></script> <script src="/static/novpub/js/jquery.cookie.min.js"></script> <script src="/static/novpub/js/speak.js?v=1.0.70"></script> <script src="/static/novpub/js/bookcase.js?v=1.1.3"></script> <script> $('.ul-list7 li .a1').click(function() { $(this).stop().hide().siblings('.catalog').stop().show(); $.ajax({ type: "post", url: "/api/chapterlist.php", data: { aid: '5907', acode: 'reincarnated-to-evolve-my-bee-empire', cid: '10' }, success: function(data) { $('.catalog > select').html(data.html) }, dataType: "json" }) }); </script> <script> $(function() { // Define a configuration object const bookCaseConf = { attrArticleid:'data-articleid', attrChapterid:'data-chapterid', parentSelecter:'body', selecter:'.set-case', selectedClass:'.on', delUrl:'/api/delbookcase.php', addUrl:'/api/addbookcase.php', delCallback: function(e,res) { if(res.code == 0) { let htmlContent = `<span class="glyphicon glyphicon-plus"></span> Add to Library`; e.removeClass('on'); e.html(htmlContent); }else{ let htmlContent = `<span class="glyphicon glyphicon-ok"></span> In Library`; e.addClass('on'); e.html(htmlContent); alert(res.msg); } }, addCallback: function(e,res){ if(res.code == 0) { let htmlContent = `<span class="glyphicon glyphicon-ok"></span> In Library`; e.addClass('on'); e.html(htmlContent); }else{ let htmlContent = `<span class="glyphicon glyphicon-plus"></span> Add to Library`; e.removeClass('on'); e.html(htmlContent); alert(res.msg); } }, selecterBef: function(e){ let loadcontent = '<span class="glyphicon glyphicon-refresh spin"></span> Loading...'; // 设置加载状态 $(e).addClass('btn-loading').prop('disabled', true); $(e).html(loadcontent); }, selecterAft: function(e){ $(e).removeClass('btn-loading').prop('disabled', false); }, } let bookCase = new BookCase(bookCaseConf) }) </script> <script> document.onkeydown = (event) => { // input or textarea if (event.target.nodeName === 'TEXTAREA' || event.target.nodeName === 'INPUT') return; if (event.keyCode == 65 || event.keyCode==37) window.location = document.querySelector('#prev_url').attributes.href.value; if (event.keyCode == 68 || event.keyCode==39) window.location = document.querySelector('#next_url').attributes.href.value; if (event.keyCode == 13) window.location = '/nov/reincarnated-to-evolve-my-bee-empire'; } </script> <script> const btnBuyChapter = document.getElementById('btn-buy-chapter'); if (btnBuyChapter) { btnBuyChapter.addEventListener('click', async function () { document.querySelector('#btn-buy-chapter').innerText = 'Unlocking...'; let articleid = '5907'; let chapterid = '3213864'; $.ajax({ type: "post", url: '/api/sub.php', data: { articleid:articleid, chapterid:chapterid, chapterorder:'10', uri:'/nov/reincarnated-to-evolve-my-bee-empire/chapter-10', }, dataType: "json", success: function(res) { console.log(res) if(res.code == 403) { window.location.replace('/login'); return; } if (res.code == 0) { document.querySelector('#article').innerHTML = res.data; var unlockButtons = document.querySelector('.unlock-buttons'); if (unlockButtons) { unlockButtons.remove(); } return; } if(res.code = 400) { // window.location.href = '/goods'; }else{ alert(result.message || 'Something went wrong. Please try again.'); } }, error: function(){ alert('An error occurred while unlocking the chapter. Please try again later.'); } }); }); } </script> <div class="footer"> <div class="wp"> <div class="ll"> <a href="/" title="NOVPUB">NovPub.Com</a><br>Read Books Online Free & Free Web Novel Online </div> <div class="rr"> <a href="/contact" title="Contact us">Contact</a> - <a href="/sitemap.xml" title="Sitemap" target="_blank">Sitemap</a> <br><a href="/privacypolicy" title="Privacy Policy"> Privacy Policy</a> & <a href="/termsofuse" title="Terms of use"> Terms of use</a> </div> </div> </div> <!-- log in --> <div id="login" class="e-login-wrapper flex-row justify-center align-center" style="z-index: 1000;position: fixed;left: 0;top: 0;right: 0;bottom: 0;display: none"> <div class="flex-col e-login-container"> <div onclick="loginPopups()" class="flex-row color1 justify-end" style="position: absolute;top: 5%;right: 5%"> <span class="glyphicon glyphicon-remove" style="cursor: pointer;"></span> </div> <div class="flex-row color1 f24">Welcome to NovPub</div> <div class="color2" style="text-align: center;font-size: 16px;">Create or log into your account to access terrific novels and protect your data.</div> <div class="e-login-button" style="position:relative;"> <img style="position: absolute" src="/static/novpub/images/Google.png" alt=""> <a href="/login"><div>Log in with Google</div></a> </div> <div style="text-align: center;"> <span class="color2">Don’t Have an account? Click above to create an account.</span> <!--<a href="#" style="color: var(--main-color)">Sign up with your email address.</a>--> </div> <div> <a href="/termsofuse" style="color: var(--main-color)">Terms of Service</a> <span>/</span> <a href="/privacypolicy" style="color: var(--main-color)">Privacy Policy</a> </div> </div> </div> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-2P3TQ9PYTY"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-2P3TQ9PYTY'); </script><script> // Login pop-up window function loginPopups() { let login = document.querySelector('#login') if (login.style.display !== 'none') login.style.display = 'none' else login.style.display = '' } </script> </body></html>