Jak zmienić ekran wyboru?
Aktualny czas: 28-04-26, 22:37 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VXAce] Jak zmienić ekran wyboru?
Horizon Offline
*


Liczba postów: 10
Dołączył: 23-06-13

Pomógł: 0



Post: #1
pytajnik Jak zmienić ekran wyboru?

Mam dziwny problem w RPG Makerze VX Ace. Okno wyboru wygląda tak:
[Obrazek: ryp.png]

Jak zrobić tak, żeby okno wyboru nie odróżniało się tak od wypowiedzi i żeby wybory były pod wypowiedzią, a nie z boku?
(Ten post był ostatnio modyfikowany: 23-06-13 10:37 przez Horizon.)
23-06-13 10:32
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
tracersgta Offline
*


Liczba postów: 237
Dołączył: 09-06-13

Pomógł: 0



Post: #2
RE: Jak zmienić ekran wyboru?

A jak piszesz wypowiedź nie masz tam takiej opcji jak ustawienie położenia? W VX tak jest...
23-06-13 10:36
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Horizon Offline
*


Liczba postów: 10
Dołączył: 23-06-13

Pomógł: 0



Post: #3
RE: Jak zmienić ekran wyboru?

Mogę zmienić położenie wypowiedzi, ale chcę zmienić położenie okna wyboru oraz jego wygląd.
23-06-13 10:38
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
tracersgta Offline
*


Liczba postów: 237
Dołączył: 09-06-13

Pomógł: 0



Post: #4
RE: Jak zmienić ekran wyboru?

W takim razie musisz zmienić to w skrypcie okna z odpowiedziami. Ja Ci nie pomogę, gdyż nie znam ani VXAce, ani RGSS3. Może pokombinuj :P
23-06-13 13:12
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #5
RE: Jak zmienić ekran wyboru?

Spróbuj tego... wklej nad Main:
# ChoiceList z tłem jak okno wiadomości + ChoiceList po lewej stronie
# by Ayene

class Window_ChoiceList < Window_Command
  alias win_choice_start start unless $@
  def start
    create_back_bitmap
    create_back_sprite
    win_choice_start
  end
  
  def back_color1
    Color.new(0, 0, 0, 160)
  end

  def back_color2
    Color.new(0, 0, 0, 0)
  end
  
  alias win_choice_update_placement update_placement unless $@
  def update_placement
    win_choice_update_placement
    self.x = 0
  end
  
  def create_back_bitmap
    @back_bitmap = Bitmap.new(width, height)
    rect1 = Rect.new(0, 0, width, 12)
    rect2 = Rect.new(0, 12, width, height - 24)
    rect3 = Rect.new(0, height - 12, width, 12)
    @back_bitmap.gradient_fill_rect(rect1, back_color2, back_color1, true)
    @back_bitmap.fill_rect(rect2, back_color1)
    @back_bitmap.gradient_fill_rect(rect3, back_color1, back_color2, true)
    update_background
  end
  
  def create_back_sprite
    @back_sprite = Sprite.new
    @back_sprite.bitmap = @back_bitmap
    @back_sprite.visible = false
    @back_sprite.z = z - 1
    update_back_sprite
  end
  
  def update_back_sprite
    @background = $game_message.background
    @back_sprite.visible = (@background == 1)
    @back_sprite.y = y
    @back_sprite.opacity = openness
    @back_sprite.update
  end
  
  def update_background
    @background = $game_message.background
    self.opacity = @background == 0 ? 255 : 0
  end
end

[Obrazek: aye_furniture_pres.png]
23-06-13 13:40
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Horizon Offline
*


Liczba postów: 10
Dołączył: 23-06-13

Pomógł: 0



Post: #6
RE: Jak zmienić ekran wyboru?

Dzięki Ayene. Wszystko działa, tylko okno wyboru nie jest przyciemnione (ciężko odczytać jak tekst nie ma tła). Jak to zrobić?
23-06-13 14:45
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #7
RE: Jak zmienić ekran wyboru?

Mhm, to zamień powyższy skrypt na poniższy:
# ChoiceList z tłem jak okno wiadomości

class Window_ChoiceList < Window_Command
  
  alias win_choice_start start unless $@
  def start    
    win_choice_start
    create_back_bitmap
    create_back_sprite
  end
  
  def back_color1
    Color.new(0, 0, 0, 160)
  end

  def back_color2
    Color.new(0, 0, 0, 0)
  end
  
  alias win_choice_update_placement update_placement unless $@
  def update_placement
    win_choice_update_placement
    self.x = 0
  end
  
  def create_back_bitmap
    @back_bitmap = Bitmap.new(width, height)
    rect1 = Rect.new(0, 0, width, 12)
    rect2 = Rect.new(0, 12, width, height - 24)
    rect3 = Rect.new(0, height - 12, width, 12)
    @back_bitmap.gradient_fill_rect(rect1, back_color2, back_color1, true)
    @back_bitmap.fill_rect(rect2, back_color1)
    @back_bitmap.gradient_fill_rect(rect3, back_color1, back_color2, true)
    @background = $game_message.background
    self.opacity = @background == 0 ? 255 : 0
  end
  
  def create_back_sprite
    @back_sprite = Sprite.new
    @back_sprite.bitmap = @back_bitmap
    @back_sprite.visible = true
    @back_sprite.z = z - 1
    @back_sprite.visible = (@background == 1)
     @back_sprite.y = y
    @back_sprite.update
  end
  
  def close
    super
    @back_bitmap.dispose
    @back_sprite.dispose
  end
end

[Obrazek: aye_furniture_pres.png]
23-06-13 16:03
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Horizon Offline
*


Liczba postów: 10
Dołączył: 23-06-13

Pomógł: 0



Post: #8
RE: Jak zmienić ekran wyboru?

Wszystko działa! Jeszcze raz dzięki Ayene.

Temat do zamknięcia.
23-06-13 16:10
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Wątek zamknięty 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości

Kontakt | Ultima Forum | Wróć do góry | Wróć do forów | Wersja bez grafiki | RSS
Powered By MyBB. © 2013 MyBB Group. All Rights Reserved.
Skórka by Ayene.