| Armes pour le multijoueurs | |
|
|
Auteur | Message |
---|
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:01 | |
| Bonjour a tous!Voila j'ai une question,je sais pas si c'est normal ou c'est un problème en fait... J'ai deux personnages et je leur ai attribué une arme chaqun(une arme qui tourne en fonction de la direction du curseur ,comme pour mon jeu "game").Je teste le jeu sur mon ordi,je le lance donc deux fois...j'ai les deux fenetres,mes personnages bougent comme il faut,pas de bug ici...mais le problème est: l'arme du personnage que je controlle(global.ident1) tourne en fonction du curseur,certes,mais l'arme du personnage que je ne controlle pas (global.ident2) tourne aussi!aie aie Voila ma question:comment attribuer a global.ident1 son arme pour ne faire tourner que SON arme et pas celle de global.ident2 en même temps. Voila voila merçi de vos réponse! PS:si vous ne comprenez pas ma question n'hézitai pas a me demander,je n'ai peut être pas été clair :oui: |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:08 | |
| Si si rassures toi tu as été très clair, je pense que tu utilise un code du genre de celui que je t'avais donné, en conséquence il faut juste que tu mettes ce qui te permet de faire tourner l'arme entre les balises de: if global.ident = 1, ou bien mieux dans l'objet arme: - Citation :
- if global.ident = 1 { direction = point_direction(x,y,mouse_x,mouse_y); mplay_data_write(20,direction);} else {direction = mplay_data_read(20); }
Voilà je crois que ça répond au problème non? |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:12 | |
| Merçi,sa répond certainement au probleme,je vais tester sa tout de suite. Oui en effet j'avais déja essayé de mettre dans l'arme du j1 le "if global.ident=1" et tout ce qui s'ensuit et de même pour le j2...mais je n'avais pas penser a mettre ce "else". |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:17 | |
| En fait j'ai mis else {direction = mplay_data_read(20); } pour que les autres joueurs voient le changement de direction. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:23 | |
| Aie sa ne marche pas :non2: Oui j'ai bien compris a présent les fonctions mplay data write et mplay data read,mais je pensai que le fait de mettre "else" changerai quelque chose au script. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 19:53 | |
| Non sa y est!je viens de trouver!C'est en fait tout a fait normal,mais assez dur a expliquer. En tout cas pour tout ceux qui ont le même probleme que moi,sachez que c'est normal;qu'and vous testez votre jeu en réseau sur votre propre ordinateur,il est normal que les deux armes bougent en même temps,étant donné qu'il ya a l'écrant la fenêtre du global.ident1 et la fenêtre du global.ident2,c'est le même curseur que les deux armes suivent!voila pourquoi...enfin c dur a expliquer. Mais je PENSE c'est normal.Sur ceux merçi beaucoup! |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Sam 7 Oct 2006 - 23:47 | |
| - Theguigue a écrit:
- Non sa y est!je viens de trouver!C'est en fait tout a fait normal,mais assez dur a expliquer.
En tout cas pour tout ceux qui ont le même probleme que moi,sachez que c'est normal;qu'and vous testez votre jeu en réseau sur votre propre ordinateur,il est normal que les deux armes bougent en même temps,étant donné qu'il ya a l'écrant la fenêtre du global.ident1 et la fenêtre du global.ident2,c'est le même curseur que les deux armes suivent!voila pourquoi...enfin c dur a expliquer. Mais je PENSE c'est normal.Sur ceux merçi beaucoup! Bien sûr que c'est normal... J'avais pensé que le préciser n'était pas nécessaire, mais apparemment. Tanpis. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 9:03 | |
| |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 11:28 | |
| Bon eh bien désolé mais j'ai encore une question Voila,je n'arrive pas et n'ai jamais réussit a creer une instance en multit joueurs...Je met a la disposition de quiquonque pourrais m'aider ce GM6(qui n'est pas mon vrai jeu,c'est un exemple).Celui qui arrive a régler le problème est un géni! Moi j'ai tout essayé voila le lien: the aide.gm6 - 0.01MB |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 12:57 | |
| C'est résolu, mais je ne suis pas un génie pour autant. En fait tu mettais trop vite la valeur du slot sur false, ce qui fait que l'autre joueur n'avait pas le temps de lire qu'elle était juste, fait toujours comme j'ai fait pour la création d'instance: après la réactualisation des slots. Et les lectures, fait les au dehors de: global.ident. - Citation :
- if global.ident=1
{ //Reinitialisation des slots { mplay_data_write(10,false); }
// Tout ce qui est tirs et création doit se passer après la réinitialisation. if keyboard_check_pressed(vk_space){mplay_data_write(10,true);} }
if mplay_data_read(10)=true { instance_create(x,y,obj_bullet); } Aussi dans Y_control, inverse les lignes que tu as mises. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 13:52 | |
| Ok merçi dam!(mais si tu es un géni ! ) |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 19:12 | |
| Bon,j'ai acquis énormément de chose aujourd'hui en multijoueurs grâce a mes quelques trouvailles personnelles et surtout grâce a vous (damien en particulier lol),il me reste plus beaucoup de chose pour être au top dans le multit! Justement,j'aimerais savoir comment attribuer des vies aux perso en multijoueur? (j'ai deja essayer avec les évènements et avec les variables"global.ident=1" mais sa ne marche pas,lorsqu'il n'a plus de vies,le J1 disparaît a l'ecrant du J1 mais pas a l'écran du J2. Alors comment faire pour attribuer les vies aux perso en multit? PS:je cherche de mon côté! |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 19:19 | |
| Et bien de la même façon que tout les trucs multis. Dans script_J1: - Citation :
- if global.ident=1
{ //Reinitialisation des slots { mplay_data_write(10,false); mplay_data_write(11,vie); }
// Tout ce qui est tirs et création doit se passer après la réinitialisation. if keyboard_check_pressed(vk_space){mplay_data_write(10,true);} }
if mplay_data_read(10)=true { instance_create(x,y,obj_bullet); }
//Quelques Lectures: vie = mplay_data_read(11);
//Gestion de la vie: if vie <= 0 instance_destroy(); Donc si tu fais baisser ta vie, n'importe où elle sera mise à jour. J'ai pas testé mais en toute logique ça fonctionne. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 19:36 | |
| Oui mais les vies il faut les définir avant,alors comment on fait? Par exemple(c'est une grosse conneri mais bon) dans create je les définis en mettant: vie=5 et tout les truk ki suivent après? Parce que la on me met "error unknow variable vie". |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 20:47 | |
| Ben oui dans create tu mets: vie = 5. |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| |
| |
Invité Invité
| Sujet: Re: Armes pour le multijoueurs Dim 8 Oct 2006 - 21:41 | |
| object_delete(obj) sert à détruire un objet définitivement de ton jeu! C'est instance_destroy() qu'il faut utiliser Dans ton cas, c'est: - Code:
-
if vie<=0 { with (obj_arme_j1) { instance_destroy() } } |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| |
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Mer 11 Oct 2006 - 17:27 | |
| Bonjour a tous,je me demandais comment était il possible,dans le script connect d'ajouter un global.ident.Par exemple,ce script permet d'acceuillir deux joueurs dans la session actuelle: - Code:
-
ip = get_string("Ip:","127.0.0.1");
if (mplay_init_tcpip(ip) != 1) { show_message("Connexion Imossible."); break; } else { global.name = get_string("Nom du joueur","daminetreg"); }
if (mplay_session_find() == 0) { game_name = get_string("Nom de la partie:","Serv"); global.gamename = game_name; mplay_session_create(game_name,2,global.name); global.ident = 1;//Pour définir qui est le joueur 1 //Jeu en préchargement } else { global.gamename = mplay_session_name(0); mplay_session_join(mplay_session_name(0),global.name); global.ident = 2;//Pour définir qui est le joueur 2 }
global.number = mplay_player_find();
Mais je me damandais sil n'était pas possible de rajouter un "global.ident=3" dans tout ça.J'ai bien essayé ceci,mais sa ne marche guère: - Code:
-
ip = get_string("Ip:","127.0.0.1");
if (mplay_init_tcpip(ip) != 1) { show_message("Connexion Imossible."); break; } else { global.name = get_string("Nom du joueur","daminetreg"); }
if (mplay_session_find() == 0) { game_name = get_string("Nom de la partie:","Serv"); global.gamename = game_name; mplay_session_create(game_name,2,global.name); global.ident = 1;//Pour définir qui est le joueur 1 //Jeu en préchargement } else { global.gamename = mplay_session_name(0); mplay_session_join(mplay_session_name(0),global.name); global.ident = 2;//Pour définir qui est le joueur 2 } { global.gamename = mplay_session_name(0); mplay_session_join(mplay_session_name(0),global.name); global.ident = 3;//Pour définir qui est le joueur 3 }
global.number = mplay_player_find();
Si quelqu'un pouvait m'aider. Merçi de vos reponses! |
|
| |
notiz85 Utilisateur confirmé: Rang *****
Messages : 2004 Localisation : Vendée Projet Actuel : Moteur d'ombre pour un projet plateforme 2D...
| Sujet: Re: Armes pour le multijoueurs Mer 11 Oct 2006 - 17:32 | |
| Il faut pas faire sa : - Code:
-
{ global.gamename = mplay_session_name(1); mplay_session_join(mplay_session_name(1),global.name); global.ident = 3;//Pour définir qui est le joueur 3 }
global.number = mplay_player_find();
Mettre un 1 à la place du 0 ? Je sais pas je n'ai pas essayé |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Mer 11 Oct 2006 - 17:49 | |
| Non marche pas dsl,bien tenté quand même Si quelqu'un sait comment ajouter un joueur alors il est le bienvenu! |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Jeu 12 Oct 2006 - 16:45 | |
| bonjour ,je suis toujour entrin de chercher comme un acharné sur ce code,et en fouillant tout le forum,j'ai réussit a trouver quelques réponses a mes question...par exemple,j'ai découvert une erreur dans le script plus haut:a mplay_session_create,j'ai réglé le nombre de joueur sur trois. comme ceci - Code:
-
ip = get_string("Ip:","127.0.0.1");
if (mplay_init_tcpip(ip) != 1) { show_message("Connexion Imossible."); break; } else { global.name = get_string("Nom du joueur","daminetreg"); }
if (mplay_session_find() == 0) { game_name = get_string("Nom de la partie:","Serv"); global.gamename = game_name; mplay_session_create(game_name,3,global.name); global.ident = 1;//Pour définir qui est le joueur 1 //Jeu en préchargement } else { global.gamename = mplay_session_name(0); mplay_session_join(mplay_session_name(0),global.name); global.ident = 2;//Pour définir qui est le joueur 2 } { global.gamename = mplay_session_name(0); mplay_session_join(mplay_session_name(0),global.name); global.ident = 3;//Pour définir qui est le joueur 3 }
global.number = mplay_player_find();
Hélas, sa ne fonctionne pas.Il me manque quelque chose,personne ne peut m'aider?merçi |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Armes pour le multijoueurs Jeu 12 Oct 2006 - 19:01 | |
| Dès que tu dépasses deux joueurs il faut changer de script, vala: - Citation :
- ip = get_string("Ip:","127.0.0.1");
if (mplay_init_tcpip(ip) != 1) { show_message("Connexion Impossible."); break; } else { global.name = get_string("Nom du joueur","daminetreg"); }
if (mplay_session_find() == 0) { game_name = get_string("Nom de la partie:","Serv"); mplay_session_create(game_name,3,global.name); global.ident = mplay_player_find(); } else { mplay_session_join(mplay_session_name(0),global.name); global.ident = mplay_player_find(); } |
|
| |
Theguigue Utilisateur confirmé: Rang **
Messages : 463 Localisation : Dans les cabinets
| Sujet: Re: Armes pour le multijoueurs Jeu 19 Oct 2006 - 17:01 | |
| okok,merçi!!(en retard oui je sais mais.... les cours ) |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| |
| |
Contenu sponsorisé
| Sujet: Re: Armes pour le multijoueurs | |
| |
|
| |
| Armes pour le multijoueurs | |
|