Can't convert Fixnum into Color
Aktualny czas: 28-04-26, 22:14 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VX / VXAce] Can't convert Fixnum into Color
Yotta Offline
*


Liczba postów: 156
Dołączył: 22-12-13

Pomógł: 3



Post: #1
Can't convert Fixnum into Color

Siemka. Mam problem ze skryptem. Próbuję zrobić jakiś HUD. Mam tam opcję draw_gauge. Gdy wprowadzę do niej argumenty (0, 64, 192, 5, 0, 0), po odpaleniu gry pokazuje mi błąd o treści z tematu. O co chodzi?
class YttScr_Window < Window_Base
  def initialize()
    super(0, 0, 256, 128)
  end
  def change_text( text )
    return unless text.is_a?(String)
    contents.clear
    draw_text(text, 0, 0, 128, 32, 0)
    draw_icon(495, 144, 0)
    draw_gauge(0, 64, 192, 5, 0, 0)
  end
  #--------------------------------------------------------------------------
  # ● テキストの描画
  #     args : Bitmap#draw_text と同じ
  #--------------------------------------------------------------------------
  def draw_text(text, x, y, text_width, text_height, alignment = 0)
    contents.draw_text(x, y, text_width, text_height, text, alignment)
  end
end

Kto pyta, nie błądzi. Kto nie błądzi, ten znajdzie drogę. Kto znajdzie drogę, ten odnajdzie własne szczęście.
Spoiler: (Otwórz)
(Ten post był ostatnio modyfikowany: 01-12-15 19:46 przez Yotta.)
30-11-15 21:26
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #2
RE: Can't convert Fixnum into Color

Wklej tu całą definicję 'draw_gauge'. Jesteś pewny, że dobrze ją wywołujesz?

[Obrazek: aye_furniture_pres.png]
30-11-15 23:05
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Yotta Offline
*


Liczba postów: 156
Dołączył: 22-12-13

Pomógł: 3



Post: #3
RE: Can't convert Fixnum into Color

Chyba dobrze, niestety, nie znam japońskiego, a jest tam coś co trzech ostatnich argumentach.
#--------------------------------------------------------------------------
  # ● ゲージの描画
  #     rate   : 割合(1.0 で満タン)
  #     color1 : グラデーション 左端
  #     color2 : グラデーション 右端
  #--------------------------------------------------------------------------
  def draw_gauge(x, y, width, rate, color1, color2)
    fill_w = (width * rate).to_i
    gauge_y = y + line_height - 8
    contents.fill_rect(x, gauge_y, width, 6, gauge_back_color)
    contents.gradient_fill_rect(x, gauge_y, fill_w, 6, color1, color2)
  end

Kto pyta, nie błądzi. Kto nie błądzi, ten znajdzie drogę. Kto znajdzie drogę, ten odnajdzie własne szczęście.
Spoiler: (Otwórz)
01-12-15 18:16
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #4
RE: Can't convert Fixnum into Color

Mhm, wywołujesz wersję domyślną, a w niej wartości "color1" i "color2" nie są wartościami liczbowymi. Trzeba zamiast ostatnich dwóch cyfr wpisać albo zadeklarowany w "Window_Base" kolor: hp_gauge_color1, power_up_color, itd., albo wpisać np. text_color(23). Można ewentualnie podać w wywołaniu funkcji od razu color RGB poprzez Color.new(201, 142, 3).

[Obrazek: aye_furniture_pres.png]
01-12-15 19:17
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a): Yotta
Yotta Offline
*


Liczba postów: 156
Dołączył: 22-12-13

Pomógł: 3



Post: #5
RE: Can't convert Fixnum into Color

Dzięki Ayene, teraz pięknie działa. Zamykam.

Kto pyta, nie błądzi. Kto nie błądzi, ten znajdzie drogę. Kto znajdzie drogę, ten odnajdzie własne szczęście.
Spoiler: (Otwórz)
01-12-15 19:46
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.