![]()
![]()
Autor: Ayene [ Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript. ]

Kompatybilność:
RPG Maker XP

Krótki opis:
Skrypt umożliwia ustawienie ikon dla poszczególnych poleceń w oknach, np. w menu lub ekranie tytułowym. Może nie być kompatybilny ze skryptami, które wprowadzają własne okna poleceń.

Instrukcja:
Przyporządkowanie ikon poszczególnym poleceniom odbywa się poprzez dodanie fragmentu kodu po linijcew seksji Konfiguracja kodu po linijce:
ICON_COMMANDS = { # <- nie usuwać
zgodnie ze wzorem:
# "Nazwa Komendy" => 'Nazwa Ikony',
Należy pamiętać o tym, by na końcu każdej linijki dodać przecinek.

Skrypt:
#===================================================================
# Ikony w Oknie Poleceń [XP] / Command Window Icons [XP]
# Autor: Ayene [
Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
]
# www.ultimateam.pl
#===================================================================
# Opis:
# Skrypt umożliwia ustawienie ikon dla poszczególnych poleceń w oknach, np.
# w menu lub ekranie tytułowym. Może nie być kompatybilny ze skryptami, które
# wprowadzają własne okna poleceń.
#
# Instrukcja:
# Wklej skrypt nad Main. Konfiguracja poniżej.
#===================================================================
module Ayene
# KONFIGURACJA
ICON_COMMANDS = { # <- nie usuwać
# "Nazwa Komendy" => 'Nazwa Ikony',
# Ekran tytułowy
"Nowa Gra" => "029-Key01",
"Wczytaj" => "037-Item06",
"Wyjście" => "046-Skill03",
# Menu gry
"Przedmioty" => "032-Item01",
"Zdolności" => "044-Skill01",
"Ekwipunek" => "009-Shield01",
"Status" => "038-Item07",
"Zapis" => "037-Item06",
"Koniec gry" => "046-Skill03",
# Walka
"Atak" => "001-Weapon01",
"Obrona" => "009-Shield01",
# Koniec gry
"Ekran tytułowy" => "038-Item07",
"Zakończ grę" => "048-Skill05",
"Anuluj" => "047-Skill04",
# Sklep
"Kupuj" => "038-Item07",
"Sprzedaj" => "048-Skill05",
} # <- nie usuwać
end
#==============================================================================
# ** Window_Selectable
#==============================================================================
class Window_Selectable < Window_Base
include Ayene
#--------------------------------------------------------------------------
# * Draw Command Icon
# rect : command rect
# text : command text
#--------------------------------------------------------------------------
def draw_command_icon(rect, text)
bitmap = RPG::Cache.icon(ICON_COMMANDS[text])
self.contents.blt(rect.x, 4 + rect.y, bitmap, Rect.new(0, 0, 24, 24))
bitmap.dispose
end
end
#==============================================================================
# ** Window_Command
#==============================================================================
class Window_Command < Window_Selectable
#--------------------------------------------------------------------------
# * Draw Item
# index : item number
# color : text color
#--------------------------------------------------------------------------
def draw_item(index, color)
text = @commands[index]
self.contents.font.color = color
rect = Rect.new(2, 32 * index, self.contents.width - 8, 32)
if ICON_COMMANDS.include?(text)
draw_command_icon(rect, text)
rect.x += 26
end
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
self.contents.draw_text(rect, text)
end
end
#==============================================================================
# ** Window_ShopCommand
#==============================================================================
class Window_ShopCommand < Window_Selectable
#--------------------------------------------------------------------------
# * Draw Item
# index : item number
#--------------------------------------------------------------------------
def draw_item(index)
text = @commands[index]
rect = Rect.new(2 + index * 160, 0, 128, 32)
if ICON_COMMANDS.include?(text)
draw_command_icon(rect, text)
rect.x += 26
end
self.contents.draw_text(rect, text)
end
end
1. Wklej skrypt nad "Main" w Edytorze Skryptu.
2. Reszta instrukcji znajduje się w treści skryptu.