Já viram qual a arte dessa semana?Exposição dos Artistas #8
0 Respostas   164 Visualizações
0 Membros e 1 Visitante estão vendo este tópico.
[spoiler]module Khrono_Conf#===============================================================================# CONFIGURAÇÃO#=============================================================================== # Opacidade do reflexo Opacidade = 90 # ID da região Regiao = 1#=============================================================================== # FIM DA CONFIGURAÇÃO#===============================================================================endclass Scene_Map < Scene_Base alias update_ update alias start_ start def start start_ @spr_e = Array.new $game_map.events.values.each do |evento| @spr_e[evento.id] = Sprite.new end @spr = Sprite.new @spr.bitmap = Cache.character($game_player.character_name) @spr.visible = false @index_e = Array.new @direita_e = Array.new @direita2_e = Array.new @direita3_e = Array.new @esquerda_e = Array.new @esquerda2_e = Array.new @esquerda3_e = Array.new @cima_e = Array.new @baixo_e = Array.new @cont_r = 0 @cont_ra = 0 @cont_r_e = Array.new @cont_ra_e = Array.new conf_index conf_index_e end def conf_index_e $game_map.events.values.each do |evento| @cont_r_e[evento.id] = 0 @cont_ra_e[evento.id] = 0 @spr_e[evento.id].bitmap = Cache.character(evento.character_name) @spr_e[evento.id].visible = false @index_e[evento.id] = evento.character_index if @index_e[evento.id]<=3 @baixo_e[evento.id] = Rect.new(32+32*3*(@index_e[evento.id]), 0, 32, 28) @esquerda_e[evento.id] = Rect.new(32*3*@index_e[evento.id], 64, 32, 28) @esquerda2_e[evento.id] = Rect.new(32*3*@index_e[evento.id]+32, 64, 32, 28) @esquerda3_e[evento.id] = Rect.new(32*3*@index_e[evento.id]+64, 64, 32, 28) @direita_e[evento.id] = Rect.new(32*3*@index_e[evento.id], 32, 32, 28) @direita2_e[evento.id] = Rect.new(32*3*@index_e[evento.id]+32, 32, 32, 28) @direita3_e[evento.id] = Rect.new(32*3*@index_e[evento.id]+64, 32, 32, 28) @cima_e[evento.id] = Rect.new(32+32*3*(@index_e[evento.id]),32*3,32,28) else @baixo_e[evento.id] = Rect.new(32*4*(@index_e[evento.id]-4), 128, 32, 28) @esquerda_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4), 64*3, 32, 28) @esquerda2_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4)+32, 64*3, 32, 28) @esquerda3_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4)+64, 64*3, 32, 28) @direita_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4), 32*5, 32, 28) @direita2_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4)+32, 32*5, 32, 28) @direita3_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4)+64, 32*5, 32, 28) @cima_e[evento.id] = Rect.new(32*3*(@index_e[evento.id]-4),32*7,32,28) end end end def conf_index index = $game_player.character_index if index<=3 @baixo = Rect.new(32+32*3*(index), 0, 32, 28) @esquerda = Rect.new(32*3*index, 64, 32, 28) @esquerda2 = Rect.new(32*3*index+32, 64, 32, 28) @esquerda3 = Rect.new(32*3*index+64, 64, 32, 28) @direita = Rect.new(32*3*index, 32, 32, 28) @direita2 = Rect.new(32*3*index+32, 32, 32, 28) @direita3 = Rect.new(32*3*index+64, 32, 32, 28) @cima = Rect.new(32+32*3*(index),32*3,32,28) else @baixo = Rect.new(32*4*(index-4), 128, 32, 28) @esquerda = Rect.new(32*3*(index-4), 64*3, 32, 28) @esquerda2 = Rect.new(32*3*(index-4)+32, 64*3, 32, 28) @esquerda3 = Rect.new(32*3*(index-4)+64, 64*3, 32, 28) @direita = Rect.new(32*3*(index-4), 32*5, 32, 28) @direita2 = Rect.new(32*3*(index-4)+32, 32*5, 32, 28) @direita3 = Rect.new(32*3*(index-4)+64, 32*5, 32, 28) @cima = Rect.new(32*3*(index-4),32*7,32,28) end end def reflexo_certo_e $game_map.events.values.each do |event| if event.direction == 2 @spr_e[event.id].src_rect = @baixo_e[event.id] elsif event.direction == 6 if event.moving? @cont_ra_e[event.id]+=1 if @cont_ra_e[event.id]<=18 @spr_e[event.id].src_rect = @esquerda_e[event.id] elsif @cont_ra_e[event.id]>=19 && @cont_ra_e[event.id]<=27 @spr_e[event.id].src_rect = @esquerda2_e[event.id] elsif @cont_ra_e[event.id]>=28 && @cont_ra_e[event.id]<=37 @spr_e[event.id].src_rect = @esquerda3_e[event.id] end else @spr_e[event.id].src_rect = @esquerda_e[event.id] @cont_ra_e[event.id] = 0 end if @cont_ra_e[event.id] == 38 @cont_ra_e[event.id] = 0 end elsif event.direction == 4 if event.moving? @cont_ra_e[event.id]+=1 if @cont_ra_e[event.id]<=18 @spr_e[event.id].src_rect = @direita_e[event.id] elsif @cont_ra_e[event.id]>=19 && @cont_ra_e[event.id]<=27 @spr_e[event.id].src_rect = @direita2_e[event.id] elsif @cont_ra_e[event.id]>=28 && @cont_ra_e[event.id]<=37 @spr_e[event.id].src_rect = @direita3_e[event.id] end else @spr_e[event.id].src_rect = @direita_e[event.id] @cont_ra_e[event.id] = 0 end if @cont_ra_e[event.id] == 38 @cont_ra_e[event.id] = 0 end elsif event.direction == 8 @spr_e[event.id].src_rect = @cima_e[event.id] if @cont_ra_e[event.id] == 28 @cont_ra_e[event.id] = 0 end end endend def reflexo_certo if $game_player.direction == 2 @spr.src_rect = @baixo elsif $game_player.direction == 6 if $game_player.moving? || $game_player.dash? @cont_ra+=1 if @cont_ra<=8 @spr.src_rect = @esquerda elsif @cont_ra>=9 && @cont_ra<=17 @spr.src_rect = @esquerda2 elsif @cont_ra>=18 && @cont_ra<=27 @spr.src_rect = @esquerda3 end else @spr.src_rect = @esquerda @cont_ra = 0 end if @cont_ra == 28 @cont_ra = 0 end elsif $game_player.direction == 4 if $game_player.moving? || $game_player.dash? && $game_player.moving? @cont_ra+=1 if @cont_ra<=8 @spr.src_rect = @direita elsif @cont_ra>=9 && @cont_ra<=17 @spr.src_rect = @direita2 elsif @cont_ra>=18 && @cont_ra<=27 @spr.src_rect = @direita3 end else @spr.src_rect = @direita @cont_ra = 0 end if @cont_ra == 28 @cont_ra = 0 end elsif $game_player.direction == 8 @spr.src_rect = @cima if @cont_ra == 28 @cont_ra = 0 end end end def update update_ $game_map.events.values.each do |evento| case evento.region_id when 0 @spr_e[evento.id].visible = false @cont_r_e[evento.id] = 0 when Khrono_Conf::Regiao @cont_r_e[evento.id]+=1 reflexo_certo_e @spr_e[evento.id].x = evento.screen_x+16 @spr_e[evento.id].y = evento.screen_y+40 @spr_e[evento.id].opacity = Khrono_Conf::Opacidade @spr_e[evento.id].angle = 180 if @cont_r_e[evento.id]>=33 @spr_e[evento.id].visible = true @spr_e[evento.id].mirror = true end end end case $game_player.region_id when 0 @spr.visible = false @cont_r = 0 when Khrono_Conf::Regiao @cont_r+=1 reflexo_certo @spr.opacity = Khrono_Conf::Opacidade @spr.x = $game_player.screen_x + 16 @spr.y = $game_player.screen_y + 40 @spr.angle = 180 if @cont_r>=13 @spr.visible = true @spr.mirror = true end end end def update_transfer_player if $game_player.transfer? conf_index_e perform_transfer start end endend[/spoiler]