{"id":248,"date":"2024-10-16T16:19:06","date_gmt":"2024-10-16T14:19:06","guid":{"rendered":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/?post_type=project&#038;p=248"},"modified":"2024-11-12T12:16:16","modified_gmt":"2024-11-12T11:16:16","slug":"brick-out","status":"publish","type":"project","link":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/project\/brick-out\/","title":{"rendered":"Brick Out"},"content":{"rendered":"\n<p>Un jeu de casse-briques classique en <strong>JavaScript <\/strong>(Vanilla) <strong>Orient\u00e9 Objet<\/strong>. L&rsquo;\u00e9cran de jeu est dessin\u00e9 sur un <strong>canvas <\/strong>HTML et anim\u00e9 via le syst\u00e8me d&rsquo;<strong>Animation Frame<\/strong> de l&rsquo;objet Window. L&rsquo;enregistrement des scores se fait de mani\u00e8re asynchrone dans un fichier <strong>JSON <\/strong>via le syst\u00e8me de requ\u00eates <strong>AJAX<\/strong>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Plusieurs niveaux<\/li>\n\n\n\n<li>Plusieurs types de briques<\/li>\n\n\n\n<li>Des bonus\/malus<\/li>\n\n\n\n<li>Un tableau des scores (AJAX\/JSON)<\/li>\n<\/ul>\n\n\n\n<p>Lorsqu\u2019une brique est d\u00e9truite, elle laisse tomber un bonus (vert) ou un malus (orange) qui feras effet si il attrap\u00e9 avec le pad. Les bonus\/malus sont cumulatifs et de plusieurs types:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>augmenter ou diminuer la taille du pad<\/li>\n\n\n\n<li>augmenter ou diminuer la vitesse de la balle<\/li>\n\n\n\n<li>le bonus \u00ab\u00a0meteor\u00a0\u00bb permet de d\u00e9truire les briques en un seul coup sans regard de leur solidit\u00e9, et sans rebondir dessus<\/li>\n<\/ul>\n\n\n\n<p>Lorsqu\u2019un niveau est termin\u00e9, le joueur peut enregistrer son score, qui seras enregistr\u00e9 dans un fichier JSON via une requ\u00eate AJAX.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"294\" height=\"289\" src=\"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-content\/uploads\/2024\/10\/image-16.png\" alt=\"\" class=\"wp-image-401 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>J&rsquo;ai utilis\u00e9 la Programmation Orient\u00e9e Object afin que chaque \u00e9l\u00e9ment et m\u00e9canisme soit bien s\u00e9par\u00e9 dans une classe \u00e0 part. <\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"665\" height=\"560\" src=\"http:\/\/localhost\/WORDPRESS\/1024_portfolio_test\/wordpress\/wp-content\/uploads\/2024\/10\/image-17.png\" alt=\"\" class=\"wp-image-402 size-full\" srcset=\"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-content\/uploads\/2024\/10\/image-17.png 665w, https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-content\/uploads\/2024\/10\/image-17-300x253.png 300w\" sizes=\"auto, (max-width: 665px) 100vw, 665px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Exemple d&rsquo;une requ\u00eate AJAX, ici pour enregistrer un nouveau score.<\/p>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Un jeu de casse-briques avec plusieurs niveaux, des bonus\/malus et un tableau de scores.<\/p>\n","protected":false},"featured_media":0,"template":"","meta":[],"categories":[],"tags":[24,23,22],"techno":[19],"class_list":["post-248","project","type-project","status-publish","hentry","tag-ajax","tag-canvas","tag-poo","techno-javascript"],"_links":{"self":[{"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/project\/248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/project"}],"about":[{"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/types\/project"}],"wp:attachment":[{"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/media?parent=248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/categories?post=248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/tags?post=248"},{"taxonomy":"techno","embeddable":true,"href":"https:\/\/www.ninapariat.space\/sites\/ninap_portfolio\/wp-json\/wp\/v2\/techno?post=248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}