Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / News: Du neuf dans le making / News: Muma|Rope est disponible en (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

716 connectés actuellement

30729221 visiteurs
depuis l'ouverture

2838 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

RPG Fusion

Guelnika & E-magination

Offgame

Tous nos partenaires

Devenir
partenaire



Niveau requis pour équiper armes/armures

Oblige le joueur à atteindre un certain niveau pour s'équiper d'une arme ou armure définie.

Script pour RPG Maker XP
Ecrit par Northro
Publié par thedoux (lui envoyer un message privé)
Signaler un script cassé

❤ 0

Auteur: Northro
Logiciel: Rpg maker XP
Nombre de scripts : 1

Installation
A placer au dessus de Main.

Utilisation
Dans le script, vous pouvez configurer les armes et leur niveau ici :

Portion de code : Tout sélectionner

1
2
3
  WEAPON_LEVEL = {
  2 => 5
  }


Ou la valeur à gauche désigne le numéro id de l'arme, et la valeur à droite le niveau minimal requis.
Le principe est le même pour les armures (bouclier, casque, armure et accessoire), c'est juste en-dessous :

Portion de code : Tout sélectionner

1
2
3
  ARMOR_LEVEL = {
  2 => 5
  }



Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
#===============================================================================
# Scripteur : Northro
# Pour : RPG Maker XP
# Nombre de Script: 1
# Version du Script: 1.0
# Description : Les armes et armures requièrent un niveau pour pouvoir être utilisées.
# Tradution par Thedoux
 
#===============================================================================
# Introduction: à coller au dessus de "Main".
#===============================================================================
 
#===============================================================================
# Modulo "Lvl_Itm"
#===============================================================================
 
module Lvl_Itm
#-------------------------------------------------------------------------------
# * Ajouter une armes
#
#  A = ID de l'arme
#  B = Niveau requis pour s'en équiper
#
#  WEAPON_LEVEL = {A => B}
#-------------------------------------------------------------------------------
  WEAPON_LEVEL = {
  2 => 5
  }
#-------------------------------------------------------------------------------
# * Ajouter des armures
#
#  A = ID de l'armure
#  B = Niveau requis pour s'en équiper
#
#  ARMOR_LEVEL = {A => B}
#-------------------------------------------------------------------------------
  ARMOR_LEVEL = {
  2 => 5
  }
end
 
#===============================================================================
# Clase "Scene_Map"
#===============================================================================
 
class Scene_Map
  alias level_item_scene_map_update update
  def update
    for actor in 0..$game_party.actors.size - 1
      weapon_level($game_party.actors[actor])
      armor_level($game_party.actors[actor])
    end
    level_item_scene_map_update
  end
  def weapon_level(actor)
    if Lvl_Itm::WEAPON_LEVEL.include?(actor.weapon_id)
      item_level = Lvl_Itm::WEAPON_LEVEL[actor.weapon_id]
      actor.equip(0, 0) if actor.level < item_level
    end
  end
  def armor_level(actor)
    armors = [actor.armor1_id, actor.armor2_id, actor.armor3_id, actor.armor4_id]
    for armor in armors
      if Lvl_Itm::ARMOR_LEVEL.include?(armor)
        item_level = Lvl_Itm::ARMOR_LEVEL[armor]
        armor_kind = $data_armors[armor].kind
        actor.equip(armor_kind + 1, 0) if actor.level < item_level
      end
    end
  end
end
 
#===============================================================================
# Clase "Scene_Equip"
#===============================================================================
 
class Scene_Equip
  alias level_item_scene_equip_main main
  def main
    @actor = $game_party.actors[@actor_index]
    if Lvl_Itm::WEAPON_LEVEL.include?(@actor.weapon_id)
      item_level = Lvl_Itm::WEAPON_LEVEL[@actor.weapon_id]
      @actor.equip(0, 0) if @actor.level < item_level
    end
    armors = [@actor.armor1_id, @actor.armor2_id, @actor.armor3_id, @actor.armor4_id]
    for armor in armors
      if Lvl_Itm::ARMOR_LEVEL.include?(armor)
        item_level = Lvl_Itm::ARMOR_LEVEL[armor]
        armor_kind = $data_armors[armor].kind
        @actor.equip(armor_kind + 1, 0) if @actor.level < item_level
      end
    end
    level_item_scene_equip_main
  end
  def update_item
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @right_window.active = true
      @item_window.active = false
      @item_window.index = -1
      return
    end
    if Input.trigger?(Input::C)
      item = @item_window.item
      case item
      when RPG::Weapon
        if Lvl_Itm::WEAPON_LEVEL.include?(item.id)
          item_level = Lvl_Itm::WEAPON_LEVEL[item.id]
          if @actor.level >= item_level
            $game_system.se_play($data_system.equip_se)
            @actor.equip(@right_window.index, item == nil ? 0 : item.id)
            @right_window.active = true
            @item_window.active = false
            @item_window.index = -1
            @right_window.refresh
            @item_window.refresh
            return
          else
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        else
          $game_system.se_play($data_system.equip_se)
          @actor.equip(@right_window.index, item == nil ? 0 : item.id)
          @right_window.active = true
          @item_window.active = false
          @item_window.index = -1
          @right_window.refresh
          @item_window.refresh
          return
        end
        return
      when RPG::Armor
        if Lvl_Itm::ARMOR_LEVEL.include?(item.id)
          item_level = Lvl_Itm::ARMOR_LEVEL[item.id]
          if @actor.level >= item_level
            $game_system.se_play($data_system.equip_se)
            @actor.equip(@right_window.index, item == nil ? 0 : item.id)
            @right_window.active = true
            @item_window.active = false
            @item_window.index = -1
            @right_window.refresh
            @item_window.refresh
            return
          else
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        else
          $game_system.se_play($data_system.equip_se)
          @actor.equip(@right_window.index, item == nil ? 0 : item.id)
          @right_window.active = true
          @item_window.active = false
          @item_window.index = -1
          @right_window.refresh
          @item_window.refresh
          return
        end
        return
      end
    end
  end
end




Mis à jour le 19 novembre 2020.






Troma - posté le 27/03/2012 à 02:32:09 (6392 messages postés)

❤ 0

Je procrastine

Ca marche comment si on as une centaine d'armes lvl+ et est il compatible avec l'AMS stp.

ꀎꀎꀎꀎꀎꀎꀎ


thedoux - posté le 27/03/2012 à 19:22:44 (62 messages postés)

❤ 0

Calme.

Il fonctionne même si on a une centaine d'arme t'inquiete pas par contre pour L'AMS teste le.:sourire2

LOL


drick - posté le 26/10/2012 à 18:19:14 (1 messages postés)

❤ 0

Sa fonctionne pas pour plusieurs armes ou armures.
Plizz help :/


thedoux - posté le 10/11/2012 à 03:38:47 (62 messages postés)

❤ 0

Calme.

^^ Fait voir ce que tu as mis

LOL


Super-spark - posté le 20/06/2023 à 20:37:51 (15 messages postés)

❤ 0

Dommage, sur mon projet il empêche de déséquiper les armes et autres objets équitable :/

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers