Light Effects v3 XP
5 participantes
Página 1 de 1
Light Effects v3 XP
Light Effects
Version: 3
by Jaime 'Near Fantastica' Webster
Version: 3
by Jaime 'Near Fantastica' Webster
- Código:
[font=Courier New]#================================
# ■ Light Effects
#================================
# ?By: Near Fantastica
# Date: 28.06.05
# Version: 3
#================================
#==========INSTRUCTIONS==========
#The first Comment event command in an event should read "Light Effects". The
#comment event command immediately following it should read "Ground", "Fire",
#"Lamppost", "LeftLantern", or "RightLantern".
#================================
class Spriteset_Map
#--------------------------------------------------------------
alias les_spriteset_map_initalize initialize
alias les_spriteset_map_dispose dispose
alias les_spriteset_map_update update
#--------------------------------------------------------------
def initialize
@light_effects = []
setup_lights
les_spriteset_map_initalize
update
end
#--------------------------------------------------------------
def dispose
les_spriteset_map_dispose
for effect in @light_effects
effect.light.dispose
end
@light_effects = []
end
#--------------------------------------------------------------
def update
les_spriteset_map_update
update_light_effects
end
#--------------------------------------------------------------
def setup_lights
for event in $game_map.events.values
next if event.list == nil
for i in 0...event.list.size
if event.list[i].code == 108 and event.list[i].parameters == ["Light Effects"]
type = event.list[i+1].parameters.to_s
case type.upcase!
when "GROUND"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 200 / 100.0
light_effects.light.zoom_y = 200 / 100.0
light_effects.light.opacity = 51
@light_effects.push(light_effects)
when "FIRE"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 300 / 100.0
light_effects.light.zoom_y = 300 / 100.0
light_effects.light.opacity = 85
@light_effects.push(light_effects)
when "LAMPPOST"
light_effects = Light_Effect.new(event,"LEFT LAMP POST")
light_effects.light.opacity = 51
@light_effects.push(light_effects)
light_effects = Light_Effect.new(event,"RIGHT LAMP POST")
light_effects.light.opacity = 51
@light_effects.push(light_effects)
when "LEFTLANTERN"
light_effects = Light_Effect.new(event,type)
light_effects.light.opacity = 150
@light_effects.push(light_effects)
when "RIGHTLANTERN"
light_effects = Light_Effect.new(event,type)
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
end
end
end
for effect in @light_effects
case effect.type
when "GROUND"
effect.light.x = (effect.event.real_x - 200 - $game_map.display_x) / 4
effect.light.y = (effect.event.real_y - 200 - $game_map.display_y) / 4
when "FIRE"
effect.light.x = (effect.event.real_x - 300 - $game_map.display_x) / 4
effect.light.y = (effect.event.real_y - 300 - $game_map.display_y) / 4
when "LEFT LAMP POST"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 5
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 15
when "RIGHT LAMP POST"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 25
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 15
when "LEFTLANTERN"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 20
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 5
when "RIGHTLANTERN"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 10
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 5
end
end
end
#--------------------------------------------------------------
def update_light_effects
for effect in @light_effects
next if not in_range?(effect.event)
case effect.type
when "GROUND"
effect.light.x = (effect.event.real_x - 200 - $game_map.display_x) / 4
effect.light.y = (effect.event.real_y - 200 - $game_map.display_y) / 4
when "FIRE"
effect.light.x = (effect.event.real_x - 300 - $game_map.display_x) / 4
effect.light.y = (effect.event.real_y - 300 - $game_map.display_y) / 4
when "LEFT LAMP POST"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 5
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 15
when "RIGHT LAMP POST"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 25
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 15
when "LEFTLANTERN"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 20
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 5
when "RIGHTLANTERN"
effect.light.x = (-0.25 * $game_map.display_x) + (effect.event.x * 32) - 10
effect.light.y = (-0.25 * $game_map.display_y) + (effect.event.y * 32) - 5
end
end
end
#--------------------------------------------------------------
def in_range?(object)
screne_x = $game_map.display_x
screne_x -= 256
screne_y = $game_map.display_y
screne_y -= 256
screne_width = $game_map.display_x
screne_width += 2816
screne_height = $game_map.display_y
screne_height += 2176
return false if object.real_x <= screne_x
return false if object.real_x >= screne_width
return false if object.real_y <= screne_y
return false if object.real_y >= screne_height
return true
end
end
#================================
# ■ Light Effects Class
#================================
class Light_Effect
#--------------------------------------------------------------
attr_accessor :light
attr_accessor :event
attr_accessor :type
#--------------------------------------------------------------
def initialize(event, type)
@light = Sprite.new
@light.bitmap = RPG::Cache.picture("LE.PNG")
@light.visible = true
@light.z = 1000
@event = event
@type = type
end
end[/font]
Instruções
Renomeie a imagen abaixo como LE.png
Lugar que, no / Graphics "/ Fotos de pasta".
Digamos que você queria ter uma luz sobre uma das suas lareiras.
Primeiro crie o evento com o incêndio gráfica e colocá-lo em uma lareira.
Em seguida abrir sua janela de comandos de eventos e criar dois comentários. O primeiro comentário deve dizer "Light Effects" (sem as aspas.) O segundo comentário vai especificar que tipo de luz que você quer (fogo, terra, poste, lanterna.) Desde que nós estamos criando uma lareira o comentário deve ler-se "Fire" (sem as aspas.)
Teste de jogo e deve ficar como a imagem.
LORD @.N.D- Aldeão
- Prêmio :
Mensagens : 11
Gold : 5281
Nível : 13
Re: Light Effects v3 XP
Boa, obrigado por disponibilizar aqui.
Até mais,
M3T.
Até mais,
M3T.
M3T- Rei
- Prêmio :
Mensagens : 468
Gold : 5648
Nível : 31
Re: Light Effects v3 XP
Isso é do Empadeiro do MRM.
Poste os Creditos como e disse no outro topico.
Poste os Creditos como e disse no outro topico.
[Executor]- Treinador Mestre
- Prêmio :
Mensagens : 414
Gold : 5808
Nível : 39
Re: Light Effects v3 XP
[Executor] escreveu:Isso é do Empadeiro do MRM.
Poste os Creditos como e disse no outro topico.
Os créditos já estão inclusos, e esses scripts não são do Empadeiro, que nem sei quem é.
Se fosse isso nós já tinhamos avisado.
Até mais,
M3T.
M3T- Rei
- Prêmio :
Mensagens : 468
Gold : 5648
Nível : 31
Re: Light Effects v3 XP
Bem interessante esse script, acho que vou usar. hehe ^^
José Maker- Aldeão
- Mensagens : 23
Gold : 5173
Nível : 10
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|