Night.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / News: Du neuf dans le making / News: Muma|Rope est disponible en (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

161 connectés actuellement

30731900 visiteurs
depuis l'ouverture

1878 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Le Temple de Valor

Tashiroworld

ConsoleFun

RPG Maker VX

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RESOLU] [RMXP] Transition Zelda / Caméra loufoque


NanakyTim - posté le 28/11/2015 à 00:11:23 (23817 messages postés)

❤ 0

Domaine concerné: Script
Logiciel utilisé: RMXP
Salut !

Ce problème est un peu similaire à l'ancien que j'avais où je voulais autoriser ou non de passer les messages... :F

J'utilise un script de transition à la zelda que voici:

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
        #==============================================================================
        # ** Classic Zelda Screen Transitions
        #------------------------------------------------------------------------------
        # * Created by: albertfish
        # * Version: 1.0
        # * Last edited: September 7, 2010
        #------------------------------------------------------------------------------
        #  Version History:
        #     Version 1.0: September 7, 2010
        #       - Initial release
        #------------------------------------------------------------------------------
        #  Description:
        #     This script mimics the screen transitions found in the 2D Zelda Games.
        #------------------------------------------------------------------------------
        #  Features:
        #     - Separeated a large map in to small screen size parts and adds a smooth
        #       transition between the parts.
        #------------------------------------------------------------------------------
        #  Install Instructions:
        #     Place this script above the main script and below the default scripts.
        #==============================================================================
         
        #==============================================================================
        # ** Spriteset_Map
        #------------------------------------------------------------------------------
        #  This class brings together map screen sprites, tilemaps, etc.
        #  It's used within the Scene_Map class.
        #==============================================================================
         
        class Spriteset_Map
          #--------------------------------------------------------------------------
          # * Object Initialization
          #--------------------------------------------------------------------------
          alias af_czst_ssm_init initialize
          def initialize
            @x = ($game_player.x - $game_player.x % 20) * 128
            @y = ($game_player.y - $game_player.y % 15) * 128
            @amount_x = 0
            @amount_y = 0
            @scrolling = false
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            $game_map.display_x = @x
            $game_map.display_y = @y
            af_czst_ssm_init
          end
          #--------------------------------------------------------------------------
          # * Scroll Right
          #--------------------------------------------------------------------------
          def scroll_right
            @x += 128
            @amount_x -= 1
            if @amount_x <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Left
          #--------------------------------------------------------------------------
          def scroll_left
            @x -= 128
            @amount_x += 1
            if @amount_x >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Up
          #--------------------------------------------------------------------------
          def scroll_up
            @y -= 96
            @amount_y -= 1
            if @amount_y <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Down
          #--------------------------------------------------------------------------
          def scroll_down
            @y += 96
            @amount_y += 1
            if @amount_y >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Frame Update
          #--------------------------------------------------------------------------
          alias af_czst_ssm_update update
          def update
            if !@scrolling
              # Determine if the screen needs to scroll left or right
              if $game_player.x % 20 == 0 && ($game_player.x - 19) * 128 > $game_map.display_x
                @amount_x = 20
                @scrolling = true
                @prev_x += 1
              elsif $game_player.x % 20 == 19 && ($game_player.x) * 128 < $game_map.display_x
                @amount_x = -20
                @scrolling = true
                @prev_x -= 1
              end
              # Determine if the screen needs to scroll up or down
              if $game_player.y % 15 == 0 && ($game_player.y - 14) * 128 > $game_map.display_y
                @amount_y = -20
                @scrolling = true
                @prev_y += 1
              elsif $game_player.y % 15 == 14 && ($game_player.y) * 128 < $game_map.display_y
                @amount_y = 20
                @scrolling = true
                @prev_y -= 1
              end
            else @scrolling
              # Scroll either left or right
              if @amount_x > 0
                scroll_right
              elsif @amount_x < 0
                scroll_left
              end
              # Scroll either up or down
              if @amount_y < 0
                scroll_down
              elsif @amount_y > 0
                scroll_up
              end
              $game_player.x = @prev_x
              $game_player.y = @prev_y
            end
            $game_map.display_x = @x
            $game_map.display_y = @y
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            af_czst_ssm_update
          end
        end
        class Game_Character
          def x=(x)
            @x = x
          end
          def y=(y)
            @y = y
          end
        end



