Kgs Serveur : Manga Go Index du Forum Kgs Serveur : Manga Go
Mangas à regarder, T'chat général...
 

FAQFAQ RechercherRechercher MembresMembres
GroupesGroupes S’enregistrerS’enregistrer
ProfilProfil Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés ConnexionConnexion


Tuto n°1 sur le ruby : faire un script sur RPG Maker XP

 
Poster un nouveau sujet   Répondre au sujet    Kgs Serveur : Manga Go Index du Forum -> Graphic's - Music's ... -> Tuto Création de Jeux - RPG
Sujet précédent :: Sujet suivant  
Auteur Message
gagner79


Hors ligne

Inscrit le: 03 Sep 2008
Messages: 5
Masculin 狗 Chien
Kuis: 2
Moyenne de Kuis: 0,40

MessagePosté le: Mer 3 Sep - 13:32 (2008)    Sujet du message: Tuto n°1 sur le ruby : faire un script sur RPG Maker XP Répondre en citant

Tout d'abord démarrez l'éditeur de script (F12) d'RPG MAKER, et créez un nouveau script (
au-dessus de Main)



Notez que tout ce qui est après une dièse (#) est un commentaire, il n'est donc pas lu par RPG Maker
tout ce qui est entre "=begin" et "=end" est aussi un commentaire, c'est pareil que mettre des #,
mais ca évite d'en mettre à chaque ligne




Code:
=begin 
voici une classe : 
class Cadre 
end 

voici une méthode : 
def initialize 
end 
pour l'appeler on met Cadre.new 
cette méthode est spéciale et c'est la seule qui est appelée par autre chose que par son nom 

voici une méthode traditionelle : 
def methode 
end 
pour l'appeler on met Cadre.methode 
ces méthodes ne s'appellent que par leur nom, ici "methode" 

! Une méthode se met TOUJOURS dans une classe et JAMAIS dans une autre méthode 

voici une superclasse 
< Window_Base 
une superclasse ce met TOUJOURS juste après le nom de la classe, ici après "class Cadre" 
pour appelez cette superclasse, on met "super" 
vous constaterez que ça appelle en fait le script Window_Base, on aurait donc très bien pu 
mettre "Window_Base.new", quand on appelle Window_Base, on va directement à sa 
méthode "initialize", cette méthode nécessite 4 arguments, les voici : 
(x, y, width, height) 
remplacez x par la coordonnée horizontale du cadre, x=0 étant tout à gauche 
remplacez y par la coordonnée verticale du cadre, y=0 étant tout en haut 
remplacez width par la largeur du cadre 
remplacez height par la hauteur du cadre 

"self" renvoie TOUJOURS à quelquechose qu'on a défini AVANT, ici le cadre 
pour écrire un message, on met : 
self.contents.draw_text(0, 0, 100, 32, message) 
remplacez les 4 premiers arguments comme précédemment, et le dernier par le message à 
écrire dans le cadre, ENTRE GUILLEMENTS 

voici une variable locale : 
stock = "Bonjour !" 
une variable locale ne peut être utilisée que dans la méthode où elle a été définie 

voici une variable d'instance 
@stock = "Salut !" 
une variable d'instance ne peut être utilisée que dans la classe où elle a été définie mais 
peut passer à travers les méthodes de la classe où elle a été définie 

voici une variable globale 
$stock = "Génial !" 
une variable globale peut passer à travers tous les scripts, partout quoi 

il existe une autre sorte de variable, très peut utilsée, qui peut passer à travers les méthodes 
d'un même script, mais pas entre les scripts : 
@@stock = "Bof bof !" 

=end 


class Cadre < Window_Base #Window_Base = pour créer un cadre 


def initialize 
super(100, 100, 100, 100) #on crée le cadre 
self.contents = Bitmap.new(100 - 32, 100 - 32) #pour pouvoir écrire quelquechose dessus 
refresh #on va à "def refresh" 
end 

def refresh 
self.contents.clear #on efface tout 
self.contents.draw_text(0, 0, 100, 32, "Message") #on écrit "Message" 
end 

def update 
refresh 
end 

end #de Cadre 



class Scene_Map #quand on est sur la map 

#ca c'est un peu plus compliqué (c'est pour copier la méthode "main" du script Scene_Map, 
#puis pour faire apparaître le cadre sur la map : 

alias cadre_main main 
def main 
$cadre = Cadre.new 
cadre_main 
$cadre.dispose 
end 

alias cadre_update update 
def update 
$cadre.update 
cadre_update 
end 

end #de Scene_Map 








après avoir créé un cadre, on peut le définir et le redéfinir, par exemple :
on crée un événement, puis appeler un script, et on met Cadre.x = 20
le cadre a donc changer de position

il existe beaucoup de petits trucs pour faire des trucs avec les cadres, en voici la liste :

x : changer la position x
exemple :

Code:
$cadre.x = 20 


y : changer la position y
exemple :

Code:
$cadre.y = 110  


width : changer la largeur
exemple :

Code:
$cadre.width = 200  


height : changer la hauteur
exemple :

Code:
$cadre.height = 80  


visible : rendre le cadre visible ou invisible
exemple :

Code:
$cadre.visible = true  

(pour rendre le cadre visible) et

Code:
$cadre.visible = false  

(pour rendre le cadre invisible)
opacity (ou back_opacity) : changer la transparence (maximum = 255)
exemple :

Code:
$cadre.opacity = 0  

(0=transparent)

CONTENTS :

contents : pour pouvoir écrire sur un cadre
exemple :

Code:
$cadre.contents = Bitmap.new($cadre.width - 32, $cadre.height - 32) 


($cadre.width - 32 sert à ce qu'on puisse écrire partout sur le cadre, mais qu'on ne puisse pas déborder)

contents.draw_text : écrire sur le cadre
exemple :

Code:
$cadre.contents.draw_text(0, 0, 60, 32, "SENSAS !")  


contents.blt : afficher une image sur le cadre
exemple :

Code:
icon = RPG::Cache.icon("021-Potion01") $cadre.contents.blt(0, 0, icon, Rect.new(0, 0, 24, 24), 250)  


(l'image est ici "021-Potion01" d'RPG Maker)


FONT :

contents.font.face : changer la police du cadre
exemple :

Code:
$cadre.contents.font.face = "Arial"  


contents.font.name : changer la taille de la police du cadre
exemple :

Code:
$cadre.contents.font.size = 12  


contents.font.color : changer la couleur de la police du cadre
exemple :

Code:
$cadre.contents.font.color = Color.new(0, 255, 10, 200)  

("Color.new" permet de créer une couleur, voici ses arguments :
le 1er -ici 0- est la dose de rouge
le 2ème -ici 255- est la dose de vert
le 3ème -ici 10- est la dose de bleu
le 4ème -ici 200- est la dose de clairté)
! Ne fonctionne que si c'est dans le script


Il en existe plein d'autres, à vous de les découvrir ! lol



il est aussi possible de connaitre ces informations, exemples :

savoir la position x du cadre :


Code:
print $cadre.x




savoir si le cadre est visible ou non :


Code:
print $cadre.visible  

(si true : il est visible, si false : il est invisible)



! Si vous voulez définir le cadre dans le script,
faites le dans update

Voilà le premier tuto est fini !
_________________
allez sur le forum d'animal crossing : acww.xooit.fr


Revenir en haut
Visiter le site web du posteur MSN
Publicité






MessagePosté le: Mer 3 Sep - 13:32 (2008)    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Ultima
Administrateur

Hors ligne

Inscrit le: 28 Juil 2008
Messages: 293
Localisation: Quelque part
Masculin 猴 Singe
Kuis: 284
Moyenne de Kuis: 0,97

MessagePosté le: Mer 3 Sep - 13:41 (2008)    Sujet du message: Tuto n°1 sur le ruby : faire un script sur RPG Maker XP Répondre en citant

En ce qui concerne les cadres je comprends mieux comment les changer avec ton tuto. Mais pour ce qui est des classes superclasse, je comprends pas du tout XD.

Sinon un bon tuto quand même sur un domaine difficile de rpg maker xp ^^.
_________________


Revenir en haut
AIM MSN Skype
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 22:22 (2018)    Sujet du message: Tuto n°1 sur le ruby : faire un script sur RPG Maker XP

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Kgs Serveur : Manga Go Index du Forum -> Graphic's - Music's ... -> Tuto Création de Jeux - RPG Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Panneau d’administration | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001 phpBB Group
Traduction par : phpBB-fr.com