da es mir in letzter zeit zu umständlich wurde auf großen karten lichteffekte zu bauen, wollte ich grafik direkt über dem event anzeigen
heraus kam Illumino
da mir ein le für alle zu dumm war hab ich es so gebaut das jedes event seine eigene grafik haben kann mit entsprechenden parametern
Ich möchte Kyoshiro hier nochmals danken das er das Script so ausführlich für mich getestet hat
Was macht es genau ?
Es erstellt ein Bild über einem Event, es wird dort quasi festgetackert,
damit lassen sich zb Lichteffekte simulieren,Lichtschalter oder auch Picture Mapping.
Es ist quasi der show picture event befehl nur dass das Bild nicht mit wandert
Wie benutz ich es ?
Einfach über Main als neues Script einfügen und in den entsprechenden Events
den Kommentarcode richtig eingstellt einfügen
Die Bilder kommen ALLE in /Graphics/Illumino
Kompatibilität ?
Das Script sollte mit ALLEN Scripten kompatibel die nicht die initialize von Sprite_Character modifzieren
Screenshots ?
Hier verweise ich am besten auf die Screenshots von Kyoshiro's Alchemisten
http://www.rpgvx.net/index.php/topic,2264.msg46415.html#msg46415
http://www.rpgvx.net/index.php/topic,2264.msg46428.html#msg46428
Kommentar-Template
#==============================================================================#
LE-Comment Template
#------------------------------------------------------------------------------#
LE-Name
x:0 y:0 op:150 zx:1.0 zy:1.0 bt:1 flicker:30
#------------------------------------------------------------------------------#
LE-Name : Name der Grafik die angezeigt werden soll
x: x-korrekturwert, verschiebt die LE um x
y: y-korrekturwert, verschiebt die LE um y
op: opacity, sichtbarkeit der LE
zx: x-achsen-zoom, zoomt die LE um zx
zy: y-achsen-zoom, zoomt die LE um zy
bt: Blendtyp - 0 = normal, 1 = add, 2 = sub
flicker: Stärke des Flacker-Effekts
#------------------------------------------------------------------------------#
# Durch die erneute Änderung sind die einzelnen Kommentar-Parameter nun #
# optional , im Script selbst wird gecheckt ob der entsprechende Paramter #
# vorhanden ist und dann wird der Wert übernommen #
#------------------------------------------------------------------------------#
# Die Bilder kommen ALLE in /Graphics/Illumino #
#==============================================================================#
Script v1.2b
#==============================================================================#
# #
# # ### / ### #
# / /### #/ ### #
# / / ### ## ## #
# / ## ### ## ## #
# / ### ### ## ## #
# ## ## ## ### /### ## /## /## ## #
# ## ## ## ###/ #### / ## / ### / ### ## #
# ## ## ## ## ###/ ##/ / / ### ## #
# ## ## ## ## ## ## / ## ### ## #
# ## ## ## ## ## ## / ######## ## #
# ## ## ## ## ## ## ## ####### ## #
# ## # / ## ## ###### ## ## #
# ### / ## ## ## ### #### / ## #
# ######/ ### ### ## ### / ######/ ### / #
# ### ### ### ## ##/ ##### ##/ #
# #
# ##### ## ### ### #
# ###### / #### / ### ### #
# /# / / ####/ ## ## #
# / / / # # ## ## #
# / / # ## ## #
# ## ## # /## ## ## #
# ## ## # / ### ## ## #
# ## ######## / ### ## ## #
# ## ## # ## ### ## ## #
# ## ## ## ######## ## ## #
# # ## ## ####### ## ## #
# / ## ## ## ## #
# /##/ ## #### / ## ## #
# / ##### ## ######/ ### / ### / #
# / ## ##### ##/ ##/ #
# # #
# ## #
# __ #
# .-----.----.-----.-----.-----.-----.| |_.-----. #
# | _ | _| -__|__ --| -__| || _|__ --| #
# | __|__| |_____|_____|_____|__|__||____|_____| #
# |__| #
# #
#==============================================================================#
#==============================================================================#
# _____ _ _ _ #
# \_ \ | |_ _ _ __ ___ (_)_ __ ___ #
# / /\/ | | | | | '_ ` _ \| | '_ \ / _ \ #
# /\/ /_ | | | |_| | | | | | | | | | | (_) | #
# \____/ |_|_|\__,_|_| |_| |_|_|_| |_|\___/ #
# #
#==============================================================================#
# Illumino #
#------------------------------------------------------------------------------#
# Lässt ein Bild über einem Event entstehen #
#------------------------------------------------------------------------------#
# Version : 1.2b – 05.08.09 #
# Created by : hellMinor aka Onkel Hell #
# Do NOT redistribute without my permission #
# www.rpgvx.net #
# hellminor@rpgvx.net #
#==============================================================================#
#==============================================================================#
# LE-Comment Template #
#------------------------------------------------------------------------------#
# LE-Name #
# x:0 y:0 op:150 zx:1.0 zy:1.0 bt:1 flicker:30 #
#------------------------------------------------------------------------------#
# LE-Name : Name der Grafik die angezeigt werden soll #
# x: x-korrekturwert, verschiebt die LE um x #
# y: y-korrekturwert, verschiebt die LE um y #
# op: opacity, sichtbarkeit der LE #
# zx: x-achsen-zoom, zoomt die LE um zx #
# zy: y-achsen-zoom, zoomt die LE um zy #
# bt: Blendtyp - 0 = normal, 1 = add, 2 = sub #
# flicker: Stärke des Flacker-Effekts #
#------------------------------------------------------------------------------#
# Durch die erneute Änderung sind die einzelnen Kommentar-Parameter nun #
# optional , im Script selbst wird gecheckt ob der entsprechende Paramter #
# vorhanden ist und dann wird der Wert übernommen #
#------------------------------------------------------------------------------#
# Die Bilder kommen ALLE in /Graphics/Illumino #
#==============================================================================#
#==============================================================================#
# Script anfang #
#==============================================================================#
class Sprite_Character
#==============================================================================#
def initialize(viewport, character = nil)
super(viewport)
@character = character
@balloon_duration = 0
create_customs
update
end
#------------------------------------------------------------------------------#
def create_customs
check_lightsources
end
#------------------------------------------------------------------------------#
alias dispose_light_adds dispose
def dispose
for light in @lights
light.dispose
end
dispose_light_adds
end
#------------------------------------------------------------------------------#
def check_lightsources
@lightsources = []
@lights = []
for event in $game_map.events.values
next if event.list == nil
for page in event.event.pages
if page.list[0].code == 108
if @character == event
begin
@lights.push(Sprite_Light.new(event))
rescue
next
end
end
end
end
end
end
#------------------------------------------------------------------------------#
alias update_light_add update
def update
update_light_add
for light in @lights
light.update
end
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
class Sprite_Light < Sprite
#==============================================================================#
def initialize(lightsource)
super(Viewport.new(0,0,544,416))
@source = lightsource
self.z = @source.screen_z + 1
self.visible = true
@last_hash = 0
@flicker = 0
update
end
#------------------------------------------------------------------------------#
def update
begin
self.bitmap = Cache.illumino(@source.list[0].parameters[0])
rescue
self.bitmap = nil
return
end
self.ox = self.width / 2
self.oy = self.height / 2 + 16
@list = @source.list[1].parameters[0].split
# Opacity anpassen
temp = check_values("op")
self.opacity = @list[temp[1]].gsub(/[op:]/, "").to_i if temp[0]
# Flicker-Effekt anpassen
temp = check_values("flicker")
self.opacity += rand(@list[temp[1]].gsub(/[flicker:]/, "").to_i) if temp[0]
# x-Koordinate anpassen
temp = check_values("x")
self.x = (@source.screen_x)+ @list[temp[1]].gsub(/[x:]/, "").to_i if temp[0]
# y-Koordinate anpassen
temp = check_values("y")
self.y = (@source.screen_y)+ @list[temp[1]].gsub(/[y:]/, "").to_i if temp[0]
return if @last_hash == @source.list[0].parameters[0].hash +
@source.list[1].parameters[0].hash
@last_hash = @source.list[0].parameters[0].hash +
@source.list[1].parameters[0].hash
return if self.opacity <= 0
# x-Zoom anpassen
temp = check_values("zx")
self.zoom_x = @list[temp[1]].gsub(/[zx:]/, "").to_f if temp[0]
# y-Zoom anpassen
temp = check_values("zy")
self.zoom_y = @list[temp[1]].gsub(/[zy:]/, "").to_f if temp[0]
# Blendtyp anpassen
temp = check_values("bt")
self.blend_type = @list[temp[1]].gsub(/[bt:]/, "").to_i if temp[0]
end
#------------------------------------------------------------------------------#
def check_values(string)
for value in @list
return [true,@list.index(value)] if value.include?(string)
end
return [false,-1]
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
class Game_Event
#==============================================================================#
attr_reader :event
#------------------------------------------------------------------------------#
end
#==============================================================================#
module Cache
#==============================================================================#
def self.illumino(filename)
load_bitmap("graphics/illumino/", filename)
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
# Script ende #
#==============================================================================#
Script v1.1
#==============================================================================#
# #
# # ### / ### #
# / /### #/ ### #
# / / ### ## ## #
# / ## ### ## ## #
# / ### ### ## ## #
# ## ## ## ### /### ## /## /## ## #
# ## ## ## ###/ #### / ## / ### / ### ## #
# ## ## ## ## ###/ ##/ / / ### ## #
# ## ## ## ## ## ## / ## ### ## #
# ## ## ## ## ## ## / ######## ## #
# ## ## ## ## ## ## ## ####### ## #
# ## # / ## ## ###### ## ## #
# ### / ## ## ## ### #### / ## #
# ######/ ### ### ## ### / ######/ ### / #
# ### ### ### ## ##/ ##### ##/ #
# #
# ##### ## ### ### #
# ###### / #### / ### ### #
# /# / / ####/ ## ## #
# / / / # # ## ## #
# / / # ## ## #
# ## ## # /## ## ## #
# ## ## # / ### ## ## #
# ## ######## / ### ## ## #
# ## ## # ## ### ## ## #
# ## ## ## ######## ## ## #
# # ## ## ####### ## ## #
# / ## ## ## ## #
# /##/ ## #### / ## ## #
# / ##### ## ######/ ### / ### / #
# / ## ##### ##/ ##/ #
# # #
# ## #
# __ #
# .-----.----.-----.-----.-----.-----.| |_.-----. #
# | _ | _| -__|__ --| -__| || _|__ --| #
# | __|__| |_____|_____|_____|__|__||____|_____| #
# |__| #
# #
#==============================================================================#
#==============================================================================#
# _____ _ _ _ #
# \_ \ | |_ _ _ __ ___ (_)_ __ ___ #
# / /\/ | | | | | '_ ` _ \| | '_ \ / _ \ #
# /\/ /_ | | | |_| | | | | | | | | | | (_) | #
# \____/ |_|_|\__,_|_| |_| |_|_|_| |_|\___/ #
# #
#==============================================================================#
# Illumino #
#------------------------------------------------------------------------------#
# Lässt ein Bild über einem Event entstehen #
#------------------------------------------------------------------------------#
# Version : 1.1 – 15.07.09 #
# Created by : hellMinor aka Onkel Hell #
# Do NOT redistribute without my permission #
# www.rpgvx.net #
# hellminor@rpgvx.net #
#==============================================================================#
#==============================================================================#
# LE-Comment Template #
#------------------------------------------------------------------------------#
# LE-Name #
# x:0 y:0 op:150 zx:1.0 zy:1.0 bt:1 effect #
#------------------------------------------------------------------------------#
# LE-Name : Name der Grafik die angezeigt werden soll #
# x: x-korrekturwert, verschiebt die LE um x #
# y: y-korrekturwert, verschiebt die LE um y #
# op: opacity, sichtbarkeit der LE #
# zx: x-achsen-zoom, zoomt die LE um zx #
# zy: y-achsen-zoom, zoomt die LE um zy #
# bt: Blendtyp - 0 = normal, 1 = add, 2 = sub #
# effect: true oder false #
# Wenn Effect true ist, bekommt die LE einen flacker effect #
#------------------------------------------------------------------------------#
# Die Bilder kommen ALLE in /Graphics/Illumino #
#==============================================================================#
#==============================================================================#
# Script anfang #
#==============================================================================#
class Sprite_Character
#==============================================================================#
def initialize(viewport, character = nil)
super(viewport)
@character = character
@balloon_duration = 0
create_customs
update
end
#------------------------------------------------------------------------------#
def create_customs
check_lightsources
end
#------------------------------------------------------------------------------#
alias dispose_light_adds dispose
def dispose
for light in @lights
light.dispose
end
dispose_light_adds
end
#------------------------------------------------------------------------------#
def check_lightsources
@lightsources = []
@lights = []
for event in $game_map.events.values
next if event.list == nil
if event.list[0].code == 108
if @character == event
begin
@lights.push(Sprite_Light.new(event))
rescue
next
end
end
end
end
end
#------------------------------------------------------------------------------#
alias update_light_add update
def update
update_light_add
for light in @lights
light.update
end
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
class Sprite_Light < Sprite
#==============================================================================#
def initialize(lightsource)
super(Viewport.new(0,0,544,416))
@source = lightsource
self.z = @source.screen_z + 1
self.visible = true
update
end
#------------------------------------------------------------------------------#
def update
begin
self.bitmap = Cache.illumino(@source.list[0].parameters[0])
rescue
self.bitmap = nil
return
end
self.ox = self.width / 2
self.oy = self.height / 2
list = @source.list[1].parameters[0].split
# Werte-Parameter
self.opacity = list[2].gsub(/[op:]/, "").to_i
self.opacity += rand(15) if list[6] == "true"
return if self.opacity <= 0
self.x = (@source.screen_x + 2) + list[0].gsub(/[x:]/, "").to_i
self.y = (@source.screen_y - 16) + list[1].gsub(/[y:]/, "").to_i
self.zoom_x = list[3].gsub(/[zx:]/, "").to_f
self.zoom_y = list[4].gsub(/[zy:]/, "").to_f
self.blend_type = list[4].gsub(/[bt:]/, "").to_i
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
module Cache
#==============================================================================#
def self.illumino(filename)
load_bitmap("graphics/illumino/", filename)
end
#------------------------------------------------------------------------------#
end
#==============================================================================#
# Script ende #
#==============================================================================#
Script v1.0
[code]
#==============================================================================#
# #
# # ### / ### #
# / /### #/ ### #
# / / ### ## ## #
# / ## ### ## ## #
# / ### ### ## ## #
# ## ## ## ### /### ## /## /## ## #
# ## ## ## ###/ #### / ## / ### / ### ## #
# ## ## ## ## ###/ ##/ / / ### ## #
# ## ## ## ## ## ## / ## ### ## #
# ## ## ## ## ## ## / ######## ## #
# ## ## ## ## ## ## ## ####### ## #
# ## # / ## ## ###### ## ## #
# ### / ## ## ## ### #### / ## #
# ######/ ### ### ## ### / ######/ ### / #
# ### ### ### ## ##/ ##### ##/ #
# #
# ##### ## ### ### #
# ###### / #### / ### ### #
# /# / / ####/ ## ## #
# / / / # # ## ## #
# / / # ## ## #
# ## ## # /## ## ## #
# ## ## # / ### ## ## #
# ## ######## / ### ## ## #
# ## ## # ## ### ## ## #
# ## ## ## ######## ## ## #
# # ## ## ####### ## ## #
# / ## ## ## ## #
# /##/ ## #### / ## ## #
# / ##### ## ######/ ### / ### / #
# / ## ##### ##/ ##/ #
# # #
# ## #
# __ #
# .-----.----.-----.-----.-----.-----.| |_.-----. #
# | _ | _| -__|__ --| -__| || _|__ --| #
# | __|__| |_____|_____|_____|__|__||____|_____| #
# |__| #
# #
#==============================================================================#
#==============================================================================#
# _____ _ _ _ #
# \_ \ | |_ _ _ __ ___ (_)_ __ ___ #
# / /\/ | | | | | '_ ` _ \| | '_ \ / _ \ #
# /\/ /_ | | | |_| | | | | | | | | | | (_) | #
# \____/ |_|_|\__,_|_| |_| |_|_|_| |_|\___/ #
# #
#==============================================================================#
# Illumino #
#------------------------------------------------------------------------------#
# Lässt ein Bild über einem Event entstehen #
#------------------------------------------------------------------------------#
# Version : 1.0 – 13.06.09 #
# Created by : hellMinor aka Onkel Hell #
# Do NOT redistribute without my permission #
# www.rpgvx.net #
# hellminor@rpgvx.net #
#==============================================================================#
#==============================================================================#
# LE-Comment Template #
#------------------------------------------------------------------------------#
# LE-Name #
# x:0 y:0 op:150 zx:1.0 zy:1.0 effect #
#------------------------------------------------------------------------------#
# LE-Name : Name der Grafik die angezeigt werden soll #
# x: x-korrekturwert, verschiebt die LE um x #
# y: y-korrekturwert, verschiebt die LE um y #
# op: opacity, sichtbarkeit der LE #
# zx: x-achsen-zoom, zoomt die LE um zx #
# zy: y-achsen-zoom, zoomt die LE um zy #
# effect: true oder false #
# Wenn Effect true ist, bekommt die LE einen flacker effect #
#------------------------------------------------------------------------------#
# Die Bilder kommen ALLE in /Graphics/Illumino #
#==============================================================================#
#==============================================================================#
# Script anfang #
#==============================================================================#
class Sprite_Character
#==============================================================================#
def initialize(viewport, character = nil)
super(viewport)
@character = character
@balloon_duration = 0
create_customs
update
end
#------------------------------------------------------------------------------#
def create_customs
check_lightsources
end
#------------------------------------------------------------------------------#
alias dispose_light_adds dispose
def dispose
for light in @lights
light.dispose
end
dispose_light_adds
end
#------------------------------------------------------------------------------#
def check_lightsources
@lightsources = []
@lights = []
for event in $game_map.events.values
next if event.list == nil
if event.list[0].code == 108
if @character ==
Baldura jetzt weiß ich glaub ich dein Problem... Dein Bild ist zu groß, das wird angezeigt, aber das Bild ist außerhalb der Map... Mit diesem Script kannst du halt ein LE Bild über einem Event zeigen, dafür musste das LE-Bild nicht an die Korrdinaten des Eventes platzieren... so wie du es gemacht hast!
Hier das passende LE:
(http://www.abload.de/img/lichtr61t.png) (http://www.abload.de/image.php?img=lichtr61t.png)
Und der Name ist bei dem Bild: "Licht" ... also nicht vergessen auch im "Comment" umzuändern ;)
~Cress