From 9bf46c445769687cc741c42e3f19742fd66a9349 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:54:34 +0400 Subject: [PATCH 01/15] Create README.md --- pets/companionOS/README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 pets/companionOS/README.md diff --git a/pets/companionOS/README.md b/pets/companionOS/README.md new file mode 100644 index 00000000..035305f9 --- /dev/null +++ b/pets/companionOS/README.md @@ -0,0 +1,25 @@ +# Welcome to CompanionOS - by @Briyan Dyju! + +Here is a quick how-to for you across the entire program! + +## 1 - First things first: +**NOTE: Since this program was made on my device, I request you to please swap out all the directories and locations of the bmp files to your own device's** + +## The Launcher: +Use the down arrow key to go between options and use the up arrow key to select an option + +## The Dice: +Use the up arrow key to get a random dice face! (More dice options from 3 sides to 20 sides (D20) coming soon!!) + +## The Coin: +Use the up arrow key to flip a coin (No animation currently) + +## The Cookie Clicker MiniGame: +Use Space to get a score (please ignore screen flickering while I find a fix =( + +# Coming Soon Features: (After my exams!): +- More Mini Games!! +- More Dice options like promised! (Already working on it) +- A coin fliping animation +- upgrades and bonuses for the cookie clicker minigame +- A Hackapet pet =) From 6df6534e6600d7aac982e2532cd0dd13839908f2 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:56:30 +0400 Subject: [PATCH 02/15] Add files via upload --- pets/companionOS/coin.py | 43 +++++++++++++++++ pets/companionOS/cookie.py | 60 ++++++++++++++++++++++++ pets/companionOS/dice.py | 43 +++++++++++++++++ pets/companionOS/hackapet.py | 27 +++++++++++ pets/companionOS/launcher.py | 75 ++++++++++++++++++++++++++++++ pets/companionOS/plain.bmp | Bin 0 -> 65606 bytes pets/companionOS/requirements.txt | 4 ++ pets/companionOS/splash1.bmp | Bin 0 -> 65606 bytes 8 files changed, 252 insertions(+) create mode 100644 pets/companionOS/coin.py create mode 100644 pets/companionOS/cookie.py create mode 100644 pets/companionOS/dice.py create mode 100644 pets/companionOS/hackapet.py create mode 100644 pets/companionOS/launcher.py create mode 100644 pets/companionOS/plain.bmp create mode 100644 pets/companionOS/requirements.txt create mode 100644 pets/companionOS/splash1.bmp diff --git a/pets/companionOS/coin.py b/pets/companionOS/coin.py new file mode 100644 index 00000000..9ba58c92 --- /dev/null +++ b/pets/companionOS/coin.py @@ -0,0 +1,43 @@ +import displayio +from blinka_displayio_pygamedisplay import PyGameDisplay +import pygame +import time +import random + +# Display +pygame.init() +display = PyGameDisplay(width=128, height=128) +splash = displayio.Group() +display.show(splash) + +# Initial Plain Screen +start = displayio.OnDiskBitmap(r"\coin\coin.bmp") +bg_sprite = displayio.TileGrid( + start, + pixel_shader=start.pixel_shader +) +splash.append(bg_sprite) + +# Update Display +def update_dice_image(diceno): + dice_path = fr"\coin\coin{diceno}.bmp" + new_dice = displayio.OnDiskBitmap(dice_path) + splash.pop() # Remove the old sprite + new_sprite = displayio.TileGrid(new_dice, pixel_shader=new_dice.pixel_shader) + splash.append(new_sprite) # Add the new sprite + +# Main loop +while True: + time.sleep(0.1) + display.refresh() + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + exit() + elif event.type == pygame.KEYDOWN: + if event.key == pygame.K_UP: + # Roll the dice + diceno = random.randint(1, 4) + update_dice_image(diceno) + elif event.key == pygame.K_DOWN: + print("Down key pressed") diff --git a/pets/companionOS/cookie.py b/pets/companionOS/cookie.py new file mode 100644 index 00000000..788c9ad2 --- /dev/null +++ b/pets/companionOS/cookie.py @@ -0,0 +1,60 @@ +import displayio +from blinka_displayio_pygamedisplay import PyGameDisplay +import pygame +import time + +# Initialize the display +pygame.init() +display = PyGameDisplay(width=128, height=128) +splash = displayio.Group() +display.show(splash) + +# Score variable +score = 0 + +# initial cookie image +cookie1_path = r"\cookie\cookie1.bmp" +cookie2_path = r"\cookie\cookie2.bmp" +cookie1 = displayio.OnDiskBitmap(cookie1_path) +bg_sprite = displayio.TileGrid( + cookie1, + pixel_shader=cookie1.pixel_shader +) +splash.append(bg_sprite) + + +pygame_screen = pygame.display.set_mode((128, 128)) +font = pygame.font.Font(None, 24) + + +def update_cookie_image(image_path): + new_cookie = displayio.OnDiskBitmap(image_path) + splash.pop() # Remove the old sprite + new_sprite = displayio.TileGrid(new_cookie, pixel_shader=new_cookie.pixel_shader) + splash.append(new_sprite) + +def render_score_text(): + pygame_screen.fill((0, 0, 0)) + text_surface = font.render(f"Score: {score}", True, (255, 255, 255)) + text_rect = text_surface.get_rect(center=(64, 110)) + pygame_screen.blit(text_surface, text_rect) + pygame.display.flip() + +# Main loop +running = True +render_score_text() # Initial score display +while running: + time.sleep(0.1) + display.refresh() + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + exit() + elif event.type == pygame.KEYDOWN: + if event.key == pygame.K_SPACE: + update_cookie_image(cookie2_path) + elif event.type == pygame.KEYUP: + if event.key == pygame.K_SPACE: + update_cookie_image(cookie1_path) + score += 1 + render_score_text() diff --git a/pets/companionOS/dice.py b/pets/companionOS/dice.py new file mode 100644 index 00000000..e292b8c3 --- /dev/null +++ b/pets/companionOS/dice.py @@ -0,0 +1,43 @@ +import displayio +from blinka_displayio_pygamedisplay import PyGameDisplay +import pygame +import time +import random + +# Display +pygame.init() +display = PyGameDisplay(width=128, height=128) +splash = displayio.Group() +display.show(splash) + +# Initial Plain Screen +start = displayio.OnDiskBitmap(r"\diceimg\Dice.bmp") +bg_sprite = displayio.TileGrid( + start, + pixel_shader=start.pixel_shader +) +splash.append(bg_sprite) + +# Update Display +def update_dice_image(diceno): + dice_path = fr"\diceimg\Diceof{diceno}.bmp" + new_dice = displayio.OnDiskBitmap(dice_path) + splash.pop() # Remove the old sprite + new_sprite = displayio.TileGrid(new_dice, pixel_shader=new_dice.pixel_shader) + splash.append(new_sprite) # Add the new sprite + +# Main loop +while True: + time.sleep(0.1) + display.refresh() + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + exit() + elif event.type == pygame.KEYDOWN: + if event.key == pygame.K_UP: + # Roll the dice + diceno = random.randint(1, 6) + update_dice_image(diceno) + elif event.key == pygame.K_DOWN: + print("Down key pressed") diff --git a/pets/companionOS/hackapet.py b/pets/companionOS/hackapet.py new file mode 100644 index 00000000..147120b5 --- /dev/null +++ b/pets/companionOS/hackapet.py @@ -0,0 +1,27 @@ +import displayio +from blinka_displayio_pygamedisplay import PyGameDisplay +import pygame +import time +import random + +# Display +pygame.init() +display = PyGameDisplay(width=128, height=128) +splash = displayio.Group() +display.show(splash) + +# Initial Plain Screen +start = displayio.OnDiskBitmap(r"C:\Users\Briyan\Documents\hackapet\splash1.bmp") +bg_sprite = displayio.TileGrid( + start, + pixel_shader=start.pixel_shader +) +splash.append(bg_sprite) + +while True: + time.sleep(0.1) + display.refresh() + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + exit() \ No newline at end of file diff --git a/pets/companionOS/launcher.py b/pets/companionOS/launcher.py new file mode 100644 index 00000000..727dc868 --- /dev/null +++ b/pets/companionOS/launcher.py @@ -0,0 +1,75 @@ +import displayio +from blinka_displayio_pygamedisplay import PyGameDisplay +import pygame +import time +import os + +# Display +pygame.init() +display = PyGameDisplay(width=128, height=128) +splash = displayio.Group() +display.show(splash) + +# UI file paths +ui_files = [ + r"\ui\ui1.bmp", + r"\ui\ui2.bmp", + r"\ui\ui3.bmp", + r"\ui\ui4.bmp", + r"\ui\ui5.bmp", +] + +# Load Launcher +current_index = 0 +ui_bmp = displayio.OnDiskBitmap(ui_files[current_index]) +bg_sprite = displayio.TileGrid( + ui_bmp, + pixel_shader=ui_bmp.pixel_shader +) +splash.append(bg_sprite) +pygame_screen = pygame.display.set_mode((128, 128)) +font = pygame.font.Font(None, 24) + +# Update UI +def update_ui(index): + global bg_sprite + splash.pop() + new_ui = displayio.OnDiskBitmap(ui_files[index]) + bg_sprite = displayio.TileGrid(new_ui, pixel_shader=new_ui.pixel_shader) + splash.append(bg_sprite) + +# Show message +def show_message(message, duration=2): + pygame_screen.fill((0, 0, 0)) + text_surface = font.render(message, True, (255, 255, 255)) + text_rect = text_surface.get_rect(center=(64, 64)) + pygame_screen.blit(text_surface, text_rect) + pygame.display.flip() + time.sleep(duration) + pygame_screen.fill((0, 0, 0)) + pygame.display.flip() + +# Main loop +running = True +while running: + time.sleep(0.1) + display.refresh() + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + exit() + elif event.type == pygame.KEYDOWN: + if event.key == pygame.K_DOWN: # Down arrow key + current_index += 1 + if current_index >= len(ui_files): + current_index = 1 + update_ui(current_index) + elif event.key == pygame.K_UP: + if current_index == 1: # UI2 launches dice.py + os.system("python dice.py") + elif current_index == 3: # UI3 launches cookie.py + os.system("python cookie.py") + elif current_index == 2: # UI4 launches coin.py + os.system("python coin.py") + else: + show_message("Coming Soon") diff --git a/pets/companionOS/plain.bmp b/pets/companionOS/plain.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a02a2d97841092ca29684f725d4888ce7102b66f GIT binary patch literal 65606 zcmeIwu?>JA5J1r*mUd3y7}gea?&KcMVC{H#pkqA3CtT>r+m9M0`l{KMoqr|PnDQR^ zzRWQi<2YKxxBJwd`;tFkfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~ z0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz z7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|Xg zfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_ z1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;= zV1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~0R|XgfB^;=V1NMz7+`<_1{h#~ X0R|XgfB^;=V1NMz7+`<_1{i2Bv)hs3 literal 0 HcmV?d00001 diff --git a/pets/companionOS/requirements.txt b/pets/companionOS/requirements.txt new file mode 100644 index 00000000..c032322b --- /dev/null +++ b/pets/companionOS/requirements.txt @@ -0,0 +1,4 @@ +adafruit_blinka_displayio==0.11.1 +adafruit_circuitpython_display_text==3.2.2 +blinka_displayio_pygamedisplay==2.4.0 +pygame==2.6.1 \ No newline at end of file diff --git a/pets/companionOS/splash1.bmp b/pets/companionOS/splash1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1194ed363ec0c48d169d4fbf803134159c72c344 GIT binary patch literal 65606 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 literal 0 HcmV?d00001 From bd48720e628395e7f1639c7b6e264ba26612f69c Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:57:39 +0400 Subject: [PATCH 03/15] Create e --- pets/companionOS/coin/e | 1 + 1 file changed, 1 insertion(+) create mode 100644 pets/companionOS/coin/e diff --git a/pets/companionOS/coin/e b/pets/companionOS/coin/e new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/pets/companionOS/coin/e @@ -0,0 +1 @@ + From 21b2505bf90cefee37e88d3c6db9fea72d3017a3 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:57:54 +0400 Subject: [PATCH 04/15] Add files via upload --- pets/companionOS/coin/coin.bmp | Bin 0 -> 65606 bytes pets/companionOS/coin/coin1.bmp | Bin 0 -> 65606 bytes pets/companionOS/coin/coin2.bmp | Bin 0 -> 65606 bytes pets/companionOS/coin/coin3.bmp | Bin 0 -> 65606 bytes pets/companionOS/coin/coin4.bmp | Bin 0 -> 65606 bytes 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 pets/companionOS/coin/coin.bmp create mode 100644 pets/companionOS/coin/coin1.bmp create mode 100644 pets/companionOS/coin/coin2.bmp create mode 100644 pets/companionOS/coin/coin3.bmp create mode 100644 pets/companionOS/coin/coin4.bmp diff --git a/pets/companionOS/coin/coin.bmp b/pets/companionOS/coin/coin.bmp new file mode 100644 index 0000000000000000000000000000000000000000..cad9cc3500318ac33d1d502b720eca3681e887e4 GIT binary patch literal 65606 zcmeI4O^(zs5QQ^h$&M{T;s8iU!v?lUGdu3YmSeDoOK=#j5!wxQ3w_ldna_ zKk-lbz0Xc&q~`ON$LVe=pU2bn@pOItcil~Irx&OEbh`iQ<#fKz#q*DOn*RPPrTN|K zH(Y1{126ysFaQHE00S@p126ysFaQHE00S@p126ysFaQHE00S@p126ysFaQHE00S@p z126ysFaQHE00S@p126ysFaQHE00S@p126ysFaQHE00S^^H3Q|lsv})|uXf+>6_4aS z->cr&`?8nte}7FgpHbfL58vjw_4WPNJV&lb96tWcT4#*S>le{{YnzDorA=fWAAd%T zGsoohi)g;J4gTkO#^8S*FM6F5>bc*`pB{eC*{_H9KWDpq{JOSYdX6@aYUK6H?tO{R zyf3MbU)MI8FTLVbjl6#N|NlP^_Vi!(qTi1-mb8z57p(QsdhPG|)wT87PovGF8hQOx z=SW_?!2dDM4*Va(r&i}mFaQ17vQ*~$@6RIs_t(7DUcO~q{KtP|z@N$2zVrG1Tg&=9 zsKui1oPIuAS4nT#8%OA)8hQO{nrr=<{(ih`%lO~^Y{LKc8fQL7@E`w;0e?R0IbX|1 z&wuS7?Zf%so=x+k3P%&*pV{+8mV6;AMt5Te;qF})-7$;=GV3L(sQ(VR3r5Z|Jy%%Gq8gH$MCtv z+H?57c4q4tWbb|@tvwso#?rOb)_?SR)kw8(dH%0?rZM1u`?CrE+iRTpjOpdS?(1lt z{okHV{BN%@`#<*ocldLG{okI=t@~f!%k{mk)5rt&gsY3wPoIe&l#I) z%Vj+_pHPJ z<9V)p?dgB*jBi=5zjOHWOV_4rCjZ2|YUK56>Dyjole{{Ynz(izCJRKk3Xxy8hMKs^q#`|0=N9OVIXVp1tTwcG3 z=3Cp;{Py*cd3^j?bsi-yuV?o1D7uakXLi4Re52?(N}OKb?B!8(CC+32%@zOg9|m9m z24DaNU;qYS00v+H24DaNU;qYS00v+H24DaNU;qYS00v+H24DaNU;qYS00v+H24DaN zU;qYS00v+H24DaNU;qYSpfv+?(ogGkA7T86wOMs2v1g5Kgt)HJ@BaQr8m%psYvLcl zkKQqwex|3+Z*@M^HcR=^-mazlrOxi#*ji_O?4G68#_pHY;@3Lz@%JIqPc=6EtWMLC zx3aat}M+WI<+-^L-0dtbCN{Y+QY&+2?y+Gt(LTiNbuo#m~KrAu>J z|D|-P&f?dx$j2El{k%s@TB~oGujyTDvsABjmiOsWOcsAF2I|*YF#Swx)yvnFvR&HF z=dWp_bJY4-y>DCQwfKDul-GSXeM~>q*mU-(_34$`{7duMJ&S*-4Rx0pIB%fSkBC;* swsjhbrL?h6v_0*Xc`zL>rM>jK6o=jK6%X?)bAvAE0s}Ar1M3X@0p|FDNdN!< literal 0 HcmV?d00001 diff --git a/pets/companionOS/coin/coin1.bmp b/pets/companionOS/coin/coin1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..20cfcff1ad9164cd1af2f46f7942817ad3961531 GIT binary patch literal 65606 zcmeI3O^)0)5QW>w(mQX106BmG1NJ7_1{m*hCvSZW?~_aTFusP;HSq%;3M56f)M`ro z4Xi2tl*H0|pQ!d==C8j$U*25e>+|*a<9dAgdAzy&e);9vzFg%&(Tvyu76~$N31RD*Q5E`oF4BZ zr)Qm9|A-ooTvOJsNAtBg_&?4&2LH$LVy}I|J3Otu zT%)Yt=-x+t@;+j&-|y{czU)=6Yn1hC`R}@`-OBHot9=$|ovXF+|F(D6E&faMCA_pe z)Lgz^^u>g7a#St&zmNaYyW~}jWq*46wd>6>pnCBCzW%p#&ffKUuDpDHsbAX%T6Ou} zw%7agXzRE}S$FvpQ99?GTHnuYwQJ{>#)E-;E!7n-#qQ|2a94_Yv{`oF2E{Ir#s4o;wft zkN;wT{r~w`koOVsAOD>JKL4MehkHH$&e2wFe*U*TkNCg6rvCYQ^fvzEzZl5-^qTj7 zzSb6f_W$i!mG=>|NBFcc$z~8me_Ptj7Y|g3m{oGc&c7AD`_y6{+%KL~}bN3DZx7U7z_XPf*)7M_Mmik}% zoSpZL$nm|S)s8(qpI_>i_Wro8_N7u?es8^cJX@Y?ly%R(wY1i`OT5?h=NPDYkN@lU zt|k7@>3xg$a}2b+pR333?b)8|-urcp^b9M?n;d-~@OI8y+7GYuF?S7LUv(?`z4hwx zY89w~9-*ze75(0h?$aLiyI#?jj`xiD^M0-0Q$wzQ56#ZBM%J%K^R+oO zzw>y{I=TKcd9%m8Wc_+HUz?MCuJwD?$@TA{*_qbJ`t@kOHmBxy9`9Kv*MBB&9&s;O z&(Zsj(CEx-j_!A^@6292;@+~pqxT=75o` zk*}jPA7h%=wS7$IXiiZ%nvbaZeT;VhXDI3C8cRQod5pID%Jb-R-mc|n+;i2=F>>>m z>eqFM{oaRG(oed&ej3X$a(pb>>TAx&)K-pSX)T>!ils5t@7JQ;&w%vH9+k9q-@IMZ zyOvWL_c66|EY+m?Yc(+5Wd^xM8mAL-{B zOXnPQ&R$XLm)6sq>M!LmHqXH819bh?qm^>+9eZkt9DViXlUL?JI?lzt^qZ?g^Ly39 RI%RIq1zlhO24JAgz<;Bc-D>~< literal 0 HcmV?d00001 diff --git a/pets/companionOS/coin/coin2.bmp b/pets/companionOS/coin/coin2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..83351c66868f6699dd35aeec87f2d9b6462d5fd1 GIT binary patch literal 65606 zcmeI3O^(zs5QQ^h$&M{T;s8iUuz@Yo%#J&;T z%Qa>FN;Kb_ga7S3WAMKnFKX=*?s;CzpCA8>t+&VbzecrOzu#LeJ$swSHOl(6?tRoJ z?<3~={oZ=>rB=PJQPvOt@BevF!+)*O%$MH%_Hd?av;McSdTsyZPxfBNdl}I6@xLwq zmwb`;ihCGXn#b9$^*rru9@j{IC?2sd>sps$FtBAl{NJ|j#VP*p(@#3~8u1_h#X#Pp zx9rFIjP~Vx&ADUt|J!gV?;~b!OF9z8EpC1eIJ|h0(zcaAqyESpR+apN&;6YK5Aagdv&G}mTz+pyu9Bk#pEl5UDx|4SMxw`Oz(mTL2RJ5sZIx|VB{Jd#?xo>-Zmwnw27pM5YPe19{Yh3c**H#aG?OTd|Z@v0+?Ydnf z>899&=U$`gR`h$jwvN4C-!+nMimq)Bebue#_tvXFHS2c0qAwk<8RKvIl2%efuD_;s z_b^x1uSD~`IVIjlPRTsE{(JDG<~?NnN;Kb_ga7UP{el1Ocu{lR&&`#2X#IHZJ{aG| zb?biT`tW(1&vUwEeOo`CyAQ^XmNoVF;79EmrJwZl`8AfK=S=k@Uv27qjOo0t z?PL0k&M7KK=Oe0qAERIXOpt!AvGmiJ$LQ-=c^>_o_vdmn?z!sc7`b^&_3Jvsa_>Vc z=_g%XKaJ%WIX)JB9qXKrsjnQxsk!v|sW>&J`u$q;%NdY<*`q0~-8b*g={=V-HSS~T z=Qvf9>YuBD@nsgIpR{(p@>m?Jd0y_X$?-YnKBw`V8}q9ETm#3;zDpnJ=Ne1r9QB!6 zQS(pDr*o=*Du=Pl44fCx=~szX%Dr|hsU>psQ<_iSG!N48Qmm!lr8;!JRz1u!%?-Ms M3k<*j3@kJ77Y@>XQUCw| literal 0 HcmV?d00001 diff --git a/pets/companionOS/coin/coin3.bmp b/pets/companionOS/coin/coin3.bmp new file mode 100644 index 0000000000000000000000000000000000000000..83351c66868f6699dd35aeec87f2d9b6462d5fd1 GIT binary patch literal 65606 zcmeI3O^(zs5QQ^h$&M{T;s8iUuz@Yo%#J&;T z%Qa>FN;Kb_ga7S3WAMKnFKX=*?s;CzpCA8>t+&VbzecrOzu#LeJ$swSHOl(6?tRoJ z?<3~={oZ=>rB=PJQPvOt@BevF!+)*O%$MH%_Hd?av;McSdTsyZPxfBNdl}I6@xLwq zmwb`;ihCGXn#b9$^*rru9@j{IC?2sd>sps$FtBAl{NJ|j#VP*p(@#3~8u1_h#X#Pp zx9rFIjP~Vx&ADUt|J!gV?;~b!OF9z8EpC1eIJ|h0(zcaAqyESpR+apN&;6YK5Aagdv&G}mTz+pyu9Bk#pEl5UDx|4SMxw`Oz(mTL2RJ5sZIx|VB{Jd#?xo>-Zmwnw27pM5YPe19{Yh3c**H#aG?OTd|Z@v0+?Ydnf z>899&=U$`gR`h$jwvN4C-!+nMimq)Bebue#_tvXFHS2c0qAwk<8RKvIl2%efuD_;s z_b^x1uSD~`IVIjlPRTsE{(JDG<~?NnN;Kb_ga7UP{el1Ocu{lR&&`#2X#IHZJ{aG| zb?biT`tW(1&vUwEeOo`CyAQ^XmNoVF;79EmrJwZl`8AfK=S=k@Uv27qjOo0t z?PL0k&M7KK=Oe0qAERIXOpt!AvGmiJ$LQ-=c^>_o_vdmn?z!sc7`b^&_3Jvsa_>Vc z=_g%XKaJ%WIX)JB9qXKrsjnQxsk!v|sW>&J`u$q;%NdY<*`q0~-8b*g={=V-HSS~T z=Qvf9>YuBD@nsgIpR{(p@>m?Jd0y_X$?-YnKBw`V8}q9ETm#3;zDpnJ=Ne1r9QB!6 zQS(pDr*o=*Du=Pl44fCx=~szX%Dr|hsU>psQ<_iSG!N48Qmm!lr8;!JRz1u!%?-Ms M3k<*j3@kJ77Y@>XQUCw| literal 0 HcmV?d00001 diff --git a/pets/companionOS/coin/coin4.bmp b/pets/companionOS/coin/coin4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..20cfcff1ad9164cd1af2f46f7942817ad3961531 GIT binary patch literal 65606 zcmeI3O^)0)5QW>w(mQX106BmG1NJ7_1{m*hCvSZW?~_aTFusP;HSq%;3M56f)M`ro z4Xi2tl*H0|pQ!d==C8j$U*25e>+|*a<9dAgdAzy&e);9vzFg%&(Tvyu76~$N31RD*Q5E`oF4BZ zr)Qm9|A-ooTvOJsNAtBg_&?4&2LH$LVy}I|J3Otu zT%)Yt=-x+t@;+j&-|y{czU)=6Yn1hC`R}@`-OBHot9=$|ovXF+|F(D6E&faMCA_pe z)Lgz^^u>g7a#St&zmNaYyW~}jWq*46wd>6>pnCBCzW%p#&ffKUuDpDHsbAX%T6Ou} zw%7agXzRE}S$FvpQ99?GTHnuYwQJ{>#)E-;E!7n-#qQ|2a94_Yv{`oF2E{Ir#s4o;wft zkN;wT{r~w`koOVsAOD>JKL4MehkHH$&e2wFe*U*TkNCg6rvCYQ^fvzEzZl5-^qTj7 zzSb6f_W$i!mG=>|NBFcc$z~8me_Ptj7Y|g3m{oGc&c7AD`_y6{+%KL~}bN3DZx7U7z_XPf*)7M_Mmik}% zoSpZL$nm|S)s8(qpI_>i_Wro8_N7u?es8^cJX@Y?ly%R(wY1i`OT5?h=NPDYkN@lU zt|k7@>3xg$a}2b+pR333?b)8|-urcp^b9M?n;d-~@OI8y+7GYuF?S7LUv(?`z4hwx zY89w~9-*ze75(0h?$aLiyI#?jj`xiD^M0-0Q$wzQ56#ZBM%J%K^R+oO zzw>y{I=TKcd9%m8Wc_+HUz?MCuJwD?$@TA{*_qbJ`t@kOHmBxy9`9Kv*MBB&9&s;O z&(Zsj(CEx-j_!A^@6292;@+~pqxT=75o` zk*}jPA7h%=wS7$IXiiZ%nvbaZeT;VhXDI3C8cRQod5pID%Jb-R-mc|n+;i2=F>>>m z>eqFM{oaRG(oed&ej3X$a(pb>>TAx&)K-pSX)T>!ils5t@7JQ;&w%vH9+k9q-@IMZ zyOvWL_c66|EY+m?Yc(+5Wd^xM8mAL-{B zOXnPQ&R$XLm)6sq>M!LmHqXH819bh?qm^>+9eZkt9DViXlUL?JI?lzt^qZ?g^Ly39 RI%RIq1zlhO24JAgz<;Bc-D>~< literal 0 HcmV?d00001 From f18147ea2471b0a0568dadb8aec6776d429c3d93 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:58:32 +0400 Subject: [PATCH 05/15] Create e --- pets/companionOS/cookie/e | 1 + 1 file changed, 1 insertion(+) create mode 100644 pets/companionOS/cookie/e diff --git a/pets/companionOS/cookie/e b/pets/companionOS/cookie/e new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/pets/companionOS/cookie/e @@ -0,0 +1 @@ + From 627eaf329ec67b6753ec2822df2f12ca816f06fa Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:58:47 +0400 Subject: [PATCH 06/15] Add files via upload --- pets/companionOS/cookie/cookie.aseprite | Bin 0 -> 2130 bytes pets/companionOS/cookie/cookie1.bmp | Bin 0 -> 65606 bytes pets/companionOS/cookie/cookie2.bmp | Bin 0 -> 65606 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 pets/companionOS/cookie/cookie.aseprite create mode 100644 pets/companionOS/cookie/cookie1.bmp create mode 100644 pets/companionOS/cookie/cookie2.bmp diff --git a/pets/companionOS/cookie/cookie.aseprite b/pets/companionOS/cookie/cookie.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..b23c91bf468ee27ddc91915dab48e4a9d425854a GIT binary patch literal 2130 zcmcIlYgAKL77mRDodMFZ)-@oKAc`He29#%c1no#Gbd8!SGFZHfh(G{CL_mmglPXma z38E!}NU**Yl~`U;l1tSwK7gc)H+!#r&bQ7!>wJ5i zb@q2?vv4@og^zG-yOVJaI2>+=J$^U)+VmpsW4r%9EMx`_H#Iin9jhJU=GnuM{EqSu zbaXqOFbB|4X7B}Ko|Q2p4=6kN})wBS{WKl zrS9=b_XH8M<%9VXv5@oF0TwYWW!-q7@ zM8@044+iYO5%tk5SdE zuiHFhJq7B83TCO7tA7lk^UR}Twwb@4lR!q00`pfoB%vNTi=!t zAZe2FubvXMboNY6W(gOkY^Ug(d;EMYlXt-YE11&YW0_>_xZl`us?K{^khH;vWs6;V zTSWEXE|~*8)$~$o4PkqrE;iv&i>Bt7#chdi?~*s`bOi;QfnTR`|5c91pg2eD*D2fo z=dVQapEzPY>nT0`EXSs3^4OY^Kt->gbr4xLmuOSjx@tn^dc4I<5)%KmATWQNDz_E) zM2YfJYt#i7w2fXiRw{WI{&yPcCD22+b*xE-h||MY)*a3T1A-9}DxP1bg1ZGr{J}M$ z%rxKDw=mkdRt;&1Kx;W_V1Eq#IL0f-Bz`!>4V#&fIN7e+*H z`LwiMCo$KB3i@FNsFcCEKWf5th zVUVhqF=~3?UYs6fkcU82dngk|9CW#>%P$@`aXmF`1AIotF;<1XqGpFQFj`r_C5~(M zqyb6r_Fmk8B%r2`qHZ*o#(}+j<=y^4QCIS7bBoI!>%pdb8g5?OHpd#$CpQwYN1EW7 zm~3(S+3vqThG$z1Yip03&}PF&SXTM!K@!?n8qnIv;BCTR%2LR^C-``fb0nTv6c6~K zs?H{k`_DY$Z_o2RP^l>;alXIs?7cWO=I~BBrUm2B|Lo0py258}WHQM!$G%!zHeVxbI2vW)n8WdkRj} zF6%?hH}@b7lC(3u{&yQstCkp6g``5MaL+4aJ%@X0tm8AT-K~-k1L1a8^;vlZ*|?_z`^C=A0_C0 z3GAvShID&9_tWQh!r?&b%!*iUoXo$XGkl9l$s!I5m#6UWB>Au ze^umE%v2tomtE*os}U!~d*ah>GiJNiY0kK-s-4;f;roh+8`6Y6q>u$YO|C!1Dd)dv zE1n3gO(GA$7tQjGv2Q6N^mB95NluxR*>FY$NszU*CYiWn)j1sjFe4|{)%Q>AEPoD- zWOk!bIWVD3g*@=Yh9{sw2VgPr!vanGE>QdCjs1PBV#C%;9rEYE-N-%xd2 z5jzJ=%9w@jDg=RbPUnqWV6*YuEqU`X6y<*eOtPGYHH1vWBkTb?WUmCojhb)9gD|Z# zHtYywokrPGeAx46IS1hQ`u^esV=}uZ=+eVc*9Pc%Pz@W*7+$~+*-W;l?HoE5rsP?D3#68`@)*}5D&5Iu!O(Ws%nl|JCFxg?`3MKF literal 0 HcmV?d00001 diff --git a/pets/companionOS/cookie/cookie1.bmp b/pets/companionOS/cookie/cookie1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..29b8f9278a5761032c6df47955c2f427f104c8a5 GIT binary patch literal 65606 zcmeI4&8{3Z5QQgV$&M{T;sMwsD-b&t*|FsjkjO(sEFxvei|~%aoI5#6O;P^qvHN!0 z=Za3b%WjXSzOOya)g-_D{{Hgjf}i)d_hI{d>(F`p(R}-x&gTd@m|@V2m7?&jGUk@Zqm(?tmL|U~c}O zKYqIM@Ggk|I_&8HBVCXK^EhDleR9r4I3WJ#;{W!SKd-4{3x7FqT>cT~U;p^$8XaVx zyWgWe@jn)S%RJ(o%BA>UZ$A-t=EVOP{K-AVHec+dV)HZB0kF zBmQJ;`d|7)<{!k_FJWqw{K2ks7xX3u)JL^zPz_gm&Eja}V= zBeE|s>)pSq17iR6`v@yKApYy}FR{n-)Rt$e-h1@g?jKYE5{Te>A zkD1Yd+4zs#BWB}2Bm2?MC^I=A{_W2+;@@7gJ)a9k?*Din;$O#~`|xNUd%7k5W%ic4 zZ|}`&#Ouv+|Bv|W_q?O?5lr@;a|Q>*zr2^Fyb}MocG3OrbE%phDR0*ttxNpR%^!Rt zuE<&TZ2Pg|AM;PuFI7ih*CU*Btv32~iGP|uYn7`X#~d-*b+hf)DgI^tzGi1SCwIhX z-K+3Vz5l2tE9F+vm7%?k?PyKCa^hd+zoph>huCtxy^igc>s!Z){}}$@(8`|IkUL{5)0Xiw z@jv1-Knn|wCHF1*I1-j8$cp5Z-)_}c94T5@Yv-xxPo|Ghon>x%0b zuB~+?55!R}*w<)XpT_U!iRHw0s}sD=MlsxvVeeX7jy3Jxudn&e>yFroog9z@azGBq z0XZNC z-~F)P(PK@R<2j&1cvCTPoosV{&RG**Ap0lkO?**)>t&h#I&4_Vq`xy1v zd3~GL+dOkV=Ek6p_tG8`^Y%P%YeLiRV zZJYD>@ys)(u3pk|2b_e?H_m7u%7khoYZ9m_(zrJqoE;9>{CBNwd}pTL?+h7t`(9LSvoSc(p95n5<;x$}+GcLxK;QiT`Sb6q zw&()<$6+rA6y*XA^y7eE_rnp79{-a7uIl> z6XI{&wTZuXA?BXHT?Y;v>wwi<4A(^C@3+W#$_3Bg&W{7f@XtQ;dX`(<&{{CX+_&5O zHr~&#Yhx|g-UZdx*SnTy_}dsiM~T1Y@lorAKi22ERy^3o1FNU6?_PO{zgYX2J-=Ny z4y<$FDE7v5ihqr_)`h7tIIx`mk?fc77kfn#^gkEsnE&Kc~-2W7UQO^A1Gzs@u|e_}lgP zc`eUeBMwYEum^iF$?}l{bL{=R*|~KL4!m_>Pxh*NHkt!d>wb2Qxp6q~;=q~M&vDzb z9|zt){oH)Znm*cGBReqn+}rzV>wD{&`A^-;hz?}g_vXNqpQAZY<1gkhPSvi5_L2D4 z*o)=X>}@{HebzXN0~!9tNDiEp*Vfks|F_@I-MYq^`R=t=jKV*|VAL`3_h3El_rP|q zHKIq}{+_b${bzPWpG)>|p!fFx_}4$d`5WKJ zRr{X3a`jn+|9bwuo@dL&+(&Q2jj`0q;gnzz(rw6VQ1_xELM+-O`g_dCMcZysd$Ypu=Ht(P(IfBx(z_KLmmox6`w z_|L5Y;;uMXw;uXOVn4^ zGymxPM|J@AFaHPRNFKobHFsmL&1#cbH}5fK?!7#7O|XAqE#@(v(E+hn%&?AQU_Z}Z zF06524Wr0R`v2HPiEZGIbq+^fn;9eX)oQMIkrzlHrA%i4KjpRUbcFZq5R z#QNWJpXYra&b8-9&)dDZ!~S^o-iv#9pmX}`AU}r(#%7N-LCh_}`o65^>hD=8Z*fA$ z_&9e?`XA2;&)4U$JU2`Dzy}9#00(dY2XFufZ~zBz00(dY2XFufZ~zBz00(dY2XFuf zZ~zBz00(dY2XFufZ~zBz00(g3Xb0?js7Igk5zgnopR4OtoAxcnHeXNWily;>F6Ek2 z$HnO9nd*yk`F-WY@_M71`ug}b<%%{=d5on#KX1%+yl+=qjI}Y=r}3q6YAcOV->9)v z6W^v>(dwk!qH@(w`|49vzmFPQYEz$L9247Z-)}a)G{( Date: Sun, 2 Feb 2025 23:59:12 +0400 Subject: [PATCH 07/15] Create e --- pets/companionOS/diceimg/e | 1 + 1 file changed, 1 insertion(+) create mode 100644 pets/companionOS/diceimg/e diff --git a/pets/companionOS/diceimg/e b/pets/companionOS/diceimg/e new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/pets/companionOS/diceimg/e @@ -0,0 +1 @@ + From ce6f822714a1001fd9da5544027fbbbe02f557a5 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Sun, 2 Feb 2025 23:59:34 +0400 Subject: [PATCH 08/15] Add files via upload --- pets/companionOS/diceimg/Dice.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof1.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof2.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof3.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof4.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof5.bmp | Bin 0 -> 65606 bytes pets/companionOS/diceimg/Diceof6.bmp | Bin 0 -> 65606 bytes 7 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 pets/companionOS/diceimg/Dice.bmp create mode 100644 pets/companionOS/diceimg/Diceof1.bmp create mode 100644 pets/companionOS/diceimg/Diceof2.bmp create mode 100644 pets/companionOS/diceimg/Diceof3.bmp create mode 100644 pets/companionOS/diceimg/Diceof4.bmp create mode 100644 pets/companionOS/diceimg/Diceof5.bmp create mode 100644 pets/companionOS/diceimg/Diceof6.bmp diff --git a/pets/companionOS/diceimg/Dice.bmp b/pets/companionOS/diceimg/Dice.bmp new file mode 100644 index 0000000000000000000000000000000000000000..bf2185db84effac6aed6bc89b5ddbcd94ed3f021 GIT binary patch literal 65606 zcmeI5F_IKV5JiWODNimz1QwPoEZG=%vN-@Jz{b&mbOK#OAxlRYZSL?O$*8KXp}R-B zJ#RxzW@TnoPyPRP5kx5T?)Uen7pM4o|M2|w@ci-Rd2xDu`spD*J@kM1`SkcaE+2n6 zpH7#5Vs-xY+|2|=l=NjY}fxi zBc2~YyCdD@7Jh_Yw|LL3-*MD?ZLQ;T*Xhltf1CV1_j_&abL+g8Mp@6A*L9qkYxNz` zrrgoZ!~{zy_P;z|IlPq%e|~$uIGGdhFM~7o_cGJUh97JjISR5 zUBBuOdh*cA8k5(^Y>u46Z0<##>*O`&J<-cgJtNOXuK(jd3$*k>|E%q(mU~ry)}xu| z@$}x=I)^if%;ea*U+&*~-qI)QS@XIM{c^498NE?I&$s5-pL^8Un|suVt^3h4UVb)I zjnH?bYiLKGxK>ZjA(zmW85Ro=RU?||3jm#y>6Yir|Ili$s*5osh{l<0vhko#ZmaJ#vj9<*~ z4q~p8&qVecxAz}S_wpZq<2|jM+EV0m8ZQjY`jzKGJJ!9NelITh6n#9(vr%K6b81VG zGmYE(A6}zt&v)vxKGnJGdCu!xZ_Vd3?&JR~13iDDjyJ8D?0L>xv#lCu8~5{nhJlth zxrRTv7J2qO=XI{P=3L``{-Z5F>sztsPp)%Lt+9?i`E2A&<39eQYs>RooAoQ^vd_JI z_B=kHaeMzm)9mpmpY;p>vtR6u8u?7jXP9674;@B6wR(9^)v-0-s?GRSXLuL&Sd-60 z_8Y%>A6m5h8P)P0v>eU1dNY1)J;P@;uJga;=e4!1yT#`qYv-5z+Ol8o z>blLsT2HUpzooxRXX$s_@2bl+{;i!|@@%Vqy`$?f3u}Fy-M^K;y>s+=?DLX7vp)Xl z+|v8)uk%m+)K3OvKn7$$24p}6WIzUFKn7$$24p}6WIzUFKn7$$24p}6WIzUFKn7$$ z24p}6WIzUFKn7$$24p}6WIzUFKn7$$24p}6WIzUFKn7$$24p}6WIzUFKn7$$24p}6 zWIzUFKn7$$24p}6WIzUFKn7$$24p}6WIzUF;HffjKG4@w)%dA?F06m5pYNK_b)>so zbMG~?p;_#I`}WVT|1Zj#$9hz&z24{HoIGD=>r9@lJwA7y;Xd_T*X`eb(JO06PDJM% zv!2WmbB{dta!x;Du9Mf;o2SlwSR32EqYHYWbJS}dYidOHGhgfM$@N-mtvQ!{HPX-T z<(#N-pFC&YX8^s>kXSWa@*(D#se9{sG{^gysWG2LFTb1n*>|Iw-Hn%8I@HR?oq zoKs`oQ+sut&!orx+@r>f{`b8`qa4wzYMN)3^1OFxcDB!%#F>3@m-w2Qb>_m!MX|PK z^hPo3IGVerm(L`h-Os#n{^vkX+Zhe>-kJHCnS3Vs%syx4Jy$EWk^vczf&Cfy4`+0b A+yDRo literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof1.bmp b/pets/companionOS/diceimg/Diceof1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9577ed8c48c489b7c55b9daa8d703846c1960ac9 GIT binary patch literal 65606 zcmeI5J&q(r5QTe%iHD0;!otE@3maoSY!1K)uyHsLC*UFoi=zzlX8EL0D*vl8d%F6K zsEx>osL0HCU(f!C)&BJJ=i7&yzCOP`KfXSH{QrEoeRuon)xW*wzxn$1_Pj0Met5av zzWk@v%Magv^y3+r0W)9*%zzm%17^Ssm;p0j2F!pNFau`54BVB0zkdJw<J+6AMv*-BebNc?bf3y5P`n}H9IoB^Yqd3phPuJ=hW9c5s z@uWG{OY%NqfXv`PRSwdx6}1n17sYEf#a>{8`s( zl;bJwnd?JOEH%;Q?icgV?&szc=b8HHTJwvsbe_u9^07Ww$NMoyjCW&>7&do5a<*T- zH>5LSzO}h(cI2@~=Sd%IZ@*G~davGo&sKNUIbHQ$EBMr`t}?GH-DQQ=wVurGk!|gM z&eeZE;Q4qyX21-X0W)9*%zzm%17^Ssm;p0j2F!pNFau`54445kU z5;Ftq8Tj>=fA03{y%uNI-};+@wG6aAgZIo^`?cC@zW)Ay&Wtt3mCvfr!n5eFzem3E zS)~u3QP?_rpR@E&&vnMn8)?s(b<}+3{oZ%bXNBbq^k#jAJ*t1}3`aO<^={?So;ubm zEZVHJx`+C6pEK;N{-b-(a4@<@S}&ayTcLN_bEWRFx9)Q$12g)kbM9S_GSJ&MSGQAp z?G-iJ<>&4_8oQ$Y>1T7tdPZ}!;$5xrdo1rCvD#}XRZ3L)FXGUmHUmO?rKuk=p1JljR;U7X4nG(mM4e7JXtZ%eiK)`uFOgy4ihrZ}nbLlU`qE zqc-|6mWz{@ZRw;uGl;c{v5r2mmZj&cRsYqR#Ivp5D{9i~>wMHkUop;3zGPcE#k_j5 zF8SnJmh;V8^&inhwX=Ke*r%jVEw1~JFZtw4wxv_dr}HDHIDU^!`^>Dh&kkL5wq5&_ zG%Ce)Hgf3 zJF7o>w)UoO#=GU+M0n@uT{qYq~G-BR1_hvfin^_G;;MW`1N2t=hBn zKcaK#-PYM#`JD`$sc)-S>)s=I>wnJw7ueG5to(?!J+)WXU-#ejJ>V>TOMQB@oT<6G z{>)@G2ki4`_F43QG+lO`*ZQCH_dj;&b@o2i|GD)SPw$a|vpILaI_K|+0c%y)YSnz+ z0|Tq>=DvMQiGh1P)~HV-&&hK#17^Ssm;p0j2F!pNFau`54445kUeV%XkX zti#Xsh&kn{NiB7<nOyeOTL; zwbyKzS31*?xy5%!-mBHp6I-h#_jZ}rA6VPgwby+3%FT*g&Bpg?btAdh6TkO;>TTQF kGo#XM$=7Urw^lcji#_p2-gj-k_MVkzWd_WE8Cb`_f8QeV5&!@I literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof2.bmp b/pets/companionOS/diceimg/Diceof2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6a4bca4c17091887d11a572fa2fc15a91757056e GIT binary patch literal 65606 zcmeI5J&q(r5QTe%iHD0;!otE@3maoSY!1K)uyHsLC*UFoi=#9hvwYH1Du1i8s;0Bw zh}wvZh>Wa^_w{IJ#cF^0`Sb0=ExtZKo*y62AOAleZr|O$dib|T{+q9FZ_nHE?U(!Q z_T|4=-GBJ@qaV+}4445kUX8M#_s>vMJN*BmkSYK|B-cRzBrU%oe_ zGh)8AxyJ0sWB1OJKG@!VrTX+u>$dz_ARpK7&{0t^Kju$9(<$f6k0!jz>O6eHLCt|M+|4M?OdC z!)Fw>W}maV{;K)x*=axYIl^)dy;;w&E9;N;%!&087Hy8SagXTFeP-Cz^^X}Hp?BKz zNZqyfYz9`EdoRezT(=XlAT5svuvnN;6 zs~L6CLw)T@yk&dzq9*#ceDW=;@4Cg0{;J(b58YSuxAq*_M{P@|Tt4;^FZtw4wxv_# zc}J~{7;E*3wJbfi+UT#^jr7rdHGgZ*k$u#b^r^*TFM0JN*4wvNr?f8m6H}j9%kq9( zZS+^|M*8T!n!mN@$UbV(am2=6>ebg+E>1pdO()(hR}(qn>Jw{OdT+JSU$qJw{O-fOFk{;J(bAKh2;xAq*_N3Cks>&ISd z)z?@qPCjf)r^xe;S{pIe>Jw{OdTzDRKh>_MSGuRQ-qN#YPgU(0NJ!|!)TuGl=JbIBY`Q%HsrIY5#wT+ z*$m9ox7BN}=DOedKiBtv)ozBrvi>ojS>NAVeOjN{z4;kh=X$KJKX-2Fw>Qr@&t_jm z|7X+XtoOD4bN>FvS$fSr$NImv{=w6GWMDSu?pNphJuzUd>RKH&pZCDPQFn9SKBj_! zs~&6Ar;+F6Ihg@7UvX1?Cr2!7DVElxwR)cBa{b6#|GM7H4$Hh$3uZ}8SYp`ToYvvzdT1{4)TEZW zu;kR|K3ZqL%mnkw&62rlPGiKedk~`+_hD^Y);?y#ywaJD%uV-> z?5ow%6I-h#_jZ}bFRX3r+Q)qO%FT*g&Fa2d-AGP*;`i>S-nOkhGb+uNe9h|KTHQ!a Yd*YAmcWuA+o|R{12F!pNIF5n;09U{f2><{9 literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof3.bmp b/pets/companionOS/diceimg/Diceof3.bmp new file mode 100644 index 0000000000000000000000000000000000000000..54a7f36eb573f31808ee1c9201d5582b0f1440b5 GIT binary patch literal 65606 zcmeI4F^(lg42Iu|kcaI=rkFVBxJ&maFkA8y~>zIyR*FZpl2zP&!L%h%uT zx7(Lrwz~iD?MFSDffx`2Vn7Ut0Wly3#DEwO17bi7hygJm2E@Rr4E*)`-}krv=;v(P zf6j>JSD4+E?(zsdY+jEz=h0_e^*-_h z49oGv9BcCQ!P1+2tY@9s*8Q^j_m*qTC(hqylEr+^&(FubKdPY?+p8zusw3CBA352N zuYcB$bFg{xkn=OfkCs|*=|ip0neXHH(fU1>^H1#IYt5Jb`S${?`7nP!+brgDasI5c z8q4wY&TRFeCzcv-Tle$%_wKjmdF^UdaJvm=k)J5TyxtNnWQ@m|$_@2&2tbGquij^NW~b(MKt=`KfTo%LjPZ`o$| zQ!f90K=aXj#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#K5%~`1I+|`&p0JI+v}pbob|qfpZw}8l3HmfyXj%w%)Dt#lT}2XwCjv zVq)NU27dkJpVR)lH{wkCpRa$^V5He7zolQS)p|V-nO?nlXM3{T)_%Qu#n*Ar`}{we zai()CH`8yl=b7?0$0MJk?%LA7dR9y4R&2Ikbzh~<{vG*|PvsqEYdlx8J$n1DuD{p3 zH-i;%uhD9s_oFZC752*dqdjwCeS}4uBdy)T`g5NZ_UiiEjE>Md_B>K|-+MI!E&c6l z_=v66*ZC|q({HpV%bPxyk2)Q-_8L9P&+cE%_4Lme$aKzfy?5&E>D7rAIs&iWGP4Axa!(Tf_+!1_3T#j<~owR0-E zol!G;uc~I$**V_#=Mo>;ieA)M|B+9AWc|C&_}2dnZ7XNa+-IayD{toz@A>3=cBGT# zxsR{47;Enn8(DhJTI*lY;*6S^JN5L*;&u*s?^}#_Am6i9onoE!C+2-(Bg^~ETI+v? zwv{ty?$pyKi`zNmz3*eKIC-;~PTZqaV>#m9CpNP5p0(D$qQx0CGk5ZuRDC;#TJIAx z%e(lP_p3U^I_pc!`@}|;_nNiV{|s#_XU^QoYf|;?9BRGqW34!Ovm>1>&wYHY#aMfv z*vQgz)>{9H7H8DV+{tTF_3a#Ly>Btzfqc)7bn{7++Q##b=o!yw zt$X@paqC0A=acW*kxo7z- zTUobS+fl!G=h^iY^|x89)V9)Vq}R&)tk$i4SJnT~46M|5)T^cAY)tyE`FnvQ%~s`S zb?)ukqrZJ!@AV}<`?bH)n=>+7`P{vtW|h9ZKG_}jH>9j}ttnbWyS7@B|n0cpX z*t0_amR5VUZ}ohJd0p)tR_VV&@7UvNvwp_=NdI;Jmg*Vxt-RASGEjMM)vROpnHZ3+ z>vY{R%V%I<%loQ!JtxM%S&#Hwucv0JnTi21AO^&M7!U(uKn#chF(3xSfEW-1Vn7Ut z0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1Vn7Ut z0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7&woC`-MKl(Ke2d{t9!u(p?^< zht15+^8crD^!dMcc_-G?VPhZav2h=9Z(~jDO`bh*&3(wr=ARFkSDdrWZ4_g+)M1Hx z>vP^8)liG=)f4AFtYzo*x7pd;d05Ap`aC&eW_z(%6Knl>KG*6;Ui#;HGdnEv@>(!U zYRnSDR&%}%ztzL%EKg0e)R`sceeUDynGB3Zemd&-d`S8)26}im%eOcX>obQQW q-A}#jSbJvFn=Sdw`n_4*mYna2zh%E_>)LBpnw1z317hGf2L1zgnEE0B literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof4.bmp b/pets/companionOS/diceimg/Diceof4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d7cc1cba211c0e734ed8f34e92154677774be82f GIT binary patch literal 65606 zcmeI4J&q+s5QN_f6Au@ygoTB*7BHgPQXPF7DpK-XZfU1s{XpVy5GEh zG1}h9%8bhD%7{0bU1|5HpFiI|+~Vu=>+|F5^T+?shue3zuU_NZYyF$AZ*R}r^6j^m z+wIG*SiSu4?MFYJfjwXk*aP-}Jzx*m1NMMDU=P>>_JBQL57-0tz+FA?*YAJ7Jo@9m zXWRbwjA(v^*Yk|SlY1yPV(Z`jvp{J+%wK2Q%4sdnpLL59 zHJ;j;r9Sio;V72wr}bx#OY_lr<~Xloewxekj9RO%{1T7-S|i6^t&syu_oHU~^1UI? zi21hW8ndGg?wu!nz|np+e!kaezh~oJbxv2k*Af1VSzTpbSGvm)TDN*KyGO>>{akDR zdBF4WeCz>xz#gy%>;Zeg9;Zeg9w$agT{_<$IL8B} z*^^TZ$gRN9zRGiaj30je<)7lud!>1=)}AwJeW@Fd(LUx{(!VwDnpPwEt$ka3*VcF< z>ozjiyk}%R(|2T#Is1H&KmQ~19ML;-X8Mloc`uxp!Gsu5nB6yoFoZU(2CA zb=F59+8l{-kLb^RR$xv4?17p_GkJaQ)_ #G!NSJ3{Z=^GMybcid;C2U_~Kv^k?T zqd9xd)IQEqjn0a>>mIzK{`s?c#(G9`bYpLK*5>hcj7^ z;)q^wI0Mu?@d&bi55_q&+MKax_Fki!!HaV=)^o}Ca6~US(Z3f{@1efyOdS2s&~oOC znfvr~D%Im0^0kFV)UQU=8QcvcdF^r%Evj>HI5wbK)r^e zI%Qt;C#NyF9`b&(82!)Ca^{SgJJs}Q<>MUc8f&hUrykhSiF=edQ6sN0xgOGc7Nh@+ zHfQXaxsz%#8pkcjW*8Qj{p#UH7Sd~R29dYY}OkKB6;r=)+)12dZE zJ*9Wc9M&c7*4!$6dwo{vTkEs+-lP1Q{-J^PK$8_X+E;mdwDktUi(}6uh4o= zk9*DJna;KT`~LmRqkF~rKeztj-}mT&NB>+s+WWsJ4?NoJuJXR`!2?&B<)hvsJaDh) zQD^4&_RmoEfIVOj*aP-}Jzx*m1NMMDU=P>>_JBQL57-0tfIVOj*aP-}Jzx*m1NMMD zU=P>>_JBQL57-0tfIVOj*aP-}Jzx*m1NMMDU=P>>_JBQL57-0tfIVOj*aP-}Jzx*m z1NMMDU=P>>_JBQL57-0tfIVOj*aP-}Jy7z%%Z0v5_j9i9d!)a@jIMN-v-F6W#aZ!x zF>_{)`G1xl zpFHjyy=MHt*mmx5lgWVZZhuM=$Qf+E~{l|5h&*aOFT;6L3F`XT@T literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof5.bmp b/pets/companionOS/diceimg/Diceof5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..ec21df6d2d2c60ea1aed943d9368302fcd3abc99 GIT binary patch literal 65606 zcmeI4F|H&<42EY#NJffQA|fK%h?rnAVh+Fwh)FmQC*UH8h@%Y8Z}}w4a#g#ltGj1< z{-^D=%XYcC{D1TGcBS2)e*S#>aI>$^Z_kf!&maFkA8y~>zIyX-Z~1S&zP&&1%lF^z zx7(Lrwz~iD?MFSDffx`2Vn7Ut0Wly3#DEwO17bi7hygJm2E@Rr4E*)`-}h&K^!IG* z|DF-euQ0nS-Q@^9Y+gs4bMzTkz1QqHKKq=$|LxzD-)FzqY@M@y*^K-=qaWAS)5qc& zmg9*z*5v7fr8oIl&$?%``}OKyEtkzF&fjLzi}{?NpO1TgsfJo?tDbmPM=rY`IoXfz zKkLUi*gSd2`5EI!ORcx`q1NZj_i_Aa{T|EtC-(5Q=1c$np9Qk{Fn>SWUd-p>{8{&E zEXUJ2GwVZ7EH&O{_w)Hz_p|x;HK`^U-|7fEW-1Vn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(u zKn#chF(3xSz_l6p^y$z0S&!H{m#wpO_vea%a~SX%ob8K&V;MMG@9cara0~<4?1^~| zh|RFozP?WWK0N&T%RlMQd)d5aYtI?2zT{>1(cb2o>ED}oORGwJZQowKa&wr7x>e>H z_f*y+eJguZvyFrJ`LE2gqIawr>08$#eJPSoE% zx4kps=X%Y0ZQovfHRm<2?is1`8qM~3ANsPMVKe<(46M<*Rhzx@n%ZoCD~9&uS?^)d zW>0JPu>RaFx7}wZ13mqF+8mJ^(VRU; zYHw$GjgIoU>lQmpfBz1%*zi5q`0=xO#Ck+??!;bO<5w*Ew^%!8t6tgpTYK96tZyZ@ zR&VRc9{RJc+KOJ(a0b@L@hg`7TdbY4MXTP~Tl$`@Klj>8fAqC;GN0Izy}TxWtViaJoECk7Gv#wVoR2uqt^P5YE(IMwD%+EZ(4K5mhQx> zI>kEcPt5zomMrf#YOVjMMwK&1dq0Z)RR(%GF{iA?a>Tt)Y{}Al)LQ?&G}_Ylk@T-H zP}M2cdCk2a>ssqk-Pvb-_t0r;&qvaqS@FF-vn_pmoIWwe+Vc2SOV3ej=gih>M!!eV zpSfn5`&d;ktMfXy{AxemZ`Ahm_dRE68g=dU_2*Z8uSwOn-qf~y@-17{3;q3l*lRKT ziuFB4eLE-9AnTXat&Oeeo7GlgEsa`n>q##5C%$AWdc_*fB5rH^ie>*6Yv)7_d;MbV zn)TYgz4~5mNvoK*Uc~6jx@s$W&932Hx7etErPmtGsU7KC*^|{&HJe#CTid06*}X?% zSJdC;FjLz~uO+=^=0|jH?YXM{M>8-}-=$tHEl1)}fBSyj>%;f+5xcf;ufCG2d~Rpe zENM0?U%B_1noR!|10$NpJ=wd(8rE6u+Sn|8m-@`ox7BCuy{q*t{Y?Yk15IYwYF}Ts z)nC$YYkuqdowdKG{|v3S^f+rKuXL{T-}diko}Crx|JwQ+zmLekvwyCh?foB#foGfD zRo?dz7`VzTpY3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1Vn7Ut0Wly3#DEwO z17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#e1jDh=wzOwr%*5)4RuP~!4-Q_4f zY-VafJU z^*Qe^)liFV)f4AFtYydbx7pd;d05Ap`aC&eW?QjX6Knl>K9}_)Fa7&^GdnEv@>(!U zYRnSDR&%}%KkMOhmZv6K>dcb!KKJo;^4m->uWXjg)#rSSIF?*%-d5*pTXn5I?Dsv0 z(Tn@AmThZqvteFwrfcTr_paI3tEDHlS4-~wGH<`JmhEeA^WiI-6}g`E`+9Y2a=s^i qbwBm8%i1%e)@;f5tl!(KTa)uW@z?BEZC!iKO0yCJVn7V+$H0F-Dbv;f literal 0 HcmV?d00001 diff --git a/pets/companionOS/diceimg/Diceof6.bmp b/pets/companionOS/diceimg/Diceof6.bmp new file mode 100644 index 0000000000000000000000000000000000000000..36f72f56f86b6f9cdfb161c52d7d796e65e9be76 GIT binary patch literal 65606 zcmeI4J(68T427SIkc^aa6%i4UBVqz)#4LanICjEj`@_;-b56A=Zz+FA?*XO^V9{tgu zv(5iGBbr}fc2~N~8G6{f&N%1nGp>5Cz32GobNcbqzfJ!>`n~qnxy9F-k)LPG_x${P-RC0=SYn2!-onvq-H)E) z`B>+4gF_7w6Bq zhp`?{c4mtQP9hi|Tle$*x1P7=dF^X<*mW=Eg6b)N7Lt9%(g-mA*@)^Jyy(^cab(0nu>c|abJ2jl^HKpv0>tj5TX_w7A!&mDwyct&Y{k-t|Z~y%7`@PY8t6E3gEbj=f{&pWo|Lrq;WFN-Q zsI5o$Y3-@hW_d?=^|yOhpa1PMG#}a=k9>~udQ1P_&jFRsc@LA_qqQf)uGH=SBR}$4 zd8g_g@2l#bDlXH%<$;z)E4BD;8Arseti9$d`>T7rMtkSH1H7#Fh&}x?UCyd+y&u}c z!}^GbHb+Lghw*ctJ>u2%w;3IwcjP=$ch9}I2d=8W>2sF$c9z%ZtX!Y}_V@1bvw6mP zMRW9HFQ0AJqsaa((ay+zJ&(K@Znj?KjkxN1R&V2F4`;Bh#*tRO&lyB|wkEGc_HT)H zPD{UxvxS|h&G2T}QN5}eIOFrV=chi36}`Y1|0t(FivC?!a^sKsjd&uyx}N17;amNY zPOZN2P|tGuSsdwPecsn&t;X8t)J74`)oA=tzY$l&SJ$(=BYdl$>C>wl4}G6ojWg(H zv8q$V89z0jQyWFzZ#5c!)NjNU@zwP#?+D-OXZrN&#zWudzSgSKx7gE(_iSOTN8RVt zMiK7SX#7#X5m&@l*R#AMe5>y@spiH5*5}kLa+a_8ysA^g880=TQyWFzYc(2wOTUb- zg`KI*@MhRv-D^_KjSsBPeXUieZ*ioP^?7fPwHj-mQyWD%SEKP~`bEwRH(RgrMqFj> zHL2#t3)bgW<4pQl9O>ly#>qO%>5n4sw;GLqR=>0GD|gED>DBEV`dLmtizA(UKi-R; z)yXR{@~o`woU`@=9d?mT2e9>T(u-^3I@79c8 zg9lpgrP_IZFb~}8kj`@_;-b z56A=ZfIJ`%$OH0#JRlFq1M+}8AP>j`@_;-b56A=ZfIJ`%$OH0#JRlFq1M+}8AP>j` z@_;-b56A=ZfIJ`%$OH0#JRlFq1M+}8AP>j`@_;-b56A=Z!0{e!EdI8)!JN6lhZi&@(l%*$)R zEWuc$My&Qcj=aU;d)5aNBRGrne9nD5PI>ML=GB@dbM-x6qfVrk&D(Guo8dAZ_InO$ zaB&~jin;bS8|D>fIx{!FcV=G?3n#IMrT21~=O0)r_O-Y9@YR|Xy Date: Sun, 2 Feb 2025 23:59:53 +0400 Subject: [PATCH 09/15] Create e --- pets/companionOS/ui/e | 1 + 1 file changed, 1 insertion(+) create mode 100644 pets/companionOS/ui/e diff --git a/pets/companionOS/ui/e b/pets/companionOS/ui/e new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/pets/companionOS/ui/e @@ -0,0 +1 @@ + From d250e6bdf3a08807855181b6b57f20734866595b Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 00:00:10 +0400 Subject: [PATCH 10/15] Add files via upload --- pets/companionOS/ui/ui1.bmp | Bin 0 -> 65606 bytes pets/companionOS/ui/ui2.bmp | Bin 0 -> 65606 bytes pets/companionOS/ui/ui3.bmp | Bin 0 -> 65606 bytes pets/companionOS/ui/ui4.bmp | Bin 0 -> 65606 bytes pets/companionOS/ui/ui5.bmp | Bin 0 -> 65606 bytes 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 pets/companionOS/ui/ui1.bmp create mode 100644 pets/companionOS/ui/ui2.bmp create mode 100644 pets/companionOS/ui/ui3.bmp create mode 100644 pets/companionOS/ui/ui4.bmp create mode 100644 pets/companionOS/ui/ui5.bmp diff --git a/pets/companionOS/ui/ui1.bmp b/pets/companionOS/ui/ui1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..24aee421c483615a2f481f2e90962bc0d6ee9607 GIT binary patch literal 65606 zcmeI4v5q7~42I_f85t=;LKl;eAP^bBWu%0Nh=_;a3E)i#iFg9u^p`?|Jy^kU7NT1#Ckr}5rC>dbO^KU({JthEQRwN~d{yLXHFrFk{4{>ZGO^;XB# z>uWWwywCad=)P9nXngeC(SEnC%Qo+=@wm2sHaxS<{)sbero^R{~l9#7M`Vn(m-jTG*B8S4U`5-1Eqm? zH8AHVpXy==WYbp0nfHuwHaxS6*A& zdQ#`D)#}BX9#Orop;oQuAFd;-`$l^E`mNVs6wMLkG=`7W=O>1Za?zQ@bf1rr!;&{k z468A%Yx%}~?|om=fS%hrV^8tkyirbL_*i=`{F8Hk(`WU$sD^rKS^M6)_BDR5Uu(Vh zN8f$bi1t`>mhRii@68+KG=`70XTbM1%4y6$Kl?RK%-dcKXRt?WBfrPLa<1P4+Gq3} z-Ls|No41v-xLrE;Ir0$Gy!!0%^~ABQJ>;?Up&n~_d~ey?vS^^icZ+*Hv(9?n1f{doN0@3;Sdh_}wk zhUbiVXY^>{xkcPKHr|zc^-T{}6U~+li=}y^JTY%0JcvGJ_QA(e z`xp!V#xpulTl}AY&IN0;TrIpUPfmSeW}~>q@V#yA)!w7Nag{5UJx9-X zV%J*uhi~3_wJ(i-kF%`}XY45Erwy0Atv%HAdiQdzzH8!W0G^}wKl<*sGj2WGn&%j) z%{K4IGhJH)|9l6i4)BZr{_oAM?4+wt0KpU6YG= zkNCH`o({6%nQh){IBxAVPT@MTeE-9{x3-_&+3?IZFF4P%@Q?KxQ2wn3{_)K+Pc}TW z%?r*mZHsqwp!~zV+ULr@YQy_}ZG31<`O&!gzUI{6{zhDD$wjfKp4f_*c%ouNru1{KFO8uvY7_k80P}SPw4t`Ze*j*7NWAw!Dw22A=c#KZ3E<80Odr z|5Nf(*UM`U^`kwrV#>egxwl3G&z1jK`0l+=^nNSvBYB?jsWi)Z*V=6JUi-Y!{w01@ z3z1*%fBt`aV;r`0(2Fbgrmbx6Q?_}d_jhKjrvu)7YNB(q;hAmT2=iOS;26%$66>9p z4bN=z_OQQ24$jSv^v{N8ws}W5*s>-go;Gt`a}d~4dv$jHpF@hn;;=MO8Ym5v21)~^ zfzm)}pfpe#C=HYbN&}^Vy=lOHYsO4-euK7s7kwW5vi0tj25zeX{Vpl2Z;SP8eDzzK z-o$j>^IQDWhdkDL;bV#Ub?e+ygZrE2eT-b$Sd)r17-8u|yyfhQavGy%O-yUe=cB!dm3_bmEFzpVhL5#7{)X6 zvHuxYb@fj7c6-(>dhD`YF8BZcJ;xp^zWnOd;l;tOSEu{4)BWT1esTEd@XpCUobvC# zcR1hY<@w`yI9&d*)$!vGKCHViC=HYbN&}^V(m-jTG*B8S4U`5-1EqmSYv5SdVhCjW z8QmT{+su2OHyfVW=G`;*Hd{74v&~!lFZ*}E#sBlhv-mImd*7+55AWOBF7{tmmrws^ z;bVWXifi7>*pBVw^iNLyqd?y+RXS^eGXz+tyf?3>>rJ_ z>e-KNokt!^zsK68`aJghx%;N()x7s@ZI_*i)$`B6Yd(szhdS2u^Ks2Ob>b!IJZc#rqujbVsnRT?@ z>bQD+t)`XtIlms=*Qy(hkDfc)Z|%Bl^RA7@t^Kp%nQh)%`B{5^HaxS$tb6v|IaI1c5|FZu*rtmC0O9Q2W(m-jTG*B8S4U`5- z18-|!nV)>Biy@FrTN!8GGsfBQ%r@_yxwqM};hAmTr{@2Y&%ZnRyEj8NJhRQ)!+yye zoPY84&qsgT|BJ_B(RtbM%r75m)3aSYBZ*6 z;%ezhowru27i)S%^}dE$wVr>tj;!t*>Fw*cUV~9IN0ieTK31Qf7&gj9XA;wWK1L2p z-YhY!#ZxVzd+XZQ_`QCu z_1+(S_f;d>W6oK+Z!5nyZD-sdLrnAPv&YvH$F}y6$I^#-tmW~&WpB%(ffnB_?)A)8@4dyr zrZv|Y#Op_^CW=RWqgb?;m_M8SSnAaFa$48(;a_=f`M%E*=lh;(uCvX%CKlS;G|A`BE*|K3VHE)zB=52%rF=}nCK6&gpdHwJ)U7N3c z@UhfB#=^hxj1JTm|CgV0!P+cW3vbJlQ=gdGD6TPlZ(Dn{_o%Pj>-RqIKenX-W*a?k z>$<6VqdYNh?OBNV=Q=0k!{=LjwI9B>t-aA1Q!&rKzW4a(BKk9c*{06fOMYrz%X2Za zt?r2v4cEP`J=FAi_j0YibK+3a`tG+g)}C$7 zbBxqxn|I`yZmofTz5`ST_{D$!@6B%IVC((HZ=?g_t@*OOPub>e;l5TJzOhs1WWzJt zyi@pZozI46wt2Vack29XcxIb-3jeM18S%84>skhZt@T&u-}lcY#c%Oj8Ym5v21)~^ zfzm)}pfpe#C=HYbN&}D8z;8eNd8~UG3?9qDR{MTNcumAXUNC(;Q%r@^5-1d4X@5a6IZyK1=K{hxwn0`zGwcyGUCF=ShEMKarMcY)i}Pl zQ}vpk<461}=iXNhJU9N~3T{}d_1H(Xb8D;z7kmAh_+0Dx_k3I4$5aFN{Qi$%Y&C{C zHp2g$yw>&d+C%+l&r&hv-}BsCqk((ne<^(T-Y0s$mG_Z6&)EC-X=?Ulv(38(c2oSS z79zji|NOsuV;r`0(2Fbgrp;{cQ?_~6c>lF$PY1mF)aX9^YfP#P!=lmjp1WGw#2bf-g0(DIgL>>C#JRLb89bRWgqYXiwGx;;bU!I#(%N0;&lIfxnCSUIlOoB52yHt z9~_2zSPmb@!{Pj&t&X35^l{zALCrwTK+QnSK+QnSK+QnSK+QnSK+QnSz|}KwtZOj_ zvi**351y^(J@=c9&usnfS$pd(8=u+wE&Z4MGvLzydGlHNm;Sx)RGkm++uAPnpI7Hk z|Fdvv9<|u7`@l2@zn6FJ=&?`gcsyEDf2#F;Ox?Ft-dMjH$H!XF_*i`oFs$aQuW|NI z#aj97$F|NRj-}qUcBwkoo#d!at>3lzxV3&ZKC|_Et3GS*&&FrAe%IFT*817_ z%+~L%`mDV_8=u+wU0c6f>u2QCdai3325z07+Q01I#}uE%XU#y(K+QnSK+QnSK+QnS zK+VA0GqB8WK2^mS$TnLUd)_n0+4#)X@1C`{-m>wTt>1g=|Jj#69R1zvAse6B`t5PQ zWDL!}`u5kOzwQ6UV_0-vHa@fU8*#ogX4I}E-+B#4Q6EuEF?_5(KNvQOMQ4KPK93Q@ z5;qHmRZR0*zG>fk-^XS^&uyKtC%o5h6jKZzYtMy0IHwPNRv(LU$S0SzudQpJ}^?Qprv<9dp)yNdv7@0 zwE7xIynM8BB0Q=aVbNYNe>VHEmeJT+4}8qzlT^xKCS1v zmSJEIGgv*m{qLKKkK&_dpk|vzxETW{I;%+_z||M+uz2`)SOZ01hbJF4?BW@a-?y9}|HV>8)J=+p|Ms?T1#`=x41@pGoBe|BNzTYzh zFCWCfbnWX<6HD$j7X3|U=0I)fe}3QL8huztoNG*d&5dxy@V&JfU|R1QU$xioecpd; zYX-*Nr)zpzbI(}65wBq0TAyIP=OG{;KHl1^_3*uI?TyYD!@U0b-s3YD(a(S}KF7|# zcYLg0k?hUSJI_CB>s@_)7RA+X<$!B0zPG(|sWa6^`kUVR-aj|}J$LXAZfhs3%{#C5x#{nDMhomzzNyp8C#P4t7wgrY8e;~~IeP!2?|!R4 z_I*0FhkNB^>-QeKpg-RMItTcrfB($k=GS~z-R$Ii*d zXSROF_}@C7jn8cTZmsXw`Pul)*6$eqTgNlyCY{M#6~R)ekft^IE)wtB9u&dtVWwtnxe>-R5T z9=WHSosG|I{Z7$fi5xWl^Oqlw4-XH=*MI#!X%4dSnXTU?wC&YU-A#Md-)3NJ4zlr? zt>2z@x5OgdBmFI}HwW4H%+~KM8n^bErf3~mzW>qPTiZ|VYldDvv@PA41Jxhx)jn1IbvC^3*QSSJs*mF8`<$V`=>uGIiA7kH4>rX{ z`YWdT8;z*k&?8EAw2-El+U$y3)$C~!s=4L;X;{k`56_n6MWQ-1%a zaBMloIX2>d2ww7fajl_#v}Y+y_4hjW*37_D)qg2|_g*J@zg71sah~yBGs}6m+HC#a z`n=KpF@1FwBER1M{QvgGG;Ga54_EDNwz9oX+4_y%-zBl$9PsXw6P=rl&uslhoUehQ zF`AnN>z$X4&usnnxL+fN=4PkV&&FrAey3=#Wllyut>?OyVPMPItF!a}9#R^XhBX5< z12qFR12qFR12qFR12qFR12qFR12qFR1AChR`%^P|TINsCwy&bkgI~7Zy_$h_XF$J8 zitBZ`UYcM1)}}U?u6uq-yT|$(-C8}j@OwN*oiT0Ril^eKW}s%EW}s%^xy-=-eLlk- literal 0 HcmV?d00001 diff --git a/pets/companionOS/ui/ui4.bmp b/pets/companionOS/ui/ui4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e6c9c8d4cfc861398fd71c1fd8e4d28cd923bab8 GIT binary patch literal 65606 zcmeI4v5q7~42Jgv85t=;LKl;eAP^bBWu%0Nh=?~J;R)bP2ni5RzzgsMCoU!>7}h=W zvHuxYb@xp5c6-+?rtPv_F8BZcJ*V3RzWnOd-HSWBUfq8_yZ`)n`MkLM=faJ2?bbqzxx z+uzac!L!YLF48`*M8J%j9RSL zv|<+L(q3zP+rOrM@7lR}!2|2(Wj|K)#ITw(pE!0+Y_1nQvDzEoa(1z%Co$G*>@9oO zoHMF+ZeGoMU)MH|UaXl@YpHAHG~U}somnpLM{B>2we}#k*6O@#_wG?YH?QW^Uoz{` zdaL8=^|hK--sk*!>AqIo()iMIm-gGbF5A3Y<8f>MYv<# z;hAmTTlv{~e>Oa`&AT;!xAxD7r_Ef~7zA$BPwgN3`A&I~$&J^XhL!cvfPp&2ka5 zwfB8Y*VL-DJeS4oQi~tekW*`Zv?h-A{KIu**@K4 zefDddn76$e%Tcd&E#J8Bz3+1x=;7HqbI*8h-Uv61;bZMN@F(Z~rqAYcQ4RIfvi7}o z?Q8sAzt(#1FMan_Bif^fr`8?C@68+GrZIf1JrlmSQBGqX5B6)En76$e&R~z$Mt+Zf zGKGb6^kMAveTNVwp_-=7; z{d#z|&f7CSH}3@E<+f%{FxNd%O!MCNXR{yc>uuf3MfFh({*~vJ@AuE)>Ff7iXPfu2 z@G=ebbYR~N(Ja~U%rfP#P!=lm1xF9 z%d$Q5mh)!AGuymdayO!PHaxSK4bN=zD%M;2 zaQ^Nur_(ooz5ee*ymfXqJV(qsqDKqQJ>tf(@vhvfZ+ftrXtr!v%*`9+iFq60L5x~k zt4|&~B`-H0)3y292OmrAH5UGjXLO*p_<#Gq!0D{&X|jN{`I}bM;Fnb z0n9dc&QbDn^ID#ZnQd*pw;H1sOYPE{-adL^dp+s1)JFUp-}>G^H~u|#iaXd_%r0Nc zT65}?r;o1jt==xy*mLxJCw8lafB5E|SNq)f_c+_yaKboY6 z2H-h*|D*4IJ7eqF);!0O+HCVKd8S)y;GgdR)d7C-|M2_6Tk$^Pe&aXN0rA$%+1{sY z^R{r`Dh}V+xpT7NnQh)V{P)gh!!z5wd-FSYel|R_%{zzx-uaAp+RSy0L11tF)%j2R z?fP#P!=lmuyg9x8!G|G z_sYL%U`_|w@XR)EkGorP5$_TIR@c)(HaxS{y~ZhAN0#q@c=y)!(>oiU+2#f3 zkrw{3UIWU%)xbZ#S?0-xXSR94d8BRejt-Q6xL5mB`B!at->;1ijVV7GSKrr64eoEm zwU%5Ii|UCju@V0oQ~oUu_xNTxN9QAUWZRopbNE<$CVX%G^ODy+OKRAM)jd&6^J{$N zns**+-1C8VZ=W*%hO=GZ8TrJp)M72J7jdC&xq8j7@gx3~bMLDLo*Vyg1vjkKdhDaxwKdj*i@knLe698T zd%i92W2%9t{QfV&*lG-OY=r-mywvsb+C%+l�L4?|JU6(ZEyXe-yq)?-RY>%KMT$ z&-hrH<-A*Mws~)T-e~_Ezp91EulGOyzk6dGwsg>oEBB_YZ0}RHd87AtWUQwH-hFDK zbF<-@ZQcm;En;vC=VpoZ&dY{pwt0KlZ;^v@vrGDC!!z5wOE}oGCL^9Ub6sN)*i(CT zcK*MI6o&=YrXKX#QeH-?$qG^rgR4mhTQ=t0<1ztwx%u2EYn-zR5+CeN&}^V J(!g`kz`qWi#^C?} literal 0 HcmV?d00001 diff --git a/pets/companionOS/ui/ui5.bmp b/pets/companionOS/ui/ui5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d09e4b86fb884543ee67b83cefd99ff3adb416b1 GIT binary patch literal 65606 zcmeI4y^bVR4263I85t=;LK~BiAP^bBW~79Oh=?~J;R)bP2ni5RzzgsMD>f!2XxiQL zu}8-Dr>3jB$}=ueZC~5h*LBXRhM8UQfP#So&27deD&tu)| zV36%+bmKkS%zK_U8=l$b-81(#TQ)qi&0GAh`#a#`|9RtC{1^Yd@6_YzBJX`$+okzS zR8jy$2A}I)EKo`da6}l&(b~G zbH*RxIn(2wHKTb)xPTQ_XD5c$ocYADOJbv5^u%g!e9PIznx4d1FR>#$m-Mw_p#O<#Fp9-o=f}Px_&gT$A8H@y0^Cv+(-4j zywCY{>-^ce)_xx!;pywQUT2$kYrID1XTvkwyd(U#&S%3j+q_%zJ32obp4sLd;lFi0 z8=l$b-J0Lg`5E!Fnd@E$gONTezwV#66rP1=X`nPv8Ym5v21)~^fzm)}V3`K&&p_&0 z2Z3zbv!~8B^PcC;hG({U_sqS`mJQEr^WK~PPd@+d=hjC6@vMGraW1X#zSU?<*TmJ*lR9s$ zRxj4{i0XX}wQ4>8a2;9QH`CkKZ@mViXpShSF?_5(KQU~Si_Rpb`+STXmb_VFSdD32 z%Qx9oTn+*5hZx zGuyo2d@qX*jBotj+1c>SHg6C6J>;_CnQh)ZaNL_A8=l$b?P0%%Tt+-?=DOBFU=JFs z8J7M1r^2i7Dh-qdN&}^V(m-jTG*B9NP8wL}C!gwK2xQYu#+mnwaW*`&&AVsrZMJN9 zW}CP8U-!SwivK>IpZ@*NQSXudvf-I+-Vy$5<>CC@UyjFb{(Al2O}uqZHaypuca0t` zJhzA&$Hu#IufFNQYNFY)VKJIF$`kW8!h;yKwpO1!_MCk9@G)JRuYK^b)IP?-zwwL? z)E57jpL4<5ELRI}%ac=|nAs?G^H~u|#iaXd_%r0NcT65}?r;o1jt==xy*h}>CN$gq+|M1N_ zulBj|?{T)Z;f$Td{Jh~|Z)*=Vz23cCtM8IH8i42M{g1x;?TlN`w&XcxYO~Ed^Gw&) zz(3yssssGuzyEu)YdP3@zwsOCfOu=ZZ0}RHd0V*ODh}V+(K*@h%r@@`|E=@c@XR*v z*8Gmn&xU8Vc}MtfozIA;&0NfP#P!=lmie2=gVP6bttA)5qIzO8HsW7n%D=_o9^WkI=zPTX zYNUT_kN8*4 zy{{U0Zv4X)+^|;bv5#t()>scN_WCvPrPlNB`L?`|sRo|%`#*!R)fnd32>)~Pp{|$L z9_mMX)`}_rp6A{g4Lnu;*TQ%2eWLeUd7sJijQ7$k=Ur>F&3o7W-^?oC_S-luHyM(^*Mv7Qci_o<1_&4y>Tc_Ykk5rbnmH%qK{UN$_l&D+EN z7CAUKJJUZKp4sM|;b6;}jCk72b*+QImfEYc^Zy)D92SSAfzm)}pfpe#C=HYbN&}^V z(m-jTG*B8S4eU(=_FFS%TIV-t+jr6D!7p3yUTNUA8qn{O!uqyYuZ^#MYtx&Uu6urq zfBKNeS}%MoF~4q|dv0+0(7cb4D;sN4u?8cJ;bW~P^3TDCkEMO+ht)GiF|Fm?R!sBd zU-Y2(f{DiPu^wCE*eGu~yP}-Ns96%zTJyQJ7qPN$@d1knCyn7_ZC~U^G0xCEQ5`Yt zY(4$`K3!8&_W#@~&K@7b&@SSa)&D=EJTbFe#8{gprj|T0)>^N=)v?C1w`|P0$K?#* m!-vn^WBnN3S~Iue_jryvV@_{{Q{hw^C=HYbN(0YD1OEczGsfWn literal 0 HcmV?d00001 From ff396cdd6c764c6fa29b7a52405fc1c02b80905f Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 20:01:45 +0400 Subject: [PATCH 11/15] Update coin.py --- pets/companionOS/coin.py | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/pets/companionOS/coin.py b/pets/companionOS/coin.py index 9ba58c92..d710ca39 100644 --- a/pets/companionOS/coin.py +++ b/pets/companionOS/coin.py @@ -3,6 +3,10 @@ import pygame import time import random +import os + +script_dir = os.path.dirname(__file__) +coin_img_dir = os.path.join(script_dir, "coin") # Display pygame.init() @@ -11,7 +15,8 @@ display.show(splash) # Initial Plain Screen -start = displayio.OnDiskBitmap(r"\coin\coin.bmp") +start_path = os.path.join(coin_img_dir, "coin.bmp") +start = displayio.OnDiskBitmap(start_path) bg_sprite = displayio.TileGrid( start, pixel_shader=start.pixel_shader @@ -19,11 +24,11 @@ splash.append(bg_sprite) # Update Display -def update_dice_image(diceno): - dice_path = fr"\coin\coin{diceno}.bmp" - new_dice = displayio.OnDiskBitmap(dice_path) +def update_coin_image(coin_side): + coin_path = os.path.join(coin_img_dir, f"coin{coin_side}.bmp") + new_coin = displayio.OnDiskBitmap(coin_path) splash.pop() # Remove the old sprite - new_sprite = displayio.TileGrid(new_dice, pixel_shader=new_dice.pixel_shader) + new_sprite = displayio.TileGrid(new_coin, pixel_shader=new_coin.pixel_shader) splash.append(new_sprite) # Add the new sprite # Main loop @@ -36,8 +41,8 @@ def update_dice_image(diceno): exit() elif event.type == pygame.KEYDOWN: if event.key == pygame.K_UP: - # Roll the dice - diceno = random.randint(1, 4) - update_dice_image(diceno) + # Flip the coin (assuming 1 = heads, 2 = tails) + coin_side = random.randint(1, 2) + update_coin_image(coin_side) elif event.key == pygame.K_DOWN: print("Down key pressed") From 1d6fd55ef68e6f2d47f89d05ec4201028f14d048 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 20:02:38 +0400 Subject: [PATCH 12/15] Update cookie.py --- pets/companionOS/cookie.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pets/companionOS/cookie.py b/pets/companionOS/cookie.py index 788c9ad2..f16b6fdd 100644 --- a/pets/companionOS/cookie.py +++ b/pets/companionOS/cookie.py @@ -2,6 +2,11 @@ from blinka_displayio_pygamedisplay import PyGameDisplay import pygame import time +import os + +# Get the directory of the current script +script_dir = os.path.dirname(__file__) +cookie_img_dir = os.path.join(script_dir, "cookie") # Initialize the display pygame.init() @@ -12,9 +17,9 @@ # Score variable score = 0 -# initial cookie image -cookie1_path = r"\cookie\cookie1.bmp" -cookie2_path = r"\cookie\cookie2.bmp" +# Initial cookie images +cookie1_path = os.path.join(cookie_img_dir, "cookie1.bmp") +cookie2_path = os.path.join(cookie_img_dir, "cookie2.bmp") cookie1 = displayio.OnDiskBitmap(cookie1_path) bg_sprite = displayio.TileGrid( cookie1, @@ -22,11 +27,9 @@ ) splash.append(bg_sprite) - pygame_screen = pygame.display.set_mode((128, 128)) font = pygame.font.Font(None, 24) - def update_cookie_image(image_path): new_cookie = displayio.OnDiskBitmap(image_path) splash.pop() # Remove the old sprite From c4ac539d318fc92c5ef7bcdcc01c7e657592a7bd Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 20:03:10 +0400 Subject: [PATCH 13/15] Update dice.py --- pets/companionOS/dice.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pets/companionOS/dice.py b/pets/companionOS/dice.py index e292b8c3..a53cb5c7 100644 --- a/pets/companionOS/dice.py +++ b/pets/companionOS/dice.py @@ -3,6 +3,10 @@ import pygame import time import random +import os + +script_dir = os.path.dirname(__file__) +dice_img_dir = os.path.join(script_dir, "diceimg") # Display pygame.init() @@ -11,7 +15,8 @@ display.show(splash) # Initial Plain Screen -start = displayio.OnDiskBitmap(r"\diceimg\Dice.bmp") +start_path = os.path.join(dice_img_dir, "Dice.bmp") +start = displayio.OnDiskBitmap(start_path) bg_sprite = displayio.TileGrid( start, pixel_shader=start.pixel_shader @@ -20,7 +25,7 @@ # Update Display def update_dice_image(diceno): - dice_path = fr"\diceimg\Diceof{diceno}.bmp" + dice_path = os.path.join(dice_img_dir, f"Diceof{diceno}.bmp") new_dice = displayio.OnDiskBitmap(dice_path) splash.pop() # Remove the old sprite new_sprite = displayio.TileGrid(new_dice, pixel_shader=new_dice.pixel_shader) From 0dc843d6231682c2fdd8346102df09d428b83fd8 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 20:03:38 +0400 Subject: [PATCH 14/15] Update hackapet.py --- pets/companionOS/hackapet.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pets/companionOS/hackapet.py b/pets/companionOS/hackapet.py index 147120b5..3623936b 100644 --- a/pets/companionOS/hackapet.py +++ b/pets/companionOS/hackapet.py @@ -2,7 +2,10 @@ from blinka_displayio_pygamedisplay import PyGameDisplay import pygame import time -import random +import os + +# dir path +script_dir = os.path.dirname(__file__) # Display pygame.init() @@ -11,7 +14,8 @@ display.show(splash) # Initial Plain Screen -start = displayio.OnDiskBitmap(r"C:\Users\Briyan\Documents\hackapet\splash1.bmp") +image_path = os.path.join(script_dir, "splash1.bmp") +start = displayio.OnDiskBitmap(image_path) bg_sprite = displayio.TileGrid( start, pixel_shader=start.pixel_shader @@ -24,4 +28,4 @@ for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() - exit() \ No newline at end of file + exit() From e1658f7d3cf0a4b921b6f382743de60ffa99d393 Mon Sep 17 00:00:00 2001 From: Briyan George Dyju <70208092+briyandyju09@users.noreply.github.com> Date: Mon, 3 Feb 2025 20:04:05 +0400 Subject: [PATCH 15/15] Update launcher.py --- pets/companionOS/launcher.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pets/companionOS/launcher.py b/pets/companionOS/launcher.py index 727dc868..317dbc50 100644 --- a/pets/companionOS/launcher.py +++ b/pets/companionOS/launcher.py @@ -4,6 +4,9 @@ import time import os +# dir path +script_dir = os.path.dirname(__file__) + # Display pygame.init() display = PyGameDisplay(width=128, height=128) @@ -12,11 +15,11 @@ # UI file paths ui_files = [ - r"\ui\ui1.bmp", - r"\ui\ui2.bmp", - r"\ui\ui3.bmp", - r"\ui\ui4.bmp", - r"\ui\ui5.bmp", + os.path.join(script_dir, "ui", "ui1.bmp"), + os.path.join(script_dir, "ui", "ui2.bmp"), + os.path.join(script_dir, "ui", "ui3.bmp"), + os.path.join(script_dir, "ui", "ui4.bmp"), + os.path.join(script_dir, "ui", "ui5.bmp"), ] # Load Launcher