{"id":8,"date":"2026-03-08T10:21:00","date_gmt":"2026-03-08T10:21:00","guid":{"rendered":"https:\/\/tygydyk.com\/index.php\/home\/"},"modified":"2026-03-10T21:42:14","modified_gmt":"2026-03-10T21:42:14","slug":"home","status":"publish","type":"page","link":"https:\/\/tygydyk.com\/","title":{"rendered":"Home"},"content":{"rendered":"<section class=\"l-section wpb_row height_auto color_alternate\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row via_grid cols_1 laptops-cols_inherit tablets-cols_inherit mobiles-cols_1 valign_top type_default stacking_default\"><div class=\"wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"w-hwrapper valign_middle align_center\" style=\"--hwrapper-gap:0.5rem\"><\/div><div class=\"w-separator size_small\"><\/div><div class=\"wpb_text_column us_custom_eb849559\"><div class=\"wpb_wrapper\"><h2>Welcome to <strong><span style=\"color: var(--color-content-link);\">TYGYDYK<\/span> game development company<\/strong><\/h2>\n<\/div><\/div><\/div><\/div><\/div><\/div><\/section><section class=\"l-section wpb_row us_custom_c70c97eb height_auto\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row via_grid cols_1 laptops-cols_inherit tablets-cols_inherit mobiles-cols_1 valign_middle type_default stacking_default\"><div class=\"wpb_column vc_column_container us_custom_2c45f91b\"><div class=\"vc_column-inner\"><div class=\"w-separator size_medium\"><\/div><div class=\"w-hwrapper valign_top stack_on_mobiles align_center\" style=\"--hwrapper-gap:2rem\"><div class=\"wpb_text_column us_custom_17d082de\"><div class=\"wpb_wrapper\"><p>Check out our new &#8220;Catch the Cat&#8221; game!<\/p>\n<\/div><\/div><\/div><div class=\"w-html\"><div id=\"game-wrapper\" style=\"position: relative; width: 100%; max-width: 600px; margin: 0 auto; aspect-ratio: 600 \/ 400; touch-action: none; background: #000;\">\n    <canvas id=\"game\" width=\"600\" height=\"400\" style=\"width: 100%; height: 100%; display: block;\"><\/canvas>\n    \n    <div style=\"font-size:15px; font-family:Arial; position:absolute; top:10px; left:15px; background:white; padding:3px 12px; border-radius:15px; box-shadow:2px 2px 5px gray; pointer-events:none; z-index: 5;\" id=\"score\">\ud83d\udce6 0<\/div>\n    <div style=\"font-size:10px; font-family:Arial; position:absolute; top:45px; left:15px; background:white; padding:2px 10px; border-radius:12px; box-shadow:2px 2px 5px gray; pointer-events:none; z-index: 5;\" id=\"speed\">\u26a1 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c<\/div>\n\n    <div id=\"start-screen\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); display: flex; justify-content: center; align-items: center; z-index: 20; transition: opacity 0.3s;\">\n        <button id=\"play-button\" style=\"padding: 15px 40px; font-size: 24px; font-family: Arial, sans-serif; cursor: pointer; background: #FF8C42; color: white; border: none; border-radius: 50px; box-shadow: 0 4px 15px rgba(0,0,0,0.5); transition: transform 0.2s;\">\n            \u0418\u0413\u0420\u0410\u0422\u042c\n        <\/button>\n    <\/div>\n<\/div>\n\n<script>\nlet canvas = document.getElementById('game');\nlet ctx = canvas.getContext('2d');\nlet boxX = 240;\nlet score = 0;\nlet cats = [];\nlet gameSpeed = 4;\nlet colors = ['#A9A9A9','#F5F5F5','#2F2F4F','#FF8C42','#8B4513'];\nlet colorIndex = 0;\nlet isPlaying = false; \/\/ \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438\u0433\u0440\u044b\n\n\/\/ \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\nconst startScreen = document.getElementById('start-screen');\nconst playBtn = document.getElementById('play-button');\n\n\/\/ \u0417\u0430\u043f\u0443\u0441\u043a \u0438\u0433\u0440\u044b \u043f\u043e \u043a\u043b\u0438\u043a\u0443\nplayBtn.addEventListener('click', () => {\n    startScreen.style.opacity = '0';\n    setTimeout(() => {\n        startScreen.style.display = 'none';\n        isPlaying = true;\n    }, 300);\n});\n\n\/\/ \u042d\u0444\u0444\u0435\u043a\u0442 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443\nplayBtn.addEventListener('mouseenter', () => playBtn.style.transform = 'scale(1.1)');\nplayBtn.addEventListener('mouseleave', () => playBtn.style.transform = 'scale(1)');\n\nfunction limitBox() {\n    if(boxX < 0) boxX = 0;\n    if(boxX > 460) boxX = 460;\n}\n\n\/\/ \u041c\u044b\u0448\u044c\ncanvas.addEventListener('mousemove', function(e) {\n    if(!isPlaying) return;\n    let rect = canvas.getBoundingClientRect();\n    let scaleX = canvas.width \/ rect.width; \n    boxX = (e.clientX - rect.left) * scaleX - 70;\n    limitBox();\n});\n\n\/\/ \u041a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\nwindow.addEventListener('keydown', function(e) {\n    if(!isPlaying) return;\n    if (e.key === 'ArrowLeft' || e.key.toLowerCase() === 'a' || e.key === '\u0444') boxX -= 35;\n    if (e.key === 'ArrowRight' || e.key.toLowerCase() === 'd' || e.key === '\u0432') boxX += 35;\n    limitBox();\n});\n\n\/\/ \u0422\u0430\u0447\ncanvas.addEventListener('touchmove', function(e) {\n    if(!isPlaying) return;\n    e.preventDefault();\n    let touch = e.touches[0];\n    let rect = canvas.getBoundingClientRect();\n    let scaleX = canvas.width \/ rect.width;\n    boxX = (touch.clientX - rect.left) * scaleX - 70;\n    limitBox();\n}, { passive: false });\n\n\/\/ \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u0442\u043e\u0432 (\u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u0433\u0434\u0430 \u0438\u0433\u0440\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430)\nsetInterval(function(){\n    if(isPlaying) {\n        cats.push({x:30+Math.random()*540,y:20,color:colors[colorIndex%colors.length]});\n    }\n}, 500);\n\n\/\/ \u0412\u0430\u0448\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u043a\u043e\u0442\u0430\nfunction drawCat(x,y,mainColor){\n    ctx.fillStyle=mainColor;\n    ctx.beginPath();ctx.ellipse(x,y,22,18,0,0,Math.PI*2);ctx.fill();\n    ctx.beginPath();ctx.ellipse(x,y-14,16,14,0,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle=mainColor;\n    ctx.beginPath();ctx.moveTo(x-12,y-28);ctx.lineTo(x-20,y-45);ctx.lineTo(x-6,y-33);ctx.fill();\n    ctx.beginPath();ctx.moveTo(x+12,y-28);ctx.lineTo(x+20,y-45);ctx.lineTo(x+6,y-33);ctx.fill();\n    ctx.fillStyle='#FFB6C1';ctx.beginPath();ctx.moveTo(x-10,y-31);ctx.lineTo(x-16,y-42);ctx.lineTo(x-8,y-35);ctx.fill();\n    ctx.beginPath();ctx.moveTo(x+10,y-31);ctx.lineTo(x+16,y-42);ctx.lineTo(x+8,y-35);ctx.fill();\n    ctx.fillStyle='white';ctx.beginPath();ctx.arc(x-7,y-20,4,0,Math.PI*2);ctx.arc(x+7,y-20,4,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#2F4F4F';ctx.beginPath();ctx.arc(x-8,y-21,2,0,Math.PI*2);ctx.arc(x+6,y-21,2,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='white';ctx.beginPath();ctx.arc(x-9,y-22,0.8,0,Math.PI*2);ctx.arc(x+5,y-22,0.8,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#FF69B4';ctx.beginPath();ctx.arc(x,y-13,2.5,0,Math.PI*2);ctx.fill();\n    ctx.strokeStyle='#666';ctx.lineWidth=1;\n    for(let i=0;i<3;i++){\n        ctx.beginPath();ctx.moveTo(x-10,y-12+i*2);ctx.lineTo(x-23,y-15+i*3);ctx.stroke();\n        ctx.beginPath();ctx.moveTo(x+10,y-12+i*2);ctx.lineTo(x+23,y-15+i*3);ctx.stroke();\n    }\n    ctx.strokeStyle=mainColor;ctx.lineWidth=8;\n    ctx.beginPath();ctx.moveTo(x+18,y-5);ctx.quadraticCurveTo(x+38,y-15,x+43,y-30);ctx.stroke();\n}\n\nfunction draw(){\n    \/\/ \u0424\u043e\u043d \u0438 \u0434\u0435\u043a\u043e\u0440\u0430\u0446\u0438\u0438 (\u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439)\n    ctx.fillStyle='#FAF0E6';ctx.fillRect(0,0,600,400);\n    for(let i=0;i<10;i++){\n        let x=i*65;ctx.fillStyle=i%2===0?'#D2691E':'#8B4513';ctx.fillRect(x,280,60,120);\n        ctx.strokeStyle='#654321';ctx.lineWidth=2;\n        ctx.beginPath();ctx.moveTo(x+10,280);ctx.lineTo(x+10,400);\n        ctx.moveTo(x+30,280);ctx.lineTo(x+30,400);\n        ctx.moveTo(x+50,280);ctx.lineTo(x+50,400);ctx.stroke();\n    }\n    ctx.fillStyle='#A0522D';ctx.fillRect(30,190,200,70);\n    ctx.fillStyle='#8B4513';ctx.fillRect(30,140,200,50);\n    ctx.fillStyle='#8B4513';ctx.fillRect(20,150,20,110);ctx.fillRect(220,150,20,110);\n    ctx.fillStyle='#CD853F';ctx.beginPath();ctx.ellipse(70,165,20,10,0,0,Math.PI*2);ctx.fill();\n    ctx.beginPath();ctx.ellipse(140,165,20,10,0,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#5D3A1A';ctx.fillRect(45,260,15,10);ctx.fillRect(200,260,15,10);\n    ctx.fillStyle='#8B5A2B';ctx.fillRect(450,180,25,170);\n    ctx.strokeStyle='#C19A6B';ctx.lineWidth=4;\n    for(let i=0;i<9;i++){ctx.beginPath();ctx.arc(462,190+i*18,12,0,Math.PI);ctx.stroke();}\n    ctx.fillStyle='#B0B0B0';ctx.beginPath();ctx.ellipse(462,165,30,12,0,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#D3D3D3';ctx.beginPath();ctx.ellipse(462,160,22,8,0,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#8B4513';ctx.fillRect(400,30,120,90);\n    ctx.fillStyle='#D2B48C';ctx.fillRect(405,35,110,80);\n    ctx.fillStyle='#8B4513';ctx.beginPath();ctx.arc(460,70,20,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#8B4513';ctx.beginPath();ctx.moveTo(445,50);ctx.lineTo(435,35);ctx.lineTo(450,45);ctx.fill();\n    ctx.beginPath();ctx.moveTo(475,50);ctx.lineTo(485,35);ctx.lineTo(465,45);ctx.fill();\n    ctx.fillStyle='white';ctx.beginPath();ctx.arc(450,70,3,0,Math.PI*2);ctx.arc(470,70,3,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='black';ctx.beginPath();ctx.arc(451,71,1.5,0,Math.PI*2);ctx.arc(471,71,1.5,0,Math.PI*2);ctx.fill();\n    ctx.fillStyle='#FFB6C1';ctx.beginPath();ctx.arc(460,78,2,0,Math.PI*2);ctx.fill();\n\n    \/\/ \u041a\u043e\u0440\u043e\u0431\u043a\u0430\n    let x = boxX;\n    ctx.fillStyle='#C19A6B';ctx.fillRect(x,310,140,40);\n    ctx.fillStyle='#A67B5B';ctx.fillRect(x-5,300,150,10);ctx.fillRect(x-5,350,150,10);\n    ctx.fillStyle='#B5926E';ctx.fillRect(x-5,300,10,60);ctx.fillRect(x+135,300,10,60);\n    ctx.strokeStyle='#8B5A2B';ctx.lineWidth=3;\n    ctx.beginPath();ctx.moveTo(x,310);ctx.lineTo(x,350);ctx.moveTo(x+140,310);ctx.lineTo(x+140,350);ctx.stroke();\n    ctx.fillStyle='#DEB887';ctx.globalAlpha=0.6;ctx.fillRect(x+20,305,20,40);ctx.fillRect(x+100,305,20,40);ctx.globalAlpha=1;\n    ctx.fillStyle='#4A2C1A';ctx.font='bold 20px Arial';ctx.fillText('\ud83d\udce6',x+55,340);\n    ctx.fillStyle='#00000030';ctx.fillRect(x-5,360,150,10);\n\n    document.getElementById('score').innerHTML='\ud83d\udce6 '+score;\n    document.getElementById('speed').innerHTML='\u26a1 '+gameSpeed.toFixed(1);\n\n    \/\/ \u0414\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u043e\u0432 (\u0442\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u043b\u0438 \u0438\u0433\u0440\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430)\n    if(isPlaying) {\n        for(let i=0; i<cats.length; i++){\n            cats[i].y = cats[i].y + gameSpeed;\n            drawCat(cats[i].x, cats[i].y, cats[i].color);\n            if(cats[i].y > 300 && cats[i].x > x-15 && cats[i].x < x+155){\n                cats.splice(i,1);\n                score++;\n                gameSpeed = gameSpeed + 0.3;\n                if(gameSpeed > 12) gameSpeed = 12;\n                if(score % 5 === 0){ colorIndex++; }\n            }\n            if(cats[i] && cats[i].y > 420){ cats.splice(i,1); }\n        }\n    } else {\n        \/\/ \u0415\u0441\u043b\u0438 \u0438\u0433\u0440\u0430 \u043d\u0430 \u043f\u0430\u0443\u0437\u0435 (\u044d\u043a\u0440\u0430\u043d \u0441\u0442\u0430\u0440\u0442\u0430), \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043a\u043e\u0442\u043e\u0432 \u043d\u0435\u043f\u043e\u0434\u0432\u0438\u0436\u043d\u043e\n        for(let i=0; i<cats.length; i++){\n            drawCat(cats[i].x, cats[i].y, cats[i].color);\n        }\n    }\n\n    requestAnimationFrame(draw);\n}\ndraw();\n<\/script><\/div><div class=\"w-separator size_small\"><\/div><div class=\"w-separator size_medium\"><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-8","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/pages\/8","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/comments?post=8"}],"version-history":[{"count":23,"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/pages\/8\/revisions"}],"predecessor-version":[{"id":58,"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/pages\/8\/revisions\/58"}],"wp:attachment":[{"href":"https:\/\/tygydyk.com\/index.php\/wp-json\/wp\/v2\/media?parent=8"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}