J'aimerais pouvoir désactiver ce script quand je veux (par exemple à l'aide d'une commande script ou d'un interrupteur associé), afin de pouvoir avoir le scrolling de base de RM sur certaines maps.

En événementiel ça ressemblerait à quelque chose du genre "condition, si l'interrupteur X est sur on, alors tout le script est bon, sinon end" mais je sais pas si c'est possible :fou3

J'ai essayé de faire ça par moi-même en changeant tous les false en true et inversement pour voir si ça désactivait le script, mais ça empêche juste l'écran de suivre le héros quand il sort de ce dernier (mais il reste figé, et ne revient donc pas à la normale).

Donc voilà, si quelqu'un a une solution je lui filerai un bocal en cadeau. :bocal

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


arttroy - posté le 28/11/2015 à 15:11:19 (2394 messages postés)

❤ 0

Just working

Ben tu peux certainement gérer ça en englobant ton update ligne 90 dans une condition genre :

Portion de code : Tout sélectionner

1
2
3
4
5
def update
  if $game_switches[xx] == true
     ce que contient ton update
  end
end



Techniquement si l'interrupteur xx est désactivé ça devrait empêcher le script de fonctionner.

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


NanakyTim - posté le 28/11/2015 à 15:44:30 (23817 messages postés)

❤ 0

Je viens d'essayer, l'écran reste entièrement figé (visuellement) tant que l'interrupteur n'est pas activé. Et en plus quand une transition s'effectue, ça génère un bug du script. :(

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


arttroy - posté le 28/11/2015 à 16:51:08 (2394 messages postés)

❤ 0

Just working

ok ok bon du coup faut faire la même manip mais ailleurs je regarde...

Edit : Essaies en englobant seulement la condition if !@scrolling (ligne 92 à 128 incluses)

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


NanakyTim - posté le 28/11/2015 à 16:53:53 (23817 messages postés)

❤ 0

J'ai essayé ça un peu partout (après class machin, après def initialize... rien n'y fait :F).

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


arttroy - posté le 29/11/2015 à 02:37:40 (2394 messages postés)

❤ 0

Just working

Ben désolé mais je vois pas...

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Nemau - posté le 29/11/2015 à 23:50:57 (53215 messages postés) - admin -

❤ 0

Narrer l'autocatégorème

Tu ferais mieux de chercher un script pour faire des maps qui ne finissent pas au fond du classement des screens de la semaine. image

(bon d'accord je fais mon bâtard là xD en plus elles sont tout à fait honnêtes tes maps)



Quel RPG Maker choisir ?Ocarina of Time PCPolaris 03


NanakyTim - posté le 29/11/2015 à 23:53:50 (23817 messages postés)

❤ 0

xD

Plus sérieusement je need de l'aide pour ce problème de script :sriden (bon ça va c'est pas urgent non plus, mais je préfère avoir l'esprit tranquille dès maintenant)



BONJOUR À TOUS !

Après plus d'un an j'ai toujours pas réussi à résoudre ce "problème" qui m'empêcherait de continuer mon jeu comme je le souhaite (d'autant que j'approche à grand pas de la zone qui nécessite un scrolling différent). Je sollicite l'aide de tous les meilleurs scripteurs d'Oniromancie danke pleaze. :sriden

P.-S. freazyx vous suce si vous trouvez la solution.

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


Nemau - posté le 31/01/2017 à 00:30:06 (53215 messages postés) - admin -

❤ 0

Narrer l'autocatégorème

(désolé pour le HS mais : je suis plié de rire après avoir lu la phrase en petit x'D)



Quel RPG Maker choisir ?Ocarina of Time PCPolaris 03


freazyx - posté le 01/02/2017 à 00:33:36 (1341 messages postés)

❤ 0

boss

Oui l'enfoiray en a profité ! Je lui ai dit, "dis que tu suces, ça marche", il a fait ça... ENFOIRAY.

mon projet : ici | twitter | Une dictature, mais une dictature juste... Votez Bocaux Haram !


NanakyTim - posté le 01/02/2017 à 22:30:31 (23817 messages postés)

❤ 0

Allez les gens, s'iouplaît :sriden

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


kanatos - posté le 02/02/2017 à 08:43:06 (293 messages postés)

❤ 0

cute rabbit

Hello NanakyTim,
image

Je ne sais pas si c'est ça que tu voulais, en gros tu peux changer d'activer/désactiver ton script à l'aide d'un interrupteur.
Dis moi si ça marche sur ton projet.

remplace ton script original par celui_ci:
code source :

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
 
#switch off scroll_zelda by kanatos
#pour les utilisateurs : 
#L'interrupteur pour activer/désactiver le script est l'interrupteur "1"
#si vous voulez changer l'interrupteur qui active/desactive, changez la valeur #de $game_switches[1] 
#à la ligne 42 par la valeur que vous voulez.
 
#==============================================================================
        # ** Classic Zelda Screen Transitions
        #------------------------------------------------------------------------------
        # * Created by: albertfish
        # * Version: 1.0
        # * Last edited: September 7, 2010
        #------------------------------------------------------------------------------
        #  Version History:
        #     Version 1.0: September 7, 2010
        #       - Initial release
        #------------------------------------------------------------------------------
        #  Description:
        #     This script mimics the screen transitions found in the 2D Zelda Games.
        #------------------------------------------------------------------------------
        #  Features:
        #     - Separeated a large map in to small screen size parts and adds a smooth
        #       transition between the parts.
        #------------------------------------------------------------------------------
        #  Install Instructions:
        #     Place this script above the main script and below the default scripts.
        #==============================================================================
         
        #==============================================================================
        # ** Spriteset_Map
        #------------------------------------------------------------------------------
        #  This class brings together map screen sprites, tilemaps, etc.
        #  It's used within the Scene_Map class.
        #==============================================================================
         
        class Spriteset_Map
          #--------------------------------------------------------------------------
          # * Object Initialization
          #--------------------------------------------------------------------------
          alias af_czst_ssm_init initialize
          def initialize
            @stop_zelda_scroll=$game_switches[1]
            @x = ($game_player.x - $game_player.x % 20) * 128
            @y = ($game_player.y - $game_player.y % 15) * 128
            @amount_x = 0
            @amount_y = 0
            @scrolling = false
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            $game_map.display_x = @x
            $game_map.display_y = @y
            af_czst_ssm_init
          end
          #--------------------------------------------------------------------------
          # * Scroll Right
          #--------------------------------------------------------------------------
          def scroll_right
            @x += 128
            @amount_x -= 1
            if @amount_x <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Left
          #--------------------------------------------------------------------------
          def scroll_left
            @x -= 128
            @amount_x += 1
            if @amount_x >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Up
          #--------------------------------------------------------------------------
          def scroll_up
            @y -= 96
            @amount_y -= 1
            if @amount_y <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Down
          #--------------------------------------------------------------------------
          def scroll_down
            @y += 96
            @amount_y += 1
            if @amount_y >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Frame Update
          #--------------------------------------------------------------------------
 
          alias af_czst_ssm_update update
          def update
            if !@scrolling
              # Determine if the screen needs to scroll left or right
              if $game_player.x % 20 == 0 && ($game_player.x - 19) * 128 > $game_map.display_x
                @amount_x = 20
                @scrolling = true
                @prev_x += 1
              elsif $game_player.x % 20 == 19 && ($game_player.x) * 128 < $game_map.display_x
                @amount_x = -20
                @scrolling = true
                @prev_x -= 1
              end
              # Determine if the screen needs to scroll up or down
              if $game_player.y % 15 == 0 && ($game_player.y - 14) * 128 > $game_map.display_y
                @amount_y = -20
                @scrolling = true
                @prev_y += 1
              elsif $game_player.y % 15 == 14 && ($game_player.y) * 128 < $game_map.display_y
                @amount_y = 20
                @scrolling = true
                @prev_y -= 1
              end
            else @scrolling
              # Scroll either left or right
              if @amount_x > 0
                scroll_right
              elsif @amount_x < 0
                scroll_left
              end
              # Scroll either up or down
              if @amount_y < 0
                scroll_down
              elsif @amount_y > 0
                scroll_up
              end
              $game_player.x = @prev_x
              $game_player.y = @prev_y
            end
            if (!@stop_zelda_scroll)
            $game_map.display_x = @x
            $game_map.display_y = @y
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            end
            af_czst_ssm_update
          end
        end
 
        class Game_Character
          def x=(x)
            if (!@stop_zelda_scroll)
            @x = x
            end
          end
          def y=(y)
            if(!@stop_zelda_scroll)
           @y = y
           end
          end
        end
 



L'interrupteur évènementiel qui active/désactive le script est à la ligne 42.Si tu veux pas que ça soit l'interrupteur 1, change la valeur 1 par celle que tu veux ^^

Portion de code : Tout sélectionner

1
@stop_zelda_scroll=$game_switches[1]


J'ai essayé, ça marchait plutôt bien mais je pense on peut avoir un code plus optimal.

J'ai placé une variable boolean pour activer/désactiver l'avance de la map à la ligne 137 et l'avance du personnage à la ligne 149 pour les curieux :).


NanakyTim - posté le 02/02/2017 à 10:04:00 (23817 messages postés)

❤ 0

Je l'ai essayé et...

Chez moi ça marche pas :barbu :leure3

J'ai essayé sur deux maps de taille différentes avec deux interrupteurs différents (en changeant bien la ligne 42).

Edit:

En fait ça marche si on active/désactive l'interrupteur "manuellement", en passant par le menu F9. Mais bizarrement si on le fait via un event qui active ou non l'interrupteur, le problème persiste. :doute2

Redit:

C'est corrigé ! J'ai viré la ligne 42 qui définissait un truc en rapport à l'interrupteur, pour y mettre l'interrupteur lui-même aux lignes tout en bas. Je sais pas trop pourquoi mais ça fonctionne comme ça, du coup tant mieux. :F

Pour ceux qui veulent, voilà le code:

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
#switch off scroll_zelda by kanatos
#pour les utilisateurs : 
#L'interrupteur pour activer/désactiver le script est l'interrupteur "70"
#si vous voulez changer l'interrupteur qui active/desactive, changez la valeur #de $game_switches[70] 
#aux lignes 138, 146 et 153 par la valeur que vous voulez.
 
#==============================================================================
        # ** Classic Zelda Screen Transitions
        #------------------------------------------------------------------------------
        # * Created by: albertfish
        # * Version: 1.0
        # * Last edited: September 7, 2010
        #------------------------------------------------------------------------------
        #  Version History:
        #     Version 1.0: September 7, 2010
        #       - Initial release
        #------------------------------------------------------------------------------
        #  Description:
        #     This script mimics the screen transitions found in the 2D Zelda Games.
        #------------------------------------------------------------------------------
        #  Features:
        #     - Separeated a large map in to small screen size parts and adds a smooth
        #       transition between the parts.
        #------------------------------------------------------------------------------
        #  Install Instructions:
        #     Place this script above the main script and below the default scripts.
        #==============================================================================
         
        #==============================================================================
        # ** Spriteset_Map
        #------------------------------------------------------------------------------
        #  This class brings together map screen sprites, tilemaps, etc.
        #  It's used within the Scene_Map class.
        #==============================================================================
         
        class Spriteset_Map
          #--------------------------------------------------------------------------
          # * Object Initialization
          #--------------------------------------------------------------------------
          alias af_czst_ssm_init initialize
          def initialize
            @x = ($game_player.x - $game_player.x % 20) * 128
            @y = ($game_player.y - $game_player.y % 15) * 128
            @amount_x = 0
            @amount_y = 0
            @scrolling = false
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            $game_map.display_x = @x
            $game_map.display_y = @y
            af_czst_ssm_init
          end
          #--------------------------------------------------------------------------
          # * Scroll Right
          #--------------------------------------------------------------------------
          def scroll_right
            @x += 128
            @amount_x -= 1
            if @amount_x <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Left
          #--------------------------------------------------------------------------
          def scroll_left
            @x -= 128
            @amount_x += 1
            if @amount_x >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Up
          #--------------------------------------------------------------------------
          def scroll_up
            @y -= 96
            @amount_y -= 1
            if @amount_y <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Down
          #--------------------------------------------------------------------------
          def scroll_down
            @y += 96
            @amount_y += 1
            if @amount_y >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Frame Update
          #--------------------------------------------------------------------------
 
          alias af_czst_ssm_update update
          def update
            if !@scrolling
              # Determine if the screen needs to scroll left or right
              if $game_player.x % 20 == 0 && ($game_player.x - 19) * 128 > $game_map.display_x
                @amount_x = 20
                @scrolling = true
                @prev_x += 1
              elsif $game_player.x % 20 == 19 && ($game_player.x) * 128 < $game_map.display_x
                @amount_x = -20
                @scrolling = true
                @prev_x -= 1
              end
              # Determine if the screen needs to scroll up or down
              if $game_player.y % 15 == 0 && ($game_player.y - 14) * 128 > $game_map.display_y
                @amount_y = -20
                @scrolling = true
                @prev_y += 1
              elsif $game_player.y % 15 == 14 && ($game_player.y) * 128 < $game_map.display_y
                @amount_y = 20
                @scrolling = true
                @prev_y -= 1
              end
            else @scrolling
              # Scroll either left or right
              if @amount_x > 0
                scroll_right
              elsif @amount_x < 0
                scroll_left
              end
              # Scroll either up or down
              if @amount_y < 0
                scroll_down
              elsif @amount_y > 0
                scroll_up
              end
              $game_player.x = @prev_x
              $game_player.y = @prev_y
            end
            if (!$game_switches[70])
            $game_map.display_x = @x
            $game_map.display_y = @y
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            end
            af_czst_ssm_update
          end
        end
 
        class Game_Character
          def x=(x)
            if (!$game_switches[70])
            @x = x
            end
          end
          def y=(y)
            if (!$game_switches[70])
           @y = y
           end
          end
        end
 


J'ai mis l'interrupteur 70 mais vous pouvez bien évidemment le changer.

En tout cas mille fois merci Kanatos, ça me sera super utile. :p

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


kanatos - posté le 02/02/2017 à 15:11:22 (293 messages postés)

❤ 0

cute rabbit

Genial si ça marche :)


NanakyTim - posté le 02/02/2017 à 15:41:49 (23817 messages postés)

❤ 0

Allez Freazyx, tu sais ce qu'il te reste à faire. =>[]

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


freazyx - posté le 04/02/2017 à 00:15:01 (1341 messages postés)

❤ 0

boss

Nemau est d'accord pour prendre ma place, une petite preview de ce qu'il fait.....
image

mon projet : ici | twitter | Une dictature, mais une dictature juste... Votez Bocaux Haram !


Nemau - posté le 04/02/2017 à 01:04:35 (53215 messages postés) - admin -

❤ 0

Narrer l'autocatégorème

T'as fini d'utiliser mes gifs ou de les détourner ?! xD



Quel RPG Maker choisir ?Ocarina of Time PCPolaris 03


freazyx - posté le 04/02/2017 à 01:25:35 (1341 messages postés)

❤ 0

boss

Il est vieuxeuh celui là ! J'avais galéré en plus. :(

mon projet : ici | twitter | Une dictature, mais une dictature juste... Votez Bocaux Haram !


NanakyTim - posté le 25/02/2017 à 13:39:46 (23817 messages postés)

❤ 0

Désolé de vous embêter encore une fois, mais là je sèche complètement :sriden

Script entier:

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
#switch off scroll_zelda by kanatos
#pour les utilisateurs : 
#L'interrupteur pour activer/désactiver le script est l'interrupteur "1"
#si vous voulez changer l'interrupteur qui active/desactive, changez la valeur #de $game_switches[1] 
#à la ligne 42 par la valeur que vous voulez.
 
#==============================================================================
        # ** Classic Zelda Screen Transitions
        #------------------------------------------------------------------------------
        # * Created by: albertfish
        # * Version: 1.0
        # * Last edited: September 7, 2010
        #------------------------------------------------------------------------------
        #  Version History:
        #     Version 1.0: September 7, 2010
        #       - Initial release
        #------------------------------------------------------------------------------
        #  Description:
        #     This script mimics the screen transitions found in the 2D Zelda Games.
        #------------------------------------------------------------------------------
        #  Features:
        #     - Separeated a large map in to small screen size parts and adds a smooth
        #       transition between the parts.
        #------------------------------------------------------------------------------
        #  Install Instructions:
        #     Place this script above the main script and below the default scripts.
        #==============================================================================
         
        #==============================================================================
        # ** Spriteset_Map
        #------------------------------------------------------------------------------
        #  This class brings together map screen sprites, tilemaps, etc.
        #  It's used within the Scene_Map class.
        #==============================================================================
         
        class Spriteset_Map
          #--------------------------------------------------------------------------
          # * Object Initialization
          #--------------------------------------------------------------------------
          alias af_czst_ssm_init initialize
          def initialize
            @x = ($game_player.x - $game_player.x % 20) * 128
            @y = ($game_player.y - $game_player.y % 15) * 128
            @amount_x = 0
            @amount_y = 0
            @scrolling = false
            @prev_x = $game_player.x
            @prev_y = $game_player.y
            $game_map.display_x = @x
            $game_map.display_y = @y
            af_czst_ssm_init
          end
          #--------------------------------------------------------------------------
          # * Scroll Right
          #--------------------------------------------------------------------------
          def scroll_right
            @x += 128
            @amount_x -= 1
            if @amount_x <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Left
          #--------------------------------------------------------------------------
          def scroll_left
            @x -= 128
            @amount_x += 1
            if @amount_x >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Up
          #--------------------------------------------------------------------------
          def scroll_up
            @y -= 96
            @amount_y -= 1
            if @amount_y <= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Scroll Down
          #--------------------------------------------------------------------------
          def scroll_down
            @y += 96
            @amount_y += 1
            if @amount_y >= 0 
              @scrolling = false
            end
          end
          #--------------------------------------------------------------------------
          # * Frame Update
          #--------------------------------------------------------------------------
 
          alias af_czst_ssm_update update
          def update
            if !@scrolling
              # Determine if the screen needs to scroll left or right
              if $game_player.x % 20 == 0 && ($game_player.x - 19) * 128 > $game_map.display_x
                @amount_x = 20
                @scrolling = true
                @prev_x += 1
              elsif $game_player.x % 20 == 19 && ($game_player.x) * 128 < $game_map.display_x
                @amount_x = -20
                @scrolling = true
                @prev_x -= 1
              end
              # Determine if the screen needs to scroll up or down
              if $game_player.y % 15 == 0 && ($game_player.y - 14) * 128 > $game_map.display_y
                @amount_y = -20
                @scrolling = true
                @prev_y += 1
              elsif $game_player.y % 15 == 14 && ($game_player.y) * 128 < $game_map.display_y
                @amount_y = 20
                @scrolling = true
                @prev_y -= 1
              end
            else @scrolling
              # Scroll either left or right
              if @amount_x > 0
                scroll_right
              elsif @amount_x < 0
                scroll_left
              end
              # Scroll either up or down
              if @amount_y < 0
                scroll_down
              elsif @amount_y > 0
                scroll_up
              end
              $game_player.x = @prev_x
              $game_player.y = @prev_y
            end
            if (!$game_switches[70])
            $game_map.display_x = @x
            @prev_x = $game_player.x
            end
            if (!$game_switches[63])
            $game_map.display_y = @y
            @prev_y = $game_player.y
            end
          af_czst_ssm_update
          end
        end
 
        class Game_Character
          def x=(x)
            if (!$game_switches[70])
            @x = x
            end
          end
          def y=(y)
            if (!$game_switches[63])
           @y = y
           end
         end
       end
     



Portion importante:

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
              $game_player.x = @prev_x
              $game_player.y = @prev_y
            end
            if (!$game_switches[70])
            $game_map.display_x = @x
            @prev_x = $game_player.x
            end
            if (!$game_switches[63])
            $game_map.display_y = @y
            @prev_y = $game_player.y
            end
          af_czst_ssm_update
          end
        end
 
        class Game_Character
          def x=(x)
            if (!$game_switches[70])
            @x = x
            end
          end
          def y=(y)
            if (!$game_switches[63])
           @y = y
           end
         end
       end
     



En fait, j'ai divisé le code de Kanatos en deux interrupteurs, pour gérer les axes X et Y de du scrolling et faire un truc très sympa:

image
En rouge: les limites des mouvements de scrolling.
En rose: les limites par rapport à la détection en event des pos X et Y du héros.


image

Sauf qu'en pratique ça me fait n'importe quoi dès que je franchis certaines lignes roses (donc interrupteur 63 "TRANSITION Y"). Et ça n'a rien à voir avec le fait que le personnage court, j'ai essayé en marchant et le résultat est le même :sifflote

J'ai tout essayé en event, activer les deux interrupteurs puis désactiver X juste après, ce genre de magouilles, rien n'y fait. :leure3

Si quelqu'un a une suggestion, un début de piste, je suis preneur. :amour2

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...

Index du forum > Entraide > [RESOLU] [RMXP] Transition Zelda / Caméra loufoque

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