AccueilAccueil  PortailPortail  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  




Partagez | 
 

 RGSS2 / Ruby

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : 1, 2, 3  Suivant
AuteurMessage
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: RGSS2 / Ruby   Mar 9 Juin 2009 - 14:20

RGSS2 / Ruby
Après avoir longuement réfléchi je créer ce topic d'aide du le RGSS et le Ruby
Vous n'aurez donc plus besoin de créer 3000 topic en section "Question" pour poser une toute petite question
Bref, poser là ici et nous tacherons d'y répondre !

PS : Eviter de flooder trop ici =0

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Ex-Admin-Script
Ex-Admin-Script
avatar


Masculin Age : 35
Inscrit le : 26/05/2008
Messages : 2360

MessageSujet: Re: RGSS2 / Ruby   Mar 9 Juin 2009 - 18:00

Wink Merci LaMeche, Bonne initiative quand même. En effet, nous répondrons de notre mieux à vos question de script et de ruby en général.

Tiens, voilà déjà qui devrait en aider quelques-uns sans qu'ils posent trop de question.

Documentation Ruby.

Attention par contre, il s'agit de la documentation de la distribution Ruby 1.9, et non pas la documentation du RGSS2, il y a des divergences. Cependant, cette documentation est fort utile. Utiliser la recherche pour obtenir de l'aide sur des éléments en particulier... Faites l'effort de chercher avant de demander, c'est toujours aprécié.

_________________
Hikari.

«Si je comprenais mieux ce que tu ne comprends pas, ça m'aiderait à t'aider à mieux comprendre.», Hikari
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://mirainohikari.deviantart.com
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 9 Juin 2009 - 18:14

Oh pas mal !
Mais y'a une question que je me pose et qui ne se trouve pas dans la doc...
Dans une classe (Genre Window_Item)
Certaine methode s'appele
Code:
self.contents.x
et d'autre
Code:
x
Je vois pas pourquoi O.o
Surtout que les deux methode "dessine" quelque chose sur la fenêtre...
Une petite explication de quand mettre
Code:
self.contents

Merci d'avance :s

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Maire Lv.9
Maire Lv.9
avatar


Masculin Age : 27
Inscrit le : 15/10/2008
Messages : 351

MessageSujet: Re: RGSS2 / Ruby   Mar 9 Juin 2009 - 19:30

Code:
self.contents.x
Ne peut pas exister. Tout simplement parce que contents est un attribut de Window qui représente une instance Bitmap. Or, Bitmap n'a pas de méthode X parce qu'on ne peut positionner un Bitmap que par un Sprite. @contents n'est qu'un bitmap qui est rattaché à un sprite Window. Donc sa position est fixée par Window.

self.x recherche l'attribut du parent de la Fenetre Window_Item: Window.

Donc, pour te répondre Window fonctionne comme un Sprite:
self (Window) => positionnement, apparence, skin, taille de la fenetre.
contents (Bitmap) => contenu, dessin dans la fenetre (d'ailleurs toutes les barres, textes, ... que l'on affiche dans la fenetre ne sont que des des méthodes de Bitmap).
berka

_________________
.: Je code, donc je suis :.

Rpgruby
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://rpgruby.olympe-network.com
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 9 Juin 2009 - 21:36

