Connexion automatique

Pas encore membre ? Inscrivez-vous ici !
Vous avez oublié votre mot de passe ? On vous aide ici

AccueilPage d'accueilFAQRechercherS'enregistrerConnexion

Sélecteur de thème :


Partagez | .
Désactiver le contrôle (touches) par défaut du héros (Résolu)

Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Sam 8 Juil 2017 - 0:30

Bonjour,
Je cherche un moyen de désactiver les déplacements par défaut du héros lorsqu'un interrupteur est activé (ou désactivé) pour que celui-ci ne soit contrôlable uniquement par un événement que j'ai créé.
J'ai pensé à rajouter une condition d'interrupteur sur le script, mais je suis nul en programmation Crying or Very sad
Masouf,


Dernière édition par Masouf le Lun 10 Juil 2017 - 5:00, édité 1 fois
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Sam 8 Juil 2017 - 0:58

Au hasard, un évènement qui, si l'interrupteur est activé, checke les entrées claviers et force un mouvement ayant pour cible le héros en "Ne bouge pas"? Après, tu peux développer un peu ce que tu voudrais faire? Quelle est la façon dont tu souhaites contrôler le héros via ton évènement?

_________________
 
Kingdommangas
Garde du Roi

Garde du Roi
avatar
https://www.youtube.com/channel/UCqGFuGrzm7jim1o5QJ4lKvg

