

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rdf:RDF[
	<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
	<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
	<!ENTITY owl 'http://www.w3.org/2002/07/owl#'>
	<!ENTITY swivt 'http://semantic-mediawiki.org/swivt/1.0#'>
	<!ENTITY wiki 'http://https://wikifab.org/wiki/Special:URIResolver/'>
	<!ENTITY category 'http://https://wikifab.org/wiki/Special:URIResolver/Category-3A'>
	<!ENTITY property 'http://https://wikifab.org/wiki/Special:URIResolver/Property-3A'>
	<!ENTITY wikiurl 'https://wikifab.org/wiki/'>
]>

<rdf:RDF
	xmlns:rdf="&rdf;"
	xmlns:rdfs="&rdfs;"
	xmlns:owl ="&owl;"
	xmlns:swivt="&swivt;"
	xmlns:wiki="&wiki;"
	xmlns:category="&category;"
	xmlns:property="&property;">

	<owl:Ontology rdf:about="https://wikifab.org/wiki/Special:ExportRDF/Casse_brique_game_Maker">
		<swivt:creationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2026-04-06T08:19:27+02:00</swivt:creationDate>
		<owl:imports rdf:resource="http://semantic-mediawiki.org/swivt/1.0"/>
	</owl:Ontology>
	<swivt:Subject rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Casse_brique_game_Maker">
		<rdf:type rdf:resource="http://https://wikifab.org/wiki/Special:URIResolver/Category-3ATutorials"/>
		<rdfs:label>Casse brique game Maker</rdfs:label>
		<rdfs:isDefinedBy rdf:resource="https://wikifab.org/wiki/Special:ExportRDF/Casse_brique_game_Maker"/>
		<swivt:page rdf:resource="https://wikifab.org/wiki/Casse_brique_game_Maker"/>
		<swivt:wikiNamespace rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</swivt:wikiNamespace>
		<swivt:wikiPageContentLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string">fr</swivt:wikiPageContentLanguage>
		<property:Area rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Play and Hobbies</property:Area>
		<property:Complete rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Published</property:Complete>
		<property:Cost rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:Cost>
		<property:Currency rdf:datatype="http://www.w3.org/2001/XMLSchema#string">EUR (€)</property:Currency>
		<property:Description rdf:datatype="http://www.w3.org/2001/XMLSchema#string">création d'un casse brique avec game maker</property:Description>
		<property:Difficulty rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Easy</property:Difficulty>
		<property:Duration rdf:datatype="http://www.w3.org/2001/XMLSchema#double">3</property:Duration>
		<property:Duration-2Dtype rdf:datatype="http://www.w3.org/2001/XMLSchema#string">hour(s)</property:Duration-2Dtype>
		<property:ExternalAttachmentsLinks rdf:datatype="http://www.w3.org/2001/XMLSchema#string">https://drive.google.com/file/d/0B5tEZobBAb3zTFF5SjExMHQzUzA/view?usp=sharing</property:ExternalAttachmentsLinks>
		<property:Introduction rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Voici un tuto pour coder un casse brique simple à l'aide de Game Maker</property:Introduction>
		<property:IsTranslation rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">false</property:IsTranslation>
		<property:Language rdf:datatype="http://www.w3.org/2001/XMLSchema#string">fr</property:Language>
		<property:Main_Picture rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Casse_brique_game_Maker_Final.jpg</property:Main_Picture>
		<property:Notes rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Les touches sont gauche droite et espace car cela permet de controller le jeu avec un Makey makey.</property:Notes>
		<property:SourceLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string">none</property:SourceLanguage>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Comme pour les sprites, vous allez devoir créer un objet par élément de votre jeu. Nous allons d'abords créer chaque objet (raquette, mur, brique, balle), c'est important de créer chaque objet avant de commencer à les paramétrer en profondeur.

Une fois chaque objet créer nous allons nous intéresser à la raquette.

Tout d'abord dans l'évenement create de votre raquette, initialisez quatre variables :
* nb_brique à 0
* ismoving_right à 0
* ismoving_left à 0
* ismoving à 0

la première servira à savoir s'il reste des briques sur le terrain et les trois autres seront utiles pour le contrôle des mouvement de la raquette.

sur l'évènement Step, entrez l'algorithme suivant :
si nb_brique = 0
 {
   alors restart la room;
 }

ensuite créer un évènement "collision avec mur", et mettez comme le "bounce" avec les paramètre suivant : appliquer aux autre, précision précise, et rebondir sur tous les objet.

maintenant passons aux mouvement :
pour tout ce qui concerne la gauche, créez un évènement left pressed et left released.
Dans left pressed, implantez l'algo suivant :
si ismoving =0
 {
   start moving in a direction (droite, force -7, relative)
   set variable ismoving_left to 1
   set variable ismoving to 1
 }

Ce bout de code signifie, que si la raquette ne bouge alors elle commence à se déplacer à gauche lorsque l'on appuie sur la flèche de gauche, il permet aussi d'empécher certain bug si jamais la flêche droite et la flèche gauche sont appuyées en même temps.

Pour left released le code ressemblera à ça :
si ismoving_left = 1
 {
   start moving in a direction (droite, 7, relative)
   set variable ismoving_left to 0
   set variable ismoving to 0
 }

Sachez que le 7 est une valeur arbitraire, vous pouvez la changer à tout moment pour moduler la vitesse de votre raquette. Par contre n'oubliez pas que la vitesse lors du pressage de touche doit être l'opposée de celle lors du release.

Pour faire le déplacement vers la droite il suffit d'inverser la puissance de déplacement et de remplacer tout les ismoving_left, par des ismoving_right.

Et voilà vous n'aurez plus à toucher la raquette.</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Ici nous irons plus vites car les briques sont simple à manipuler.

Tout d'abord, dans l'évènement create de la brique il faut set la variable nb_briques, à 1 relative, appliqué à l'obj_raquette.

Ensuite, pour l'évènement destroy, faire de même mais au lieu de 1 il faut set la variable à -1.</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Maintenant que vous avez la base d'un casse brique, il est temps d'ajouter du son, des graphismes moins sommaires, des menus, un systèmes de scores etc... Bref amusez vous à rendre votre petit jeu un peu plus "pro"</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Tout d'abord il vas vous falloir créer des sprites pour vos éléments de jeux.

Pour ce casse-Brique nous auront besoin de 4 éléments (donc 4 sprites) : 
* les briques
* la raquette
* la balle
* et les bordures du terrain pour éviter que la raquette ou la balle sorte du niveau par les cotés.


Bien penser à centrer l'origine de vos sprites et à appliquer un masque de collision  le plus près possible de vos formes originale.

Les sprites sur le coté sont ceux qui ont été créer à la base pours les différents objets, mais vous pouvez en créer d'autre si vous le souhaitez.</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Il n'y a rien à faire dans cet objet, ce sont les autres objets qui interagissent avec qui font toute les opérations.</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Cet objet est le plus compliqué à faire mais aussi le plus important de votre jeu.

Tout d'abord, dans l'évènement create, il faut set des les variables ismoving, ismoving_right, ismoving_left, et une variable lancée à 0.
Les variables ismoving serviront à manipuler la balle avant de la lancer.

Maintenant pour l'évenement de collision avec la raquette, il faut un bounce avec les paramètre suivants : appliquer à sois, bounce contre tout objet, et rebond précis.

Pour la collision avec une brique il faut un rebond comme pour la raquette, et ensuite détruire l'instance contre laquelle la balle entre en collision.

Pour la collision avec les bordure du terrain c'est plus compliqué.

Si la balle n'est pas lancée alors il faut que le rebond soit appliqué sur la bordure et si la balle est lancée alors il faut l'appliquer à la balle


Si la balle sort des limites de la room, il faut restart la room

Lorsqu'on appuie sur espace, si lancée vaut 0, il faut set la variable lancée à 1 et donner une vitesse verticale à la balle (dans mon jeu j'ai mis la vitesse de la balle à 5)

enfin pour les actions sur les touches fléchée, c'est exactement le même algo que pour la raquette à ceci prés qu'il faut vérifier si la balle est lancée, si lancée = 0 alors la balle peut bouger, sinon elle ne doit pas être influencée par les touches fléchée</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Il ne vous reste plus qu'a créer une room qui vous servira d'espace de jeu, je recommande de mettre une vitesse de 30. Voilà la room que j'ai fait, mais vous êtes libre de faire un niveau comme vous le souhaitez</property:Step_Content>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création des sprites</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création des objets : la raquette</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création des objets : briques</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création des objets : Bordure du terrain</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création des objets : la balle</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Création de la room</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Etoffez votre création.</property:Step_Title>
		<property:Tags rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Casse brique</property:Tags>
		<property:Tags rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Game maker</property:Tags>
		<property:Tools rdf:datatype="http://www.w3.org/2001/XMLSchema#string">* Ordinateur
* Game Maker Studio</property:Tools>
		<property:Type rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Creation</property:Type>
		<property:Has_processing_error rdf:resource="&wiki;Casse_brique_game_Maker-23_ERR21e4164bfdb63312a661b92332eedbec"/>
		<swivt:wikiPageModificationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2019-12-09T10:28:28Z</swivt:wikiPageModificationDate>
		<property:Modification_date-23aux rdf:datatype="http://www.w3.org/2001/XMLSchema#double">2458826.9364352</property:Modification_date-23aux>
		<swivt:wikiPageSortKey rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Casse brique game Maker</swivt:wikiPageSortKey>
		<property:Comments rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:Comments>
		<property:Page_creator rdf:resource="&wiki;Utilisateur-3AI-2Dlab_Toulon"/>
		<property:I_did_it rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:I_did_it>
		<property:Favorites rdf:datatype="http://www.w3.org/2001/XMLSchema#double">1</property:Favorites>
	</swivt:Subject>
	<swivt:Subject rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Casse_brique_game_Maker-23_ERR21e4164bfdb63312a661b92332eedbec">
		<swivt:masterPage rdf:resource="&wiki;Casse_brique_game_Maker"/>
		<swivt:wikiNamespace rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</swivt:wikiNamespace>
		<property:Has_improper_value_for rdf:resource="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ALicences"/>
		<property:Has_processing_error_text rdf:datatype="http://www.w3.org/2001/XMLSchema#string">[8,"smw-datavalue-constraint-error-allows-value-list","Attribution - Pas d'utilisation commerciale + Partage dans les M\u00eames Conditions (CC-BY-NC-SA)","Attribution (CC BY), CERN Open Hardware Licence v1.2, TAPR Open Hardware License v1.0, Attribution-ShareAlike (CC BY-SA), GNU Free Hardware Designs","Licences"]</property:Has_processing_error_text>
		<swivt:wikiPageSortKey rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Casse brique game Maker# ERR21e4164bfdb63312a661b92332eedbec</swivt:wikiPageSortKey>
	</swivt:Subject>
	<swivt:Subject rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Mortier_et_pilon">
		<rdfs:label>Mortier et pilon</rdfs:label>
		<rdfs:isDefinedBy rdf:resource="https://wikifab.org/wiki/Special:ExportRDF/Mortier_et_pilon"/>
		<swivt:page rdf:resource="https://wikifab.org/wiki/Mortier_et_pilon"/>
		<swivt:wikiNamespace rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</swivt:wikiNamespace>
		<swivt:wikiPageContentLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string">fr</swivt:wikiPageContentLanguage>
		<swivt:redirectsTo rdf:resource="&wiki;Casse_brique_game_Maker"/>
		<owl:sameAs rdf:resource="&wiki;Casse_brique_game_Maker"/>
		<swivt:wikiPageSortKey rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Mortier et pilon</swivt:wikiPageSortKey>
	</swivt:Subject>
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#creationDate" />
	<owl:Class rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Category-3ATutorials" />
	<owl:ObjectProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#page" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiNamespace" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageContentLanguage" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AArea" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AComplete" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ACost" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ACurrency" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ADescription" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ADifficulty" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ADuration" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ADuration-2Dtype" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AExternalAttachmentsLinks" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AIntroduction" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AIsTranslation" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ALanguage" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AMain_Picture" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ANotes" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ASourceLanguage" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AStep_Content" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AStep_Title" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ATags" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3ATools" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AType" />
	<owl:ObjectProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AHas_processing_error" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageModificationDate" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AModification_date-23aux" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageSortKey" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AComments" />
	<owl:ObjectProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3APage_creator" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AI_did_it" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AFavorites" />
	<owl:ObjectProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#masterPage" />
	<owl:ObjectProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AHas_improper_value_for" />
	<owl:DatatypeProperty rdf:about="http://https://wikifab.org/wiki/Special:URIResolver/Property-3AHas_processing_error_text" />
	<owl:ObjectProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#redirectsTo" />
	<!-- Created by Semantic MediaWiki, https://www.semantic-mediawiki.org/ -->
</rdf:RDF>