Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Jeux: Final Fantasy 2.0 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

475 connectés actuellement

29190375 visiteurs
depuis l'ouverture

5426 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Level Up!

Planète Glutko

Leo-Games

ConsoleFun

Kingdom Ultimate

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [Rpg Maker XP] Figer le mouvement d'un événement [resolu]


Sou - posté le 02/02/2016 à 23:29:38 (396 messages postés)

❤ 0

On a jamais assez de munitions

Domaine concerné: Evenements
Logiciel utilisé: Rpg Maker XP
Bonsoir à tous,

Je me demandé tout simplement comment figer un événement (qui se déplace vers le héro), lors de l'ouverture d'une fenêtre de dialogue.
Peut-être suis-je passer à coté de cette commande, en tout cas je ne trouve pas.

Merci d'avance, comme d'hab :)

Je suis Sou et c'est tout.


tartiflett - posté le 03/02/2016 à 00:03:09 (109 messages postés)

❤ 0

La fenêtre de dialogue vient de cet événement ?

Si oui, n'utilise pas la "trajectoire personnalisée" ; fais-la plutôt dans l'event, coupe-la en deux au moment du dialogue en ayant pris soin de cocher "attendre la fin", et en appuyant sur Entrée pour fermer la boîte de dialogue, le perso reprendra son chemin... Le tout devrait donner ce que tu recherches je pense =]

[Mouvement Event (attendre la fin)
> Approcher du héros
> Approcher du héros
[...]
> Approcher du héros]

[Afficher texte = "Salut !"]

[Mouvement Event (répéter le mouvement)
> Approcher du héros]

J'espère que c'est ce que tu cherchais ! ^_^

Je dois faire une croix si je sais pas écrire ?


Sou - posté le 03/02/2016 à 09:13:32 (396 messages postés)

❤ 0

On a jamais assez de munitions

Merci de ta réponse, mais non justement, le "problème" est là ^^
J'ai une horde de zombie qui se déplace de façon agressive sur la majorité de mes maps, donc événement indépendant mon petit pnj ^^'

Edit:
Là où il y a peut-être une piste c'est de prendre le code du script anti-lag (celui qui stop les évent hors champs de vision), pour l'adapter en faisant un truc du style :

Quand Dialogue => Stop Full

Mais le script anti-lag est encore un peu costaux pour moi niveau prog il m'a retourné le cerveau *_*

Je suis Sou et c'est tout.


tartiflett - posté le 03/02/2016 à 11:57:00 (109 messages postés)

❤ 0

Sinon tu copie-colle tous les mouvements des différents zombies dans un événement commun quoi... et quand tu veux afficher ton texte tu peux stopper tout le monde d'un coup non ?

Je dois faire une croix si je sais pas écrire ?


Sou - posté le 03/02/2016 à 12:06:36 (396 messages postés)

❤ 0

On a jamais assez de munitions

Hum... là où il y a un hick, c'est que si je passe mes zombies en événement commun bah l'anti-lag ne fera plus effet car il ne gère pas les événements communs (et heureusement), mais ça par contre ça va foutre le bordel ^^'

Les marges de manœuvres sont réduites.

Je suis Sou et c'est tout.


tartiflett - posté le 03/02/2016 à 12:08:46 (109 messages postés)

❤ 0

Ah oui je comprends... Effectivement tu te heurtes à un dilemme... y a tant que ça de zombies ?! (couuuuuule !)

Je dois faire une croix si je sais pas écrire ?


Sou - posté le 03/02/2016 à 12:13:58 (396 messages postés)

❤ 0

On a jamais assez de munitions

Citation:

y a tant que ça de zombies ?



Minimum 350 pour chaque map de 500 par 500? ^^'

Sans compter le reste des pnj, mobs, et autres événements tels que des portes (à position aléatoire en début de partie) qui sont au moins au nombre de ... 50 (par map).


Edit: Minimum 500 par map de 500 par 500, parce que oui 100 x 5 = 500 (trop de calcul tout ça)

Je suis Sou et c'est tout.


tartiflett - posté le 03/02/2016 à 12:18:34 (109 messages postés)

❤ 0

Ah oui quand même !

Bon bah je vais laisser la place à quelqu'un de plus expérimenté qui sera plus constructif que moi ! =P

Sinon, tu peux mettre 350 interrupteurs quoi... :grossourire

Je dois faire une croix si je sais pas écrire ?


Sou - posté le 03/02/2016 à 12:27:26 (396 messages postés)

❤ 0

On a jamais assez de munitions

Citation:

Sinon, tu peux mettre 350 interrupteurs quoi...



Ça fait beaucoup de petit boutons *-*

Merci quand même, de ta réactivité ;)

Je suis Sou et c'est tout.


Aminomad - posté le 03/02/2016 à 17:19:01 (150 messages postés)

❤ 0

C'est quoi ce "script anti-lag" auquel tu fais référence ?
C'est un truc officiel ? Ou tu l'as fais toi-même ?

Sinon pour ton souci tu peux pas gérer ça au moment de créer les boites de dialogues directement ?
Genre avant de créer la boite, t'active un interrupteur qui stoppe tout (via une page dans les events) et tu le désactive ensuite ?
(ça fait beaucoup de questions...)

The Lone Chameleon


Sou - posté le 03/02/2016 à 21:00:48 (396 messages postés)

❤ 0

On a jamais assez de munitions

Citation:

C'est quoi ce "script anti-lag" auquel tu fais référence ?



Voici le script anti-lag auquel je fais référence:

Portion de code : Tout sélectionner

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
#======================================
# ¦ Anti Event Lag Script
#======================================
# By: Near Fantastica
# Date: 12.06.05
# Version: 3
# Addon by Rabu
#======================================
# Addon: Auch Events werden upgedatet die ausserhalb des range?-Bereichs
# liegen, aber als erste Event-Zeile einen "comment"-Befehl beinhalten.
# Also Events will be updated, that have a "Comment"-command
# in the first line of the event - (inspired by Rataime)
#======================================
# ¦ Game_Map
#======================================
 
class Game_Map
#--------------------------------------------------------------------------
def in_range?(object)
screne_x = $game_map.display_x
screne_x -= 256
screne_y = $game_map.display_y
screne_y -= 256
screne_width = $game_map.display_x
screne_width += 2816
screne_height = $game_map.display_y
screne_height += 2176
return false if object.real_x <= screne_x
return false if object.real_x >= screne_width
return false if object.real_y <= screne_y
return false if object.real_y >= screne_height
return true
end
#--------------------------------------------------------------------------
def update
if $game_map.need_refresh
refresh
end
if @scroll_rest > 0
distance = 2 ** @scroll_speed
case @scroll_direction
when 2
scroll_down(distance)
when 4
scroll_left(distance)
when 6
scroll_right(distance)
when 8
scroll_up(distance)
end
@scroll_rest -= distance
end
for event in @events.values
#===== Änderung / Modification- Rabu ==========
if in_range?(event) or event.trigger == 3 or event.trigger == 4 or (event.list!=nil and event.list[0].code == 108)
#==============================================
event.update
end
end
for common_event in @common_events.values
common_event.update
end
@fog_ox -= @fog_sx / 8.0
@fog_oy -= @fog_sy / 8.0
if @fog_tone_duration >= 1
d = @fog_tone_duration
target = @fog_tone_target
@fog_tone.red = (@fog_tone.red * (d - 1) + target.red) / d
@fog_tone.green = (@fog_tone.green * (d - 1) + target.green) / d
@fog_tone.blue = (@fog_tone.blue * (d - 1) + target.blue) / d
@fog_tone.gray = (@fog_tone.gray * (d - 1) + target.gray) / d
@fog_tone_duration -= 1
end
if @fog_opacity_duration >= 1
d = @fog_opacity_duration
@fog_opacity = (@fog_opacity * (d - 1) + @fog_opacity_target) / d
@fog_opacity_duration -= 1
end
end
end
 
#======================================
# ¦ Spriteset_Map
#======================================
 
class Spriteset_Map
#--------------------------------------------------------------------------
def in_range?(object)
screne_x = $game_map.display_x
screne_x -= 256
screne_y = $game_map.display_y
screne_y -= 256
screne_width = $game_map.display_x
screne_width += 2816
screne_height = $game_map.display_y
screne_height += 2176
return false if object.real_x <= screne_x
return false if object.real_x >= screne_width
return false if object.real_y <= screne_y
return false if object.real_y >= screne_height
return true
end
#--------------------------------------------------------------------------
def update
if @panorama_name != $game_map.panorama_name or
@panorama_hue != $game_map.panorama_hue
@panorama_name = $game_map.panorama_name
@panorama_hue = $game_map.panorama_hue
if @panorama.bitmap != nil
@panorama.bitmap.dispose
@panorama.bitmap = nil
end
if @panorama_name != ""
@panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
end
Graphics.frame_reset
end
if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
@fog_name = $game_map.fog_name
@fog_hue = $game_map.fog_hue
if @fog.bitmap != nil
@fog.bitmap.dispose
@fog.bitmap = nil
end
if @fog_name != ""
@fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
end
Graphics.frame_reset
end
@tilemap.ox = $game_map.display_x / 4
@tilemap.oy = $game_map.display_y / 4
@tilemap.update
@panorama.ox = $game_map.display_x / 8
@panorama.oy = $game_map.display_y / 8
@fog.zoom_x = $game_map.fog_zoom / 100.0
@fog.zoom_y = $game_map.fog_zoom / 100.0
@fog.opacity = $game_map.fog_opacity
@fog.blend_type = $game_map.fog_blend_type
@fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
@fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
@fog.tone = $game_map.fog_tone
i=0
for sprite in @character_sprites
if sprite.character.is_a?(Game_Event)
#===== Änderung / Modification- Rabu ==========
if in_range?(sprite.character) or sprite.character.trigger == 3 or sprite.character.trigger == 4 or (sprite.character.list!=nil and sprite.character.list[0].code == 108)
#==============================================
sprite.update
i+=1
end
else
sprite.update
i+=1
end
end
#p i
@weather.type = $game_screen.weather_type
@weather.max = $game_screen.weather_max
@weather.ox = $game_map.display_x / 4
@weather.oy = $game_map.display_y / 4
@weather.update
for sprite in @picture_sprites
sprite.update
end
@timer_sprite.update
@viewport1.tone = $game_screen.tone
@viewport1.ox = $game_screen.shake
@viewport3.color = $game_screen.flash_color
@viewport1.update
@viewport3.update
end
end
 
 
 



