SCP Foundation Secure, Contain, Protect About About Us Site Rules FAQ Licensing Criticism Policy Article Deletions Community Site News IRC Chat Authors' Pages Artist Directory Contest Archive Staff List Resources Guides Essays & Resources Wiki Syntax Sandbox Usertools Sister Sites SCP International Wanderer's Library Contact Us ≡ About About Us Site Rules FAQ Licensing Criticism Policy Article Deletions Contact Staff Community Site News IRC Chat Authors' Pages Artist Directory Contest Archive Staff List Resources Guides Search this site Search • ◦ ◦ ◦ ◦ ◦ ◦ • ◦ ◦ ◦ ◦ ◦ ◦ • ◦ ◦ ◦ ◦ ◦ • ◦ ◦ • • ◦ ◦ ◦ ◦ ◦ ◦ ◦ • ◦ ◦ ◦ ◦ ◦ ◦ • ◦ Essays & Resources Wiki Syntax Sandbox Usertools Sister Sites SCP International Wanderer's Library Create account or Sign in Getting Started Guide for Newcomers Join the Site Contribute | FAQ Universe Hub Main | Forum SCP by Series I | II | III | IV | V VI | VII | VIII | IX Other SCP Explained | Joke International Feed New Pages Shortest | Top Rated Recent Changes New Forum Posts Lowest Rated Pages Stories Tales Hub | Series Groups of Interest GoI Formats Canon Hub Discovery Artwork Hub Curated Lists Curated Tale Series Tag Search Random SCP | Tale | GOI | Art Random Page ◦ ◦ ◦ ◦ • ◦ ◦ SCP-8335 //In which a plague of bs rises over the SCP Wiki.
rating: +47+–x esreil's four SCP-8335 By authors: J_V_G Esreil IndustryStandard Alzin Cdag | More by this author other authors' existing works included in this article: scp-8102 by Monkeysky scp-426 by Flah scp-6430 by S D Locke scp-2565 by Taffeta scp-2602 by Communism will win The Bee-Boy's Song, by Rudyard Kipling ACCESSIBILITY MODE Item #: 8335|0 Object Class: Thaumeli Research Head: Dr. Guy Jenrick Special Containment Procedures: All known SCP-8335 collectives have been relocated to Textual-biological Containers (TbCs) to allow for further maintenance of the hive collectives without risk of failure or mass proliferation. To ensure the safety of hives, TbCs are not to come in contact with untreated external textual materials, nor are TbCs to be removed from their cells for any reason.
Hive @lpha is to be contained within the SCP-8335 file. The SCP-8335 file is to be stored on an airgapped TbC. All informational entry and exit from the SCP-8335 file is to be filtered by Aristaeus.aic, in order to preserve the integrity of Hive @lpha and limit the possibility of hostile textual-biological entities initiating a WK-Class 'Death of the Author' scenario.1 Hive @lpha is to be regularly maintained, with excess textual-flora pruned at frequent intervals and the overall health of Hive @lpha detailed weekly.
As per the protocols of Project 'Memedovukha', upon Hive @lpha generating an instance of SCP-8335-A, that instance is to be isolated and relocated to the TbC corresponding with the scheduled descending priority memetic target.
Description: SCP-8335 is a species of sentient textual organisms resembling a highly simplified form of Apis mellifera,2 that is capable of inhabiting all forms of • written text. Instances live in hive communities centralized on specific documents.
At present, all known hives are under foundation control.
The primary actors within a SCP-8335 hive are SCP-8335-b "Worker" class characters, represented by "b". Within an active hive, instances will interact with compatible characters and the designated hive node to produce SCP-8335-C "Nourishment" class characters, represented by "h". A sufficient stockpile of SCP-8335-C will allow for the incubation of an SCP-8335-A "Regent" class character, represented by "q". For comprehensive documentation of compatible characters, see the table located at the bottom of the description.
Upon the emergence of a new Regent class character, the hive will initiate a swarm event. During this event, the new Regent will gather a small number of Worker class characters with whom it will transpose intertextually, proliferating to a new document. Though Regent swarms have been identified crossing large physical distances instantaneously during these events, they most commonly infest documents containing either a similar locus of information to the base of the original hive, or information pertaining to the SCP-8335 species itself.
Key Class Function b Worker Primary actors in hive. Collect Resource from Flowers and miscellaneous characters from across the document.
h Nourishment Created using Resource and stored within Hive node.
q Regent Necessary for anomalous function. Activates new Worker characters. Incubated once quantity of stored Nourishment exceeds 8335.
# Hive Central interaction node. Contains active Regent.
p d Resource Converted to Nourishment in Hive.
X ¥ @ g Flower Interaction point where Workers extract Resource. May multiply if exposed to Resource from other Flowers.
$ Smoke Eliminates anomalous activity temporarily.
J Collection Can be manipulated to interact with Hive or free Nourishment characters to remove Nourishment from document.
Discovery and History: SCP-8335 was discovered within the literary collection of Raymond l'Emile. Raymond l'Emile was a known associate of the defunct GoI The High Men of Orp Terra, a group of hobbyist thaumaturgical apiarists who appear to have disbanded suddenly around the time of the outbreak of the First World War.
The Foundation acquired the collection during a sting operation carried out by MTF Mu-43 'Honey Trappers' on a suspected Marshall, Carter, and Dark affiliate on 1/6/1946. By the time the Foundation became aware of the presence of SCP-8335 within the collection, it had established extensive colonies in almost all of the collected works. A thorough operation to comb through the texts for actionable material was conducted, but the majority of the texts proved illegible.
On 6/1/1994, a re-evaluation of the recovered material was performed with the aid of previously unavailable digital analysis tools by Dr. Guy Jenrick of the Department of History. While much of the collection remained too damaged to interpret, the following passages relevant to the origins of SCP-8335 were recovered from the personal journals of Raymond l'Emile.
The Seve[…] March, Ninetee[…] Mister Koschevnikov, dear that he is, brought to us a new Yeoman, looking to obtain the Freedom of The City with the Company, at our meeting at The Three Candles last night. A peculiar little Teutonic gentleman by the name of Honig Bienenstock.
By his own admission, he has some history in the arts of cryptomancy, and proposed to Koschevnikov a manner of working to ensorcell the very letters on a page to live and work, as if they were the industrious fellows we owe our passions and livelihood to.
Most intrigued by such a queer novelty, I encouraged my Roy to invite the good man posthaste to join us at the company hall as soon as he is able.
The Ni[…] Apr[…] I confess, it was not until Bienenstock scraped it from the page and glazed it upon a fine slice of toasted rye that I had even considered that these keímenopterids could produce edible honey. A drop of amber nectar busied from the very words of Trattato sulla cognizione, enticing and sweet.
It was at once the most delectable and confounding thing I have ever tasted. The floral notes deepened by the chorus of linguistic flourishes upon the tongue. To savour a word is an intoxicating thing indeed, I fear I lack the poetic soul to do justice to such an experience.
Mister Koschevnikov and I have hastened to induct Mister Bienenstock into the ranks of our High Men with a great expediancy. It is imperative that we acquire more, and the means to make it. I am overcome with an unbearable need to taste the sweetness of a sonnet, by ear and by tongue, with my Roy Mister Koschevnikov on a warm summer evening.
[…]eth of April, […] Mister Koschevnekov surprised us with quite the spread at the Three Candles, a veritable smorgasbord as Mister Mjödson put it, and fine vintages they were. What a delightful man our Mister Koschevnekov, and what a delightful evening. I shall include below the experience of each honey, to the best of my limited hand.
A reintroduction to the floral melody of the Trattato sulla cognizione, as fragrant and enticing as I remember.
Following such a familiar yet intoxicating flavour, I saw fit to sample the rustic and almost earthy tones born of the Canterbury Tales. It served well to cleanse my palate, but certainly did not ignite any great passion within me. An acquired taste perhaps, as Earl Chandler seemed particularly infatuated with it.
Seeking something a little more unusual, I turned to a product of our dear Roy's mother country, by his account it is a deeply controversial opera called Victory Over the Sun. I confess I could make neither heads nor tails of the text itself, perhaps I shall entreat Mister Koschevnekov to explain it to me at a later date. But the honey, good heavens the honey. Electrifying, it is the only word for it. The flavour of thrumming energy and coursing motion. It was like tasting the very essence of the future.
A curious sort of aroma emanated from my next choice, a woody note perhaps, but with a certain dark tinge to it. The taste was almost indescribable. A thrilling edge, but with a haunting tone that lingered on the tongue long afterwards. If it tastes this exciting, I shall certainly have to read this Dracula.
But I saved the finest until last, I had been eyeing it since the events of the evening had been unveiled. Honeyed from a copy of Wordsworth's The Prelude, the aroma was beyond my limited pen to convey. The essence of a man, his life and labours, so expertly crafted into verse, crystallized into an incomparably divine spread of amber. It tasted, I confess, of a kin with the feeling that rises in my chest to hear my dearest Roy laugh. I think, perhaps, it is good that I lack that poet's soul, if I did then the sight of his face as he tasted the honey of my craft would be the final note my heart could handle.
[…]mber, Nin[…] Roy has taken receipt of a most troublesome tome. 'Twas apparently concocted by Bienenstock's cryptomantic compatriots, and contains many a comprehensively confounding and confuddling quip and quirk of querolous quandary.
While the wily work of warped and weirdsome words weighs upon my wearisome cerebrum, Koschevnikov's close consideration of commensurate courses proposed the possibility of populating the pages with the peculiar pollinators we have grown so incandescently infatuated with.
The subsequent concoction tickles and teases the tongue with a delightful dance of delectable dining experiences. Enamoured with the experience, I have entreated my dearest Koschevnikov to make merry again. Maychance I shall remodel the reading room, a rightful recepticle for our rapturous recreations and melifluous mellifera.
The Twentieth […]er, N[…]een.
I find with each sting of honeyed words, the confounding consequences of the Teutonic tome fade a little further. Alas, it seems, so too does the enrapturing ecstasy of prior stings fade, and so I have taken to larger servings with my tea.
My dear Koschevnikov it seems has become similarly afflicted, though I fear he has found fit to engage in a more extensive relationship with our favoured friends.
He makes time to converse at the Candles less and less as the weeks of autumn wear on. I ensure my schedule is free to receive him at any evening, but I worry perhaps my postings are not being delivered as replies have grown infrequent.
[…]teenth of […]ber, Ni[…]rteen.
It has been, I believe, at least a fortnight since I last received a correspondence from my Roy, and I will confess that I am growing concerned. In the years I have known his sweet soul, this is far from the first time we have gone so long without speaking, but there is a different timbre to the silence this time. I hope that is a sign of my advancing age, a creeping of paranoia at the corners of my thinking. I pray it is.
I seem to be struggling more than usual to find the words to put to page. Perhaps my Roy is feeling the same, and that is why I have not heard from him.
I suppose I could speculate all night and be no closer to the truth, I shall endeavour to make a pilgrimage to his place of rest on the morrow and put these worries to bed. I hope that is not presumptive of me.
I arrived this morning at the estate of Mister Koschevnikov. I do not have the words, and I fear it uncouth of me to describe his condition. Oh Roy, oh Roy, the sweet sight of you turned so sour in my heart. I wish I could have done more. I should have done more. I shall never clear the stain from my soul.
Before the current developments, Dr. A. P. Oidea believed the symptoms were commensurate with a certain confusion of the bodily defenses. "Allergy" was the word I believe he used. Now he stares, dumb as the rest of us, at the chimeric corpse. It is all such a blur to me, I confess my mind simply cannot accept the things I know to be true. I cannot bear to think of it longer, the visage of my dearest's face so silent awaits me with every timorous blink.
I have reclaimed the volumes of his personal libapiaries. Perhaps to remember him by. Perhaps to drown myself in sweet sorrows.
Following this transcription, the body of Roy Koschevnikov was exhumed and its DNA sequenced. Foreign genetic material was found interpolated between the human nucleotides.
The work detailing the method of creating SCP-8335 was among those affected by the infestation. However, l'Emile had left a wax-sealed note detailing the procedure for introducing 'smoke' to a colony in order to pacify 8335 instances. This discovery allowed initial researchers to prevent further proliferation of the contained colonies.
Initial containment procedures called for affected works to be 'smoke' sealed, but regular containment checks revealed that a number of the colonies had become inert, unable to be woken up. As a result, updated containment procedures were introduced, only permitting 'smoking' as a countermeasure to breaches, with SCP-8335 affected works being sealed in standard containment lockers.
After a series of containment breaches in the early 1970s, resulting in the total loss of several textual anomalies, authorisation was granted to the Hymenoptera Incarceration and Virtualization Endeavour. The goal of the project was to convert the extant SCP-8335 colonies into a format that could be more readily contained and observed, while reducing the risk of breaches threatening high priority textual anomalies. The resulting device, dubbed the Anomalous Paratextual Relocation Engine (or APRE), enabled the foundation to upload the colonies currently in containment to TbCs. The current containment procedures were drafted in conjunction with the Endeavour, and have reduced breach events by 16.46%.
Addendum: Project 'Memedovukha' Informed by l'Emile's experience with 'honey', Dr. Jenrick proposed that, when 'harvested' from a text with memetic effects, SCP-8335 will impart some measure of resistance to those same memetic effects. He subsequently submitted a research proposal to investigate the extent and field applicability of this effect.
On 6/1/2004, Project 'Memedovukha' was authorised to research the apparent memetic inoculation effect imparted by SCP-8335-C.
Phase 1 - Extraction: Initial trials were performed by 'smoking' the infected page, and then scraping the 'hive' character with a laboratory spatula, a slow and tedious process that was swiftly deemed unsuitable for the long term needs of the project.
While experimentation with a heavily modified radial honey extractor significantly improved per-hour outputs of usable SCP-8335-C, further refinement of the system was abandoned due to an unsustainably high rate of hive extinctions.
Ultimately, building on the extant functions of the APREs used in containment and transport, a specialised application was developed, officially dubbed Jar_Muzen.cab. The application functions in a three part process, draining the 'hive' character, relocating the drained 8335-C instances to a blank page, and automatically printing the resulting file. Upon printing, processing of the printed material is handled by Aristaeus.aic in order to minimise the risk of memetic cross- contamination. The Jar_Muzen.cab procedure passed all efficiency benchmarks with regards to production quantity and hive retention rates, and the project was cleared to enter Phase 2.
Phase 2 - Refinement: Based on the information retrieved from the journals of Raymond l'Emile, a risk of melinaphylaxis and subsequent Melinadelian interpolation presents at higher doses or prolonged usage of 8335-C, and so a method for increasing potency without accompanying risk of allergic reaction was deemed necessary.
Chemical analyses of 8335-C revealed a primary composition of keímenosaccharides,3. Derived from this understanding, a process of fermentation through the introduction of a thaumaturgically enhanced brewer's yeast classified as verbumyces medo was devised. The resultant syllavylcarbinol4 proved to retain the inoculative effect of 8335-C, while dramatically decreasing cases of melinaphylaxis during animal trials. Further refinement of the process brought lethality rates below target rates, and Phase 3 was authorised.
Phase 3 - Human Testing: Phase 3 of Project 'Memedovukha' is currently ongoing, and is focused on human trials of the completed Class-b targeted memeadic inoculant. The primary goal is to demonstrate the safety and efficacy in protecting researchers and field agents from a selected group of memetic hazards.
Included within this page is an APRE window, which will allow transfer of incubated SCP-8335-A instances from the Hive @lpha page to a locally hosted copy of the articles detailing the selected hazards.
Once each page has been swarmed, an initial batch of Class-b inoculant will be produced to perform a double-blind study in order to prove its effectiveness and viability for field deployment.
Footnotes 1. As per directive from the Pataphysics Department.
2. Binomial name of the European Honey Bee.
3. A semantic sugar analogue 4. A semantic alcohol analogue <!doctype html> <html> <head> <style> @import url('https://d3g0gp89917ko0.cloudfront.net/v--edac79f846ba/common- @import url('https://cdn.scpwiki.com/theme/en/sigma/css/sigma.min.css'); @import url('https://scp-wiki.wikidot.com//local--code/theme:raisa-sigma/1 @import url('https://scp-wiki.wikidot.com//local--code/component:betterfoo div.warning-box { position: relative; height: 15rem; } div.warning-box span { word-break: break-word; } div.warning-box div.warning-box-container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; height: 93%; } div.warning-box div.text-top, div.warning-box div.text-bottom, div.warning-box div.text-number { width: 100%; display: block; justify-content: center; text-align: center; } div.warning-box div.text-top { --wght: 900; font-size: 2em; line-height: 1; margin-bottom: 0.2em; font-weight: 900; } div.warning-box div.text-bottom { font-size: 1.25em; line-height: 1; margin: 0 auto; } div.warning-box div.text-number { font-size: 1.5em; position: absolute; bottom: 2.8em; font-weight: 900; color: green; } div.warning-box div.image-bg { position: absolute; background: url(https://scp-wiki.wikidot.com/local--files/component:ob background: url(https://scp-wiki.wikidot.com/local--files/component:ob -webkit-background-size: contain; background-size: contain; background-repeat: no-repeat; background-position: center center; top: 3px; width: 100%; height: 15rem; z-index: 0; opacity: 0.15; } @media only screen and (max-width: 768px) { div.warning-box div.text-top { font-size: 1.75em; } div.warning-box div.text-bottom { font-size: 1.15em; } } .idle{ margin:auto; animation-duration:2s; animation-name:idle; animation-iteration-count: infinite; animation-direction:alternate; } .smokeStage1{ margin:auto; animation-duration:5s; animation-name:smoke1; animation-iteration-count: 1; animation-direction:normal; } .smokeStage2{ animation-duration:5s; animation-name:smoke2; animation-iteration-count: 1; animation-direction:normal; } @keyframes smoke1 { 0% {transform: scale(100%, 100%); opacity:100%;} 100% {transform: scale(600%, 600%); opacity: 0%; display:none;} } @keyframes smoke2 { 0% {transform:translateX(0px) transform:translateY(0px) scale(100%,100%) 100% {transform:translateY(-400px) translateX(-400px) scale(800%,800%); } @keyframes idle { 0%{transform:rotate(-20deg);} 100%{transform:rotate(20deg);} } .bee { float: left; clear: none; white-space:break-spaces; max-width:8px; max-height:4px; } .beeHolder { float: left; clear: none; white-space:break-spaces; min-width:9px; margin-top: 1px; margin-bottom: 1px; } .newDocBeeBase { position: relative; left:60px; height:10px; } .otherText { float: left; clear: none; margin-top: 1px; margin-bottom: 1px; white-space:break-spaces; } .bt { float: left; clear: none; margin-bottom: 1px; margin-top: 1px; white-space:break-spaces; } .flower { float: left; clear: none; white-space:break-spaces; margin-bottom: 1px; margin-top: 1px; } .hive { font-weight:bold; height:4px; max-height:4px; } .collectible { float: left; clear: none; white-space:break-spaces; } .collectibleHolder{ float: left; clear: none; white-space:break-spaces; min-width:7px; margin-top: 1px; margin-bottom: 1px; } .jar { float: left; clear: none; white-space:break-spaces; white-space:break-spaces; margin-bottom: 1px; margin-top: 1px; } .fnnum {counter-increment: megacount 1; margin-left: -.45em; margin-right: .fnnum::after {color: rgb(188, 145, 37)} .fnnum:hover {background-color: rgb(188, 145, 37)} .fncon::before {background-color: rgb(188, 145, 37)} .queen { float: left; clear: none; font-size: xxx-large; white-space:break-spaces; height: 60px; width: 40px; } .outerText { width:100%; overflow:hidden; } .queenCollector { overflow:visible; height:60px; } .queenCollectorHighlight { background-color: yellow; } .jarCollectorHighlight { background-color: yellow; } .queenBeingDragged { opacity:0%; } .floatingImage { height: 150px; width: 150px; position: fixed; top:50%; left:50%; margin-left:-75px; margin-top:-75px; border:solid black 3px; display:none; } br { clear:both; } td { max-width:400px; color: rgb(221, 221, 119); background-color: rgb(34, 34, 0); border: solid 1px rgb(170, 170, 85); padding: 0.3em 0.7em; } th { max-width:400px; font-weight:bold; text-align: center; color: rgb(224, 196, 71); background-color: rgb(34, 34, 0); border: solid 1px rgb(170, 170, 85); text-transform: uppercase; } table { border-collapse: collapse; margin: auto; color: rgb(221, 221, 119); background-color: rgb(34, 34, 0); border: solid 2px rgb(170, 170, 85); padding: 0.3em 0.7em; } .beeleasebox { background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w background-color: #d6c9698a; } .beequeenboxtext { background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w background-repeat:no-repeat; background-position: center; background-color: #d6c9698a; } @media only screen and (max-width: 600px) { .mobilefix { font-size: .5em; } .mobilefix2 { font-size: .25em; } .mobilefix3 { background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w background-repeat:no-repeat; background-position: center; background-color: #d6c9698a; } </style> </head> <body> <div style="border: solid 2px gray; overflow:hidden;"> <div style="width:auto; border: outset 4px silver; background: gray;paddin <div style="width:auto; height:30em; border: solid 3px #d1b40d; background <div style="width:auto; height: 28em; border: solid 3px #d1b40d; backgroun <img class="floatingImage" src = "https://scp-wiki.wdfiles.com/local--file <div id = "mobileScrollJarDiv" style="position:absolute; min-height:25px;m <div id="smokeTutorialHousing" style="display:block; width:100%; height:75 <button onclick="smokeFinal();">Skip tutorial</button><br> <div style="border:1px none #c2c0bc; background:#f3f3f38f;display:inline-b <div class="warning-box"> <div class="warning-box-container"> <div class="text-top"> <span>SMOKE PROCEDURE ACTIVE</span> </div> <div class="text-bottom" style="display:block;"> <span>File Status:</span> </div> </div> <div class="text-number"> <span>DOCILE </span> </div> <div class="image-bg"> </div> </div> </div> <br> <br> <div style="border:1px none #c2c0bc; background:#f7f5ed8f;display:inline-b Click "<div style="display:inline-block" id ="sm11" tabindex="0" onfocus=" </div> <br><br><br><div class="idle" id="smokeTutorial" tabindex="0" onfocus="s <div id="kipling" style="display:none"> <div style="border: 2px none #c2c0bc; background: #e1c45180; display: inli <div style="display:inline-block" id ="sm10" tabindex="0" onfocus="smokeCl </div> </br> </br> <br> <div style="border:1px none #c2c0bc; background:#f7f5ed8f;display:inline-b Bees! Bees! Hark to your bees!<br> <div style="display:inline-block;white-space-collapse:break-spaces;">'Hide But all that has happened, to us you must tell,<br> <div style="display:inline-block;white-space-collapse:break-spaces;">Or el tabindex="0" onfocus="smokeClick('sm2')" onclick="smokeClick('sm2')">$</d <br> A maiden in her glory,<br> Upon her wedding-day,<br> <div style="display:inline-block;white-space-collapse:break-spaces;">Must Or else they'll fly away.<br> Fly away—die away—<br> Dwindle down and leave you!<br> But if you don't deceive your Bees,<br> Your Bees will not deceive you.<br> <br> Marriage, birth or buryin',<br> <div style="display:inline-block;white-space-collapse:break-spaces;">News <div style="display:inline-block;white-space-collapse:break-spaces;">All y You must tell the Bees.<br> Tell 'em coming in an' out,<br> <div style="display:inline-block">Where the Fanner</div><div id ="sm6" sty <div style="display:inline-block">'Cau</div><div id ="sm7" style="display: tabindex="0" onfocus="smokeClick('sm7')" onclick="smokeClick('sm7')">$</d As curious as a man!<br> <br> Don't you wait where the trees are,<br> When the lightnings play,<br> Nor don't you hate where Bees are,<br> <div style="display:inline-block">Or el</div><div style="display:inline-bl tabindex="0" onfocus="smokeClick('sm9')" onclick="smokeClick('sm9')">$</d Pine away—dwine away—<br> Anything to leave you!<br> But if you never grieve your Bees,<br> Your Bees'll never grieve you.<br><br> <b> - <i>The Bee-Boy's Song</i>, Rudyard Kipling</b> </div> <br> <br> <div style="border:1px none #c2c0bc; background:#fadede;display:inline-blo <b>NOTE:</b> <i>All</i> smoke characters must be clicked to continue!
</div> </div> </div> <div id="finalSmoke" style="display:none"> <div style="text-align: center"> <div style="border:1px none #c2c0bc; background:#f3f3f38f;display:inline-b <div class="warning-box"> <div class="warning-box-container"> <div class="text-top"> <span>SMOKE FULLY DISPERSED</span> </div> <div class="text-bottom" style="display:block;"> <span>File Status:</span> </div> </div> <div class="text-number" style="color:grey"> <span>WAKING</span> </div> <div class="image-bg"> </div> </div> </div> <br> <br>fa <button style="background: #d6c9698a; color: #b69668; font-family: 'Oxaniu </div> </div> <div id="OutsideOfEverything" class="outerText" initialHoneyCount = "8330" <button onclick="addQueenSkip()">Skip to adding the queen</button> <div id="travellingSelectorBox" style="width:100%; border-bottom:2px dashe <div style="width:auto;font-family:'Oxanium';padding: 5px; border: solid 2 <div style="width:auto; border: solid 2px #939393; background: #e9e9e9; pa <div style="width: 70%;display:inline-block"> <div id = "linkBlock" style="width:100%; border: solid 2px #bcbcbc; backgr <label for="linkSelect" class="mobilefix">APRE Selector:</label></br> <select id="linkSelect" class="mobilefix" style="border:dotted 1px #ff <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; back <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba <option style="border:dotted 1px #ffd800; font-family: 'Oxanium'; ba </select> </br> <a id="fakeLink" style="color:DimGray;font-size:calc(0.35em + 1vw)" hr </div> </div> <div style="width:25%;display:inline-block;float:right"> <button class="queenCollector beequeenboxtext mobilefix3" ondrop="queenD <div id="queenCollectorInitialText"><br></div> </button> </div> </div> </div> <br> </div> <div id = "OriginalBase" class="newDocBeeBase"></div> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnOriginal" onclick </br> </div> </br> <p> <div style="font-weight:bold"><div class="bt">Item #</div></div><br><br> <div style="font-weight:bold"><div class="bt">Object Class:</div></div> <d <div style="font-weight:bold"><div class="bt">Research Head:</div></div> < <div style="font-weight:bold"><div class="bt">Special Containment Procedur <div class="bt">Hive @lpha is to be contained within the SCP-8335 file. Th <div class="bt">As per the protocols of Project 'Memedovukha', upon Hive @ <div style="font-weight:bold"><div class="bt">Description:</div></div> <di <div class="bt"> The primary actors within a SCP-8335 hive are SCP-8335-b <div class="bt">Upon the emergence of a new Regent class character, the hi <table> <thead> <tr style="text-align:center"> <th>Key </th><th>Class<th>Function</th> </tr> </thead> <tbody> <tr> <td><div style="display:inline-block;" id="beeInTable" onclick="removeIdleA </tr> <tr> <td><div class="bt"> h </div></td><td><div class="bt"> Nourishment </div>< </tr> <tr> <td><div class="bt"> q </div></td><td><div class="bt"> Regent </div></td>< </tr> <tr> <td># </td><td><div class="bt"> Hive </div></td><td><div class="bt"> Centr </tr> <tr> <td><div class="bt"> p d </div></td> <td><div class="bt"> Resource </div>< </tr> <tr> <td><div class="bt"> X ¥ @ g </div></td><td><div class="bt"> Flower </div> </tr> <tr> <td>$ </td><td><div class="bt"> Smoke </div></td><td> <div class="bt">Elim </tr><tr> <td><div class="bt"> J j </div></td><td><div class="bt"> Collection </div> </tbody> </table> <br><br> <div style="font-weight:bold"><div class="bt">Discovery and History:</div> <div class="bt">On 6/1/1994, a re-evaluation of the recovered material was <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">The Seve[...] March, Ninetee[...]</div><br><br> <div class="bt">Mister Koschevnikov, dear that he is, brought to us a new <div class="bt">By his own admission, he has some history in the arts of c <div class="bt">Most intrigued by such a queer novelty, I encouraged </div <br> <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">The Ni[...] Apr[...]</div><br><br> <div class="bt">I confess, it was not until Bienenstock scraped it from th <div class="bt">It was at once the most delectable and confounding thing I <div class="bt">Mister Koschevnikov and I have hastened to induct Mister B </div><br><br> <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">[...]eth of April, [...]</div><br><br> <div class="bt">Mister Koschevnekov surprised us with quite the spread at <div class="bt">A reintroduction to the floral melody of the </div><div st <div class="bt">Following such a familiar yet intoxicating flavour, I saw <div class="bt">Seeking something a little more unusual, I turned to a pro <div class="bt">A curious sort of aroma emanated from my next choice, a wo <div class="bt">But I saved the finest until last, I had been eyeing it si <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">[...]mber, Nin[...]</div><br><br> <div class="bt">Roy has taken receipt of a most troublesome tome. 'Twas ap <div class="bt">While the wily work of warped and weirdsome words weighs u <div class="bt">The subsequent concoction tickles and teases the tongue wi </div><br><br> <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">The Twentieth [...]er, N[...]een.</div><br><br> <div class="bt">I find with each sting of honeyed words, the confounding c <div class="bt">My dear Koschevnikov it seems has become similarly afflict </div><br><br> <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">[...]teenth of [...]ber, Ni[...]rteen.</div><br><br> <div class="bt">It has been, I believe, at least a fortnight since I last <div class="bt">I seem to be struggling more than usual to find the words <div class="bt">I suppose I could speculate all night and be no closer to </div><br><br> <div style="margin-inline:auto;width:80%; background-color: rgb(34, 34, 0) <div class="bt">I arrived this morning at the estate of Mister Koschevniko <div class="bt">Before the current developments, Dr. A. P. Oidea believed <div class="bt">I have reclaimed the volumes of his personal libapiaries.
</div><br><br> <div class="bt">Following this transcription, the body of Roy Koschevnikov <div class="bt">The work detailing the method of creating SCP-8335 was amo <div class="bt">Initial containment procedures called for affected works t <div class="bt">After a series of containment breaches in the early 1970s, <div style="font-weight:bold;text-align:center"><div class="bt">Addendum:< <div class="bt">Informed by l'Emile's experience with 'honey', Dr. Jenrick <div class="bt">On 6/1/2004, Project 'Memedovukha' was authorised to resea <div style="border: 2px rgb(253 214 187) dashed;background-color: rgb(255 <b><div class="bt">Phase 1 - Extraction:</div></b><div class="bt"> Initial <div class="bt">Ultimately, building on the extant functions of the APREs <b><div class="bt">Phase 2 - Refinement:</div></b><div class="bt">Based on <div class="bt">Chemical analyses of 8335-C revealed a primary composition <b><div class="bt">Phase 3 - Human Testing:</div></b><div class="bt">Phase <div class="bt">Once each page has been swarmed, an initial batch of Class </div><br><br> <div style="    background-color: rgb(34, 34, 0); color: rgb(221, 221, 119 <div style="font-size:large; font-weight:bold">Footnotes:</div><br> <a><div class="bt">1</div></a><div class="bt">As per directive from the Pa <a><div class="bt">2</div></a><div class="bt">Binomial name of the Europea <a><div class="bt">3</div></a><div class="bt"> A semantic sugar analogue < <a><div class="bt">4</div></a><div class="bt">A semantic alcohol analogue< </div> </div> <div id="ToasterArticle" class="outerText" initialHoneyCount = "426" style <div id = "ToasterBase" class="newDocBeeBase"></div><br> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnToaster" oncli </br> </div> </br> <div style="width:100%; margin: auto; overflow:visible;"> <div class="hive" style="font-weight:bold">#</div></br></br> <div class = "bt" style="font-weight:bold">Object</div><div class = "bt" s <div class = "bt" style="font-weight:bold">Special</div><div class = "bt" <div class="bt"> I am to be sealed in a chamber with no windows through wh <div class = "bt" style="font-weight:bold">Description:</div><div class="b <div class="bt">I was discovered in the home of the ████████ family after <div class="bt">I was confiscated by the Foundation after police noted my <div style="font-weight:bold"><div class = "bt">Experiment Log 426-1:</div <div class = "bt" style="font-weight:bold">Date: ██-██-████</div></br> <div class = "bt" style="font-weight:bold">Subject:</div><div class = "bt" <div style="font-weight:bold"><div class="bt">Procedure:</div></div><div c <div style="font-weight:bold"><div class="bt">Details:</div></div><div cla <div style="font-weight:bold"><div class = "bt">Experiment Log 426-2:</div <div class = "bt" style="font-weight:bold">Date: ██-██-████</div></br> <div class = "bt" style="font-weight:bold">Subject:</div><div class = "bt" <div style="font-weight:bold"><div class="bt">Procedure:</div></div><div c <div style="font-weight:bold"><div class="bt">Details:</div></div><div cla <div style="font-weight:bold"><div class = "bt">Experiment Log 426-3:</div <div class = "bt" style="font-weight:bold">Date: ██-██-████</div></br> <div class = "bt" style="font-weight:bold">Subject:</div><div class = "bt" <div style="font-weight:bold"><div class="bt">Procedure:</div></div><div c <div style="font-weight:bold"><div class="bt">Details:</div></div><div cla <div style="font-weight:bold"><div class = "bt">Experiment Log 426-4:</div <div class = "bt" style="font-weight:bold">Date: ██-██-████</div></br> <div class = "bt" style="font-weight:bold">Subject:</div><div class = "bt" <div style="font-weight:bold"><div class="bt">Procedure:</div></div><div c <div style="font-weight:bold"><div class="bt">Details:</div></div><div cla <div style="font-style:italic"><div class="bt">Thank God there are some li </div> </div> <div id="AllisonArticle" class="outerText" initialHoneyCount = "2565" styl <div id = "AllisonBase" class="newDocBeeBase"></div> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnAllison" onclick </br> </div> </br> <div style="width:100%; margin: auto; overflow:visible;"> <div style="font-weight:bold"><div class="bt">Allison Eckhart #</div></d <div style="font-weight:bold"><div class="bt">Allison Eckhart Class:</di <div style="font-weight:bold"><div class="bt">Special Containment Proced <div class="bt">Currently, Allison Eckhart's Allison Eckharts are to be st <div style="font-weight:bold"><div class="bt">Description:</div></div><div <div class="bt">Allison Eckhart is an autosynecdochic semantic pointer, be <div style="font-weight:bold"><div class="bt">Addendum Allison Eckhart-1:< <div class="bt">Site Director Allison Eckhart has expressed deepest Alliso <div style="font-weight:bold"><div class="bt">Addendum Allison Eckhart-2:< <div class="bt">Following continuing Allison Eckhart casualties due to ing <div class="bt">Plans for off-Allison Eckhart evacuation of the remaining </div> </div> <div id="LibraryArticle" class="outerText" initialHoneyCount = "2602" styl <div id = "LibraryBase" class="newDocBeeBase"></div> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnLibrary" onclick </br> </div> </br> <div style="width:100%; margin: auto; overflow:visible;"> <br><br> <div style="width:80%; background-color:#EEEEEE; border: dashed grey 1px <div style="font-weight:bold"><div class="bt">Notice:</div></div> <div class="bt">This file possesses cognitohazardous properties. While <br> </div> <br><br> <div style="font-weight:bold"><div class="bt">Item #</div></div><br><br> <div style="font-weight:bold"><div class="bt">Library Class:</div></div> <div style="font-weight:bold"><div class="bt">Special Containment Proced <div class="bt">All known online references to SCP-2602 and the fact tha <div class="bt">Foundation documentation pertaining to SCP-2602 is to be <figure style="width:50%; clear:none; border: solid black 1px; box-shadow <div style="font-weight:bold"><div class="bt">Description:</div></div><d <div class="bt">When communicating any information about SCP-2602, subje <div class="bt">Any information regarding SCP-2602 is also anomalous. Su <div class="bt">Subjects are incapable of communicating, directly or oth <div style="font-weight:bold"><div class="bt">Addendum 2602-1:</div></di <div style=" padding: 10px; width:80%; background-color:#EEEEEE; border: <div class="bt">SCP-2602 experienced extensive fire damage on the same day <div class="bt">A number of advanced book-sorting machines were found, tho <div class="bt">SCP-2602's hazardous waste pit, whose presence is expected <div style="font-weight:bold"><div class="bt">Conclusions:</div></div><div </div><br><br> <div style="font-size:large; font-weight:bold">Footnotes:</div><br> <a><div class="bt">¹</div></a><div class="bt">A type of radiation common </div> </div> <div id="VerbosityArticle" class="outerText" initialHoneyCount = "6430" st <div id = "VerbosityBase" class="newDocBeeBase"></div> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnVerbosity" oncli </br> </div> </br> <div style="width:100%; margin: auto; overflow:visible;"> <br><br> <div style="width:80%; background-color:#EEEEEE; border: dashed grey 1px <div class="bt">Notice: The following file has been received as Emerge <div class="bt">This information is to be Classified Level 5 until SCP <br> </div> <br><br> <div style="font-weight:bold"><div class="bt">#</div></div><br><br> <div style="font-weight:bold"><div class="bt">Item</div></div><br><br> <div style="font-weight:bold"><div class="bt">Number:</div></div><br><br <div class="bt">SCP-6430/SPIRAL</div><br><br> <div style="font-weight:bold"><div class="bt">Object Class:</div></div>< <div style="font-weight:bold"><div class="bt">Special Containment Proced <div class="bt">SCP-6430 cannot be contained through any conventional me <div class="bt">If encountering an individual under the primary effect o <div class="bt">One should not engage in any form of communication with <div class="bt">Due to its effects, containment of SCP-6430 is to be orc <div style="font-weight:bold"><div class="bt">Description:</div></div><d <div class="bt">SCP-6430 causes an irreversible state of ever-expanding <div class="bt">During the initial outbreak which led to its discovery w <div class="bt">If one attempts to communicate with someone affected by <div class="bt">SCP-6430 is able to effect and spread to targets who att <div style="font-weight:bold"><div class="bt">Addendum:</div></div><div </div> </div> <div id="FFArticle" class="outerText" initialHoneyCount = "8102" style="di <div id = "FFBase" class="newDocBeeBase"></div> <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnFF" onclick ="ar </br> </div> </br> <div style="width:100%; margin: auto; overflow:visible;"> <br><br> <div style="width:80%; background-color:#EEEEEE; border: dashed grey 1px <div style="font-weight:bold"><div class="bt">Notice:</div></div> <div class="bt">This file possesses cognitohazardous properties. While <br> </div> <br><br> <div style="font-weight:bold"><div class="bt">Item #</div></div><br><br> <div style="font-weight:bold"><div class="bt">Object Class:</div></div>< <div style="font-weight:bold"><div class="bt">Special Containment Proced <figure style="width:50%; clear:none; border: solid black 1px; box-shad <div style="font-weight:bold"><div class="bt">Description:</div></div><d <div class="bt">Instances of SCP-8102-Y retain their original medium and <hr /> <figure style="width:50%; clear:none; border: solid black 1px; box-sh <div class="bt">SCP-8102-Y238 provides an example of visual interference <hr /> <div style="width:80%; background-color:#EEEEEE; border: dashed grey 1px <div style="font-style:italic"><div class="bt">SCP-8102-Y085 Sample:</ <br> <br> <div class="bt">The Fountainferry Enchanted Village is a park construc </div><br><br> <div class="bt">This excised portion of SCP-8102-Y085 provides an exampl <hr /> <div class="bt">Depictions of SCP-8102, as described by interpreted SCP- <div class="bt">• SCP-8102 is a tourist attraction in the Northeast Un <div class="bt">• SCP-8102 is a fantasy-themed amusement park located <div class="bt">• SCP-8102 is "The Fountainferry Enchanted Village", a <div class="bt">• SCP-8102 is a theme park in New Hampshire based on E <br><br> <div class="bt">All pieces of information interpreted from instances of </div> </div> <div id="page-content" class="outerText" style="display:none;"> <form oninput="outputOfText.innerHTML = parseStringToSeeIfAllRequiredCha <p> To make sure this works correctly:<br> - Write in HTML coding<br> - For the sake of safety, anything that could execute javascript wil - If missing any characters required for the bees to work properly, - Press save button to execute<br> - Press "reset sandbox" to pull up this input and try again<br> - The # should be at the end of whatever line it's on <br> - Use the &lt;br&gt; tag to break the line<br> - Any text you want to put an active character in, encapsulate like <code> &lt; div class="bt" &gt; Whatever text you want, here &lt; /div &g </code> <br> </p> <input class="text form-control" style="font-weight:bold; font-size: 1.0 <img src="https://scp-wiki.wdfiles.com/local--files/scp-3309/buttons.png <div><textarea rows="10" style="width:95%;" id="fakepost" name="fakepost <div style="font-weight:bold"><div class="bt">This is bold text!</div></ Here is a table!
<table> <tr><th><div class="bt">Table head 1</div></th><th><div class="bt">Tab <tr><td><div class="bt">#</div></td><td><div class="bt">Hive</div></td </table> </textarea> </div> <output style="color:red;"name="outputOfText">A</output> <div class="change-textarea-size"> <a href="javascript:;">-</a> <a href="javascript:;">+</a> </div> <div class="edit-help-34"> Help: <a target="_blank" href="">wiki text quick reference code snippe </div> <table> <tr> <td> <span style="width: 25%">Short description of changes:</span> <textarea rows="2" style="width: 80%;" id="fakepost2" wrap="hard"> </textarea> </td> <td> <div style="background-color: #FFFFFF; border-color: light-gray;"> You have an exclusive 15-minute lock that will stop others editing this pa The lock expires in <b id="countdown"></b> seconds of inactivity.
</div> </td> </tr> </table> <div class="buttons alignleft"> <input class="btn" value="Cancel" type="button"> <input class="btn" value="Show Changes" type="button"> <input class="btn" value="Preview" type="button"> <input class="btn" value="Save & Continue" type="button"> <input class="btn" value="Save " type="button" onclick="saveButton()"> </div> </form> <button id = "resetSandbox" onclick="resetSandbox()"> Reset Sandbox?</butt <div class="outerText" id="finalOuterHousing"> <div id="finalQueenReturn" class="queenReturn" onclick ="articleClickHan <div id = "SandboxBase" class="newDocBeeBase" style="display:none;"></di <div style="width:100%; border-bottom:2px dashed black; background-color:w <button class ="queenReturn beeleasebox" id="queenReturnSandbox" style=" </br> </div> </br> <div id="finalOutput" class="outerText" initialHoneyCount = "0" style="d </div> </div> </div> <button style="position:fixed; right: 3.4em; top: 5.9vh; border: dotted 2p <div id="emailList" style="position: fixed;display: none;top: 2.5em;left:c }"> <button style="border: dotted 2px #875a302b; background: #d5ac2f; color: # <p> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: gJenrick@SCiP.net <br> | Subject: Hive Work Ahead (I sure hope it does) </div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; Hello [ADD NAME OF NEW HIRE]!<br><br> Hive work can seem daunting on your first try, but don't worry! Just like Not sure what that is? That's not good, but lucky for you, the SCP-8335 fi Good luck,<br> Dr. G Jenrick<br> </div> </div> </p> <p> <div id = "honeyBonus" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: Sweet!
</div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; The printing caught me off guard, but I managed to grab the page and squee Didn't have enough time to toast the bread, but the honey was quite sweet, Can't wait for you to try this stuff- beats refined by miles!
</div> <br> <div style="margin-inline:auto; margin-bottom:0px;width:50%;border: #ba832 </div> </div> </p> <p> <div id = "newPageMail" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: gJenrick@SCiP.net <br> | Subject: Nice work!
</div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; Hello [ADD NAME OF NEW HIRE]!<br><br> Congrats on a job well done!<br><br> Feel free to watch the anomaly for a bit, but don't stare too hard! They m Just kidding!<br><br> Haha,<br> Dr. G Jenrick </div> <br> </div> </div> </p> <p> <div id = "honeyBonusCustom" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: b u </div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; I'm glad you got to play in their little sandbox. So are the bees. This ho I'm afraid the honey didn't last long either. My tongue wouldn't let it. F Anyway, I felt inspired to make this sculpture. You can taste my work, as </div> <br> <div style="margin-inline:auto;margin-bottom:0px;width:50%;border: #ba8326 </div> </div> </p> <p> <div id = "honeyBonusToaster" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: I am a Toast-er </div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; You've caught me prepared- I grabbed the page right as the printer spit it The taste- I think I'd been a bit too hasty. It was spicy! Unexpected, but I've left you your toasted slice (if you even want to try it anymore) and </div> <br> <div style="margin-inline:auto;margin-bottom:0px;width:50%;border: #ba8326 </div> </div> </p> <p> <div id = "honeyBonusAllison" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net<br> | Subject: Me </div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; For the first time in a long time, I tasted myself.<br><br> My foibles and follies, my joys and jubilations, undiluted by semantics. M And as soon as it was there is was gone- gone, but present so that it echo It was not mine.<br><br> It wasn't.<br><br> And it isn't hers anymore, It hasn't been for so long.<br><br> But I felt it, that's what it was- in that bite.<br><br> Someone else's "Thank You " </div> <br> <div style="margin-inline:auto;margin-bottom:0px;width:50%;border: #ba8326 </div> </div> </p> <p> <div id = "honeyBonusLibrary" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: Ew!
</div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; I think you might have done something wrong.<br><br> The page printed out fine, the honey came off easily, and it looked comple The aftertaste was mildly sweet, at least.<br><br> Don't try this one. It's gone off- or something.
</div> <br> </div> </div> </p> <p> <div id = "honeyBonusVerbosity" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: Spiraling </div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; Hm. I. This one. I'm not sure. I think it is good. At the very least it's Had to take a breather there, sorry.<br><br> Your half is waiting if you want it.
</div> <br> <div style="margin-inline:auto;margin-bottom:0px;width:50%;border: #ba8326 </div> </div> </p> <p> <div id = "honeyBonusFF" style = "display:none;"> <br> <div style="margin-inline:auto;width:80%;padding:1em;border: #d99727 2px s <div style="width:auto;border: #ba8326 2px outset;background-color:#f3c16d | To: You <br> | From: pBoddy@SCiP.net <br> | Subject: Thy eyes deceive!
</div> <br> <div style="width:auto;border:#ba8326 2px outset;background-color:#f3c16d; Scraped against the page you printed, and for I moment I thought I'd grabb When I took a bite however, everything was fine. Perhaps a bit musty, somew Here's yours- I swear it tastes better than it looks!
</div> <br> <div style="margin-inline:auto;margin-bottom:0px;width:50%;border: #ba8326 </div> </div> </p> </div> </div> </div> <div style="color:#2e2e2e; font-weight:bold"> TbC-V6 </div> </div> </div> <script> function removeIdleAnimation(id) { document.getElementById(id).classList.remove("idle");} function smokeIterate() { let sm = document.getElementById("smokeTutorial"); sm.classList.add("smokeStage1"); window.setTimeout( ()=>{document.getElementById("kipling").style.di } var smokeLeft = 11; const smokeList = []; function smokeClick(id) { if (smokeList.indexOf(id) == -1) { smokeList.push(id); document.getElementById(id).classList.add("smokeStage2"); window.setTimeout(()=>{document.getElementById(id).style.display="non smokeLeft = smokeLeft-1; document.getElementById("smokeLeft").innerHTML = " Remaining: "+ smok if (smokeLeft === 0) { window.setTimeout(()=>{document.getElementById("smokeTutorialHousin document.getElementById("finalSmoke").style.display="block";},2000); } } function smokeFinal() { document.getElementById('finalSmoke').style.display='none'; document.getElementById("smokeTutorialHousing").style.display="none"; document.getElementById('OutsideOfEverything').style.display='block'; document.getElementById("mailButton").style.display='block'; } var newMessages = 1; const openMail = ()=>{document.getElementById("emailList").style.displa const closeMail = ()=>{document.getElementById("emailList").style.displ count = 901; countdown = setInterval(()=>{ count = count-1; document.getElementById("countdown").innerHTML = count; if (count <1) {clearInterval(countdown);} },1000); var activeBees = 0; const activeBeeLimit=75; function resetCount() { count = 901; } var customHandler; var textToSubmit = ""; var buttonTriggered = false; var currentArticle = "OutsideOfEverything"; var currentlyDragging = false; var countOfCurrentlyMovingFlowers = 0; var queenDropped = false; // given an outerDiv //search within it for divs of the class "otherText" // split this around instances of b, #, X, ¥, @ function parse(od) { for (let i = 0; i< od.children.length; i++) { if (od.children[i].classList.contains("bt")) { let wordList = od.children[i].innerHTML.split(" "); for (let v = 0; v<wordList.length; v++) { if(wordList[v].trim()==="") { wordList.splice(v,1); } } var otherText; var otherTextDiv; od.children[i].innerHTML = String(wordList[0]+" "); for (let j = wordList.length-1; j>0; j--) { otherText = document.createTextNode(String(wordList[j])); otherTextDiv = document.createElement("div"); otherTextDiv.setAttribute("class","bt"); otherTextDiv.appendChild(otherText); od.children[i].insertAdjacentElement("afterend",otherTextDiv); } let newInnerNodeText = document.createTextNode(od.children[i].inne let newInnerNode = document.createElement("div"); newInnerNode.classList.add("otherText"); newInnerNode.appendChild(newInnerNodeText); od.children[i].innerHTML = ""; od.children[i].appendChild(newInnerNode); innerParse(newInnerNode); } else if (od.children[i].hasChildNodes() && (!(od.children[i].classL { parse(od.children[i]); } }//outer for } function innerParse(otherTextDiv) { //     let totalStyle = otherTextDiv.style; let stringToSpawnIn = String(otherTextDiv.innerHTML) || ""; let sliceIndex = -1; if (stringToSpawnIn.indexOf("b") != -1) {sliceIndex = stringToSpawnIn.indexOf("b");} if ((stringToSpawnIn.indexOf("X") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("X");} if ((stringToSpawnIn.indexOf("@") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("@");} if ((stringToSpawnIn.indexOf("¥") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("¥");} if ((stringToSpawnIn.indexOf("#") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("#");} if ((stringToSpawnIn.indexOf("h") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("h");} if ((stringToSpawnIn.indexOf("p") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("p");} if ((stringToSpawnIn.indexOf("d") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("d");} if ((stringToSpawnIn.indexOf("g") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("g");} if ((stringToSpawnIn.indexOf("J") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("J");} if ((stringToSpawnIn.indexOf("j") != -1) && ((sliceIndex===-1)||(slic {sliceIndex = stringToSpawnIn.indexOf("j");} if (sliceIndex != -1) { let latterText = stringToSpawnIn.slice(sliceIndex+1) || ""; let formerText = stringToSpawnIn.slice(0,sliceIndex) || ""; let keyText = stringToSpawnIn.slice(sliceIndex,sliceIndex+1) || ""; let newKeyDiv = document.createElement("div"); let newKeyText = document.createTextNode(keyText); otherTextDiv.innerHTML = formerText || ""; switch (keyText) { case "X": case "@": case "¥": case "g": newKeyDiv.setAttribute("class","flower"); newKeyDiv.appendChild(newKeyText); break; case "h": newKeyDiv.setAttribute("ondragover","jarDragover(event)"); newKeyDiv.setAttribute("ondrop","jarDropHandler(event)"); case "p": case "d": newKeyDiv.setAttribute("class","collectibleHolder"); const collectible = document.createElement("div"); collectible.setAttribute("class","collectible"); collectible.appendChild(newKeyText); newKeyDiv.appendChild(collectible); break; case "b": newKeyDiv.setAttribute("class","beeHolder"); const newBee = document.createElement("div"); newBee.setAttribute("class","bee"); newBee.appendChild(newKeyText); newKeyDiv.appendChild(newBee); break; case "#": newKeyDiv.setAttribute("class","hive"); newKeyDiv.addEventListener("dragover",(event)=>{jarDragover(event newKeyDiv.setAttribute("ondrop","jarDropHandler(event)"); newKeyDiv.appendChild(newKeyText); //newKeyDiv.classList.add("jarCollectorHighlight"); break; case "J": case "j": newKeyDiv.setAttribute("class","jar"); newKeyDiv.setAttribute("draggable",true); newKeyDiv.setAttribute("tabindex","0"); newKeyDiv.appendChild(newKeyText); setUpJar(newKeyDiv); break; default: newKeyDiv.appendChild(newKeyText); break; } //newKeyDiv.style =totalStyle; otherTextDiv.insertAdjacentElement("afterend",newKeyDiv); const newOtherText = document.createElement("div"); newOtherText.setAttribute("class","otherText"); const newOtherTextText = document.createTextNode(latterText); newOtherText.appendChild(newOtherTextText); newKeyDiv.insertAdjacentElement("afterend",newOtherText); innerParse(newOtherText); }//if } var jarIsBeingDragged= false; function setUpJar(newKeyDiv) { newKeyDiv.addEventListener("dragstart",(event)=>{ //event.preventDefault(); jarIsBeingDragged= true; //document.getElementsByClassName("jar")[0].innerHTML = "|"+event.d //currentlyDragging = true; //event.preventDefault(); }); newKeyDiv.addEventListener("drag",(event)=>{ newKeyDiv.classList.add("queenBeingDragged"); //currentlyDragging = true; jarIsBeingDragged= true; //event.dataTransfer.clearData(); //event.dataTransfer.setData("text/plain","jar"); }); newKeyDiv.addEventListener("dragend",(event)=>{ jarIsBeingDragged=false; //event.preventDefault(); //document.getElementsByClassName("jar")[0].innerHTML = "|"+event.d newKeyDiv.classList.remove("queenBeingDragged"); //currentlyDragging = false; if (document.getElementsByClassName("jarCollectorHighlight").length > {jarDropHandlerBase(); } while (document.getElementsByClassName("jarCollectorHighlight" if (document.getElementsByClassName("jarCollectorHighlight") document.getElementsByClassName("jarCollectorHighlight")[0 } else { document.getElementsByClassName("jarCollectorHighlight")[0].
} } }); newKeyDiv.addEventListener("focus",(event)=>{ setTimeout( ()=>{ if (!(jarIsBeingDragged)) { dx = 0-newKeyDiv.getBoundingClientRect().x + document.getElemen dy = 0-newKeyDiv.getBoundingClientRect().y + document.getElemen const transformationContent = [ {transform: "translateX(0px) translateY(0px)"}, {transform: "translateX("+dx+"px) translateY("+dy+"px)" }, ]; const transformationDuration = { duration: 5000, iterations: 1, } let thisMoveAnimation = newKeyDiv.animate(transformationConten thisMoveAnimation.onfinish = () =>{jarDropHandlerBase()}; } },1000 ); }); var touchX; var touchY; var touchXNum; var touchYNum; newKeyDiv.addEventListener("touchstart",(event)=>{ event.stopPropagation(); if (event.cancelable) { event.preventDefault();} jarIsBeingDragged= true; document.getElementById("mobileScrollJarDiv").classList.remove("queenBeing newKeyDiv.addEventListener("touchmove",(event)=>{ event.stopPropagation(); if (event.cancelable) { event.preventDefault();} newKeyDiv.classList.add("queenBeingDragged"); touchX =Math.floor(event.targetTouches[0].pageX)+"px"; touchY = Math.floor(event.targetTouches[0].pageY-40)+"px"; document.getElementById("mobileScrollJarDiv").style.left = touchX; document.getElementById("mobileScrollJarDiv").style.top = touchY; touchXNum =Math.floor(event.targetTouches[0].pageX); touchYNum = Math.floor(event.targetTouches[0].pageY); //this.mobileScrollQueenDiv.innerHTML= "Left"+touchX+ " top" + touchY; let returnValue = ""; let rect = ""; for (let i = 0; i< document.getElementsByClassName("hive").length; i++) { rect = document.getElementsByClassName("hive")[i].getBoundingClientRec //document.getElementsByClassName("hive")[i].innerHTML = rect.left+" " + r //  document.getElementById("mobileScrollJarDiv").innerHTML = touchXNum + if ((Number(touchXNum) > rect.left) && (Number(touchXNum) < Number(rect returnValue = document.getElementsByClassName("hive")[i].id; document.getElementsByClassName("hive")[i].classList.add("jarCollecto } else  { document.getElementsByClassName("hive")[i].classList.remove("jarColle } } for (let i = 0; i< document.getElementsByClassName("collectible").length; rect = document.getElementsByClassName("collectible")[i].getBoundingCl //document.getElementsByClassName("hive")[i].innerHTML = rect.left+" " + r //  document.getElementById("mobileScrollJarDiv").innerHTML = touchXNum + if ((document.getElementsByClassName("collectible")[i].innerHTML === "h returnValue = document.getElementsByClassName("collectible")[i].id; document.getElementsByClassName("collectible")[i].classList.add("jarC } else  { document.getElementsByClassName("collectible")[i].classList.remove("j } } }); newKeyDiv.addEventListener("touchend",(event)=>{ jarIsBeingDragged=false; event.stopPropagation(); if (event.cancelable) { event.preventDefault();} document.getElementById("mobileScrollJarDiv").classList.add("queenBeingDr for (let d = 0; d<document.getElementsByClassName("jar").length; d++){ document.getElementsByClassName("jar")[d].classList.remove("queenBeingD } if (document.getElementsByClassName("jarCollectorHighlight").length >0) {jarDropHandlerBase(); } while (document.getElementsByClassName("jarCollectorHighlight")[0] if (document.getElementsByClassName("jarCollectorHighlight")[0].
document.getElementsByClassName("jarCollectorHighlight")[0].pa } else { document.getElementsByClassName("jarCollectorHighlight")[0].clas } } }); } function queenDropHandler(event) { event.preventDefault(); queenDropHandlerBase(document.getElementsByClassName("queenCollector" } function jarDropHandler(event) { if (jarIsBeingDragged) { event.preventDefault(); if (event.currentTarget.classList.contains("collectibleHolder")) { if (event.currentTarget.childNodes[0]) { // event.target.innerHTML += "GGG"; event.currentTarget.removeChild(event.currentTarget.childNodes[0] } } jarDropHandlerBase(); } else { for (let i = 0; i<document.getElementsByClassName("queen").length; {document.getElementsByClassName("queen")[i].focus();} } } function jarDropHandlerBase() { document.getElementById(currentArticle).appendChild(document.getEleme document.getElementsByClassName("floatingImage")[0].style.display="bl setTimeout( () => { switch (currentArticle) { case "OutsideOfEverything": if (document.getElementById("honeyBonus").style.display !=="blo newMessages =newMessages+1;} document.getElementById("honeyBonus").style.display="block"; break; case "ToasterArticle": if (document.getElementById("honeyBonusToaster").style.display newMessages =newMessages+1;} document.getElementById("honeyBonusToaster").style.display="bl break; case "AllisonArticle": if (document.getElementById("honeyBonusAllison").style.display newMessages =newMessages+1;} document.getElementById("honeyBonusAllison").style.display="bl break; case "LibraryArticle": if (document.getElementById("honeyBonusLibrary").style.display newMessages =newMessages+1;} document.getElementById("honeyBonusLibrary").style.display="bl break; case "VerbosityArticle": if (document.getElementById("honeyBonusVerbosity").style.displa newMessages =newMessages+1;} document.getElementById("honeyBonusVerbosity").style.display=" break; case "FFArticle": if (document.getElementById("honeyBonusFF").style.display !=="b newMessages =newMessages+1;} document.getElementById("honeyBonusFF").style.display="block"; break; case "page-content": if (document.getElementById("honeyBonusCustom").style.display !
newMessages =newMessages+1;} document.getElementById("honeyBonusCustom").style.display="blo break; default: break; } document.getElementsByClassName("floatingImage")[0].style.display=" document.getElementById("mailButton").innerHTML= String(newMessages },4000); } //separated so could work with touch screens too function queenDropHandlerBase(id) { document.getElementById(id).appendChild(document.getElementsByClassN linkPreparer(); } function linkPreparer() { const transformationContent2 = [{transform:"translateX(-20px)"},{transfor const transformationTiming2 = {duration:1000,iterations:Infinity}; document.getElementsByClassName("queen")[0].animate(transformationCo document.getElementById("linkBlock").style.display="inline-block"; fakeLinkHandle(document.getElementById("linkSelect").value); document.getElementById("linkBlock").style.backgroundColor="#ef972182"; document.getElementById("linkBlock").style.borderColor="#c393b8c"; document.getElementById("linkBlock").style.color="#c393b8c"; document.getElementById("fakeLink").style.color="green"; //document.getElementById("fakeLink").innerHTML = "Queen Ready, Select Que document.getElementById("queenCollectorInitialText").style.display=" //document.getElementById("fakeLink").setAttribute("ready","true"); queenDropped = true; } function queenDragover(event) { event.preventDefault(); event.dataTransfer.dropEffect="move"; } function jarDragover(event) { //document.getElementsByClassName("jar")[0].innerHTML = "|"+event.dat if (jarIsBeingDragged) { event.preventDefault(); event.dataTransfer.dropEffect="move"; event.target.classList.add("jarCollectorHighlight"); } } var jarActivatedInFirstArticle = false; function fakeLinkClick(event) { event.preventDefault(); if (document.getElementById("newPageMail").style.display !== "block") newMessages++; document.getElementById("mailButton").innerHTML= String(newMessages } document.getElementById("newPageMail").style.display="block"; fl = document.getElementById("linkSelect"); switch (fl.value) { case "Allison": fakeLinkClickBase("AllisonArticle","queenReturnAllison",allisonHand break; case "Toaster": fakeLinkClickBase("ToasterArticle","queenReturnToaster",toasterHan break; case "Library": fakeLinkClickBase("LibraryArticle","queenReturnLibrary",libraryHand break; case "Verbosity": fakeLinkClickBase("VerbosityArticle","queenReturnVerbosity",verbos break; case "FF": fakeLinkClickBase("FFArticle","queenReturnFF",ffHandler); break; case "Bee": document.getElementById("queenReturnOriginal").style.display="block fakeLinkClickBase("OutsideOfEverything","queenReturnOriginal",test break; case "Sandbox": document.getElementById("OutsideOfEverything").style.display="none" document.getElementById("OutsideOfEverything").style.display ="none document.getElementById("ToasterArticle").style.display ="none"; document.getElementById("AllisonArticle").style.display ="none"; document.getElementById("VerbosityArticle").style.display ="none"; document.getElementById("FFArticle").style.display ="none"; document.getElementById("page-content").style.display ="none"; document.getElementById("page-content").style.display="block"; default: break; } } var carryOverBeeObjectList = []; function fakeLinkClickBase(outerDocName, returnName, outerDocHandler) { document.getElementById("OutsideOfEverything").style.display ="none"; document.getElementById("ToasterArticle").style.display ="none"; document.getElementById("AllisonArticle").style.display ="none"; document.getElementById("VerbosityArticle").style.display ="none"; document.getElementById("FFArticle").style.display ="none"; document.getElementById("page-content").style.display ="none"; document.getElementById(outerDocName).style.display ="block"; currentArticle = outerDocName; document.getElementsByClassName("queen")[0].remove(); let newQueen = new Queen(outerDocHandler,outerDocHandler.getRandomHiv newQueen.queenDiv.getAnimations()[0].cancel(); newQueen.circleAnimate(document.getElementById(returnName)); document.getElementById(returnName).appendChild(newQueen.queenDiv); document.getElementById(returnName).appendChild(document.createElemen let beeObjList = document.getElementById("LinkButton").getElementsByC var newBeeDiv; var newBee; for (let i = 0; i< beeObjList.length; i++) { newBeeDiv = document.createElement("div"); newBeeDiv.setAttribute("class","bee"); newBeeDiv.id= String("carryOverBee"+i); newBeeDiv.innerHTML = "b"; document.getElementById(returnName).appendChild(newBeeDiv); newBee = new Bee(String("carryOverBee"+i),outerDocHandler); carryOverBeeObjectList.push(newBee); for (let j = 0; j< beeObjList[i].textContent.length; j++) { if ((beeObjList[i].textContent[j] === "d") || (beeObjList[i].text {newBee.pollenCount =newBee.pollenCount+1; newBee.pollenNode.innerHTML +=beeObjList[i].textContent[j]; } else if (beeObjList[i].textContent[j] === "h") {newBee.pollenCount =newBee.pollenCount+4; newBee.pollenNode.innerHTML +=beeObjList[i].textContent[j];} } //newBeeDiv.innerHTML += newBee.pollenCount; //document.getElementById(returnName).appendChild(testMoveHandler.b //newBee.moveHandler = outerDocHandler; outerDocHandler.beeObjectList.push(newBee); newBee.encirclingAnimate(document.getElementById(returnName).getBou } outerDocHandler.queen = newQueen; } function articleClickHandlerBase(articleName,returnName,newBaseAttachBe if (document.getElementById("newPageMail").style.display !=="block") { newMessages++; document.getElementById("mailButton").innerHTML= String(newMessages)+ " document.getElementById("newPageMail").style.display="block"; } if (!buttonTriggered) { buttonTriggered = true; queenDropped = false; for (let k = 0; k<moveHandler.queen.queenDiv.getAnimations().len moveHandler.queen.queenDiv.getAnimations()[k].cancel(); } document.getElementById(newBaseAttachBeesName).appendChild(moveH document.getElementById(returnName).style.display = "none"; document.getElementById(articleName).prepend(document.getElementBy document.getElementById("LinkButton").innerHTML = "<div id='queenC moveHandler.queen.moveToAnotherDiv(newBaseAttachBeesName); for (let m = 0; m<document.getElementsByClassName("bee").length; for (let l = 0; l<document.getElementsByClassName("bee")[m].getA document.getElementsByClassName("bee")[m].getAnimations()[l].c } } for (let j = 0; j< moveHandler.beeObjectList.length; j++) { moveHandler.beeObjectList[j].activated = false; moveHandler.beeObjectList[j].currentDiv = document.getElementB } for (let i = 0; i<document.getElementById(returnName).getElement if (document.getElementById(returnName).getElementsByClassName document.getElementById(returnName).getElementsByClassName("be } while (document.getElementById(returnName).getElementsByClassNam document.getElementById(newBaseAttachBeesName).appendChild(doc } for (let p = 0; p< document.getElementById(newBaseAttachBeesName document.getElementById(newBaseAttachBeesName).getElementsByClassN } } } function fakeLinkHandle(value) { let fl = document.getElementById("fakeLink"); switch (value) { case "Allison": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/CellBlock256/Alliso fl.innerHTML = "Allison Eckhart   (click or hit enter while focus break; case "Toaster": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/CellBlock42/scp-426 fl.innerHTML = "SCP-426  (click or hit enter while focused)"; break; case "Verbosity": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/CellBlock643/scp-64 fl.innerHTML = "SCP-6430  (click or hit enter while focused)"; break; case "FF": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/CellBlock810/scp-81 fl.innerHTML = "SCP-8102  (click or hit enter while focused)"; break; case "Library": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/CellBlock260_a_form fl.innerHTML = "SCP-2602, which used to be a library  (click or h break; case "Sandbox": fl.href ="//B:/Documents/APRE/APIs/ARChive.db/Sandbox-3/collab:yo fl.innerHTML = "Sandbox  (click or hit enter while focused)"; break; default: fl.innerHTML = "Link ready, select destination  (click or hit ent break; } } function moveToAnotherDiv(divToMove,currentDivX,currentDivY,otherDiv) { var thisMoveAnimation; let beeDivX = divToMove.getBoundingClientRect().x; let beeDivY = divToMove.getBoundingClientRect().y; let otherDivX = otherDiv.getBoundingClientRect().x; let otherDivY = otherDiv.getBoundingClientRect().y; let currentX = currentDivX; let currentY = currentDivY; let beeBeginCurrentX = currentX-beeDivX; let beeBeginCurrentY = currentY-beeDivY; let dx = otherDivX - currentX || 1; let dy = otherDivY - currentY; let beeFinishX = otherDivX - beeDivX; let beeFinishY = otherDivY - beeDivY; let timeOfTrip = Math.floor(Math.sqrt(dx*dx+dy*dy))*10; const transformationContent = [ {transform: "translateX("+beeBeginCurrentX+"px) translateY("+ beeBegi //{transform: "translateX("+beeFinishX+"px) translateY("+beeFinishY+" ]; for (let i = 0; i< timeOfTrip; i=i+10) { let theta = Math.sign(dx)*Math.atan(dy/dx) || Math.sign(dy)*Math.atan(d // rotation matrix: X = x*cos(theta)-y*sin(theta) and Y = x*sin(theta)+ // but the function we want to rotate is a sine wave //so the x should be always the same increment, i.
let sineFunction = 10*Math.sin(i/60); let rotatedX = Math.sign(dx)*Math.floor(i/10*Math.cos(theta)-sineFuncti let rotatedY = Math.floor(i/10*Math.sin(theta)+sineFunction*Math.cos(th transformationContent.push( {transform: "translateX("+Number(beeBeginCu } const transformationDuration = { duration: timeOfTrip, iterations: 1, } thisMoveAnimation = divToMove.animate(transformationContent,transformati //if (currentDivX === 0) //{thisMoveAnimation.cancel();} return thisMoveAnimation; } function parseStringToSeeIfAllRequiredCharactersAreInIt(st) { //first, get rid of everything between <> let retVal = ""; while (st.indexOf("<") !== -1 && st.indexOf(">") !== -1) { st = st.slice(0,st.indexOf("<"))+st.slice(st.indexOf(">")+1); } if (st.indexOf("b")===-1) {retVal = retVal+"<br>This needs at least one 'b'!";} if (st.indexOf("#")===-1) {retVal = retVal+"<br>This needs at least one '#'!";} if ((st.indexOf("p")===-1)&&(st.indexOf("d")===-1)) {retVal = retVal+"<br>This needs at least one 'p' or 'd'!";} if ((st.indexOf("g")===-1) && (st.indexOf("X")===-1) && (st.indexOf("¥ {retVal = retVal+"<br>This needs at least one of the following: 'X', ' return retVal; } function saveButton() { document.getElementById("page-content").style.display="block"; if((parseStringToSeeIfAllRequiredCharactersAreInIt(textToSubmit) === {document.getElementById('finalOutput').innerHTML=sanitizeHTMLInput( document.getElementById('form').style.display='none'; parse(document.getElementById('finalOutput')); customHandler = new MoveHandler('finalOutput',"finalQueenReturn",['BBB document.getElementById("SandboxBase").innerHTML = ""; document.getElementById("queenReturnSandbox").style.display ="block"; document.getElementById("finalOutput").style.display ="block"; document.getElementById("SandboxBase").style.display ="block"; fakeLinkClickBase("finalOuterHousing","queenReturnSandbox",customHandl document.getElementById("page-content").style.display="block"; } } function resetSandbox() { document.getElementById("form").style.display="block"; buttonTriggered = false; document.getElementById("SandboxBase").innerHTML = ""; for (let j = 0; j< customHandler.beeObjectList.length; j++) { customHandler.beeObjectList[j].activated = false; customHandler.beeObjectList[j].currentDiv = document.getElementById while(customHandler.beeObjectList[j].beeDiv.getAnimations()[0]) { customHandler.beeObjectList[j].beeDiv.getAnimations()[0].cancel() } } } /*Make sure the user can't inject code into the page*/ function sanitizeHTMLInput(inStr) { let inputString = inStr; let blacklist = ["script","link","object","embed","iframe","onclick"," "oncopy","onpaste","oncut","ondblclick","onfocus","onfocusin","onfocus "onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout" "onpointercancel","onpointerdown","onpointerenter","onpointerleave","o "onscroll","onscrollend","onsecuritypolicyviolation","ontouchcancel"," "ontransitioncancel","ontransitionend","ontransitionrun","ontransition "onwebkitmouseforcechanged","onwebkitmouseforcedown","onwebkitmousefor "ongesturechange","ongestureend","ongesturestart", "ongotpointercapture","onfullscreenerror","onfullscreenchange", "onDOMMouseScroll","onDOMActivate", "oncontextmenu","oncontentvisibilityautostatechange","oncompositionupdat "onblur","onbeforexrselect","onbeforescriptexecute","onbeforematch","onb "onauxclick","onanimationstart","onanimationend","onanimationiteration", "onafterscriptexecute","onlostpointercapture","onMozMousePixelScroll",]; let indexOfBad = -1; for (let i = 0; i<blacklist.length; i++) { indexOfBad = inputString.indexOf(blacklist[i]); while (indexOfBad != -1) { inputString = inputString.slice(0,indexOfBad) +"EXCISED FORBIDDEN ST indexOfBad = inputString.indexOf(blacklist[i]); } } return inputString; } class MoveHandler { constructor(outerDocToSelectFrom, queenHolderNameId,cuteList) { this.queen = null; this.queenHolderNameId=queenHolderNameId; this.outerDoc = document.getElementById(outerDocToSelectFrom); this.flowerObjectList = []; for (let i = 0; i< this.outerDoc.getElementsByClassName("flower").
this.outerDoc.getElementsByClassName("flower")[i].setAttribute(" this.flowerObjectList.push(new Flower(this.outerDoc.getElementsB } this.beeObjectList = []; for (let i = 0; i< document.getElementById(outerDocToSelectFrom).g this.outerDoc.getElementsByClassName("bee")[i].setAttribute("id" this.beeObjectList.push(new Bee("beeNo"+i+outerDocToSelectFrom,t } this.beeHolderObjectList = []; for (let i = 0; i< this.outerDoc.getElementsByClassName("beeHolder this.outerDoc.getElementsByClassName("beeHolder")[i].setAttribut this.beeHolderObjectList.push(this.outerDoc.getElementsByClassNa } this.initialBeeLength = this.outerDoc.getElementsByClassName("beeH this.hiveObjectList = []; //document.getElementById("readout").innerHTML+=document.getElemen for (let z = 0; z< this.outerDoc.getElementsByClassName("hive").le this.outerDoc.getElementsByClassName("hive")[z].setAttribute("id this.hiveObjectList.push(new Hive("hiveNo"+z+outerDocToSelectFro //document.getElementById("readout").innerHTML+=document.getElem } this.otherTextList = []; //document.getElementById("readout").innerHTML+=document.getElemen this.getRandomOtherText(); this.collectibleList = []; for (let x = 0; x< document.getElementById(outerDocToSelectFrom).g this.outerDoc.getElementsByClassName("collectible")[x].setAttrib this.collectibleList.push(new Collectible(this.outerDoc.getEleme //document.getElementById("readout").innerHTML+=document.getElem } this.collectibleHolderObjectList = []; for (let q = 0; q< this.outerDoc.getElementsByClassName("collectib this.outerDoc.getElementsByClassName("collectibleHolder")[q].setA this.collectibleHolderObjectList.push(this.outerDoc.getElementsB } this.cuteList = cuteList; this.hoverText = document.createElement("div"); this.hoverTextText = document.createTextNode(cuteList[0]); this.hoverText.style.backgroundColor="yellow"; this.hoverText.style.fontSize = "small"; this.hoverText.appendChild(this.hoverTextText); this.hoverText.style.position="absolute"; this.hoverText.style.display = "none"; this.outerDoc.appendChild(this.hoverText); } showHoverText(beeDiv) { this.hoverText.style.display="block"; this.hoverText.style.left= Math.floor(window.scrollX+ beeDiv.getBo this.hoverText.style.top= Math.floor(window.scrollY+beeDiv.getBoun if (beeDiv.getAnimations()[0]) { beeDiv.getAnimations()[0].pause(); } let index = Math.floor(Math.random()*this.cuteList.length); this.hoverText.innerHTML = this.cuteList[index]; window.setTimeout(()=>{this.hoverText.style.display = "none"; if (beeDiv.getAnimations()[0]) {beeDiv.getAnimations()[0].play();} else { {beeDiv.click();} } },1000); } rebuildOtherTextList() { this.otherTextList = []; //document.getElementById("readout").innerHTML+=document.getElemen for (let i = 0; i< this.outerDoc.getElementsByClassName("otherText if (this.outerDoc.getElementsByClassName("otherText")[i].innerHT { this.outerDoc.getElementsByClassName("otherText")[i].remove(); i=0; } else {this.otherTextList.push(this.outerDoc.getElementsByClassName("o //document.getElementById("readout").innerHTML+=document.getElem } } // outerDocToSelectFrom: right now this is "OutsideOfEverything", but we w getRandomFlower() { let length = this.flowerObjectList.length; let randomFlower = this.flowerObjectList[ Math.floor(Math.random()* for (let i = 0; i<200; i++) { if ((randomFlower.flowerDiv.getBoundingClientRect().y < 0) || (ra {randomFlower = this.flowerObjectList[ Math.floor(Math.random()*length)]; else {break;} } return randomFlower; } // outerDocToSelectFrom: right now this is "OutsideOfEverything", but getRandomBee() { let length = this.beeObjectList.length; let randomBee = this.beeObjectList[ Math.floor(Math.random()*l return randomBee; } // outerDocToSelectFrom: right now this is "OutsideOfEverything" getRandomHive() { let length = this.hiveObjectList.length; let randomHive = this.hiveObjectList[ Math.floor(Math.ran return randomHive; } getRandomCollectible() { var randomCollectible; if (!(this.outerDoc.getElementsByClassName("collectible").length randomCollectible = this.getCollectibleById(this.outerDoc.get } else { {randomCollectible = this.getRandomFlower();} } return randomCollectible; } getRandomCollectibleHolder() { var randomCollectible; let length = this.collectibleHolderObjectList.length; randomCollectible = this.collectibleHolderObjectList[Math.flo for (let i = 0; i<200; i++) { if ((randomCollectible.getBoundingClientRect().y < Number(0-10*i) {randomCollectible = this.collectibleHolderObjectList[ Math.floor(Math.ra else {break;} } return randomCollectible; } getHiveById(hiveId) { let retVal = null; for (let i = 0; i<this.hiveObjectList.length; i++) { if (this.hiveObjectList[i].getHiveId() === hiveId) {retVal = this.hiveObjectList[i]; break;} } return retVal; } getFlowerById(flowerId) { let retVal = null; for (let i = 0; i<this.flowerObjectList.length; i++) { if (this.flowerObjectList[i].getFlowerId() === flowerId) {retVal = this.flowerObjectList[i]; break;} } return retVal; } getCollectibleHolderById(collectibleId) { let retVal = null; for (let i = 0; i<this.collectibleHolderObjectList.length; i++) { if (this.collectibleHolderObjectList[i].id === collectibleId) {retVal = this.collectibleHolderObjectList[i]; break;} } return retVal; } getCollectibleById(collectibleId) { let retVal = null; for (let i = 0; i<this.collectibleList.length; i++) { if (this.collectibleList[i].id === collectibleId) {retVal = this.collectibleList[i]; break;} } return retVal; } getBeeById(collectibleId) { let retVal = null; for (let i = 0; i<this.beeObjectList.length; i++) { if (this.beeObjectList[i].beeDiv.id === collectibleId) {retVal = this.beeObjectList[i]; break;} } return retVal; } getRandomOtherText() { this.rebuildOtherTextList(); let randomOtherText = this.otherTextList[Math.floor(Math.rando if (!(randomOtherText)) { randomOtherText = document.createElement("div"); randomOtherText.setAttribute("class","otherText"); let randomTextNode = document.createTextNode(" "); this.outerDoc.append(randomOtherText); randomOtherText.append(randomTextNode); this.otherTextList.push(randomOtherText); } return randomOtherText; } } class Bee { constructor(beeDivId, moveHandler) { this.id = beeDivId; this.moveHandler = moveHandler; this.activated = false; this.beeDiv = document.getElementById(this.id); this.beeDiv.setAttribute("tabindex","0"); this.beeDiv.onfocus=()=>{this.beeDiv.click(); this.moveHandler.show this.pollenCount = 0; this.honeyCount = 0; this.beeDiv.onclick = (event)=>{event.stopPropagation(); this.selectNextAction(this.beeDiv.parentNode.id,this.beeDiv.parentNode.get activeBees++; } //this.beeDiv.innerHTML = this.beeDiv.parentNode.id+" "+this.beeDiv this.pollenNode = document.createTextNode(""); this.pollenHolderNode = document.createElement("div"); this.pollenHolderNode.appendChild(this.pollenNode); this.pollenHolderNode.style.fontSize="x-small"; this.pollenHolderNode.setAttribute("position","absolute"); this.currentDiv = this.beeDiv.parentNode; this.beeDiv.appendChild(this.pollenHolderNode); } moveToAnotherDiv(currentDivX,currentDivY,otherDivId) { let otherDiv = document.getElementById(otherDivId); let thisMoveAnimation = moveToAnotherDiv(this.beeDiv,currentDivX,cu if (thisMoveAnimation) { thisMoveAnimation.onfinish= () =>{ let otherDivX = otherDiv.getBoundingClientRect().x; let otherDivY = otherDiv.getBoundingClientRect().y; this.activated = false; this.selectNextAction(otherDivId,otherDivX,otherDivY); thisMoveAnimation.cancel(); }; } } encirclingAnimate(centerX,centerY,cycles) { let a = Math.floor(50+Math.random()*40); let k = Math.floor(1+ Math.random()*10); let xCoord = 0; let yCoord = 0; const frames = []; for (let theta = 0; theta < 2*Math.PI; theta = theta+0.01) { xCoord = a * Math.cos(k*theta)*Math.cos(theta)+centerX-this.beeDiv.
yCoord = a* Math.cos(k*theta)*Math.sin(theta)+centerY-this.beeDiv.g frames.push({transform:"translateX("+Math.floor(xCoord)+"px) transl } const durationInformation = {duration: 8000, iterations: cycles,} return this.beeDiv.animate(frames,durationInformation); } selectNextAction(currentDivId,currentDivXin,currentDivYin) { let currentDivX = currentDivXin || document.getElementById(currentD let currentDivY = currentDivYin || document.getElementById(currentD let currentDiv = document.getElementById(currentDivId); if (currentDiv) {this.currentDiv = currentDiv;} if (activeBees > activeBeeLimit) {activeBees--;} else if (!this.activated) { this.activated=true; if (queenDropped) { this.moveToAnotherDiv(currentDivX,currentDivY,document.getEleme this.beeDiv.getAnimations()[0].onfinish=()=>{document.getElemen } else { switch (this.currentDiv.className) { case 'collectibleHolder': if (currentDiv.children[0]) { if (currentDiv.children[0].innerHTML === "h") {this.honeyCount +=1; this.pollenNode.nodeValue += "h"; this.moveToAnotherDiv(currentDivX,currentDivY,this.moveHandler } else { this.pollenCount +=1; this.pollenNode.nodeValue += currentDiv.children[0].innerHTM let chanceOfGoingToTheHive = Math.floor(Math.random()*4) if (chanceOfGoingToTheHive < this.pollenCount) { this.moveToAnotherDiv(currentDivX,currentDivY,this.moveHandl } else { let randomId = this.moveHandler.getRandomFlower().id; if (randomId === currentDivId) { randomId = this.moveHandler.getRandomFlower().id; } this.moveToAnotherDiv(currentDivX,currentDivY,randomId); } } if (currentDiv.children[0].getAttribute("class")==="collectibl currentDiv.removeChild(currentDiv.children[0]); currentDiv.innerHTML = " "; } else { //currentDiv.innerHTML = "AAAA"+currentDiv.children[0].getAttr } }else { let randomId = this.moveHandler.getRandomFlower().id; if (randomId === currentDivId) { randomId = this.moveHandler.getRandomFlower().id; } this.moveToAnotherDiv(currentDivX,currentDivY,randomId); } break; case 'flower': this.pollenCount += 1; if (Math.random() > 0.5) { this.pollenNode.nodeValue += "p"; } else { this.pollenNode.nodeValue += "d"; } var delay = 0; if ((this.pollenCount > 1) && (Math.random()>0.5) && (countOfCurre countOfCurrentlyMovingFlowers++; let thisFlower = this.moveHandler.getFlowerById(currentDiv.getAt thisFlower.spawnOtherFlower(); this.moveHandler.showHoverText(currentDiv); } let chanceOfGoingToTheHive = Math.floor(Math.random()*4) if (chanceOfGoingToTheHive < this.pollenCount) { this.moveToAnotherDiv(currentDivX,currentDiv.getBoundingClientRec } else { let randomId = this.moveHandler.getRandomFlower().id; if (randomId === currentDivId) { randomId = this.moveHandler.getRandomFlower().id; } this.moveToAnotherDiv(currentDivX,currentDiv.getBoundingClientRec } break; case 'hive': let thisHive = this.moveHandler.getHiveById(currentDivId); if (thisHive) { if (this.pollenCount >0 || this.honeyCount >0) { this.pollenNode.nodeValue = ""; let thisHive = this.moveHandler.getHiveById(currentDivId); thisHive.addPollen(this.pollenCount+4*this.honeyCount); this.pollenCount =0; this.honeyCount = 0; } let nextMoveObject = this.moveHandler.getRandomCollectibleHolder( this.moveToAnotherDiv(currentDivX,currentDivY, nextMoveObject.getA }else { this.moveToAnotherDiv(currentDivX,currentDivY,this.moveHandler.ge //this.beeDiv.innerHTML = currentDivId; } break; default: this.moveToAnotherDiv(currentDivX,currentDivY,this.moveHandler.ge //this.beeDiv.innerHTML = String(currentDivX); break; } } } } deactivate() { this.activated=false; } activate() { this.activated=true; this.selectNextAction(this.beeDiv.parentNode.id,this.beeDiv.parentN } } class Flower { constructor(flowerDiv, moveHandler) { this.id = flowerDiv.getAttribute("id"); this.moveHandler = moveHandler; this.flowerDiv = flowerDiv; this.pollinated = false; this.flowerType =this.flowerDiv.textContent || "X"; } spawnOtherFlower() { //first find a spot to spawn in let textToSpawnIn = this.moveHandler.getRandomOtherText(); while (textToSpawnIn.innerHTML.length === 0) {textToSpawnIn = this.moveHandler.getRandomOtherText();} let stringToSpawnIn = String(textToSpawnIn.innerHTML); let sliceIndex = Math.floor(Math.random()*stringToSpawnIn.length) | let latterText = stringToSpawnIn.slice(sliceIndex); let formerText = stringToSpawnIn.slice(0,sliceIndex-1); textToSpawnIn.innerHTML = formerText; const newFlowerText = document.createTextNode(this.flowerType); const newFlowerDiv = document.createElement("div"); newFlowerDiv.setAttribute("id","flowerNo"+ Number(this.moveHandler.
newFlowerDiv.setAttribute("class","flower"); newFlowerDiv.appendChild(newFlowerText); textToSpawnIn.insertAdjacentElement("afterend",newFlowerDiv); const newOtherText = document.createElement("div"); newOtherText.setAttribute("class","otherText"); const newOtherTextText = document.createTextNode(latterText); newOtherText.appendChild(newOtherTextText); newFlowerDiv.insertAdjacentElement("afterend",newOtherText); this.moveHandler.rebuildOtherTextList(); let otherDiv = newFlowerDiv; let otherDivX = window.scrollX + otherDiv.getBoundingClientRect().x; let otherDivY = window.scrollY + otherDiv.getBoundingClientRect().y; let currentX = window.scrollX + this.flowerDiv.getBoundingClientRect let currentY = window.scrollY + this.flowerDiv.getBoundingClientRect let dx = currentX-otherDivX; let dy = currentY-otherDivY; let timeOfTrip = Math.floor(Math.sqrt(dx*dx+dy*dy))*50; const transformationContent = [ {transform: "translateX("+dx+"px) translateY("+dy+"px) scale(0.25) {transform: "translateX(0px) translateY(0px) scale(0.25)"}, {transform: "translateX(0px) translateY(0px) scale(1)"}, ]; const transformationDuration = { duration: timeOfTrip, iterations: 1, } let thisMoveAnimation = newFlowerDiv.animate(transformationContent,t //only create the new flower when it settles thisMoveAnimation.onfinish= ()=>{ countOfCurrentlyMovingFlowers--; this.moveHandler.flowerObjectList.push(new Flower(newFlowerDiv,th thisMoveAnimation.cancel(); } return timeOfTrip; } getFlowerId() { return this.id; } } class Hive { constructor(hiveDivId, moveHandler,initialHoneyCount) { this.id = hiveDivId; this.moveHandler = moveHandler; this.hiveDiv = document.getElementById(this.id); this.pollenCount = 0; this.honeyCount = initialHoneyCount; this.honeyCountSpanId = this.id+"honeyCount"; this.hiveDiv.innerHTML="#: <span id=\""+this.honeyCountSpanId+"\">" this.honeyCountSpan = document.getElementById(this.honeyCountSpanId //this.produceQueen(); this.displayHoneyCount(); } getHoneyCount() { return this.honeyCount; } getPollenCount() { return this.pollenCount; } convertPollenToHoney() { let newHoney = Math.floor(this.pollenCount / 4); let remainingPollen = this.pollenCount % 4; this.honeyCount =parseInt(this.honeyCount)+parseInt(newHoney); this.pollenCount = remainingPollen; if (this.honeyCount === 8336) { this.produceQueen(); this.removeHoney(8336); } this.displayHoneyCount(); } displayHoneyCount() { this.honeyCountSpan.innerHTML = this.honeyCount+ "|" + this.pollenC } addPollen(newPollen) { this.pollenCount += newPollen; this.convertPollenToHoney(); } //returns honey number actually removed removeHoney(honeyToRemove) { let retVal = 0; if ((this.honeyCount - honeyToRemove) <=0) {retVal = this.honeyCount; this.honeyCount = 0;} else { retVal = honeyToRemove; this.honeyCount -= honeyToRemove; } this.displayHoneyCount(); return retVal; } getHiveId() { return this.id; } produceQueen() { this.queen = new Queen(this.moveHandler,this,this.moveHandler.queen } } class Queen { constructor(moveHandler, hive, queenButtonId) { this.moveHandler = moveHandler; this.hive = hive; this.hiveDiv = document.getElementById(hive.getHiveId()); this.queenDiv = document.createElement("div"); this.queenDiv.className = "queen"; this.queenDiv.setAttribute("draggable",true); this.beeNumber = 0; this.queenDiv.setAttribute("tabindex","0"); this.queenText = document.createTextNode("q"); this.queenDiv.appendChild(this.queenText); document.getElementById(queenButtonId).appendChild(this.queenDiv); this.mobileScrollQueenText= document.createTextNode("q"); this.mobileScrollQueenDiv = document.createElement("div"); this.mobileScrollQueenDiv.appendChild(this.mobileScrollQueenText); this.mobileScrollQueenDiv.className = "queen"; this.mobileScrollQueenDiv.classList.add("queenBeingDragged"); this.mobileScrollQueenDiv.style.position="fixed"; this.moveHandler.outerDoc.appendChild(this.mobileScrollQueenDiv); const transformationContent2 = [{transform:"translateX(-20px)"},{tr const transformationTiming2 = {duration:1000,iterations:Infinity}; this.thisMoveAnimation = this.circleAnimate(this.hiveDiv); this.queenDiv.onfocus = (event) => { setTimeout( ()=>{ if ((testMoveHandler.outerDoc.style.display !== "none")){ if (!(currentlyDragging)) { queenDropped = true; if (this.queenDiv.getAnimations()[0]) { this.queenDiv.getAnimations()[0].cancel();} moveToAnotherDiv(this.queenDiv,this.hiveDiv.getBoundingClientRect linkPreparer();}; } } } ,1000); }; this.queenDiv.addEventListener("dragstart",()=>{this.thisMoveAnimat this.queenDiv.addEventListener("drag",()=>{this.queenDiv.classList.
this.queenDiv.addEventListener("dragend",()=>{ setTimeout( ()=>{ currentlyDragging = false; if (queenDropped) {this.thisMoveAnimation.cancel();} else { this.thisMoveAnimation.cancel(); moveToAnotherDiv(this.queenDiv,this.moveHandler.hiveObjectList[ } this.queenDiv.classList.remove("queenBeingDragged"); linkPreparer(); },50); }); this.queenDiv.addEventListener("touchstart",(event)=>{ event.stopPropagation(); event.preventDefault(); this.thisMoveAnimation.pause(); this.mobileScrollQueenDiv.classList.remove("queenBeingDragged");}); this.queenDiv.addEventListener("touchmove",(event)=>{ event.stopPropagation(); event.preventDefault(); this.queenDiv.classList.add("queenBeingDragged"); let touchX =Math.floor(event.targetTouches[0].pageX)+"px"; let touchY = Math.floor(event.targetTouches[0].pageY-40)+"px"; this.mobileScrollQueenDiv.style.left = touchX; this.mobileScrollQueenDiv.style.top = touchY; let touchXNum =Math.floor(event.targetTouches[0].pageX); let touchYNum = Math.floor(event.targetTouches[0].pageY); //this.mobileScrollQueenDiv.innerHTML= "Left"+touchX+ " top" + tou let returnValue = ""; let rect = ""; for (let i = 0; i< this.moveHandler.outerDoc.getElementsByClassNam rect = this.moveHandler.outerDoc.getElementsByClassName("queenC if ((Number(touchXNum) > rect.left) && (Number(touchXNum) < Numb returnValue = this.moveHandler.outerDoc.getElementsByClassName this.moveHandler.outerDoc.getElementsByClassName("queenCollect } else  { this.moveHandler.outerDoc.getElementsByClassName("queenCollect } } }); this.queenDiv.addEventListener("touchend",(event)=>{ event.stopPropagation(); event.preventDefault(); this.thisMoveAnimation.play(); this.queenDiv.classList.remove("queenBeingDragged"); this.mobileScrollQueenDiv.classList.add("queenBeingDragged"); queenDropHandlerBase(document.getElementsByClassName("queenCollector }); this.toggle = true; this.beeNumber = 0; } circleAnimate(placeToAnimateAround) { const transformationContent = [{transform: "translateX("+Number(pla let radiusMagnitude = 40; let radius = radiusMagnitude; let xCoord = 0; let yCoord = 0; for (let theta = 0; theta<Number(2*Math.PI); theta=theta+0.01) { radius = Math.floor(radiusMagnitude+10*Math.sin(10*theta)); xCoord = Math.floor(radius*Math.cos(theta)); yCoord = Math.floor(radius*Math.sin(theta)); transformationContent.push({transform: "translateX("+Number(xCoor } const transformationDuration = { duration: 5000, iterations: Infinity, } return this.queenDiv.animate(transformationContent,transformationDu } moveToAnotherDiv(currentDivId) { while (this.queenDiv.getAnimations()[0]) {this.queenDiv.getAnimations()[0].cancel();} let currentDiv = document.getElementById(currentDivId);//document.g var beeToMeet; if (this.beeNumber < this.moveHandler.beeHolderObjectList.length) { beeToMeet = this.moveHandler.beeHolderObjectList[this.beeNumber]; } else { beeToMeet = document.getElementById("LinkButton"); } this.beeNumber++; let otherDiv = beeToMeet;//.beeDiv; let otherDivId = otherDiv.getAttribute("id"); let currentDivX = currentDiv.getBoundingClientRect().x; let currentDivY = currentDiv.getBoundingClientRect().y; let thisMoveAnimation = moveToAnotherDiv(this.queenDiv,currentDivX, thisMoveAnimation.onfinish= () =>{ if ( otherDiv.children[0]) { otherDiv.children[0].click();} if (otherDiv.getAttribute("class") === "beeHolder") { this.moveToAnotherDiv(otherDivId); //this.moveHandler.outerDoc.prepend(otherDiv); } else { document.getElementById("LinkButton").appendChild(this.queenDiv); linkPreparer(); buttonTriggered=false; queenDropped = true; this.circleAnimate(); } }; } } class Collectible { constructor(collectibleDiv,moveHandler) { this.collectibleDiv = collectibleDiv; this.collectibleType = collectibleDiv.innerHTML || "p"; this.id = this.collectibleDiv.getAttribute("id"); this.moveHandler = moveHandler; } destroy() { this.collectibleDiv.parentElement.removeChild(this.collectibleDiv); this.moveHandler.collectibleList.splice(this.moveHandler.collectibl } } const pageSelector = document.getElementById("linkSelect"); pageSelector.onchange = ()=>{fakeLinkHandle(pageSelector.value);}; document.getElementById("fakeLink").addEventListener("keydown",(event)= parse(document.getElementById("OutsideOfEverything")); parse(document.getElementById("ToasterArticle")); parse(document.getElementById("AllisonArticle")); parse(document.getElementById("LibraryArticle")); parse(document.getElementById("VerbosityArticle")); parse(document.getElementById("FFArticle")); function addQueenSkip() {testMoveHandler.getRandomHive().produceQueen();} testMoveHandler = new MoveHandler("OutsideOfEverything","LinkButton", ["w toasterHandler = new MoveHandler("ToasterArticle","queenReturnToaster",[ allisonHandler = new MoveHandler("AllisonArticle","queenReturnAllison",[ libraryHandler = new MoveHandler("LibraryArticle","queenReturnLibrary", verbosityHandler = new MoveHandler("VerbosityArticle","queenReturnVerbos ffHandler = new MoveHandler("FFArticle","queenReturnFF", ["yay","don't b </script> </body> </html> « SCP-8334 | SCP-8335 | SCP-8336 » ‡ Licensing / Citation Cite this page as: "SCP-8335" by J_V_G, Alzin Cdag, IndustryStandard, esriel, from the SCP Wiki. Source: https://scpwiki.com/scp-8335. Licensed under CC-BY-SA.
For information on how to use this component, see the License Box component. To read about licensing policy, see the Licensing Guide.
Name: SCP-8102 Author: Monkeysky License: CC-BY-SA Source Link: https://scpwiki.com/scp-8102 Additional Notes: Entire article excerpted with author's permission.
Name: SCP-6430 Author: S D Locke License: CC-BY-SA Source Link: https://scpwiki.com/scp-6430 Additional Notes: Entire article excerpted with author's permission.
Name: SCP-426 Authors: Flah License: CC-BY-SA Source Link: https://scpwiki.com/scp-426 Additional Notes: Entire article excerpted.
Name: SCP-2565 Author: Taffeta License: CC-BY-SA Source Link: https://scpwiki.com/scp-2565 Additional Notes: Entire article excerpted.
Name: SCP-2602 Author: Communism will win License: CC-BY-SA Source Link: https://scpwiki.com/scp-2602 Additional Notes: Entire article excerpted.
Name: SCP-3309 Authors: Lt Flops,PhamtomGuy License: CC-BY-SA Source Link: https://scpwiki.com/scp-3309 Additional Notes: Stylistic elements used to replicate the wikidot posting interface used and modified.
Name: The Bee-Boy's Song Authors: Rudyard Kipling License: Public Domain Source Link: https://en.wikisource.org/wiki/The_Bee-Boy%27s_Song Additional Notes: From a 1906 book, Puck of Pook's Hill. Entire poem excerpted, with dollar signs added in place of some s's Name: Bee Sculpture Author: Alzin Cdag License: CC-BY-SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/ Bee%20Sculpture.jpg Additional Notes: A sculpture of a bee made entirely of food Name: Lone Toast Author: Alzin Cdag License: CC-BY-SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/LoneToast.jpg Additional Notes: A single slice of bread with honey drizzled on it in the shape of a lowercase h Name: Two Toast Author: Alzin Cdag License: CC-BY-SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/TwoToast.jpg Additional Notes: A single slice of raw bread and one toasted slice on a plate with honey drizzled on them in the shapes of lowercase letters h Name: toaster Bagel Author: Alzin Cdag License: CC-BY-SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/ toasterBagel.jpg Additional Notes: A single bagel, covered in white creamy cheese with honey drizzled on it in the shape of a lowercase h Name: esriel-color-print.gif Author: Esreil License: CC-BY-SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/esriel-color- print.gif Additional Notes: A gif showing a printer printing out a paper with a yellow lowercase h on it Name: weirdToast Author: IndustryStandard License: CC-BY_SA 3.0 Source Link: https://scp-wiki.wdfiles.com/local--files/scp-8335/ weirdToast.jpg Additional Notes: adapted from Wikimedia files of toast and honey also in this license box Name: Toast.jpg Author: Nachoman-au License: CC-BY_SA 3.0 Source Link: https://commons.wikimedia.org/wiki/File:Toast.jpg Additional Notes: adapted into weirdToast Name: Honey_colloidal_liquid.jpg Author: [Nandhinikandhasamy] License: CC-BY_SA 4.0 Source Link: https://commons.wikimedia.org/wiki/ File:Honey_colloidal_liquid.jpg Additional Notes: adapted into weirdToast animalbeeco-authoreddocumentesoteric-classinteractivemetascpswarmthaumiel page revision: 23, last edited: 21 Feb 2025 17:16 Edit Rate (+47) Tags Discuss (20) History Files Print Site tools + Options Edit Sections Append Edit Meta Watchers Backlinks Page Source Parent Lock Page Rename Delete Help  | Terms of Service  | Privacy  | Report a bug  | Flag as objectionable Powered by Wikidot.com Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License Click here to edit contents of this page.
Click here to toggle editing of individual sections of the page (if possible). Watch headings for an "edit" link when available.
Append content without editing the whole page source.
Check out how this page has evolved in the past.
If you want to discuss contents of this page - this is the easiest way to do it.
View and manage file attachments for this page.
A few useful tools to manage this Site.
See pages that link to and include this page.
Change the name (also URL address, possibly the category) of the page.
View wiki source for this page without editing.
View/set parent page (used for creating breadcrumbs and structured layout).
Notify administrators if there is objectionable content in this page.
Something does not work as expected? Find out what you can do.
General Wikidot.com documentation and help section.
Wikidot.com Terms of Service - what you can, what you should not etc.
Wikidot.com Privacy Policy.
