Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / News: Quoi de neuf sur Oniromancie (...) / Sorties: Dread Mac Farlane - episode 6 / News: Quoi de neuf sur Oniromancie (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

261 connectés actuellement

29348164 visiteurs
depuis l'ouverture

3389 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Lunae - le bazar d'Emz0

Planète Glutko

Tashiroworld

Eclipso

RPG Maker VX

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RESOLU] [RPG Maker VX Ace] Contenu de la fenêtre coupé dans le bas


le_colosse - posté le 09/07/2013 à 22:37:53 (66 messages postés)

❤ 0

Rush FTW

Domaine concerné: Script
Logiciel utilisé: RPG Maker VX Ace
Bonjour à tous. Je suis en train de modifier la fenêtre d'utilisation d'objets pour afficher les faces des personnages sur deux colonnes. Mon problème est que la fenêtre coupe le bas du contenu.

J'ai tenté de repartir de la classe initiale (Window_MenuActor) quelques fois et je serais porté à dire que le problème vient du contents qui n'est pas de la bonne taille. Cependant, je n'arrive pas à mettre le doigt dessus. J'ai pourtant changé la taille du contents et de la fenêtre à plusieurs reprises, mais le problème persiste (la section coupée se dirige vers le bas). Le problème se présente aussi dans un projet vide.

Je vous laisse un screenshot ainsi que le code de la classe Window_MenuActor.

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
#==============================================================================
# ** Window_MenuActor
#------------------------------------------------------------------------------
#  This window is for selecting actors that will be the target of item or
# skill use.
#==============================================================================
 
class Window_MenuActor < Window_Selectable
  ACTOR_WINDOW_WIDTH = 248
  ACTOR_WINDOW_HEIGHT = 372  
  MARGIN = 16
  ITEM = 0
  EQUIP = 1
  #--------------------------------------------------------------------------
  # * Modified
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(Graphics.width - ACTOR_WINDOW_WIDTH - MARGIN, MARGIN, window_width, window_height)
    self.z = 200
    self.visible = false
    @item_type = ITEM
    draw_header
    refresh
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Digit Count
  #--------------------------------------------------------------------------
  def col_max
    return 2
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Number of Items
  #--------------------------------------------------------------------------
  def item_max
    $game_party.members.size
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Window Width
  #--------------------------------------------------------------------------
  def window_width
    ACTOR_WINDOW_WIDTH
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Window Height
  #--------------------------------------------------------------------------
  def window_height
    ACTOR_WINDOW_HEIGHT
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Calculate Height of Window Contents
  #--------------------------------------------------------------------------
  def contents_height
    height - standard_padding * 2
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Item Height
  #--------------------------------------------------------------------------
  def item_height
    #(window_height - 4 * standard_padding - line_height) / 3
    return 96
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Get Rectangle for Drawing Items
  #--------------------------------------------------------------------------
  def item_rect(index)
    rect = Rect.new
    rect.width = item_width
    rect.height = item_height
    rect.x = index % col_max * (item_width + spacing) 
    rect.y = index / col_max * (item_height + standard_padding) + line_height + standard_padding
    rect
  end
  #--------------------------------------------------------------------------
  # * Processing When OK Button Is Pressed
  #--------------------------------------------------------------------------
  def process_ok
    $game_party.target_actor = $game_party.members[index] unless @cursor_all
    call_ok_handler
  end
  #--------------------------------------------------------------------------
  # * Restore Previous Selection Position
  #--------------------------------------------------------------------------
  def select_last
    select($game_party.target_actor.index || 0)
  end
  #--------------------------------------------------------------------------
  # * Set Position of Cursor for Item
  #--------------------------------------------------------------------------
  def select_for_item(item)
    @cursor_fix = item.for_user?
    @cursor_all = item.for_all?
    if @cursor_fix
      select($game_party.menu_actor.index)
    elsif @cursor_all
      select(0)
    else
      select_last
    end
  end
  #--------------------------------------------------------------------------
  # * New Method
  # * Set Window Header
  #--------------------------------------------------------------------------
  def set_item_type(item)
    @item_type = ITEM  if item.is_a?(RPG::UsableItem)
    @item_type = EQUIP if item.is_a?(RPG::EquipItem)
    draw_header
  end
  #--------------------------------------------------------------------------
  # * New Method
  # * Draw Window Header
  #--------------------------------------------------------------------------
  def draw_header
    #draw_text(0,0, contents.width, line_height, Vocab::ITEM_USE, Bitmap::ALIGN_CENTER)    if @item_type == ITEM
    draw_text(0,0, contents.width, line_height, "Utiliser sur qui", 1)    if @item_type == ITEM
    draw_text(0,0, contents.width, line_height, Vocab::ITEM_EQUIP, Bitmap::ALIGN_CENTER)  if @item_type == EQUIP
  end
  #--------------------------------------------------------------------------
  # * Override
  # * Draw Item
  #--------------------------------------------------------------------------
  def draw_item(index)
    current_actor = $game_party.members[index]
    is_in_party = $game_party.battle_members.include?(current_actor)
    rect = item_rect(index)
    draw_actor_face(current_actor, rect.x, rect.y, is_in_party)
    draw_actor_icons(current_actor, rect.x, rect.y)
  end
end
 


Image:

Spoiler (cliquez pour afficher)




Cortez - posté le 10/07/2013 à 09:31:03 (523 messages postés)

❤ 0

Juste une idée pour voir :

Ajoute +16

Portion de code : Tout sélectionner

1
rect.y = index / col_max * (item_height + standard_padding) + line_height + standard_padding +16



Parce qu'il me semble de mémoire que les fenetres sont toujours
plus grandes que leur contenu de 16 px environ afin de laisser la
place pour la flèche de défilement.

Ou alors ça peut provenir de la marge entre chaque faceset.
Dans ce cas il faut ajouter en hauteur de fenêtre :
marge x le nombre de ligne de faceset.

(je te dis ça car le faceset du bas fait 36 px de haut et les marges
fond 12x donc le faceset fait exactement 12x3 px)

Les deux solutions proposés ne sont que des pistes, mais ça peut
toujours mettre sur la voie.


le_colosse - posté le 10/07/2013 à 15:24:34 (66 messages postés)

❤ 0

Rush FTW

J'ai trouvé le problème. Comme tu disais, la fenêtre garde de l'espace dans le bas pour la flèche. Le problème venait de la méthode update_padding_bottom qui définissait un padding relativement à la taille de ma fenêtre et mes items.

Merci pour la piste. :)


Cortez - posté le 10/07/2013 à 21:27:12 (523 messages postés)

❤ 0

Mais de rien, ça fait plaisir de voir un problème résolu :)

Index du forum > Entraide > [RESOLU] [RPG Maker VX Ace] Contenu de la fenêtre coupé dans le bas

repondre up

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