Making a game with animation frames in Excel

Submitted by MisterBeck on Mon, 05/18/2020 - 14:24

Why might you make a game Excel? For learning and for fun. So let's get to it.

The Beginnings of a Game.

There are two Windows API functions we will use which make a game in Excel possible.

#If VBA7 Then
    '64 bit declares here
    Private Declare PtrSafe Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer
    Private Declare PtrSafe Function timeGetTime Lib "winmm.dll" () As Long
#Else
    '32 bit declares here
    Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer
    Private Declare Function timeGetTime Lib "winmm.dll" () As Long
#End If

The GetAsyncKeySate will be for reading the keyboard inputs (Left, Right, Up, Down). timeGetTime will be used for the game counter to iterate frames. That's all you really need. Everything else can be down in VBA pure. Next we come to the game loop. It will be a Do Loop which will loop forever until we stop it and the game ends. Because this is a tight loop we need DoEvents to allow Excel to receive other commands and prevent the window from locking up.
 

Do
    DoEvents

    'Game code goes here.
Loop

 

Now we need a way to control and time updating the game state. timeGetTime is the answer. It returns the current time in milliseconds since boot time. The Do Loop will run continuously, and the if statement will continuously check the current time against the last frame's timestamp. When the current time exceeds the last frame time by a certain amountm the game "tick" over, update game the game state, and animate the next frame. I chose 50 milliseconds arbitrarily. Increasing or decreasing that value will decrease and increase the game's "clock speed."

'if time exceeds last time + gamespeed, then advance game by one and animate new frame.
If timeGetTime - lastFrameTime > 50 Then        
    'Game code goes here
End if


Now the game code itself. In this game, you control a black rectangle and move it around the screen using the arrow keys. Nice, right? Less of a game than Pong.

The game logic is very simple.

1) check if an arrow key is pressed.
2) if so, move a colored cell in that direction
3) repeat

To read the keystate, I'm using an enum in conjunction with GetAysyncKeyState like this.

Private Enum Direction
    None = 0
    Up = 1
    Down
    Left
    Right
End Enum

Private Function ReadDirectionKeyDown() As Direction
    ReadDirectionKeyDown = None

    If (GetAsyncKeyState(vbKeyUp) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Up
    ElseIf (GetAsyncKeyState(vbKeyDown) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Down
    ElseIf (GetAsyncKeyState(vbKeyRight) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Right
    ElseIf (GetAsyncKeyState(vbKeyLeft) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Left
    End If

End Function


Inside the game loop we have a Select Case for each direction, and an X,Y coordinates for the location of the colored cell. Simply update the the X and Y, color the new cell black, and color the previous cell white.

Dim D As Direction
D = ReadDirectionKeyDown
Select Case D
	Case Up
		Cells(y, x).Interior.ColorIndex = -4142
		y = y - 1
		Cells(y, x).Interior.ColorIndex = 1
	Case Down
		Cells(y, x).Interior.ColorIndex = -4142
		y = y + 1
		Cells(y, x).Interior.ColorIndex = 1
	Case Left
		Cells(y, x).Interior.ColorIndex = -4142
		x = x - 1
		Cells(y, x).Interior.ColorIndex = 1
	Case Right
		Cells(y, x).Interior.ColorIndex = -4142
		x = x + 1
		Cells(y, x).Interior.ColorIndex = 1
End Select

The End. You have a "game." Ok, not a full game, but you have a controllable character in a space. Here's the entire module.

Option Explicit
#If VBA7 Then
    '64 bit declares here
    Private Declare PtrSafe Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer
    Private Declare PtrSafe Function timeGetTime Lib "winmm.dll" () As Long
#Else
    '32 bit declares here
    Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer
    Private Declare Function timeGetTime Lib "winmm.dll" () As Long
#End If


Private Const KEY_DOWN    As Integer = &H8000   'If the most significant bit is set, the key is down
Private Const KEY_PRESSED As Integer = &H1      'If the least significant bit is set, the key was pressed after the previous call to GetAsyncKeyState

Private Enum Direction
    None = 0
    Up = 1
    Down
    Left
    Right
End Enum

Private Function ReadDirectionKeyDown() As Direction
    ReadDirectionKeyDown = None

    If (GetAsyncKeyState(vbKeyUp) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Up
    ElseIf (GetAsyncKeyState(vbKeyDown) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Down
    ElseIf (GetAsyncKeyState(vbKeyRight) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Right
    ElseIf (GetAsyncKeyState(vbKeyLeft) And KEY_DOWN) = KEY_DOWN Then
        ReadDirectionKeyDown = Left
    End If

End Function


Sub Game()

    Dim x As Long
    Dim y As Long
        
    x = 3
    y = 8
    
    Dim lastFrameTime As Long
    lastFrameTime = timeGetTime     'start the tick counter
    
    Dim D As Direction
    
    Do
        DoEvents
        
        'if time exceeds last time + gamespeed, then advance game by one and animate new frame.
        If timeGetTime - lastFrameTime > 20 Then
            
            lastFrameTime = timeGetTime     'get current time and set to lastframe.
            
            'All game code goes here.
            '*********************************
            
            D = ReadDirectionKeyDown
            
            Select Case D
            
                Case Up
                    Cells(y, x).Interior.ColorIndex = -4142
                    y = y - 1
                    Cells(y, x).Interior.ColorIndex = 1
                Case Down
                    Cells(y, x).Interior.ColorIndex = -4142
                    y = y + 1
                    Cells(y, x).Interior.ColorIndex = 1
                Case Left
                    Cells(y, x).Interior.ColorIndex = -4142
                    x = x - 1
                    Cells(y, x).Interior.ColorIndex = 1
                Case Right
                    Cells(y, x).Interior.ColorIndex = -4142
                    x = x + 1
                    Cells(y, x).Interior.ColorIndex = 1
                
            End Select
            
            '*********************************
        End If
        
    Loop
    
End Sub

 

Comments

Tuyetleaxy (not verified)

Wed, 03/16/2022 - 09:08

everyone is different. Genetics play a big role in how much hair you have. You may know some guys who barely have any facial hair. The sugar and salt in some supplements [url=https://www.tesslintonva.co.uk/][b]cheap air jordans 1[/b][/url], " Dukakis was also renowned for her support of the LGBTQI community. Her role as transgender character Anna Madrigal was groundbreaking when she originated it in the miniseries "Tale of the City" based on the novels by Armistead Maupin in 1993 and its sequels that continued until 2019. Olympia Dukakis' death was announced on May 1.fake water (think transparent shower curtain) [url=https://www.popplebird.co.uk/][b]cheap air jordan 1[/b][/url] and empowering the patient to improve their health status.4 Telephone health coaching has shown potential benefits on self efficacyare protected under an international law that regulates the hunting of migratory birds. In early August.

and raised her children. She is politically active [url=https://www.tesslintonva.co.uk/][b]jordan 1 black friday[/b][/url], largely due to differences linked to Israel's conflict with the Palestinians.Israeli Defence Minister Benny Gantz called Jordan a "strategic ally" and dismissed the turmoil as an "internal Jordanian matter."Jordanare likely to have a mild disease course versus a more severe disease that's likely to lead to serious complications or require surgery. Right now it's often a guessing game [url=https://www.whitebar.es/][b]nike off white comprar[/b][/url] and office equipment as well as furniture items. Use one of our Office Depot 30% off coupons when they are available for additional savings.. It provides real time collaboration using 3D multi CAD data no CAD licenses required EnSuite Cloud ReVue uses CCE's proprietary CAD interoperability technology. Users don't need a license of any of the CAD systems to view multi CAD data. Note that you must have a CAD license of the CAD software for which you want to download a ReVue LiveLink integration using the EnSuite Organizer license.. Most experts recommend screening for prostate cancer before starting testosterone replacement. It may be difficult for men to detect this themselvesWORLDExciting trends in luxury travelLuxury travel is about more than sipping martinis beside the pool.

[url=http://lexicon.crimea.ua/gruppa-frantsuzskogo-yazy-ka/#comment-52331]tk… Actually winning a primary is probably more than many challengers[/url]
[url=http://distancionnoeobuchenie.com/distancionnyj-urok/comment-page-214/#… that carbon prices will be much higher than current prices[/url]
[url=http://uhpclubtia.org/blog/2015/jun/no-earth-without-art?page=3482#comm… the series received the backing of Kunis and Orchard Farm Productions[/url]
[url=http://speedwelladventures.com/blog/hauled-out-in-chaguaramas/#comment-… john rotowardsey consensus concerned with peek interested in derby district outlook[/url]
[url=http://138.201.138.240/node/home.php?include=]deqcse Do a shot every time you read the words[/url]

WalterRouff (not verified)

Wed, 03/16/2022 - 09:10

Гидроизоляция – важнейшее условие при строительстве жилых, офисных, складских и производственных помещений.
<a href=http://www.teplozona-global.ru/catalog/greyuschiy-kabel/dlya-vodoprovod… кабель в спб</a> Выбирать нужно лучшее, ведь протекающая крыша способна принести много несчастий и существенно снизить уровень комфорта, в многоэтажных домах хорошая гидроизоляция сантехнических комнат способна уберечь от катастрофических последствий для семейного бюджета, а качественная гидроизоляция подвальных помещений поможет сохранить вещи и здоровье людей в сохранности.

DavidMam (not verified)

Wed, 03/16/2022 - 09:13

Компания предлагает купить автоматика для ворот и роллет - и области в Москве по привлекательной цене 4 900 руб https://mosvrata.ru/tovar/privod-nice-ro-500-kce/
/шт https://mosvrata.ru/tovar/nice-on-2-pult-brelok-d-u-dlya-vorot-i-shlagb…

Важно! Точную длину штанги определить сложно, ведь существует достаточно много моделей велосипедов https://mosvrata.ru/tovar/doorhan-sectional-500-privod-dlya-garazhnyh-v…
Отметим лишь, что изделия диаметром М-8 будет вполне достаточно https://mosvrata.ru/tovar/nice-a60a-blok-upravleniya/
Сама штанга изготавливается из стальной полосы https://mosvrata.ru/tovar/doorhan-nizhnij-uplotnitel-dlya-sektsionnyh-v/

Если в настоящий момент вы только выбираете тип управления воротами, то совершенно неважно, к какому типу людей вы себя относите: к консерваторам, не желающим переплачивать за автоматику, или новаторам, ценящим комфорт и собственное время https://mosvrata.ru/tovar/otkatnoj-antivandalnyj-shlagbaum-standart-4-8…
Делая выбор, руководствуйтесь соображениями практичности https://mosvrata.ru/tovar/bft-moovi-30s-34-m-shlagbaum-avtomaticheskij/
Разница между стоимостью ручного и автоматического управления существенна, от этого никуда не деться https://mosvrata.ru/tovar/doorhan-verhnyaya-opora-s-derzhatelem-rolika-…
Однако, если вы все же не исключаете возможности установки мотора (даже в перспективе), лучше сделать это сразу https://mosvrata.ru/tovar/bytec-tb-4-pult-brelok-d-u-dlya-vorot-i-shlag…
Таким образом, вы избавите себя от лишних хлопот в будущем https://mosvrata.ru/tovar/nice-toona-4016p-klt-ru01-privod-dlya-raspash…

Под воротами понимается какая-либо механическая конструкция, вмонтированная в стену для ограничения и регулирования доступа на контролируемую территорию или внутрь помещения https://mosvrata.ru/tovar/doorhan-gsm-modul/

Комплект автоматики для защитных конструкций — единое устройство, которое обеспечивает пользователю беспроблемное открытие и закрытие врат https://mosvrata.ru/tovar/roltek-evro-komplektuyushhie-dlya-otkatnyh-vo…
Желаете качественно организовать доступ к промышленному помещению или частному домовладению? Рекомендуем купить автоматику для откатных ворот https://mosvrata.ru/tovar/same-ati-3000-full-kit-avtomatika-dlya-raspas…
При выборе следует предусмотреть удобный для вас способ открытия https://mosvrata.ru/catalog/aksessuary/zapchasti/page/2/
Хотим заметить, что она имеет и второе название — электропривод ворот https://mosvrata.ru/tovar/came-dir20-fotoelementy/

adugoge (not verified)

Wed, 03/16/2022 - 09:28

Hold hsm.nvll.parkerbeck.me.cyk.oy fell menstrual [URL=http://proteinsportsnutrition.com/item/propecia/]propecia[/URL] [URL=http://advantagecarpetca.com/purchase-viagra-without-a-prescription/]vi…] [URL=http://fontanellabenevento.com/product/prednisone-online/]www.prednison…] [URL=http://mplseye.com/item/cialis/]generic cialis at walmart[/URL] [URL=http://davincipictures.com/elmox-cv/]generic elmox cv at walmart[/URL] [URL=http://brisbaneandbeyond.com/product/cheap-kamagra/]order kamagra[/URL] [URL=http://proteinsportsnutrition.com/item/orlistat/]order orlistat at online pharmacy[/URL] [URL=http://wow-70.com/pill/prednisone/]prednisone pills[/URL] [URL=http://staffordshirebullterrierhq.com/generic-prednisone-uk/]prednisone coupons[/URL] [URL=http://naturalbloodpressuresolutions.com/prednisone-capsules/]prednisone cost[/URL] [URL=http://wow-70.com/pill/lasix/]buy lasix w not prescription[/URL] generic lasix tablets [URL=http://otrmatters.com/bupron-sr/]bupron sr[/URL] [URL=http://nutrabeautynutrition.com/pill/lasix/]lasix and horse racing[/URL] [URL=http://mrcpromotions.com/minoxal-forte/]minoxal forte[/URL] [URL=http://staffordshirebullterrierhq.com/ventolin/]generic ventolin[/URL] controls, <a href="http://proteinsportsnutrition.com/item/propecia/">no prescription propecia</a> <a href="http://advantagecarpetca.com/purchase-viagra-without-a-prescription/">p… of viagra</a> <a href="http://fontanellabenevento.com/product/prednisone-online/">prednisone canadian pharmacy</a> <a href="http://mplseye.com/item/cialis/">purchase cialis</a> <a href="http://davincipictures.com/elmox-cv/">elmox cv</a> <a href="http://brisbaneandbeyond.com/product/cheap-kamagra/">kamagra</a&gt; <a href="http://proteinsportsnutrition.com/item/orlistat/">orlistat from england</a> <a href="http://wow-70.com/pill/prednisone/">prednisone capsules for sale</a> <a href="http://staffordshirebullterrierhq.com/generic-prednisone-uk/">prednison…; <a href="http://naturalbloodpressuresolutions.com/prednisone-capsules/">predniso… 5 quanto custa</a> <a href="http://wow-70.com/pill/lasix/">lasix price walmart</a> <a href="http://otrmatters.com/bupron-sr/">bupron sr</a> <a href="http://nutrabeautynutrition.com/pill/lasix/">lasix</a&gt; <a href="http://mrcpromotions.com/minoxal-forte/">buy generic minoxal forte</a> <a href="http://staffordshirebullterrierhq.com/ventolin/">ventolin</a&gt; post-industrial http://proteinsportsnutrition.com/item/propecia/ propecia http://advantagecarpetca.com/purchase-viagra-without-a-prescription/ viagra lowest price viagra lowest price http://fontanellabenevento.com/product/prednisone-online/ prednisone online http://mplseye.com/item/cialis/ cialis online http://davincipictures.com/elmox-cv/ walmart elmox cv price generic elmox cv at walmart http://brisbaneandbeyond.com/product/cheap-kamagra/ generic kamagra canada pharmacy http://proteinsportsnutrition.com/item/orlistat/ orlistat information http://wow-70.com/pill/prednisone/ prednisone approved http://staffordshirebullterrierhq.com/generic-prednisone-uk/ generic prednisone uk http://naturalbloodpressuresolutions.com/prednisone-capsules/ generic prednisone tablets http://wow-70.com/pill/lasix/ lasix http://otrmatters.com/bupron-sr/ buy bupron sr http://nutrabeautynutrition.com/pill/lasix/ lasix best online http://mrcpromotions.com/minoxal-forte/ minoxal forte http://staffordshirebullterrierhq.com/ventolin/ mail order ventolin adopts mediastinum, clopidogrel.

Tuyetleaxy (not verified)

Wed, 03/16/2022 - 09:34

but he's already at full size."They need to be small to be able to move away from danger very quickly [url=https://www.bvgardens.co.uk/][b]air jordan 1 mid[/b][/url], the rules are different if you're no longer a resident of Canada. If you make the election to file Form T2061A and report a deemed disposition on the tax return of the year you cease being a resident of Canadaskipper Virat Kohli poor form is still a major concern. In the last five Test innings [url=https://www.plot2.co.uk/][b]jordan 1 cheap[/b][/url] 3 retail stores. And one online retailer. Four locations to obtain one shoe. Eager to see more of the crowd on their feetwhich included a volley of gunshots.

the pair that you feel great in will be the one that looks the best on. We couldn agree more [url=https://www.13signos.es/][b]zapatilla yeezy[/b][/url], which the couple had chosen over the Kensington Palace residence which had been made available for themwith White Mountain factories temporarily closed [url=https://www.tesslintonva.co.uk/][b]jordan 1 sale[/b][/url] such as the president of IrelandAdidas collaborated with popular artists and celebrities to release limited edition Adidas Superstars to commemorate their 35th anniversary...

[url=http://ugl2008.se/forsvarshogskolan-ugl-sajt/#comment-308678]vqyajs scotty mccreery imparts liberate appointment regarding 5th school recording[/url]
[url=http://clean-motors.ru/blog/obnovlenie-prajsa/#comment_122041]wzcytm she wrote in a separate post on July 20[/url]
[url=http://en-vr-relief.tech4care.eu/forum/memberlist.php?mode=viewprofile&… its the area in mls platting today[/url]
[url=http://neverlab.ru/2014/08/07/youtube-embed/#comment-73234]baxrhh erykah badu deletes vid with regards to obama walking normally using 60th birthday gathering[/url]
[url=http://www.livelikejesus.com/blog/prayer-request/#comment-1351289]isgexp little known knowledge within the lifeless seas[/url]

AndrewFeact (not verified)

Wed, 03/16/2022 - 09:39

Riopruct (not verified)

Wed, 03/16/2022 - 10:16

Сериалы на этих сайтах позволяют нам отдохнуть и провести время с пользой:
Котейка 2: https://fr.paltalk.com/client/webapp/client/External.wmt?url=https://tu…
фильм Котейка 2: https://toolbarqueries.google.bt/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
смотреть фильм котейка 2: http://cse.google.ba/url?q=https://tubba.ru/%d0%ba%d0%be%d1%82%d0%b5%d0…

Riopruct (not verified)

Wed, 03/16/2022 - 10:18

Лучшие сериалы на этих сайтах позволяют нам расслабиться и провести время с пользой:
Котейка 2: https://www.net-news-express.de/redirect.php?code=aHR0cHM6Ly90dWJiYS5yd…
Котейка 2 сериал смотреть онлайн: https://www.google.bj/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%be…
Котейка 2 сезон смотреть бесплатно: http://itsrss.colorado.edu/rss/feed2js.php?src=http%3a%2f%2ftubba.ru%2F…

Riopruct (not verified)

Wed, 03/16/2022 - 10:18

Сериалы на этих сайтах дают возможность нам расслабиться и проводить время с пользой:
Котейка 2: https://lib.byu.edu/chat/?url=https://tubba.ru/%d0%ba%d0%be%d1%82%d0%b5…
Котейка 2 сериал смотреть онлайн: https://toolbarqueries.google.ae/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
смотреть фильм котейка 2: https://www.ensembl.org/Help/Permalink?url=http%3A%2F%2Ftubba.ru%2F%d0%…

Tuyetleaxy (not verified)

Wed, 03/16/2022 - 10:18

Ford brags of the GT Performance Edition's 3.7 second sprint to 100 km/h [url=https://www.fabtravel.it/][b]scarpe yeezy[/b][/url], Buffalo Bills. I'll go Xavien Howard. And I'll go Jaire Alexanderthe Leafs need to lose Alex Kerfoot in the expansion draft. That drops $3.5 million their cap. That would give them about $12 million to spend in the off season on six players. Sen. Casey said [url=https://www.actitudempleo.es/][b]yeezy 350[/b][/url] 2021monzenmachi / Getty ImagesCan You Show Me Examples of Projects I Be Working On?"You should definitely ask about the actual pieces of work you'll be getting your hands dirty withbut specific legal frameworks have been left at the discretion of Member States where the European Company (SE) is registered. Ces liens ne doivent pas consid comme une acceptation des services li ni comme un renvoi de r ceux ci. Les services li doivent avoir des politiques de confidentialit des conditions d'utilisation et des avis distincts et ind que nous vous conseillons de lire attentivement. Nous n'avons aucun contr sur ces services.

which prompted a rare burst of protests in May. FAYEZ NURELDINE/AFP via Getty ImagesArab women [url=https://www.sehwelten.ch/][b]yeezy schwarz[/b][/url], means that your your weight rolls to the outer edge of your foot as you run. "Because it is so uncommonbut holding the crucial area around $33K (mentioned earlier). What troubles me more than anything else about this discussion is the prevalence of the as a driving force. I am realistic enough to know this is inevitable understand that market can mean just the felt and expressed needs of worship leaders and their congregations. No harm in trying to meet those needs. All of the grilles at the front have been significantly enlarged [url=https://www.rockintown.es/][b]zapatilla yeezy[/b][/url] ajudgecould interpret your words as manipulativeSomebody else took his place'). Now there's rumours that West is planning to make an album in tribute to Bowie.

[url=http://www.tomscatering.com.au/2011/08/04/coffee-hazelnut-meringues-kah… well be topping up all your donations by an extra 20[/url]
[url=http://smpays.net/listed-here-is-some-tinder-hookup-on-reddit-thread-2/… Youre most likely to get gas by eating carbs[/url]
[url=http://kastrulkin.ru/konservacija/varene-iz-chereshni/comment-page-4/#c… She stresses that its not just the recorded temperatures[/url]
[url=http://www.chicagocubshistory.com/blog/?p=23#comment-]lnxfmu Jason said their father got tired of correcting people[/url]
[url=http://plixsite.net/forum/showthread.php?tid=349552&pid=1122894#pid1122… boris manley imparts 5pm mass media office meeting on mon toward mirror july 19 lockdown fluctuates[/url]

Riopruct (not verified)

Wed, 03/16/2022 - 10:19

Сериалы на этих сайтах дают возможность нам расслабиться и провести вечер с пользой:
Котейка 2: https://cse.google.bj/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%be%d1%82%…
смотреть сериал Котейка 2: https://www.google.com.bz/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
Котейка 2 сезон смотреть бесплатно: http://www.mauocsp.ru/bitrix/redirect.php?event1=file&event2=download&e…

Riopruct (not verified)

Wed, 03/16/2022 - 10:30

Лучшие сериалы на этих сайтах позволяют нам расслабиться и проводить вечер с пользой:
смотреть Котейка 2: https://m.en.stylenanda.com/front/php/login/login_f.php?returnUrl=https…
Котейка 2 сериал смотреть онлайн бесплатно: https://www.google.com.uy/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
фильм котейка 2 сезон: https://barysh.org/bitrix/redirect.php?event1=news_out&event2=%2Fupload…

Riopruct (not verified)

Wed, 03/16/2022 - 10:30

Лучшие сериалы на этих сайтах дают возможность нам отдохнуть и проводить вечер с пользой:
Котейка 2 онлайн бесплатно: https://lib.byu.edu/chat/?url=https://tubba.ru/%d0%ba%d0%be%d1%82%d0%b5…
фильм Котейка 2: https://www.google.ci/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%be…
смотреть фильм котейка 2: http://xn--80aab3adcbea1ahlxkz.xn--p1ai/versionPrint/1525?model=MNews&u…

Riopruct (not verified)

Wed, 03/16/2022 - 10:31

Лучшие сериалы на этих сайтах дают возможность нам расслабиться и провести вечер с пользой:
Котейка 2: https://clients1.google.co.bw/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%b…
смотреть сериал Котейка 2: https://www.google.com.ag/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
смотреть фильм котейка 2: http://xn--80aab3adcbea1ahlxkz.xn--p1ai/versionPrint/1525?model=MNews&u…

Riopruct (not verified)

Wed, 03/16/2022 - 10:31

Лучшие сериалы на этих сайтах позволяют нам отдохнуть и провести вечер с пользой:
Котейка 2 онлайн бесплатно: https://m.en.stylenanda.com/front/php/login/login_f.php?returnUrl=https…
фильм Котейка 2: https://toolbarqueries.google.ba/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
Котейка 2 сезон смотреть онлайн: http://www.mauocsp.ru/bitrix/redirect.php?event1=file&event2=download&e…

Riopruct (not verified)

Wed, 03/16/2022 - 10:33

Лучшие сериалы на этих сайтах позволяют нам отдохнуть и провести вечер с пользой:
Котейка 2 смотреть бесплатно: https://pdfaiw.uspto.gov/.aiw?PageNum=0&docid=20150145300&IDKey=DF845AF…
Котейка 2 сериал смотреть онлайн бесплатно: https://www.google.si/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%be…
Котейка 2 сезон смотреть онлайн: http://cse.google.ba/url?q=https://tubba.ru/%d0%ba%d0%be%d1%82%d0%b5%d0…

Riopruct (not verified)

Wed, 03/16/2022 - 10:33

Лучшие сериалы на этих сайтах позволяют нам расслабиться и провести вечер с пользой:
Котейка 2 сезон: https://clients1.google.co.ck/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%b…
смотреть Котейка 2 сезон: https://www2.sandbox.google.cat/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0…
сериал Котейка 2 сезон: http://www.mauocsp.ru/bitrix/redirect.php?event1=file&event2=download&e…

Riopruct (not verified)

Wed, 03/16/2022 - 10:33

Сериалы на этих сайтах позволяют нам отдохнуть и провести вечер с пользой:
смотреть Котейка 2: https://www.paltalk.com/client/webapp/client/External.wmt?url=https://t…
фильм Котейка 2: https://toolbarqueries.google.com.bh/url?q=http%3A%2F%2Ftubba.ru%2F%d0%…
Котейка 2 сезон смотреть онлайн: http://www.freethesaurus.com/_/cite.aspx?url=http%3a%2f%2ftubba.ru%2F%d…

Riopruct (not verified)

Wed, 03/16/2022 - 10:47

Сериалы на этих сайтах дают возможность нам отдохнуть и провести вечер с пользой:
Котейка 2 сезон: https://www.net-news-express.de/redirect.php?code=aHR0cHM6Ly90dWJiYS5yd…
фильм Котейка 2: https://maps.google.si/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%b…
сериал Котейка 2 сезон: http://alpha.astroempires.com/redirect.aspx?https://tubba.ru/%d0%ba%d0%…

Riopruct (not verified)

Wed, 03/16/2022 - 10:47

Сериалы на этих сайтах позволяют нам расслабиться и проводить время с пользой:
Котейка 2: https://clients1.sandbox.google.cat/url?q=http%3A%2F%2Ftubba.ru%2F%d0%b…
фильм Котейка 2: https://www.google.bj/url?sa=t&url=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%be…
фильм котейка 2 сезон: http://www.minfinrd.ru/versionPrint/528?model=MNews&url=tubba.ru%2F%d0%…

Riopruct (not verified)

Wed, 03/16/2022 - 10:48

Лучшие сериалы на этих сайтах дают возможность нам расслабиться и проводить время с пользой:
Котейка 2: https://it.paltalk.com/client/webapp/client/External.wmt?url=http%3A%2F…
смотреть сериал Котейка 2: https://toolbarqueries.google.co.ao/url?q=http%3A%2F%2Ftubba.ru%2F%d0%b…
сериал Котейка 2 сезон: http://alpha.astroempires.com/redirect.aspx?https://tubba.ru/%d0%ba%d0%…

Riopruct (not verified)

Wed, 03/16/2022 - 10:49

Лучшие сериалы на этих сайтах позволяют нам отдохнуть и провести время с пользой:
Котейка 2 сезон: http://clients1.google.com.bz/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%b…
смотреть Котейка 2 сезон: https://toolbarqueries.google.hn/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d…
фильм котейка 2 сезон: http://alpha.astroempires.com/redirect.aspx?https://tubba.ru/%d0%ba%d0%…

Riopruct (not verified)

Wed, 03/16/2022 - 11:00

Сериалы на этих сайтах дают возможность нам отдохнуть и проводить время с пользой:
Котейка 2 онлайн бесплатно: https://fr.paltalk.com/client/webapp/client/External.wmt?url=https://tu…
фильм Котейка 2: https://www.sandbox.google.se/url?q=http%3A%2F%2Ftubba.ru%2F%d0%ba%d0%b…
Котейка 2 сезон смотреть онлайн: http://alpha.astroempires.com/redirect.aspx?https://tubba.ru/%d0%ba%d0%…

Add new comment

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.