Changer les niveaux de difficulés

Voici un script trouvé sur le forum de RMO, remixer par Tartuff. Rendez-vous sur le forum afin d'obtenir de l'aide sur le sujet Changer la difficulté.


Certains makers aimeraient créer un jeu qui propose plusieurs crans de difficulté. Ce script permet une entière personnalisation (niveau de difficulté dans chaque crans, nom de chaques crans ...)

Tout d'abord, créez un script au dessus de Main que l'on nomera "Scene_Difficulte".

Insérez-y ce code :

#==============================================================================
# ■ Scene_Difficulte
#------------------------------------------------------------------------------
#  Tartuff pour Rpg Maker Online
# http://www.rpgmakeronline.com
#==============================================================================

class Scene_Difficulte
 
  def main
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title($data_system.title_name)

    # Nom des choix
    s1 = "Facile"
    s2 = "Normal"
    s3 = "Difficile"
   
    # Création des fenêtres
    @command_window = Window_Command.new(192, [s1, s2, s3])
    @aide_window = Window_Aide.new
    @command_window.back_opacity = 160
    @command_window.x = 320 - @command_window.width / 2
    @command_window.y = 288
    @aide_window.x = 140
    @aide_window.y = 180
    @aide_window.back_opacity = 0
    @aide_window.opacity = 0
    $game_system.bgm_play($data_system.title_bgm)
 
    # Audio
    Audio.me_stop
    Audio.bgs_stop

    Graphics.transition
   
# Boucle de mise à jour graphique
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
   
    # Placement des graphiques
    Graphics.freeze
    @command_window.dispose
    @aide_window.dispose
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  #--------------------------------------------------------------------------
  # def update
  #--------------------------------------------------------------------------
  def update
    # Mise à jour
    @command_window.update
    @aide_window.update
    # appuie sur C
    if Input.trigger?(Input::C)
     
      # choix
      case @command_window.index
      when 0  # facile
        command_facile
      when 1  # normal
        command_normal
      when 2  # difficile
        command_difficile
      end
    end
  end
  #--------------------------------------------------------------------------
  # def command_facile
  #--------------------------------------------------------------------------
  def command_facile
   $facile = true
    general
  end
  #--------------------------------------------------------------------------
  # def command_normal
  #--------------------------------------------------------------------------
  def command_normal
    $normal = true
    general
  end
  #--------------------------------------------------------------------------
  # def command_difficile
  #--------------------------------------------------------------------------
  def command_difficile
    $difficile = true
    general
  end
   #--------------------------------------------------------------------------
  # def general
  #--------------------------------------------------------------------------
  def general
   
    # Données vers la map après le choix
    $game_system.se_play($data_system.decision_se)
    Audio.bgm_stop
    Graphics.frame_count = 0
    $game_party.setup_starting_members
    $game_map.setup($data_system.start_map_id)
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $game_map.autoplay
    $game_map.update
   
    # Arrive sur la map
    $scene = Scene_Map.new
  end
  end

  # Nouvelle classe : Window_Aide ----------------------------------------------------------------------------

class Window_Aide < Window_Base
  #--------------------------------------------------------------------------
  # def initialize
  #--------------------------------------------------------------------------
  def initialize
super(0, 0, 400, 96)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = 30 # Modifiez le nombre pou changer la taille de la phrase d'aide
    refresh
  end
  #--------------------------------------------------------------------------
  # def refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.color = system_color # Mettez "normal_color" pour avoir la couleur par défaut : blanc.
      self.contents.draw_text (4, 0, 400, 32, "Choisissez la difficulté des combats :") # Changez la phrase d'aide
  end
end

# Fin du script, j'espère qu'il vous a été utile.

Ensuite, rendez vous sur le script "Game_Enemy" aux lignes 23 et 24
( @hp = maxhp
@sp = maxsp )

Remplacez les par :

# -------------------------Modification--------------------
    @facile = 50  #Mettez ici, le pourcentage de diminution de vie et de magie du (des) monstre(s) pour le niveau facile
    @difficile = 50 #Mettez ici, le pourcentage d'augmentation de vie et de magie du (des) monstre(s) pour le niveau difficile
       
    if $facile
       @hp = maxhp * @facile/100
       @sp = maxsp * @facile/100
       end
    if $difficile
       @hp = maxhp * @difficile/100 + maxhp
       @sp =  maxsp * @difficile/100 + maxsp
       end
    if $normal
        @hp = maxhp
        @sp = maxsp
      end
        # -----------------------Fin de modification--------------

 Puis enfin rendez-vous dans le script Scene_Title est modifiez la ligne 142 ($scene = Scene_Map.new) par :

$scene = Scene_Difficulte.new

 Et voila ! Alors heureux ?

Auteur: Danny Coulombe
Créé le: 2007-12-18 06:01:28
Cette page a été vues: 4116 fois

Prenez le temps de visiter nos partenaires

Au programme actu, sorties, photos, cosplays, objets dérivés, liens sympa,vidéos... Tout sur Kingdom Hearts, des actus, des soluces, des vidéos, des musiques et plus encore... Forum réservé pour makers, traitant de thème divers. iKara Rpg Maker Le site de tous les romans de jeux vidéos Premier site de gestion de recrutement et d'équipe pour rpgmaker ! Site officiel du studio Galfart. Jeux et projets Galfart y sont présentés, ainsi que des ressources, scripts, tutoriaux, logiciels sont disponibles. Site consacré à Indie Game Maker, tutoriels, forum, 1 license d'IGM à gagner

Création de Danny Coulombe [ Administration ]
Revu et recodé par Guillaume DIOT

Ajouter aux favoris Ajouter à mes favoris
Abonnement à au bulletin d'informations Newsletters
Abonnement aux flux d'actualités RSS M'abonner aux flux RSS

Espace membres

Pas encore membre ? Inscrivez-vous
Pass oublié ? Cliquez ici

RMoogle



Actuellement en ligne

Votez pour nous


rpg maker online com
votez