Oups...
En fait ici x était une inconnue ^^'
Pas une méthode (Désolé ^^')
Mais regarde ça :
Code:
draw_item_name(item, rect.x, rect.y, enabled)
Ceci permet d'afficher une image dans la fenêtre
Code:
self.contents.draw_text(rect, sprintf("%2d", number), 2)
Ceci un texte

Alors pourquoi draw_item_name n'a pas de self.contents. alorqs qu'il affiche quelque chose dans la fenêtre(un dessin) ?

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Maire Lv.9
Maire Lv.9
avatar


Masculin Age : 27
Inscrit le : 15/10/2008
Messages : 351

MessageSujet: Re: RGSS2 / Ruby   Mar 9 Juin 2009 - 21:52

Tout simplement parce que ta premiere commande est une méthode de Window_Base, classe parente à ta fenetre.
Dans cette méthode, tu retrouves le contents.

berka

_________________
.: Je code, donc je suis :.

Rpgruby
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://rpgruby.olympe-network.com
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Lun 22 Juin 2009 - 7:26

Une petite question :
Cela fait plusieur faut que je voit dans des scripts des "tags".
Exemple :
Code:
/\\V\[([0-9]+)\]/i # Extrait de Window_Message
Mais je comprend pas la structure, je vois pas comment en faire O.o
Si quelqu'un pourrait m'apprendre à en créer ^^
(de toute forme genre : < I:1 > \D<2>)
Voilà ^^


Post d'avant :
Ah !!!!!
Ok !
Sa y est j'ai compris !
Merci beaucoup !

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Ex-Admin-Script
Ex-Admin-Script
avatar


Masculin Age : 35
Inscrit le : 26/05/2008
Messages : 2360

MessageSujet: Re: RGSS2 / Ruby   Lun 22 Juin 2009 - 13:50

Voici un tuto pour réaliser ça... J'espère que l'explication est suffisemment claire. N'hésite pas à poser des question sur le tutoriel si jamais ce n'est pas suffisemment clair.

Tutoriel des Balises Personalisées

_________________
Hikari.

«Si je comprenais mieux ce que tu ne comprends pas, ça m'aiderait à t'aider à mieux comprendre.», Hikari
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://mirainohikari.deviantart.com
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Ven 3 Juil 2009 - 12:15

Voilà, j'ai réussi à créer une scene pour afficher une animation
mais voilà mon problème :
- Je n'arrive pas à nettoyer le viewport / sprite
Quand il y a un flash, la couleur reste et ne redeviens pas noir... Comment faire ?
- Et aussi, dans Sprite_Base ligne 80 81
Code:
@animation_ox = x - ox + width / 2
@animation_oy = y - oy + height / 2
Mais c'est quoi x ox et width O.o
Je vois pas où c'est initialisé !
Voici mon code :
Code:
# Animation
class Scene_Test < Scene_Base
  # Initialize
  def initialize
    $id = 0
    @view = Viewport.new(0, 0, 544, 416)
    @sprite = Sprite_Test.new(@view)
    @sprite.bitmap = Bitmap.new(544, 416)
  end
  # Start
  def start
    # Code
  end
  # Terminate
  def terminate
    # Code
  end
  # Update
  def update
    @sprite.update
    @sprite.bitmap.clear
    $id = rand(40) + 1 if Input.trigger?(Input::C)
  end
end
# Classe
class Sprite_Test < Sprite_Base
  # Initialize
  def initialize(viewport = nil)
    super(viewport)
    update
  end
  # Update
  def update
    super
    if $id != 0
      anim = $data_animations[$id]
      start_animation(anim)
      $id = 0
    end
  end
end

Merci de votre futur aide !

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Maire Lv.9
Maire Lv.9
avatar


Masculin Age : 27
Inscrit le : 15/10/2008
Messages : 351

MessageSujet: Re: RGSS2 / Ruby   Ven 3 Juil 2009 - 12:33

Déjà, intervertis les positions des scripts:

Sprite_Test doit etre placé avant Scene_Test.
Question de convention, mais aussi de stabilité: le script appelé doit précéder celui qui l'appelle. Cela évite des erreurs d'initialisation.

Pour ton "nettoyage": quelle méthode de flash tu utilises ? Essaye un update juste apres.

ox/oy: ce sont les coordonnées à l'origine du sprite/viewport. Un centre de gravité. C'est à dire, que les x sont calculés à partir de ox. Généralement, c'est le point (0,0) mais on peut le définir au centre, ce qui est très utile pour les rotations.
pour width/height, je ne peux pas te répondre, vu que je n'ai pas RM sous la main. Ce doit etre la dimension de l'animation.
Ce sont des attributs, ils sont donc initialisés dans Sprite

berka

_________________
.: Je code, donc je suis :.

Rpgruby
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://rpgruby.olympe-network.com
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 10:24

Merci beaucoup berka ^^
________________________
Nouvelle Question
Quand je test ça dans un event en insertion de script
Code:
file = open("script.txt", "w+")
file.write($game_map.events[2].list)
file.close
J'aimerais bien que dans le fichier script il y est TOUTE les commandes (donc aussi les variables) =/
Je me retrouve juste avec des " sans aucune variables @code, @indent etc...
Et moi je voudrais qu'elle y soit (sinon sa me sert pas à grand chose >.>") !
Mais là je vois pas comment faire ^^'

Merci d'avance car j'ai vraiment besoin de ceci !

Remerci d'avance !!!

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Age : 24
Inscrit le : 03/08/2009
Messages : 61

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 18:59

Salut,
je voudrais savoir comment faire apparaître un choix en script mais grisé, genre on peut le voir mais on ne peut pas le choisir.
Merci d'avance !

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 19:16

Ouch, c'est compliqué ça !
Va falloir que tu lises les cour de Miraino
Il l'explique dans le cour 5 !

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Age : 24
Inscrit le : 03/08/2009
Messages : 61

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 19:44

Cool !
Merci, c'est bon !

C\\'est bien

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Voyageur Lv.10
Voyageur Lv.10
avatar


Masculin Age : 29
Inscrit le : 24/04/2009
Messages : 407

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 19:48

Euh Raizen... Un truc que j'ai envie de te dire depuis longtemps... Peut-tu réduire ta signature? ^___^ (ou au moins la mettre dans un spoiler...)
Car là, à chacun de tes posts...

Et sinon, la meche, qu'est-ce que tu essaye d'enregistrer, au juste?
Le fichier doit contenir quoi, au final?

_________________
:3
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.google.fr/
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Age : 24
Inscrit le : 03/08/2009
Messages : 61

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 19:56

Message adressé à Sihn : lol ok, pas de problème !

Salut,
Lorsque je mets ceci en insertion :
$var = -5
On me met une erreur :
undefined method '-' for nil:NilClass

Quel est le problème ??

Merci d'avance !

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:08

C'est comme si je je te demandais de m'apporter 5 Draguierate
Tu me répond quoi ?
"C'est quoi ce truc O.O"
Bah l'ordi c'est pareil
Si tu lui dit pas
$var c'est ça, bah il comprend pas !
Donc au début faut mettre un
$var = 0

Shin => Des variables ^^
Je voudrais un event, mais en texte... c'est compliqué à comprend
essai ça dans un event
Code:
p $game_map.events[1].pages.first
Et bah moi je voudrais tout ça !

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Voyageur Lv.10
Voyageur Lv.10
avatar


Masculin Age : 29
Inscrit le : 24/04/2009
Messages : 407

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:26

La meche : faux.
Pas besoin de $var = 0. On est en ruby, pas en C. Et donc, pas de déclaration de variable.
Tu confonds $var -= 5, une opération, qui là nécessite bien que $var contienne déjà un nombre, et $var = -5, une affectation au même titre que $var = 0...

D'où vient le bug, alors? Bah c'est bien là le problème : il n'y en a strictement aucun... du moins, aucun avec juste cette ligne-ci toute seule.
Question : quelle ligne as-tu juste au dessus?

_________________
:3
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.google.fr/
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Age : 24
Inscrit le : 03/08/2009
Messages : 61

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:37

Je vais t'expliquer, je suis entrain d'écrire un script qui utilise la variable $points (une var. globale), dans mon script, j'ai mis :
Code:
$points = 0
Suivi de quelques conditions, genre :
Code:
if $points >= 15
  blabla
end
Alors moi ce dont j'ai besoin, c'est une commande à appeler par insertion qui a pour but d'augmenter la valeur de $points, comme ça une fois cette dernière aura pour valeur 15, la condition se déclenchera, tu comprend ?

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Voyageur Lv.10
Voyageur Lv.10
avatar


Masculin Age : 29
Inscrit le : 24/04/2009
Messages : 407

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:42

Mouais, mais je n'ai toujours pas la ligne se situant au dessus de celle montrée plus haut.^^
Car ici, je ne vois aucune erreur de syntaxe...
(si tu n'as aucune ligne au dessus, montres-moi la ligne au dessous, on sait jamais.^^)

_________________
:3
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.google.fr/
Flibustier Lv.21
Flibustier Lv.21
avatar


Masculin Age : 23
Inscrit le : 24/05/2008
Messages : 3234

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:46

Citation :
La meche : faux.
Avec l'erreur qu'il a si si...
si ton script c'est ça
Code:
var += 3
p var
Y'a un erreur de la classe Nil
Donc mon "exemple" fonctionne !
Et puis si, en ruby il faut quand même déclaré !
Mais plus la peine de mettre des long char etc...
Juste un = suffit mais c'est quand même une initialisation !

_________________




Antre de mes scripts
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Voyageur Lv.10
Voyageur Lv.10
avatar


Masculin Age : 29
Inscrit le : 24/04/2009
Messages : 407

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 20:59

Intialisation, oui, déclaration, non! u_u
Et puis...
"si ton script c'est ça"
...justement, ce n'est PAS ça! >_< (enfin, c'est pas ça qu'il a mis là, en tout cas)

_________________
:3
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.google.fr/
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Age : 24
Inscrit le : 03/08/2009
Messages : 61

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 21:18

Bon, j'ai plus le choix, ceci est un aperçu de quoi ressemble mon script (j'ai dis ressemble):
Code:

class Scene_Reputatione
  def main
   
    @welcome_window = Window_Base.new(0,0,544,64)
    @welcome_window.contents.draw_text(0,0,544,32,"blabla",1)
   
    $reput_points = 0

    reput_message = "Vous avez " + $reput_points.to_s + " point."
   
    @up_window = Window_Base.new(0, 64, 544, 64)
    @up_window.contents.draw_text(0,0,544,32, reput_message,1)

    @reput_name = []
    @reput_name[0] = "1er choix" 
    @reput_name[1] = "2ème choix" 
    @reput_name[2] = "3ème choix" 
    @reput_name[3] = "4ème choix" 

    @liste_window = Window_Command.new(180, @reput_name)
    @liste_window.x = 0
    @liste_window.y = @welcome_window.height + @up_window.height

    reput_actuelle = @reput_name[0]
           
    if $reput_points = 0
      reput_actuelle = @reput_name[0]
    end
     
    if $reput_points >= 20
      reput_actuelle = @reput_name[1]
    end
   
    if $reput_points >= 50
      reput_actuelle = @reput_name[2]
    end
   
    if $reput_points >= 120
      reput_actuelle = @reput_name[3]
    end

    reput_message2 = "Vous êtes " + reput_actuelle.to_s + " !"
       
    @down_window = Window_Base.new(0, @liste_window.height + 128, 544, 64)
    @down_window.contents.draw_text(0,0,544,32, reput_message2,1)

    Graphics.transition(20)
      
    loop do
      Graphics.update
          Input.update
          update
          if $scene != self
             break
          end
       end
      
       Graphics.freeze
      
       @welcome_window.dispose
                @down_window.dispose
                @down_window.dispose
                @liste_window.dispose
  end
 
  def update
      @welcome_window.update
      @up_window.update
      @down_window.update
      @liste_window.update
    end
end
   

Alors ?

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Prêtre Lv13
Prêtre Lv13
avatar


Masculin Age : 23
Inscrit le : 11/10/2008
Messages : 801

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 21:23

Salut moi j'ai le même problème pour le cours 1 de Hikari x).
Pour un exercice il demande une opération complexe et bah ... j'ai le même problème XD.

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Maire Lv.9
Maire Lv.9
avatar


Masculin Age : 27
Inscrit le : 15/10/2008
Messages : 351

MessageSujet: Re: RGSS2 / Ruby   Mar 18 Aoû 2009 - 21:24

A vue de nez tu auras un probleme de rafraichissement sur ta fenetre @welcome_window. Ca risque de fonctionner si tes textes sont statiques et que tu ne modifies pas le contenu de la fenetre. Sinon, tu auras un effet d'aliasing.

berka

_________________
.: Je code, donc je suis :.

Rpgruby
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://rpgruby.olympe-network.com
Contenu sponsorisé




MessageSujet: Re: RGSS2 / Ruby   

Revenir en haut Aller en bas
 

RGSS2 / Ruby

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 3Aller à la page : 1, 2, 3  Suivant

 Sujets similaires

-
» Coin escalier

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Salle des Fêtes :: Discussions sur le Making-
Créer un forum | © phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit