‘еXIі 2*СМ.a|H„ћбЛћкXџџџџџО Ј( @€ЯаРПпрАяЏ  я(№/№/я(я рŸ 0№/8џ0@џ0?џ/8№ 0я(р п?Gџ@PџOWџOXџOPџ?Hџ0@№/7я@Oџ_`џ`hџ_hџPXџ 0р(пP_џopџpxџowџ_gџ@O№/8я'п'р 7№pџ€џ‡џ`oџ?Gя/7р Я€0?№€ˆџ?Hя/8р`/пo?G№OX№@Hя0?р/аpOW№?Hр/8п 7яOPя?Gр/7п(Я РP0@яPX№@Oя0@п 0аO а@H№/Я@'а 0п0@р@P№0?п'Я_OP№@Hр(а 7п/7а'Р Пџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ^^^^^^^^^^џџџџџџџџџџџџџџџџџџџџ^^^^^^^^^^^^^^џџџџџџџџџџџџџџџџ^^TeeBBBBeTT^^^^^^џџџџџџџџџџџџџ^eBDJ33333JJDBeZ^^^^џџџџџџџџџџџTD33==#####==3JDBT^^^^џџџџџџџџџeJ=###=3DeZ^^TџџџџџџџB3# #=3JBZ^^Tџџџџџџ3#  #=JBT^^џџџџџJ# Sll #=JBZ^Tџџџџ# %,68??86,/@A*< ##џџџџ45('.6787-9%:;*<=#џџџџџ$+&,--.,/01)2 3џџџџџџ $%&&'%($!)* ##џџџџџџџ  !"#џџџџџџџџџ  џџџџџџџџџџџ  џџџџџџџџџџџџџ џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџРџџџќџј№?рРР€€€€РРр№?јќџџџџРџdvцF˜Yу@ bouttonh_spr@ < šxœэ˜K € Em ЖЧвМ=Еs“pр'ЬО^нУ}„fz‚2hлх,.ЄЉе”2ؚ„=a‡BІpФїзЌ€?-№ЇўДРŸ–jџ`ЄлtПсZQg Сxœэ˜С € @э/:vь :KїўЉ?/ ›k‰šЫкC‰6OSˆЦihеЦ`zoК6Н3НQ6a/'f]}Ћ—нЉёчEќy^ФŸ—Мўхсў хоп …ЦСƒ`$:Ц-’нпїЙђЄуhьsў!Vбў‰ўшлЯхŠЇјЃЅ"іЯэ‰(ЙмЉїgБœЧŸ#Нјщў‰+ћџЃD8„И=чџfФŸёчEќyљ’­АџњNn+ОйГЅ joueur1_spr  Žxœsђ5уa3 жb(fd€H@хQ@ƒУ(ˆЁQпЬЈˆbЛА˜‰ ‘hvВ‚H[H6™Pd8Vад|*Žл ЊŽУŠQѓё˜OeУ1Ќ5ŸоQ0Мв'ЬЇuљ6 Ъ:д+HЕЅXУЩё‰&Ѓ{ЋwЄШ3Ÿ]$˜ "Šю3 joueur2_spr  ‡xœsђ5уa3 жb(fd€H@хQ@ƒУ(ќЈоšQнЬ§‘(ˆrЛ0ЭФ…HЕЋƒ ZAЄ-ЄšL’G(1œ+hj>х†уБ‚Z†уВbд|<цSзpL+FЭЇs ГєIѓi]О ƒђŸѕ#м кеяdx„’&экWxь"ЩL]"К>Єєinit_objЎџџџџœџџџџџџџ И[џџџџ\if mplay_init_tcpip('127.0.0.1') = true { room_goto(room_menu) } else { game_end() }0000000џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ create_objЎœџџџџџџџ џџџџџџџџџџџџџџџџџџџџџџџџИ[џџџџ†if mplay_session_create('Nom de la Session',2,'Nom') = true { global.host = true room_goto(room_wait) } else { game_end() } 0000000џџџџџџџџџџџџџџџџџџџџjoin_objЎœџџџџџџџ џџџџџџџџџџџџџџџџџџџџџџџџИ[џџџџЎif mplay_session_find() = true { if mplay_session_join(0,'nom') = true { global.host = false room_goto(room_play) } else { game_end() } } else { game_end() } 0000000џџџџџџџџџџџџџџџџџџџџobj_waitЎџџџџœџџџџџџџ џџџџџџџџџџџџИ[џџџџ1if mplay_player_find() = 2{room_goto(room_play)} 0000000џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ joueur1_objЎœџџџџџџџ џџџџџџџџџџџџИ[џџџџif global.host = true //variable qui dis si on est le HOST ou le CLIENT (ICI C'EST HOST) { if keyboard_check(vk_up){y-=4} //Permet a lobjet de monter si on pese sur la touche haut if keyboard_check(vk_down){y+=4} //Permet a lobjet de descendre si on pese sur la touche bas if keyboard_check(vk_right){x+=4} //Permet a lobjet de monter si on pese sur la touche droite if keyboard_check(vk_left){x-=4} //Permet a lobjet de monter si on pese sur la touche gauche } if global.host = true // si on est le HOST { mplay_message_send(0,1,x) // on envoie le message 1 avec la valeur X a tout les joueur mplay_message_send(0,2,y) // on envoie le message 2 avec la valeur Y a tout les joueur //dans ce tutoriaux on envoie seulement les position X et Y mais on peut aussi envoyer des chose comme le sprite par exemple avec //mplay_message_send(0,10,sprite_index) on envoie la valeur sprite index dans le message #10 donc plus loin vous allez voir le client recois les message si vous voulez //essayer de mettre le sprite_index dans vos script vous devez aussi ajouter dans le receive du client exemple //if mplay_message_id() = 10{joueur1_obj.sprite_index = mplay_message_value()} pour les description voir plus loin } if global.host = false // si on est le CLIENT dans lobjet joueur1_obj { while(mplay_message_receive(0)) //Si on recois un message (une donnщe) { if mplay_message_id() = 1{x = mplay_message_value()} //(explication) quand on recois le message de joueur_obj1 le X de joueur_obj1 (pour le host est egale a la valeur) if mplay_message_id() = 2{y = mplay_message_value()} //(explication suite) si le HOST recois le message 2 du client la valeur Y du joueur_obj1 du host est = a la valeur //je sais pas si vous avez compris avec les explication mais en gros le client envoie la position du X et Y sur les message 1 et 2 a partir du joueur_obj1 et le host a partir //du joueur_obj1 il lis les 2 valeur X et Y et met lobjet joueur_obj1 a la meme place que ou le client la bouger //a ajouter ici si vous voulez mettre le sprite_index } } 0000000џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ joueur2_objЎœџџџџџџџ џџџџџџџџџџџџИ[џџџџif global.host = false //variable qui dis si on est le HOST ou le CLIENT (ICI C'EST CLIENT) { if keyboard_check(vk_up){y-=4} //Permet a lobjet de monter si on pese sur la touche haut if keyboard_check(vk_down){y+=4} //Permet a lobjet de descendre si on pese sur la touche bas if keyboard_check(vk_right){x+=4} //Permet a lobjet de monter si on pese sur la touche droite if keyboard_check(vk_left){x-=4} //Permet a lobjet de monter si on pese sur la touche gauche } if global.host = false // si on est le CLIENT { mplay_message_send(0,3,x) // on envoie le message 3 avec la valeur X a tout les joueur mplay_message_send(0,4,y) // on envoie le message 4 avec la valeur Y a tout les joueur //dans ce tutoriaux on envoie seulement les position X et Y mais on peut aussi envoyer des chose comme le sprite par exemple avec //mplay_message_send(0,11,sprite_index) on envoie la valeur sprite index dans le message #11 donc plus loin vous allez voir le client recois les message si vous voulez //essayer de mettre le sprite_index dans vos script vous devez aussi ajouter dans le receive du client exemple //if mplay_message_id() = 11{joueur2_obj.sprite_index = mplay_message_value()} pour les description voir plus loin } if global.host = true // si on est le HOST dans lobjet joueur2_obj { while(mplay_message_receive(0)) //Si on recois un message (une donnщe) { if mplay_message_id() = 3{x = mplay_message_value()} //(explication) quand on recois le message de joueur_obj2 le X de joueur_obj2 (pour le host est egale a la valeur) if mplay_message_id() = 4{y = mplay_message_value()} //(explication suite) si le HOST recois le message 4 du client la valeur Y du joueur_obj2 du host est = a la valeur //je sais pas si vous avez compris avec les explication mais en gros le client envoie la position du X et Y sur les message 3 et 4 a partir du joueur_obj2 et le host a partir //du joueur_obj2 il lis les 2 valeur X et Y et met lobjet joueur_obj2 a la meme place que ou le client la bouger //a ajouter ici si vous voulez mettre le sprite_index } } 0000000џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџЄ room_init€рРРРџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџЂ† room_menu€рРРРџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџрpЃ†рАЅ† room_play€рРРРџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ0аЇ† аЈ† room_wait€рРРРџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџ€р€р џџџџџџџџџџџџІ†Ј†€–˜XџGame InformationџџџџџџџџX“{\rtf1\ansi\ansicpg1252\deff0\deflang3084{\fonttbl{\f0\fnil Arial;}} {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\cf1\f0\fs24 \par } єSprites bouttonh_spr bouttonr_spr joueur1_spr joueur2_sprSounds BackgroundsPathsScripts Fonts Time LinesObjectsinit_obj create_objjoin_objobj_wait joueur1_obj joueur2_objRooms room_init room_menu room_play room_wait Game Information Global Game Settings