Nombre de messages : 937
Localisation : Ma tête
Capacités : moyen
Distinction : Débrouillarde notoire é_è [Mist']
Ou celle qui partageait plus vite que son ombre [Gel']
Poisson 2017 [Amal]
Grâce à elle, tout le forum appelle Yamashi "Mamashi" [Yama]
Entraide d'Or
Règne dans l'ombre de la commu'
Youtubeuse beauté reconvertie dans le gaming [Amal']
Date d'inscription : 05/05/2015

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Sam 8 Juil 2017 - 1:01

Pour cela, tu créer un event qu'on va nommé "Cinématique 1" et dans le déclencher tu met "automatique".

Dans un event tu as 5 déclencher:
-touche action: lorsque le joueur appuie sur la touche, ex un coffre
-touche joueur: lorsque l'event est en contact avec le joueur, un monstre qui te poursuit par exemple.
-touche event: lorsque le joueur est sur l'event
-Automatique: s'active tous seul lorsque les condition sont remplis et empeche les autres event de s'exécuter.
-parallèlle: Idem qu'automatique mais peut etre applicable en parrallèle avec un automatique.

N'oublie pas d'activer un intérrupteur local (A,B,C ou D) à la fin de ta cinématique ou ton joueur restera bloquer pour toujours ^^.
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Sam 8 Juil 2017 - 22:29

Je contrôle le héros avec un évènement commun
En image:
 
C'est pour un projet dans lequel on contrôle 2 players.
Le problème c'est que le héros et l'évènement "player 2" (qui se contrôle par un event commun) ne se comporte pas comme le player 1, du coup j'ai décidé de contrôler le player 1 par un même type d'évènement, cependant en jeu, cela crée un effet d'amplification sur les déplacements du player 1 (le héros), c'est pourquoi je cherche à désactiver le contrôle par défaut (ou juste de l'inactiver par un interrupteur si possible).

PS: j'utilise les scripts "XAS" et "Input Ultimate 2.3" (qui me donne accès à toutes les touches du clavier et d'une manette).
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Sam 8 Juil 2017 - 23:04

Ca doit bien être possible à réaliser, du coup.
Faudrait fouiller un peu dans le XAS, pour voir ce qui a été rajouté. Spy' gérait bien avec XAS, je vais lui filer le lien du topic, s'il a un moment il devrait peut-être pouvoir te filer un coup de main en attendant que je cherche de mon côté. Wink

_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Dim 9 Juil 2017 - 21:55

Merci d'avance Smile
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Dim 9 Juil 2017 - 23:13

De mon côté, j'ai cherché un poil, et je peux te proposer ça à insérer dans un nouveau script au dessus de Main (et en dessous du XAS) :

Code:
class Game_Player < Game_Character
# Override de la méthode originelle
  def move_by_input
    return if !movable? || $game_map.interpreter.running?
  end
end

En gros, ça réécrit la méthode qui permet le déplacement via l'appui des touches. Je sais pas si ça fonctionnera avec le XAS, étant donné qu'il touche au Game_Player.
Etant donné que tu sais déplacer le joueur via appel de script, je pense que tu devrais arriver à te débrouiller.

Pour faire un deuxième joueur, le mieux aurait été de faire une sorte de "Game_Player2" afin de pouvoir identifier le deuxième joueur différemment d'un évènement, et de conserver les déplacements actuels de ton joueur 1.
Je suis curieux de voir comment tu comptes faire, ta solution semble possible également.

Fais nous savoir si ça fonctionne!

_________________


Dernière édition par Mist' le Lun 10 Juil 2017 - 2:42, édité 1 fois
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Dim 9 Juil 2017 - 23:30

J'ai retiré tous mes scripts sauf "XAS" pour tester, cependant j'ai reçu ce message d'erreur :
Spoiler:
 

Je ne suis pas doué en programmation, d'autant plus pour concevoir un "Game_Player2" qui fonctionnerait avec XAS.

PS : j'ai déjà réalisé une démo (tuto) de mon projet "Best Warrior" à ce lien.
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 2:43

J'avais oublié un end à la fin du code, désolé, c'est corrigé é_è
Pour le Game_Player2, ça doit se faire ou exister.

EDIT : http://www.rpgmakercentral.com/topic/4128-simple-2-player-script-development/
Bon, bah ça existe.
Ca devrait pouvoir t'aider, je pense, et ça doit être possible de greffer ça au XAS. Pour ce faire, il suffirait d'implémenter les fonctionnalités du XAS qui concernent la classe Game_Player dans celle-ci aussi.

_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 4:43

Merci, ton script fonctionne parfaitement
Par contre j'aimerais savoir s'il est possible de rajouter une condition dessus tel que "si l'interruteur 10 est activé (ou désactivé), les mouvements par défaut son désactiver".

Pour le Game_Player2 greffer au XAS, ça me semble une idée brillante mais mes capacités en programmation son asse limité, du coup je vais me contenter de ce que tu m'as fait.
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 6:07

Tu veux rajouter l'interrupteur sur le bout de code qui bloque les mouvements?

Normalement, avec ça à la place :

Code:
   class Game_Player < Game_Character
    # Override de la méthode originelle
      def move_by_input
        return if !movable? || $game_map.interpreter.running?
        move_straight(Input.dir4) if Input.dir4 > 0 && $game_switches[10]
      end
    end

Je vais étudier le XAS pour voir ce qui est faisable, si j'ai pas trop la flemme j'essaierai de te faire un truc. x)

RE-EDIT : Etant donné qu'en fait, dans le script que j'ai linké plus haut (http://www.rpgmakercentral.com/topic/4128-simple-2-player-script-development/), la classe Game_Multiplayer hérite de Game_Player, y'a des chances que ça fonctionne à peu près avec le XAS. Je pense qu'il peut y avoir des bugs m'enfin, faudrait vérifier.

RE-RE-EDIT : Bon, j'ai testé sous XAS, sans grosse bidouille, ça fonctionne, j'arrive à faire apparaître un second héros jouable.
Y'a des trucs à revoir comme le lancer d'attaque, téléportations, et la sortie du champ de la caméra, mais ça semble carrément faisable comme truc. J'aurais pas cru. xD

_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 8:00

Merci pour la condition sur ton script (par contre ça enlève les déplacements en diagonale de XAS).

J'ai essayé le script multiplayer que tu m'as envoyé, mais je n'arrive pas à faire apparaître le player 2. Tu pourrais envoyé la démo de ce que tu as pu faire avec XAS s'il te plaît?
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 8:29

Je vais te faire un truc plus propre.
Pour ce qui est de l'affichage du player 2, faut travailler le script, en l'état, il affiche le joueur 2 mais sans lui attribuer de chara. Je vais bricoler quelque chose de compatible, du coup, maintenant que j'ai le XAS sous la main. Wink

Je te donne des news quand j'ai quelque chose de plus concret!

_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 8:31

Ok j'ai hate de voir ça Smile
 
Spy
Administrateur

Administrateur
avatar
http://www.forestia-productions.com

Nombre de messages : 5759
Localisation : La terre
Capacités : expert
Avertissements : Avertissements infinis |-)
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Date d'inscription : 16/03/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 8:56

Coucou

J'ai regardé hier soir mais sans trouver de solution à ton problème le soucis, comme je l'expliquais à Mist, c'est que ça risque de créer de sérieux bugs si ce n'est pas fait correctement.

XAS est un script vraiment difficile à comprendre dans certain cas.

_________________
Nouveau site du projet :
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 9:24

Oui c'est bien ce que je me disais, c'est pourquoi je me suis contenté de créer un player2 sous forme d'ennemi. Toutefois, j'ai bien envie de voir ce qu'on peut faire à partir des travaux de Mist' (multiplayer + XAS).
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 11:01

J'ai recodé un peu pour le J2, y'a moyen de bricoler un minimum, mais pour adapter au XAS, je plussoie Spy', ça crée quelques petits bugs, donc j'ai vite arrêté de mettre le bazar.
Voici une démo avec juste le J2 qui peut se déplacer grâce au pavé numérique avec les touches 1, 2, 3, et 5, et qui avance vers le J1 s'il y a un trop grand décalage de cases entre J1 et J2.

J'ai aussi compris dedans le script du blocage de déplacement de héros via interrupteur, y'a juste à décommenter le code si y'a besoin de l'utiliser.

Bref, c'est quelque chose qui mériterait d'être complété, et adapté au XAS, je laisse cette base pour le moment, j'ai pas la foi de m'y attaquer maintenant, mais s'il y a une âme courageuse, ou que je suis motivé un peu plus tard... x)


_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 11:24

J'ai pas compris ta phrase "J'ai aussi compris dedans le script du blocage de déplacement de héros via interrupteur, y'a juste à décommenter le code si y'a besoin de l'utiliser." C'est pour inactiver les déplacements par défaut du personnage? C'est bon j'ai vu de quoi tu parlais dans la demo que tu as envoyé.
Il se fait tard, je testerais ça demain, merci ! Very Happy

PS : tu as trouvé pourquoi ton code désactive le déplacement en diagonale de XAS ?
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3232
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 19:24

Yep. C'est parce que j'écrasais la fonction de déplacement. Là, je l'ai aliasée plutôt, et j'ai greffé l'interrupteur par dessus.

_________________
 
Masouf
Etudiant

Etudiant
avatar

Nombre de messages : 270
Age : 24
Localisation : Rennes
Capacités : bon
Distinction : aucune
Date d'inscription : 24/12/2008

MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)   Lun 10 Juil 2017 - 20:42

En tout cas bon boulot, je te remercie bounce
 
Contenu sponsorisé




MessageSujet: Re: Désactiver le contrôle (touches) par défaut du héros (Résolu)