Partagez
Aller en bas
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

[résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 14:42
Alors voilà :

J'utilise le GTBS de Gubid, dernière version, et le R.A.T.S que j'ai posté sur ce forum (voilà le lien => http://www.rpgmakervx-fr.com/t10146-rats-rafidelis-advanced-time-system )

Le problème, c'est que R.A.T.S est configuré pour se stopper pendant les combats. La teinte redevient normale, le temps ne continue pas à tourner etc.

Or, moi j'aimerais bien qu'au contraire, le temps continue de tourner pendant les combats !

Alorsj 'ai fouillé le script de rafidelis, à la recherche de l'élément qui fait arrêter tout ça pendant les combats... mais sans succès. Même le mot "battle"' n'y ait pas une seule fois dans le script.

Du coup, je fais appel à la charité des scripteurs :P, pour savoir ce qui fait que ce script de temps s'arrête pendant les combats (même ceux du jeu de base, sans le GTBS).

Merci d'avance !


Dernière édition par Yasan le Jeu 20 Jan 2011 - 20:50, édité 1 fois
avatar
dricc
Membre

Nombre de messages : 2752
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 15:23
J'ai jeté un oeil vite fait et y'a un truc à tenter ...

En fait , c'est une histoire de scene_XXX . Le RATS modifie la scene Scene_Map pour s'afficher .
Donc ,en théorie , si tu dupliques le bloc "Scene_Map" dans le RATS en mettant "Scene_Battle_TBS" à la place , la fentre devrait s'afficher aussi pendant le combat .
Attention: le RATS doit etre en dessous du GTBS dans la liste des scripts pour ce que je dis marche .
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 15:39
Il me dit que les
"alias rats_start start"
"alias rats_update update"
" alias rats_terminate terminate"

Ne sont pas définies pour la classe Scene_Battle_GTBS
avatar
dricc
Membre

Nombre de messages : 2752
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 15:58
Ah zut ...

Curieux , pourtant , je vois bien un "def start" dans Scene_Battle_GTBS .

Je vois que je me suis trompé sur un truc :
il faut remplacer
class Scene_Map < Scene_Base
par
class Scene_Battle_TBS
(pas besoin de l'heritage)
Mais ça doit pas expliquer l'erreur .
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 16:14
C'est toi qui avais raison dricc ! S'il refusais d'aligner, c'est simplement parce que j'avais mis GTBS au lieu de TBS.

Maintenant ça marche, bon la teinte ne se répercute pas, mais la fenêtre de temps apparait et continue de tourner ! C'est déjà un bon point !
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 16:19
Pas testé, si ça marche pas, j'sais pas si j'y reviendrais dessus [/groconar] :

Code:
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# [~] - R.A.T.S. Actif durant les combats du GTBS
# Base par : Rafidelis
# Adaption : Neko'
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

module Neko
  module ATS_Rafidelis
 
    # Mettre nil si la fenêtre doit être placée comme sur la map
   
    Window_X_InBattle = 0
 
    Window_Y_InBattle = 0
   
  end
end

class Scene_Battle_TBS

  include Rafidelis::Advanced_Time_System   
  include Neko::ATS_Rafidelis
 
  alias neko_newstart start
 
  def start
   
    neko_newstart
   
    @rats_window_time = Window_RATS_Time.new(0,0)
   
    x = Window_X_InBattle

    y = Window_Y_InBattle

    x = (Graphics.width - @rats_window_time.width) if x.nil?

    y = (Graphics.height - @rats_window_time.height) if y.nil?

    @rats_window_time.x = x ; @rats_window_time.y = y

    @rats_window_time.visible = true

  end

  alias neko_newupdate update

  def update

    neko_newupdate

    $rats.update

    @rats_window_time.visible = true
    @rats_window_time.update if @rats_window_time.visible

  end

  alias neko_newterminate terminate

  def terminate

    neko_newterminate

    @rats_window_time.dispose
   
  end
end

Mais je poste trop tard.
En tout cas, les teintes sont effectives dans le Game_Map... Wink
(Ligne 566 pour le début de l'update dans le code de Raf')

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 16:59
Mmmmh RAH j'y arrive paaaas !

J'essaye de bidouiller mais ça veut pas Very Happy

Je place le
Code:
 update_rats_map_tone
dans update mais quand j'essaye, il dit qu'il ne le connait pas, donc j'ajoute

Spoiler:
Code:
 def update_rats_map_tone
    if name.include?(Interior_Map_Name_Symbol)
      tone_set(Tone.new(0,0,0,0))
      return
    end
    if $rats.in_early_morning?
      tone = Early_Morning_Tone
    elsif $rats.in_morning?
      tone = Morning_Tone
    elsif $rats.in_afternoon?
      tone = Afternoon_Tone
    elsif $rats.in_evening?
      tone = Evening_Tone
    elsif $rats.in_night?
      tone = Night_Tone
    elsif $rats.in_earliness?
      tone = Earliness_Tone
    end
    tone_set(tone)
  end

Mais ça ne marche pas non plus >< Suis nul.

En fait, il me dit qu'il connait pas "tone" et ce, même si je recopie le

Spoiler:
Code:
  #==========================================================================
  # Set Tone
  #==========================================================================
  def tone_set(tone,time=20)
    if @screen.tone != tone
      @screen.start_tone_change(tone,time)
      @screen.tone = tone
    end
  end
  #=======================================================================
  # Returns the name of the Map                                   
  #=======================================================================
  def name
    @name = load_data("Data/MapInfos.rvdata")
    @name[@map_id].name
  end
  #=======================================================================
  # Update
  #=======================================================================
  alias rats_update update
  def update
    rats_update
    update_rats_map_tone
  end
  #=======================================================================
  # Update Tone Screen     
  #=======================================================================
  def update_rats_map_tone
    if name.include?(Interior_Map_Name_Symbol)
      tone_set(Tone.new(0,0,0,0))
      return
    end
    if $rats.in_early_morning?
      tone = Early_Morning_Tone
    elsif $rats.in_morning?
      tone = Morning_Tone
    elsif $rats.in_afternoon?
      tone = Afternoon_Tone
    elsif $rats.in_evening?
      tone = Evening_Tone
    elsif $rats.in_night?
      tone = Night_Tone
    elsif $rats.in_earliness?
      tone = Earliness_Tone
    end
    tone_set(tone)
  end
end
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 17:51
C'est parce que la classe utilise les modules créés par Rafidelis.
(J'vais expliquer un peu tout ça, tiens.)

Si tu vois cette ligne :

Code:
include Rafidelis::Advanced_Time_System

C'est que la classe inclue le module appelé Advanced_Time_System, lui même compris dans le module appelé Rafidelis.

Donc utilises cette ligne en dessous de :

Code:
class NOM_DE_TA_CLASS
include Rafidelis::Advanced_Time_System

Déjà, les variables constantes (qui ont donc une valeur fixe et s'écrivant avec des majuscules) comprises dans les modules seront reconnues et lisibles.

Par exemple :
Code:
    if $rats.in_early_morning?
      tone = Early_Morning_Tone
    elsif $rats.in_morning?
      tone = Morning_Tone
    elsif $rats.in_afternoon?
      tone = Afternoon_Tone
    elsif $rats.in_evening?
      tone = Evening_Tone
    elsif $rats.in_night?
      tone = Night_Tone
    elsif $rats.in_earliness?
      tone = Earliness_Tone
    end
    tone_set(tone)
  end

"Early_Morning_Tone", "Morning_Tone", etc. sont des constantes.

Ensuite dans ta méthode update où tu appelles cette ligne :

Code:
update_rats_map_tone

Ca peut pas marcher, vu que tu as pas défini de méthode du même nom dans la classe où tu travailles.
Donc ton raisonnement par la suite, est très logique, vu que tu copies la méthode dans la classe appropriée.

Seulement, ce script là ne connait pas tone.
Si tu identifies bien le code de Rafidelis, tu trouveras des lignes du style :

Code:
attr_reader :week

Etc.

Donc dans ton script à toi, en dessous de include Rafidelis::Advanced_Time_System, tu mets :

Code:
attr_reader :tone

Et j'pense que ça peut le faire.

J'ai essayé d'expliquer à peu près clairement, si tu veux que je me charge de mettre le système en place, fournis moi une p'tite démo' (ouais, parce que j'ai la flemme de rassembler le GTBS + RATS moi-même, pour être honnête), et j'te taff' ça Wink

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 18:12
Je te met le lien avec la démo, pas par feignantise, mais parce que ce tone me hait Rolling Eyes

J'ai compris ton explication et ça m'a rappelé des souvenirs quand je lisais tous les tutos ruby, mais il ne veut rien entendre. Que je mette reader ou accessor, d'ailleurs. Il ne connait pas tone, il connait pas.

http://www.megaupload.com/?d=IWC8401U

Il suffit de se ballader pour avoir un combat aléatoire et le but est que le ton adapté à l'heure, je l'ai directement mis la nuit, reste pour le combat.

En tout cas merci à tous les deux pour vos efforts ^^

EDIT : Ah oui, le attr est mis avant le include dans la démo, mais c'est uniquement parce que j'ai mis à la bonne place (epic fail), entre les deux (epic fail) donc j'ai aussi testé avant hein.
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:28
Bon, voilà, après un bon moment à étudier le fonctionnement du GTBS, j'ai remarqué que dans les Scenes de combat, on utilise pas le même Spriteset.

Dans Scene_Map, on se sert de Spriteset_Map, alors que là, dans Scene_Battle_TBS, on se sert de Spriteset_Battle_GTBS.

Alors, il faut implanter l'update du changement de ton par rapport aux valeurs contenues dans la fenêtre dans ce Spriteset, et c'est ce que j'ai fait, en changeant ensuite le ton du Viewport1.

Mais j'ai besoin de savoir une chose avant de mettre tout au propre, et d'emballer tout ça, est-ce que l'on doit voir le temps passer pendant le combat, ou bien doit-il se figer?

Parce que s'il doit passer "normalement", et bien je dois retravailler pour l'update de la window, sinon, ça ira impec'. Voilà Wink

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:31
Non ce n'est pas nécessaire de voir la fenêtre de temps pendant le combat ^^

Merci beaucoup !
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:40
Donc je garde juste le ton, qui sera pour le coup fixe, vu que le temps s'arrête durant les combats.
Ca te va comme ça?

De rien Wink

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:43
Ah mais atta XD

Il faut que le temps continue de tourner derrière, mais sans qu'il soit nécessaire que la fenêtre affichant le temps qui passe, s'affiche aussi pendant le combat !

Mais faut que après le combat le temps soit passé ! je sais pas si je suis clair !
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:57
Sisi, t'es clair, c'est ce que je pensais que tu allais me dire t'façons, c'est pourquoi j'm'y suis mis direct sans attendre ta réponse ;P

J'vais te dire, t'es franchement emmerdant comme gars quand tu veux .

En gros, faut que le temps continue de passer, même durant le combat, et que j'enlève le freeze_in_battle (ouais, j'aime faire style c'est une méthode, c'TROD4RK) quoi.

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 19:59
Je sais je sais, je suis relou, tout le monde me le dit

avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:36
Ca m'a pas pris vraiment de temps, j'viens de finir de remettre les codes au propre, de raccourcir ce qui pouvait l'être, et j'suis entrain d'upload la démo' Wink

C'est terminé ET fonctionnel. (Ouais, parce que d'habitude, je finis rien, et ça marche pas.)

Considère toi comme un être ayant le cul bordé de nouilles.
J'poste le lien quand j'aurais upload.

Voilà : ==> LE LIEN <==

Enjoy!

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:38
Tu vas rire

Quand je lance il me dit

Code:
Script 'Windows in GTBS - Neko' [FR]' line 11 : SyntaxError occured.

Ceci dit, c'est juste le script de la fenêtre en combat qui fais son caprice, une fois enlevé, tout marche impeccable ! Merci beaucoup ^^

avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:43
Oh le con.

Y'a pas de "?" normalement.

Tiens, remplace ce script par ça :

Code:
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# [~] - R.A.T.S. Actif durant les combats du GTBS
# Base par : Rafidelis
# Adaption : Neko'
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

module Neko
  module ATS_Rafidelis
 
    # Mettre nil si la fenêtre doit être placée comme sur la map
    Window_Visible = false
   
    Window_X_InBattle = 0
 
    Window_Y_InBattle = 0
 
  end
end

class Scene_Battle_TBS

  include Rafidelis::Advanced_Time_System 
 
  include Neko::ATS_Rafidelis
 
  alias neko_newstart start
 
  def start
 
    neko_newstart
 
    @rats_window_time = Window_RATS_Time.new(0,0)
 
    x = Window_X_InBattle

    y = Window_Y_InBattle

    x = (Graphics.width - @rats_window_time.width) if x.nil?

    y = (Graphics.height - @rats_window_time.height) if y.nil?

    @rats_window_time.x = x ; @rats_window_time.y = y

    @rats_window_time.visible = Window_Visible

  end
 
  alias neko_newupdate update

  def update

    neko_newupdate

    $rats.update
    @rats_window_time.visible = Window_Visible
    @rats_window_time.update if @rats_window_time.visible

  end

  alias neko_newterminate terminate

  def terminate

    neko_newterminate

    @rats_window_time.dispose
 
  end
end

J'me disais. Un d'mes codes sans bug, ça peut pas le faire.

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:44
Oui c'était bien le ? ^^
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:45
Oui, donc ça fonctionne comme tu veux désormais? Wink

_________________
avatar
Yasan
Membre

Nombre de messages : 149
Age : 32
Distinction : aucune
Date d'inscription : 18/01/2011

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:45
Parfaitement comme je voulais !

Encore un grand merci à toi pour ta persévérance XD
avatar
Mist'
Staffeux retraité

Nombre de messages : 3298
Age : 25
Localisation : France // Auvergne // Cantal
Distinction : Ours Barbu é_è [/Shamu']
Artiste de talent [Yama']
Date d'inscription : 22/12/2007
http://www.rpgmakervx-fr.com

Re: [résolu]Besoin d'aide sur un script

le Jeu 20 Jan 2011 - 20:47
ROFL. De rien, ça va, pour une fois que j'peux me rendre utile...
Tu peux passer le sujet en résolu alors Wink

_________________
avatar
Elisa'
Administrateur

Nombre de messages : 2923
Age : 20
Localisation : Par là-bas !
Distinction : Mon héritière que je chéris
[Coco' Smile]
Plus que 2 ans avant d'épouser Coco' ! Compte à rebours lancé !
[Auto-distinction]

Adepte du "Je le savais" alors qu'elle le savait pas.
Date d'inscription : 30/05/2009

Re: [résolu]Besoin d'aide sur un script

le Ven 21 Jan 2011 - 17:20
Je déplace dans les problèmes résolus Smile

_________________


Cliquez ici pour voter pour la commu'
Contenu sponsorisé

Re: [résolu]Besoin d'aide sur un script

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum