Accueil du SiteAccueil du Site  AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  ConnexionConnexion  S'enregistrerS'enregistrer  



Le Deal du moment : -20%
-20% Récupérateur à eau mural 300 ...
Voir le deal
79 €

Partagez
 

 Script Neo Mode 7

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
catskart
Chevalier (niveau 1)
Chevalier (niveau 1)
catskart

Messages postés : 79
Date d'inscription : 03/11/2013
Jauge LPC :
Script Neo Mode 7 891527140044 / 10044 / 100Script Neo Mode 7 8915271400


Script Neo Mode 7 Empty
MessageSujet: Script Neo Mode 7   Script Neo Mode 7 EmptyDim 29 Mar 2015 - 16:55

(Message tiré de RPG créative, mais comme c'est fermé et que c'est introuvable en français, je le post ici.)

Script originellement posté sur un site US.

Auteur : MGCaladtogel

Ce script permet de simuler le mode 7 apparu avec la Super Nintendo.Ce mode permet à une couche qui se situe sous tous les sprites d'être l'objet de diverses transformations telles que le zoom, la rotation, et un effet d'inclinaison (utilisé à l'époque dans des jeux comme Chrono Trigger, Final Fantasy VI ou Mario Kart).
Le script qui suit est l'évolution naturelle du script "Map façon 3d en profondeur" présent sur ce forum. Il permet d'appliquer les fonctionnalités du mode 7 pour les cartes que l'on veut.

Script Neo Mode 7 Mode7

Démo (script trop long pour être posté ici - comprend le script et une dll) :
http://www.mediafire.com/download/a42v5nv7ory8w6h/DemoScriptNeoMode7_FR_fix230311.zip

Instructions (traduites adroitement à partir d'un anglais plus qu'approximatif)

A rajouter dans le nom de la carte (cf. démo) :

[NM7] : active le mode 7 pour la carte, à condition que l'interrupteur 15 (valeur arbitraire à modifier au début du script (l. 78, partie 1) soit activé (et il l'est par défaut).

les commandes suivantes sont optionnelles :
[L] : la carte se répète en boucle horizontalement et verticalement.
[A] : active l'animation des autotiles animés (il faut qu'ils aient 4 graphismes d'animation, comme pour les RTP de base)
[H] : fait apparaître une ligne blanche à l'horizon (du plus bel effet selon l'auteur de ce script)
[Rx] : fixe la résolution de la couche en mode 7. [R1] est la valeur par défaut, c'est la résolution maximale. [R2] est une résolution moyenne : on perd en qualité ce qu'on gagne en
FPS. Et enfin R3 est la résolution la plus basse : on gagne beaucoup en performances, et on perd beaucoup en finesse d'image également.
[F] : active le "filtre". C'est un procédé qui augmente de façon très significative les performances, mais qui occasionne un léger effet de flou lors des déplacements de la carte. Cette option est vivement conseillée.
[#xx] : xx est l'angle d'inclinaison de la carte, en degrés, compris entre 0 et 89. [#0] signifie aucune inclinaison. Cet angle peut être modifié par des commandes (voir plus bas) alors que le joueur est déjà sur la carte.
[%xxx] : xxx est l'angle de rotation de la carte, en degrés, compris entre 0 et 379. Cet angle peut être modifié par des commandes (voir plus bas) alors que le joueur est déjà sur la carte.

Ou alors, ajouter au début du script (il y a des exemples - Partie 1, l. 68 ) :
$neoM7_maps_settings["le nom désiré"] = ["option 1", "option 2", ...]
Les options à entrer entre guillemets sont celles au-dessus sans les crochets.
Alors dès que dans le nom de la carte il y a "le nom désiré", la carte est considérée en mode 7 avec les options définies.

Commandes à utiliser à tout moment (avec "insérer un script" dans un évènement, ou appel à partir d'autres scripts) :

pour définir instantanément un nouvel angle d'inclinaison :
$scene.spriteset.tilemap.set_alpha(nouvel angle)

pour aller progressivement de l'angle d'inclinaison actuel à un nouvel angle d'inclinaison :
$scene.spriteset.tilemap.to_alpha(nouvel angle, vitesse)

pour augmenter/diminuer l'angle d'inclinaison d'une certaine valeur (à associer à une touche par exemple) :
$scene.spriteset.tilemap.increase_alpha(valeur)

pour définir instantanément un nouvel angle de rotation :
$scene.spriteset.tilemap.set_theta(nouvel angle)

pour aller progressivement de l'angle de rotation actuel à un nouvel angle de rotation :
$scene.spriteset.tilemap.to_theta(nouvel angle, vitesse, sens)
le sens vaut -1 (antihoraire) ou 1 (horaire).

pour augmenter/diminuer l'angle de rotation d'une certaine valeur (à associer à une touche par exemple) :
$scene.spriteset.tilemap.increase_theta(valeur)

Le niveau de zoom est défini en pourcentage, c'est-à-dire que 100 équivaut à aucun zoom.
Les valeurs possibles vont de 1 à 10000.
pour définir instantanément une nouvelle valeur de zoom :
$scene.spriteset.tilemap.set_zoom(nouvelle valeur)

pour aller progressivement de la valeur de zoom actuelle à nouvelle valeur de zoom :
$scene.spriteset.tilemap.to_zoom(nouvelle valeur, vitesse)

pour augmenter/diminuer la valeur de zoom d'une certaine valeur (à associer à une touche par exemple) :
$scene.spriteset.tilemap.increase_zoom(valeur)

La valeur de pivot, comprise entre 32 et 480, correspond au numéro de ligne de l’écran considéré comme l’axe d’inclinaison de la carte. Son intersection avec le milieu de l’écran défini le centre de rotation. Sa valeur par défaut est 256.

pour définir instantanément une nouvelle valeur de pivot :
$scene.spriteset.tilemap.set_pivot(nouvelle valeur)

pour aller progressivement de la valeur de pivot actuelle à nouvelle valeur de pivot:
$scene.spriteset.tilemap.to_pivot(nouvelle valeur, vitesse)

pour augmenter/diminuer la valeur de pivot d'une certaine valeur:
$scene.spriteset.tilemap.increase_pivot(valeur)

Les valeurs de zoom et de pivot sont conservées d’une carte à l’autre (ce qui permet de gérer l’entrée puis la sortie du menu). Il faut donc les réinitialiser manuellement si on en a besoin.

Autres précisions :

Pour donner une altitude à un évènement :
Ajouter dans les commandes de l’évènement un commentaire avec :
"Heigth x", x = 1 correspondant à une altitude de 32 pixels. Les nombres réels peuvent être utilisés.

Pour définir une altitude au joueur :
$game_player.height = x

La carte est dessinée à partir des trois couches de tiles, et utilise les tiles qui n’ont pas un numéro de terrain défini dans la liste l. 65 du script (par défaut 1 et 2) :
$terrain_tags_vertical_tiles = [1, 2]
Tous les autres tiles (numéros de terrain 1 et 2 par défaut) définissent des éléments (sprites) verticaux.
Tous les tiles d’un même numéro de terrain qui sont contigus forment un unique sprite vertical.

Le charaset du joueur utilisé pour la carte en mode 7 est celui de base, sauf s’il existe un fichier de charaset avec le même nom + "_m7". Dans ce cas, ce dernier est utilisé.
On peut alors utiliser un charaset avec autant de directions que l’on veut.
Il faut alors modifier la ligne 81 du script (dans la démo, 8 directions) :
$player_directions = 8
Et ensuite configurer les vues pour chaque direction (l. 90) :
$dirs[4] = [0, 2, 3, 1]
$dirs[8] = [0, 6, 2, 7, 3, 5, 1, 4]
Ici cela défini l’ordre des graphismes (lignes de charasets) utilisés pour 4 et 8 directions, en commançant par le character face à l’écran, puis en tournant dans le sens anti-horaire (analyser la démo pour mieux comprendre).
Pour indiquer un nombre de directions pour un évènement, il faut ajouter dans les commandes de l’évènement un commentaire avec :
"Directions x"
Revenir en haut Aller en bas
Zexion
Administrateur
Administrateur
Zexion

Masculin
Messages postés : 6228
Date d'inscription : 04/01/2012
Jauge LPC :
Script Neo Mode 7 891527140097 / 10097 / 100Script Neo Mode 7 8915271400

Script Neo Mode 7 Membre15
Script Neo Mode 7 Event-10
Script Neo Mode 7 Altrui10
Script Neo Mode 7 Action10
Script Neo Mode 7 Travai10
Script Neo Mode 7 Collec10
Script Neo Mode 7 Collec11
Script Neo Mode 7 Collec12
Script Neo Mode 7 Staffe11
Script Neo Mode 7 Dessin10


Script Neo Mode 7 Empty
MessageSujet: Re: Script Neo Mode 7   Script Neo Mode 7 EmptyDim 29 Mar 2015 - 17:59

C'est un chouette script. J'ai rajouté une image pour illustrer.
Merci du partage, je te mets des points. oui
Revenir en haut Aller en bas
 
Script Neo Mode 7
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [XP] Mode 7
» Hide Player 1.0 (Dissimulation du héros en mode test)
» Mode super attaque
» Votre mode de combat ?
» Changer de mode de combat

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le Palais Créatif :: ~ PARTAGE ~ :: Scripts et plugins :: RPG Maker XP :: Autres-
Sauter vers: