0,]']ą>Sï}WĸÍu§ðp8·d%qy)6o;]ÉAĶösïũôôô”°ÂVl†3 0.95 then dx = rnd(-1, 1) dy = rnd(-1, 1) p = pix(x + dx, y + dy) if 8 <= p and p < 12 then pix(x, y, p) end end end end end function pattern() local x, y, c for x = 0, 239 do for y = 0, 135 do c = x // 1 ~ y // 1 pix(x, y, 8 + c % 3) end end end function title() local string = "Worldle" local width = print(string, 0, -60, 3, false, 3) for y = -2, 2 do for x = -2, 2 do print(string, (240 - width) // 2 + x, 8 + y, 1, false, 3) end end print(string, (240 - width) // 2, 8, 3, false, 3) end function gets() A = "abcdefghijklmnopqrstuvwxyz0123456789-=[]\\;'`,./ " S = "ABCDEFGHIJKLMNOPQRSTUVWXYZ)!@#$%^&*(_+{}|:\"~<>? " for i = 0, 3 do local c = peek(0xff88 + i) if c > 0 and c <= #A and keyp(c, 20, 3) then return key(64) and S:sub(c, c) or A:sub(c, c) end end return nil end game = { GUESSING = {}, WON = {}, LOST = {}, state = GUESSING, current_line = 1, current_word = nil, word_to_guess = nil, tried_words = {nil, nil, nil, nil, nil, nil}, total_lines = 6, wait_time = 0, music_playing = false, } function game:init() self.word_to_guess = word() self.current_word = '' self.state = self.GUESSING self.current_line = 1 self.tried_words = {nil, nil, nil, nil, nil, nil} pattern() end function game:input(c) if c == ' ' then if self.music_playing then music() self.music_playing = false else music(0) self.music_playing = true end end if self.state ~= self.GUESSING then if time() > self.wait_time then game:init() end return end if c:match("%a") == nil then return end self.current_word = self.current_word .. string.upper(c) if (#self.current_word >= 5) then self.tried_words[self.current_line] = self.current_word if self.current_word == self.word_to_guess then self.state = self.WON self.wait_time = time() + 2000 trace('WON') else self.current_word = '' if self.current_line >= self.total_lines then self.state = self.LOST self.wait_time = time() + 2000 trace('LOST') end end self.current_line = self.current_line + 1 end end function game:draw() local line_number local origin = (240 - 5 * char_width) // 2 -- Draw letters background for line_number = 1, game.total_lines do local x, y y = line_start_y + line_height * line_number for x = 0, 4 do rect(origin + x * char_width, y, 12, 12, 15) rectb(origin + x * char_width - 1, y - 1, 14, 14, 0) end end -- Draw previous attempts for line_number = 1, game.total_lines do local y = line_start_y + line_height * line_number if (self.tried_words[line_number]) then self:draw_checked_line(origin, y, self.tried_words[line_number]) end end if self.state == self.GUESSING then -- Draw current line self:draw_current_line(origin, line_start_y + line_height * self.current_line) else if time() > self.wait_time then local text = "PRESS ANY KEY TO RESTART" local w = print(text, 0, -100, 12) print(text, 120 - w // 2, line_start_y + line_height * (self.total_lines + 1) + 2, 12) end end end function game:draw_checked_line(x, y, word) local i for i = 0, 4 do local c = string.sub(word, i + 1, i + 1) local color = 14 if string.find(self.word_to_guess, c) then color = 4 end if string.sub(self.word_to_guess, i + 1, i + 1) == c then color = 5 end if self.state == self.WON and word == self.word_to_guess then color = (i + time() / 99) % 8 end if c then print(c, x + i * char_width + 1, y + 1, color, true, 2) end end end function game:draw_current_line(x, y) local i for i = 0, 4 do local c = string.sub(self.current_word, i + 1, i + 1) if c then local pos = x + (i * char_width) print(c, x + (i * char_width) + 1, y + 1, 13, true, 2) end end local cursor_pos = #self.current_word if cursor_pos < 5 and time() % 500 > 250 then print("_", x + cursor_pos * char_width, y + 1, 13, true, 2) end end function BOOT() cls() pattern() game:init() end function TIC() disperse() title() local c = gets() if c then game:input(c) end game:draw() end words = "whichtheirotherthereshallaboutfirstgreatafterwhereplacestateunderpointfoundrightchildlargethreeorderwritethingpowerbeginworldstudygroupsmallwomanwhilestillthinkvalueeveryneverearlywaterbringforcecauseoftenhouseagainlevelamongsincehumanwholelightstandyounguntilabovecloseclasscarrylearnbuildsensepartyissueleastdeathoccurfieldallowdatummodelspeakreachexiststartheartofferclearshortnightlimitwhitemonthalongquitestoryapplymoneybreaklocalserveleavetrainclaimlaborpriceevententertradecoverpapercolorcourttotalshareblackbloodstageteachthirdplantraisespacerangemajorrefersoundprovetruthalonetableimagevoicevisitcrossbasisbelowequaldoubtfightdrivetreatagreefrontpieceroundshapemoralscalerivereartharizemarryfavorwatchpresspeacechiefgrantfocusthrowhorseenemyavoidfinalstyleagentfaithphasereplyjudgebasicargueadoptboardstonetouchreadyerrorsceneheavysleephonorstoreadmitmusicsevenprinteightlegaltitlestockboundunionenjoyfullyskillnorthgoodstodaycatchwrongdrinkcheckupperdreamsmileblockyieldstafftrustfloorpaintmouthsouthdresstrialglassbroadcurveadulthappyshiftforthsightbrainoughtdailyguideplatespeedtrooplayerusualcountgreenworthmetalbirthidealjointratiospentimplywoundslavenovelcivilplaneframenurselaughangletraceownerdanceplainquotenervespokescorehabitcrimeyouthchaincrowdawarespendcleanpounddepthcyclefruitfiftysolidindexfreshdelaythankshaketastebriefguardproofcoastgradewastepriortoothfluidrapidelectsolveinputfortynobleorganchairinnerfalsethemeurbanmatchgrainentryaltersteelfibretrackmarchpupilruraltumorapartceasethickclockversestickhenceroutesmokemotorquietshockabusetribesheetuniteemptyspiteunitygravetrulycrowngracetrendlabelcloudshoreblesssweetfaultsharpexacttopictwicenoiseminorreignsugarroyalworrybrownacutewheelmountquickshellglorybeingmeritessayseizeassetaheadasideblindradioactorslopesportgrassadaptstormcharmalivesweepextragrandlogicsteamfifthpridedwellvitalshoutguessbreadscopeouterdraftshootliverfleshclimbhotelstaresixtyerectfeverstripsplitguesttractchestangerclothroughshadeflamevirusstealswordshineoceandozentowermetrealarmfloodrulerblameloosefleetgraspvalvephonemouseslidedramapulsepausefloatuttercanalspelllovercrackweighfancyproudswellvalidburstserumstuffawardangrynewlychartstainrealmsparehurryangeldrovesorryhumorcheappitchalikeglandpanelgrossprimerivalexertmaybebreedsheepsmellarraytraitrenewflashwidthmovietrailmakermidstlowerdecaymercyreactwheatbrushdrainarrowknifesainteliteclerkcheeksweardriftbricktruckstampwidowleaserenalusagebeachknockpilotbravecablequeenfatalcrushrebelprizeswingtightawaiturinebeastnavalrelaxbleedfaintdrillhavenexiletwistshaftsixthdevilguiltoxidelodgemagictrunkgriefvaporuncleshamebrandgiantgreetenactinterridgecoachamuseshirtcurselunchrigidbadlyclickcrafteagerpatchequipfenceweaveamendaltarpleadstakealiensteepstairvoterfeastvideocastevagueabidebasincrueltemptgraphshearnakedonsetawakecarvetrickblankprosedensebladewagongenuscreepscrewdreadappleoperainferensuebuyerprobeincurcruderifleblendamazecreamalloyupsetcabinflockspoilbenchsolartenthwearycheerjuicedirtyphotoclingrumorlasertoughampleghostchasesweatmouldevokeskullsnakeboastcargoshelfflankcorpsunifyspinestackdrunkorbitharshgraftloyalmergequerydiaryawfulblastnegroalertdonorcrashembeddeityspraypanicpianogenrehauntflourslicemultidrowngaugebeardvigorsiegethumbbridefraudendowmourntokenbrassarmorloftysternwidensmarttensebowelglobecliffsparkelbowvividflushavailflingassaycomicsteerfollytoxicquestscaremayorsuprachillstrawexpelsheerluckycoughskirtcanoncanoepiousstifffunnyforgeouncekneelcrazybloomcreedvowelpietychaosvomitciviccubicrallycrestfattypettyhoneylocuswreckopticthiefrecurtreadwristpennypunchexaltbosomepochaloudcrawletherulcerfocalminerswiftannoyperilfetchninthmotifrouseironysinusvocalarenaadornblazegloveauditlobbyvaultjewelglareresinclashbellycouchlinennasalwrathsoberspeargleamgrindbasalthighstalklapsehedgestavescornwaistporchbunchelderolivewitchditchquasiagonyfairyfrownpronewhalescentmoundgrazepaganpolarsillytutorrhymeswampdigitpursequotaforumcloaklarvapastegroanbrakechantspillstoolshruglymphlitrehastelyricpearlfrancrelicalignscrapdefergrapecrustchordcreekannexfrostleversupersurgeanklerepayhatchchokesandygrovestallcheatwedgemoistrockybraceversaroastcolonrelayblushstingriderviralranchmaximswarmannumfacetstoutdogmamicroshaveyeastmerrybroodeaglealphaminustheftshrubcamelclaspbatchclonehingeclampglidepurgeallotsuitechoirdivergratemarshstrapstrayovertonionaxialsevergloomsmashmolartoxincigardairyqueernaiveslatetapersadlyfrankplankfablecraveavertaudioscoutspikebluntfierytorchsaucepinchhoverflaskflareadoretowelglazenoisytigergooseyearnperchbribeevadecoralovarybaronrepelwhirlexcelspermdwarfmacrorobotpluckdetergalopbrutepapalnicheappalteaseunfittroutstoopundueaislebonusopiumgroomvillainletnotchheavespoontoastmaizesmearhoundbegetsporeradaralleyivoryshuntaxiomvergelemonniecemedalmanorsunnyqueuepositcrookbrookstumpfluteenvoyerodeferryboostdeltascalppeniswieldchalkmodemtenethastyimpelusherspiceripenpixelprismalbumthorncleftberryshaleaortaerasescrubblissestercramptimidsewergammabullyvalorflakesquatspasmblinkrigorcandydepotrupeemanlyrivetcachetidalshoveultrarainyrabbitenorgreedpenalfaunataboomimicsquadidiomdiodemottochickpoiserotorsaladhoistioniclancebargeslackdustyfloraedictmuddycaterbesetplumeguildwavercadreriskyglossinerttrampardorhardyguisetonicbluffcrankgrowlfuzzyabbotfraillumenslantaffixbulgedrapefriargorgesmitetitheweirdtruceethiclibelledgeproxyanodeflintslingcranesetupstrewspawnidiotinfratainterupteludepetalamplybooththrobbadgenastyfoliopivothoardyachtsneerclumppeachhandyapronpouchwittydroopsharkjurorabatestarktempochorebitchprunepsalmabysscedarwharfneedyswirlscoldlinerremitabbeydoughquiltboughpalsyusurprinsevogueemailcovettrashbleaksneakmucusprickcometblondsnarequartgruntcomerimbuealoofdoinglunarwringslashhobbytacitmodalgropelikenfossastuntdummyslumpcocoatonnehordesniffjellyshinyozonesavorbaconbraidsteadscanttrussplumbfarceejectchessprivyethosmapleshredlowlysyrupchunkfeignsieveskatelosercrisprevelwaiveshawldimlybrothsalonclownfemurbriskchinaswinescoopbirchsatinscarfimagosmackmaniaspadebrinkcommaspiretimerstaleattichelixvenuetaunthitchroguemadamsnailethylvicarlaitymuraljollyaliasterraaloftreusegiverwhoreadeptstinkpuppywhineextolstonystrutiliacmirthdowryrazorhairyplumpnymphoutgogauzescourvistadodgeisletannulaptlywrestpedalallayhumidlotussteakmoverbulkytriadresetgleangardetibialucidsnackberthbroomgodlybathehavocchurncreaksnortshadysteedamberplazaabhorsynodwafercircabuddydebitchasmsnufftallylatchbootyfilthlupuslouseleachpaddyrustytunicsallydebutfreakamassgrillcadetoddlysnowydizzyaughtmammashoaloasisthumpmasoncookyhunchsnarlobesecrumbchimesmeltmixernomadatoneshackflickeatervenomspoutinlayseinemoresfecaltwinevinylravenbakerflirtbrinenoblypokerdauntcrazeslangspeckrubleabortnylontrumpquellcratemincefrockbefitunarmsloopscowlsemenkarmasabrenodalcurlytingesherdclovedronebeechformesirenduskybellehillyatlasspurtshireamissgablegroinslickparsepolypwagerlathetarrylatexvaletmistyblandmelonmanicquaillurchgailyscoffgullydaddywhoopbelieregalaromamaterpatiowoodyparchedifytuberfiendgottatonalswooplynchmoteltakerbeveltropegypsyheathsheaftorsolorrymagmamodusmummyamourdittosnorebuggysmithquillnexusleafyshakyelateexultpetitduchyquarkhelloplaitwinceotterpizzanudgedelveleveechaffbowerdowerwindydebugimbedcryptspurnchafeargonleperpayerruddyglinthotlyslimetotemboronwaltzvigilgourdcolicstintpoppywakenknaveramusdecryoutdoharemprowlcantomangovagusemberprongposseingotoldenwhorluntiecurrymadlyiliumlilacgauntsinewclimesmokydryerenemasleekwhiskelegyacornciderbrawlchuckazurescaryforayavoiranticsnoutfortestaidblurtdaisydingyleechlysissutraadoberoosthydrostoveusurygaudyquakeexudeducatpubicclangrobinconstdeignbroilforgodebarjuntafrothdemurchutebloatscaldsablemessyeerielungehyperchirppiqueshankgiddyanvilbruntthroemilkyluridbolusabackbuglepastaeavesfrondtuplequackhazelflyerevictaforeshirkamidenavelvouchstiltbushyjoisthumushalvemoosewreakdinerquothnatalromansaltyshowyvodkacubitmurkydecorkneadvulvaduettamityadieucilialoathetudeprankcalyxbisonknacktwirlgladeworstpassespoolbibletulipkhakiboxercarerswoonfelonhornycroakslothvauntgamutsquawdecoyparryburghgroutgirthpartiladlehoveldrawltardydandysilkyleashafootharryagilepadretalusrougeknolljuicyscionmesontersehuskyraterineptflaillousysmirknooseinsetadagegougeaegiswinchgravybudgebanalthongtastyrayonchidepolioapacelustyflairhoarycloutburlychertdeifyfloutcowercairnadderlividloginslimyqualmgoingfleckfoggytressopineheronbatonfoyeralibisedanarsonhyenaalgalrebutstomppoachtawnyriserlemmaheadygustocellosheenblaresnipespicyquireebonyfrilljettytrillacridchinkwannaeaselservoochresalvemiserplaidstiletriteprisereavesprigcodexwhirrarborbutylwenchquashtrollfuguesaveraugurtongszonalauralgipsyviperphonyscalyalderspankbingeguiledonnecapermonadmoodysonicodiummannacronycacaoboguswhiffpleatcarolmossybelchcartesurlysepoydrylymustyslinkstriaflukerefitleakyplushgloatboozebylawbonneinurewhackmulchcynicshylysquidkraalswishtwainpayeelimbocredoversodivangristabodeskiffzebramunchdrolltepidfitlyskunkclinkclankidylltorusthymehollypaeondallybigotmitreboraxneighflierbetelmowerrebusjihadducalrabidamblefountreifymatteaspengrimyborerpussyloessspatebalmymoultennuidoneefjordsalvobeigesatyratollbleattelexsigmadonnaabashbruittweedmachogripeovoidtrawlrowdyrevuesleetradondownyslakeconicstoicfeintsavvycaballithediscosedgesulkychampovuleelopeputtyovatejerkycavildirgegruelcobraagatefellalapelconchnitreviolacrepescarpstorkspreesplaysullyliegeglyphdowelchilequirksonarfussyudderiratewhizzportelairdgoutyhaterliberusquenannysingeboricskierstelecopsetwillknellfurrydrossbanjogruffmetrotalonsharduncutrosingoodyracerkioskskeinminimpiperlarchhikerbrazellamawrackskiddscripbosonguanonadirsmockrugbyroomyendueomegaslylyvenalbasilvirtuswiperoachheftydittyskulkcroupcrassmauvescapefoistrowershrewbandythetabaggycrimpdeucesuavepuffywrylystelaunsaydinarcoderfluffprawnsepalquernstokestashcaratsoothlargocameoorthosaucyspinyfurorcopracluckmedicsatishippyidlerjoustmeleecroonpastywhosogroatpeterpithybrashrodeopecanwhistjouleslushcuriakayakfinchcoupepaterblokebractgeniebriarafirelumpyevertgnashtwangrumenileusoctetasterflumedroolbasteagapeswardaugermatintweakauxinashenspookunmanboobyunmetretrotenonlatinmyrrhgrimenevustrothflossroverswathbawdypygmyseedyergottipsyjauntxenonkulakvisorsootysoggylassojokeroakenfudgewillyambitplasmpsychspruewraptbiotaswainbayoudenimtiaralankycaulksaunadullyviandpashacannypinnacleatwipermoronphialindiabilgesidlesauteaglowadmincuriocrierburroclackbywayabaseestopoffallonerpaeanbumpypureerhinocalvesitusrerunrectoinanegnomedousesergetaluktangopylonpoesyelidehaplybotchbonnyemendteddywightdrilywordypolkalocumturbomanseverveferalvelumscootblitzsahibfrisksnoopmommypratecrockweedyemeryretchfossecockyawashfixerhydrasoapystrumspoofunwedbrevevelarbairnpreenduncemotetbunnysullagulchpseudtopazwaxenvoxelscampglebekappamafiatineanigertepeecinchtummysloshcomboberetfecithymenrajahmathsfishybousedeistsalsascuffdollypattyboggyamigooutreaphidquantumbershuckketchtoddychimploamymilchscubachockquafffiordsowerjumbolingotrystmonteblancmoireaskewbellacroftmidgelouistabesastirfoamycrapebriertunercronebikerstymybogeymassymammyuvulapeonywrothradixsheikpigmywhelpagorabaulksepiadolormezzofillyvapidmagusbuxomreevecostaangstfilmyflunklogonseriftackygavelscullsissykronehomercharyfilchdeismnonceitchycowrybillypagersisalswillbelaymangenabobthaneaccombazarpupalfaciarearmparkawizenperdubingovoltevetchunzipafoulkittydrearbipedflakymitereclatmogulmaficfurzeyuccabesotbutchsquibtripemalarcattyfakirgummylucrejapanbassofinisyahoobagelhippolagerchyleoilercresspalmymaliclemurgausspulpychinetricelianaombrelibracaponbrawnsuedegustytapirunlitdrakerenteslatynappemoldyderbymealysirupoctalcodecburinbreammushydarkyarrastitanmeatytestamuftiscreebannsrecapchivestatstonergulesunfixsconedegasincusharpypandabightreedycoveyaniseumbrajumpyspikyiglooberylcopalkinkytrierhertzlivenspoorpudgyhutchnidusjuntotestyghoulsteinrehabwispyfunkyplashnavvytrinebossylicitcaddybaizedruidretryaretecoylyblasevarnapottyegretthrumpeatyaddleregiewadermulctfiletrunnyprudehennacurienancehenrybifidchurlunarynuttyelfincovenhewermangytholenappypushyverdecornywhelmbatikblurbcaretwooeratonyelandtabbyhomeyravelplunkpeaseabaftaidermommafaeryargotparlytaigabeadyadmixdrierpateneducebalsahussyosiergazerrunicinglehuzzachymeseraicreelsumacpiggysambasolusjennystipewartyseamymacawgoofyinfixdoucejunkyaphisbravoquoadsquabcorseglumedhotiovinetoadyinteldowdytullescrumsennaveldtslurpindievoilevixenlossybeefysatanochercupidmuskyenuresousecozendumpybrinygrailmesnerondosebumhelotkopjedoyenwitheposeragavepeskyswageapproleeryswalewelchicilyrousthirereidergauzygunnybabelblearmeccaeyrieyokelbobbypeevedachaloonyoratesantolexisllanosibylindusskimpdalleukasebedewkiddyupendraspysynchcentopansystylofaradumbelquoitsnideperseparisraneecivettilthbogieveganspunkplicaswashmuggydavitmarieproemsoughcupelprosyschwahocusperkyjerryorielfilermyomaaimerastrocabbyoakumdingochardshushlathisonnyatopygeckobasonpintoquoindoilychelapornodurumessensoldometissantaspielgumbochompsylphauntyunbarpickyspumerakertommystoatgaffekopeksedergrebeniftyshitecensegessomargewildelifertiberninnytinnymainelupinglacesassyseguehankycomfygenetwackystroppacerpromorattytongaamainnatesterryhoughsnakyrhombspickbassemarlybeboptilerspallgatorpopuppinkyazotedowsegawkyanclegimmefakeramuckjingodoggyjiffymariasabotstrepspratblimploughrowanbefogbesomwashyremapgollyhaverbonzeteenyneweltumidphloxabeambiterthermlegitscutechumpjuleptoquefryerwanlytunnyclunkfiverwallavizirictusfannyclozenittygooeywhelkpachatoperrookysunupgamerdutchcruetremixswankpoulttellypodgeoleumhodgetenchanglotaffyduplebancoproletabornattyariesplatarummybezelpaverfrithclarakebabciscoswartxeroxmorelknoutfinnyfuseevirgotildeartelgaminhalloscrimislamfirthdryadkoalacrickswedeuncaprangyrepotdruperumbabongofutonnohownervybeautknurlinduedozertomansappyogiveunfedabacajuratgreekwormyfelixkapokapsisattarcurstjazzycubbycombegolemcongeshakosurahcheepcongaheistsavinmanedramiespritjalapgutsyplagepaulogizmoaspicgonerhoochhindirheumvenusoldiehawsetargespiledromekaurichewynaiadmissyshirrsplatcarleleggymousyinaptaholdcageythewsmanetkaratenvoifusilduvetbalerbrestnacreweepyyeatsonlaydermaspirtdetoxbournpettorandycushyemceesyrenpittaaggerkatunkoineleftyportocadgealackexpattapisbleepgulaghakimloupeyodelemoteunsettattyorrissoclevakilbosunkrautunpincalifaprilmiddyjimmycurvyquirtbrantprimpcorkyclarefrizzheighscurfkodakgemmaankersowarbittyauricbalkylollyrowelgarthflackwoozydottymorsebimbosucremochatittypappyconeyskirlcrusecaromredlyropermuckymyopegrecofetorsmalttansymoochhurstskaldvizordinkypixieyummyhubbyscrampistehookyoatenwithycoigniviedfleerdopeysculpbijoulentonoduscuddyfustypipitbidetcretesextofuseloxbowaleckvastychevydiceykloofrevetcurdyapeakboozyembayalinereccelottoallahdonganonesretiebhangnancyballyslockweberichorhokumsnookcollynoseyhelverhumbamiceniseichuffdearyarrisletupmylarturfysoupydodgyclompmoseystolemollyergonglitzcampyfizzyglueytubbynewsylaresdequealohaphonokashasegnohuffypatsynoyaucyderlotosplonkchapeunaptgassybiddycroudbothybonergleetmambasedgysnoodargusfastifichupoochboskydivotchareperryabuzzumiakveuvepyxisfernypinupantsytimorbrentfacerdivvyavisotweetpshawsnootbruinokrugsurraaerierushywimpyhaulmghauthallewhangsizarloachfrierjesusnegusqueanriantreichplatoartsymoonybattyabysmexeatshawmbeerycongobuffoataxycivvyapishsoftyloopyhumpypukkaampulmutchwealdmoraytopeeredancoperstupeweenynopalhowdyinvarvestaowletritzyrunupsnafuquintswisslimeyravinsimonabendhindupeppynoddycoblefordokefirjamesrathesnickduckysophymateypokeyfarcysapiddavidbeamyboosedecafnorskcoalyouzelagnusvoletadmanplumykronainarmtaupemediasoppyprillpodgyhulloburkecolzafellykbytekerneincogwinzefogeysaigatamernippyjehadincutcavercrumpchrishollopannetizzysaxonjokeyfennykendopantolindasybilfrumpstagydickylisletrullericaalanddammemooregoferscragdelftraverdaffyholeyboglerayahbuttybaddyactondelialaxlyavastpoppabaricbuncooccamamigapikerlillywelshbaccyshivapallyacredbegumscottbracktrewsfitchnizamdemobgelidwattescaupjabotorlophurravaticrogerbavintwerpkotowhorsykaputthillcelebkookyasdictrassnowaycuppapsorafermisudanarsismavisbrumepursyirishcrakekazoohollatrikeoomphclarydicerwackoponceridgysaggyreivenepersudsyskivebrillunlayskyeyserinklutzunbanunboxcoombepsomjoneselvermuzzydulsebulgyremanbrailairlycouthquitolamiabustyprangbipodmerlerebecaddontippysoporlewisruchebarmydracodrusebursejowlyicingpilautexassusanoghamrimercuttygenoadianakemptbunkopinkoascotgriffazoiclevinfatlyswarfpeakypearttorseemmetpawkyzilchveinylauraasciihooeyaflatwellybusbymiaowernstnatchruttyprinkspiffblakeouselscaurinjunsalichookahadjiatomyinkerunrigthorppottoaryanstogykvassbowseasiannonetfilarnixieadustkukriapianbabuluhlanruffeamoveemoryatarivasaldholesolansakhachirrhondodrangzombialiceholerverdidamanbeakynobbyhumphruntysavoylakerameeryagerbennymsnbcmonetdemitholmegapertuftytsenglillesambocullywynnecarlosalmibuckomightbantucaberdiguedorseahullcorgispangzippydippydraffpilchdwordalgidblowylaganmazerboyleackerjemmyturpsnitontuquegabbyargilbilbobriankarriflutycantyfleamharasnobeladeemdoverunlawjorumpromtspitzitalyfritzbrockalamobegadthirldoricbarrynivalrawlyratalleedsroilyleoneinkleleighguanafeistjanustriascapribeanymaorialarypinnyfeoffhylicparmatartyxebecpollystevejudaskoranghanaellenthujaresitquifftyperwonkyprasegrideagletlexerannieorachlagosaluladibitdantemyallbettymaltylethedixiemiaminellychokydumasrazeehunanaggrobedimporkygappytafiakelpyoreaddweebrootyplutoaniletokayfatsosaurytammyamortbendypekoedoggolycraflamymuzaklawnyvincitrankbarkylyonsclonkatripfoodytokyonorseguttyspainleweslardybonceaperygundyoscarsarahskintflumpdaryahantspuckasaporbegemhysonkongobeanosorgobaselletchoxterropeyodeumsturmdedalpraamvaranmoseskarenariellyingstivelarkydarbytrentacerbfaddyallanchirkmadiatatarredyeaggiepewitoncerflewsboschpunkatrudyampinseismbaboopraiairmlydiegogriftsurmaposadlankawandagungedyingfranzhirstlurrytamilegyptessexcowanhuzzyloobyambryspadoglairkoreakerenunpegbadenafritminnatwitehelenorionpaularabatmaltaisaacpoizeammanandeslathytoffypiterunripgoatypapuarejigbodgeconorraizekabulspierpockysamelcissyguslimidasbernepookacircsfaughgurrysmarmjasondishyscranchitacobbyprapsbivvytollyrhineslypenosertechythuyakerrysonsysixermilankyotomeasemacaohaveldorisromeobeninlotahsnathedgarhavrefreudticcamilneaboildalaidomiclaybyalgolsyriatillyfainskualahoickvichydumbodungycubanmyronaxledtudorquinsmalaycyruskhalihuronvodermontyethelmingyfugledenisjaggybocaljinnypoddyavgasangusgammygibuspeggyreekyralphteheehertsaldusjuliahaifayobbodebusambuswaldoeagrekickyhamaslucasjacobclourborislyssajanetfuggywhuffsilaskenyacorelwakeyjoltytibetireneopartpunicglazymainzdbaseyementalmaidahoskoalalgorninonzaireosakakeithcamussaudichivypilaworpinlunikluciapommyminosputindevonagnesaltonkevinmiaulsollyfirrypepsipashmsienaagazecirceherodviewyclydeeddiedekkoreefypudgenixonalkielloydspumygerrydelhimattyaheaperatotitusparkygiberknurrfaustloppytildasofiaaleakdylancrunkcrozenubiakopecsinaijoyceanitaababaremusquakyaaronneddytyingacockmiaounidgeslurbfrigesochiabletghentgrumelouieboxenreimshaitisanyonepaltandyquranboolekiltyemilysammybazoomoggygalencoguemeshysodommedeasiouxxpertcroatjamahsamoayonksmadgeczechlooeyburmacairobronxhanoifredagooffbumbotampamaggynemanfubsyaltaiapinghaguesayanerniedijonbredakatiemaratepsonaddislisztshramassamsadatcabottunisgretacokeyiliadglaumverneperthmickyembussibilmamiebemadbetsysalopfawnydaubyleninendupoptraspeltnapoofeezemagogcecilraichflueydonahvolgagomelsevanizmirhoovesusienottschirmjonahcorahnimbynevisdoylyskyershabakazanfionaelizairanilummywodenbevvypercychechturinloirerouenheineessiesanaatessarhodecabasciggyelmereliotedwingogolbaityhiramseikosazanoarergilespriambatorterekdomradinahgrimmnollyowinglizzydakardeucywrickworsejockotajikcrapylibyaedithargunagamylawksiraqinettymadidlibiabuballeilatossygabonjosefjinanminskaloiskeatsdubbyaccraclaudbeckynarvacamaymbytehegelbyronetweeaesopflawydoyleradgerodinuniatheratpaduasimladabbyseoulrhonehattyhildacobolgiveyqatargazooflaxyballschimbenochyukonaetnadampychioszibetioniasadiefaroepamirwacompozzybaslemaudekurilmabelurielhesseisoldcaabakafkanielselsieeiconscobsibsencyrilbasranehruawingluccarunetcapetelginanapacapuamalaxcalebaswantiroldavosikingnairnbemudaldankhivaroddydaccatartuplinybanffwattybessyvickyyakutluxorlhasaturkubrakyuralsjewrymeggyuzbekcaerekubanjumnaxenixuriahirakisunoskerchsuingyaltacadizruingcebitwuhanhaydngorkydefoenaurumulshsopotdhabidesnapearyraimatomskluzontyrolonegaekingaleutvyingpenzaaloysjaffacorfuxbasekurskshyerartechettysixmogorkityubepersypzazzaxingtagilaraksjiddaaominxantetchadmosulemmieinzerblestbizetbootsbeylesimmykiotohunkscuing" function word() local nb = rnd((#words / 5) // 2) local w = string.sub(words, 5 * (nb) + 1, 5 * (nb) + 5) w = string.upper(w) trace("#" .. nb .. " - " .. w) return w end trace((#words / 5) .. " words")