Citation:

C'est un truc officiel ? Ou tu l'as fais toi-même ?



C'est pas du fait maison, j'ai pas encore le niveau pour :)

Citation:

Sinon pour ton souci tu peux pas gérer ça au moment de créer les boites de dialogues directement ?
Genre avant de créer la boite, t'active un interrupteur qui stoppe tout (via une page dans les events) et tu le désactive ensuite ?



C'est ce que je cherche à faire à vrai dire, seulement je ne vois pas quelle commande utilisé, ou quel bout de script fabriqué pour que mes événement se figent.
C'est pour cela que je voulais recyclé le code de l'anti lag pour arriver à faire quelque chose de ce type:
(sachant que l'anti lag stop les événements hors écran)

1) Soit ouvrir une boite de dialogue étant le script aux événements à l'écran sauf celui en cours.

2) Soit j'appelle du script qui fige la scène, je dialogue, j'appelle du script qui défige la scène.

Je suis Sou et c'est tout.


Aminomad - posté le 03/02/2016 à 21:23:10 (150 messages postés)

❤ 0

Sans parler de script, je pensais plus à un truc dans cette veine la:
http://www.rpg-maker.fr/index.php?page=forum&id=25488&deb=1&ancre=1075860#rech
Avec l'interrupteur "stop les gars" dont tu parlais.
Le plus chiant c'est d'encadrer chacune de tes phases de dialogues par l'activation
et la désactivation de l'interrupteur mais si t'en as pas beaucoup ça va.

The Lone Chameleon


Roi of the Suisse - posté le 03/02/2016 à 21:38:38 (29765 messages postés) - honor -

❤ 0

Alerte neige !

Gros lol ce topic :lol

La question c'est de figer les events lors d'un message, et les mecs proposent d'utiliser 350 interrupteurs ou bien un script anti-lag :fou
Et moi qui engueulais Némau pour ses 17 interrupteurs...


> Les events à figer ont leur dernière page (sans mouvement) qui s'active avec l'interrupteur "STOP_EVENTS", interrupteur qu'on activera avant les messages, et qu'on désactivera après.



L'essentialisme c'est quand ta voiture a un moteur essence. | Es-tu une star ? | Kujira no Hara | Polaris 03 | Planète Glutko


Sou - posté le 03/02/2016 à 21:44:45 (396 messages postés)

❤ 0

On a jamais assez de munitions

Tu utilises l'un des post auquel j'ai répondu contre moi? :o *touché en plein dedans*

Mais ton idées est simple mais efficace, je n'y avais pas pensé. Au lieu de vouloir stopper les événement en cours je les légumine le temps du dialogue. C'est ingénieux ;)

Je vais tester ça une fois mon casse croute englouti, merci aminomad :)

Citation:

Gros lol ce topic :lol



Faut bien poser des questions cons, on a pas tous les bons réflexes Mr le roi of the suisse ;)

Edit: Ça fonctionne nickel ;) Merci tout le monde !

Je suis Sou et c'est tout.


Roi of the Suisse - posté le 03/02/2016 à 22:03:37 (29765 messages postés) - honor -

❤ 0

Alerte neige !

Un autre piste, plus dangereuse, que je déconseillerais à un makeur débutant, c'est d'utiliser une condition en mode script avec la vérification suivante :

Portion de code : Tout sélectionner

1
$game_temp.message_text != nil


Ceci s'active lorsqu'il y a un message à l'écran. Les events en mode parallèle peuvent donc avoir un comportement différent s'il y a un message affiché à l'écran (en général, une absence de comportement).



L'essentialisme c'est quand ta voiture a un moteur essence. | Es-tu une star ? | Kujira no Hara | Polaris 03 | Planète Glutko


Sou - posté le 03/02/2016 à 22:15:47 (396 messages postés)

❤ 0

On a jamais assez de munitions

Bah c'est parfait !
Ta super condition fait des merveilles en événement commun Mr le roi !

Même si celle de Aminomad faisait l'affaire, je bascule sur la tienne qui est encore meilleure.

Comme quoi ma question était pas si bête ;)

Merci encore à tous.

Je suis Sou et c'est tout.


Aminomad - posté le 03/02/2016 à 22:33:49 (150 messages postés)

❤ 0

:leure2

The Lone Chameleon

Index du forum > Entraide > [Rpg Maker XP] Figer le mouvement d'un événement [resolu]

repondre up

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers