Bienvenue visiteur !
|
Désactiver la neige
Statistiques
Liste des membres
Contact
Mentions légales
446 connectés actuellement
30912657 visiteurs depuis l'ouverture
2293 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
| | Domaine concerné: Script Logiciel utilisé: RM XP Bonsoir à tous, et tout d'abord un grand merci pour cette partie d'entraide qui va, je l'espère, m'aider à résoudre un problème de compatibilité sur lequel je m'arrache les cheveux depuis cette fin d'après-midi.
Dans mon projet, j'utilise les deux excellents scripts de Xilrog et de Zeus81 que j'ai trouvé sur ce site, respectivement pour le système de combat en temps réel et le déplacement optimisé (que j'utilise principalement pour les bruits de pas).
Le problème que je rencontre concerne la touche "espace", qui est programmée dans le script XAS pour l'attaque à l'épée, et pour courir dans le script AMS Ultimate de Zeus81. Le problème est que le script AMS U semble prendre la priorité sur le XAS, et une fois le test lancé, la touche espace sert donc à courir.
Le bug qui en résulte est : 1. impossible d'attaquer à cause du conflit "touche d'attaque" / "touche pour courir", 2. Héros immobilisé lorsqu'il passe à proximité d'un monstre qui entre en phase d'attaque (il semble bloqué dans un champ de force invisible), 3. Le monstre n'attaque pas non-plus, il se déplace à proximité du joueur comme si ce conflit sur la touche espace lui retirait aussi la possibilité d'attaquer le joueur.
J'ai passé un bon moment à chercher dans la démo fournie avec le script, et dans le script lui-même l'endroit qui permet de modifier la touche allouée à la course, mais je n'ai pas réussi à trouver...
Pour résoudre mon problème il faudrait donc arriver à soit modifier dans le script ou en évènement la touche qui permet de courir (en choisissant par exemple la touche "C" pour courir et en gardant la touche "espace" pour attaquer), soit désactiver complètement la possibilité de courir (qui n'est absolument pas nécessaire dans mon jeu), mais j'avoue ne pas savoir m'y prendre sur ce coup.
Un grand merci à celui ou ceux qui sauront me conseiller.
Amitiés,
A.
Infos complémentaires :
- Lien du script AMS Ultimate sur Oniromancie : http://www.rpg-maker.fr/scripts-133-ams-ultimate.html
- Le projet fonctionnait tout à fait normalement lorsqu'il ne contenait que le script XAS, et le script AMS U fonctionnait parfaitement sur le projet de test que j'ai fait avant de l'intégrer au projet de mon jeu. Le problème ne vient donc pas d'une mauvaise installation des deux scripts mais bien d'un conflit d'utilisation de la touche "espace"
|
Cortez -
posté le 12/03/2013 à 13:50:13 (524 messages postés)
| | ça y est j'ai trouvé :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| # Vous pouvez choisir les touches pour sprinter et sauter aux lignes 35 et 36
# Les touches possibles sont Input::A, B, C, X, Y, Z, L, R
# Pour choisir à quelle touche ça correspond sur le clavier lancez le jeu puis appuyez sur F1
# Si les touches qui vous sont proposées ne vous conviennent pas vous pouvez toujours télécharger
# le script : "Input Ultimate" qui vous permettra de choisir n'importe quelle touche du clavier
# Si vous voulez désactiver le sprint écrivez : Dash_Input = 0
# Si vous voulez désactiver les sauts écrivez : Jump_Input = 0
# Vous pouvez initialiser le héros lignes 40 à 55
# @position => façon dont est positionnée l'image par rapport à ses coordonnées (voir tutorial)
# @move_speed => vitesse de déplacement, comprise entre 0 et 7
# @move_animation_speed => vitesse de l'animation du personnage, >= 0
# si = 0, la vitesse de l'animation sera automatiquement égale à la vitesse de déplacement
# @jump_power => puissance des sauts, doit être supérieure à la hauteur des murs que l'on veut pouvoir sauter
# @zoom => zoom en pourcentage : 1 => 100%, 0.5 => 50%, 2 => 200%
# @step_anime => animée à l'arrêt ? true => oui : false => non
# @spec_anime => animation spéciale qui se déclenche de manière aléatoire quand on est à l'arrêt
# @walk_anime => animée pendant mouvement ? true => oui : false => non
# @jump_anime => animée pendant saut ? true => oui : false => non
# @fall_anime => animée pendant chute ? true => oui : false => non
# @down_anime => animation spéciale qui se déclenche quand on tombe de trop haut
# @shadow => ombre activée ? true => oui : false => non
# @walk_steps => nombre de pas dans une animation
# @walk_terrain => force un terrain spécifique quel que soit l'endroit où l'on marche
# si = 0, le terrain est celui sur lequel on marche
# @walk_audio => bruits de pas activés ? true => oui : false => non
# @walk_graphics => traces de pas activées ? true => oui : false => non
class Game_Player
Dash_Input = Input::C |
Donc à la ligne:
tu remplace Input::C par Input::L ou R ou Y ou Z
enfin bref par une touche que le XAS n'utilise pas.
Si ton problème n'est pas résolu par ce changement, il faut que tu ajoute un interrupteur pour
activer/désactiver la course:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| class Game_Player
If $game_switches(1) = true #L'interrupteur 1 est activé (tu peux remplacer 1 par un autre nombre)
Dash_Input = Input::C # on active la course
Else #Sinon on la désactive avec Dash_Input = 0
Dash_Input = 0 #
End #On oublie pas le end pour la reprise du script.
Jump_Input = Input::A
Jump_Audio = RPG::AudioFile.new("Data System/JumpAudio")
def initialize
super
@position = 8
@move_speed = 4
@move_animation_speed = 0
@jump_power = 1.5
@zoom = 1
@step_anime = false
@spec_anime = true
@walk_anime = true
@jump_anime = true
@fall_anime = true
@down_anime = true
@shadow = false#true
@walk_steps = 2
@walk_terrain = 0
@walk_audio = false#true
@walk_graphics = false#true
end
end |
|
| | Merci pour ta réponse Cortez ! J'avais déjà essayé de remplacer la touche C par une autre touche, mais le problème restait le même. Par contre, ton idée me fait penser à autre chose.
Dans la portion de code que tu me proposes d'ajouter, de la ligne 1 à 3 on lit :
1
2
| class Game_Player
If $game_switches(1) = true #L'interrupteur 1 est activé (tu peux remplacer 1 par un autre nombre) |
Or l'interrupteur 1 est déjà utilisé par le script de mon système de combat : il s'agit de l'activation du HUD (boîtes de dialogues contenant les barres de vie etc). Dans le script AMS U l'interrupteur 1 est peut-être aussi utilisé, et entre en conflit avec le HUD du XAS system. Si je change l'interrupteur alloué au système de déplacement (en plus de changer les touches déjà utilisées par le XAS), tu penses que ça pourrait résoudre le conflit ?
Merci en tout cas encore pour ta réponse et pour ton aide, je dois dire que je ne suis pas un crack en informatique et que je me débrouille uniquement en fouillant et en essayant de comprendre la logique interne des différents outils que j'utilise... mais on dirait que parfois, ça ne suffit pas Bref, merci encore.
|
arttroy -
posté le 13/03/2013 à 09:03:19 (2394 messages postés)
| Just working | Je pense que tu devrais voir directement avec Zeus, il reste le plus à même de modifier son propre script. Prie pour qu'il passe par là...
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? |
| | Ca serait en effet la meilleure chose à faire, mais je ne suis pas sûr qu'il passe encore sur le forum malheureusement. En attendant je continue de me triturer le cerveau, sait-on jamais...
|
arttroy -
posté le 13/03/2013 à 11:59:00 (2394 messages postés)
| Just working | Si si il passe assez régulièrement t'inquiètes, faut juste qu'il soit motivé pour t'expliquer...
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? |
| | Je vais lui envoyer un message privé pour lui demander de l'aide sur ce sujet dans ce cas, en espérant qu'il aura le temps de me répondre. Mais je continue à chercher en même temps, je ne vais quand même pas me laisser faire par un script !
|
Cortez -
posté le 13/03/2013 à 13:46:19 (524 messages postés)
| | lllllllllllllll a dit:
Merci pour ta réponse Cortez ! J'avais déjà essayé de remplacer la touche C par une autre touche, mais le problème restait le même. Par contre, ton idée me fait penser à autre chose.
Dans la portion de code que tu me proposes d'ajouter, de la ligne 1 à 3 on lit :
1
2
| class Game_Player
If $game_switches(1) = true #L'interrupteur 1 est activé (tu peux remplacer 1 par un autre nombre) |
Or l'interrupteur 1 est déjà utilisé par le script de mon système de combat : il s'agit de l'activation du HUD (boîtes de dialogues contenant les barres de vie etc). Dans le script AMS U l'interrupteur 1 est peut-être aussi utilisé, et entre en conflit avec le HUD du XAS system. Si je change l'interrupteur alloué au système de déplacement (en plus de changer les touches déjà utilisées par le XAS), tu penses que ça pourrait résoudre le conflit ?
Merci en tout cas encore pour ta réponse et pour ton aide, je dois dire que je ne suis pas un crack en informatique et que je me débrouille uniquement en fouillant et en essayant de comprendre la logique interne des différents outils que j'utilise... mais on dirait que parfois, ça ne suffit pas Bref, merci encore.
|
Tu peux bien sur changer l'interrupteur que j'ai utilisé dans la modification :
1
2
| class Game_Player
If $game_switches(100) = true #L'interrupteur 100 est activé |
|
Index du forum > Entraide > [RM XP] Script XAS A-rpg et AMS Ultimate : conflit sur touche "espace"
|
|
|