O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

[Hideo] Event Spawn

Iniciado por Raizen, 08/01/2013 às 15:10

Citação de: hideo online 18/07/2010 às 15:29
Event Spawn 3.0


Por "Hideo

[box class=catbg]
Introdução
[/box]
Esse script serve para criar um evento de um mapa no outro, como no sistema de ferramentas do XAS abs.

[box class=catbg]
Cracterísticas
[/box]

  • Reproduz eventos de um mapa em outro
  • Uso simples(apenas um comando)


[box class=catbg]
Demo[/box]
Download da demo - Download


[box class=catbg]
Script[/box]
#==============================================================================#
#= = = = = = = = = = = = = = = = Event Spawner = = = = = = = = = = = = = = = = #
#----------------#=============================================================#
# por : Hideo    #
# 16/07/10       #
# v : 3.0        #
#----------------#

#==============================================================================#
#   ×Instruções×
#     - Para criar um evento no mapa, use o comando 'chamar script' com o
#       seguinte código:
#       criar_evento(mapa,id,x,y)
#         mapa = id do mapa do evento
#         id   = id do evento
#         x,y  = coordenadas X e Y do evento
#     - Para deletar um evento no mapa, use o comando 'chamar script' com o
#       seguinte código:
#       deletar_evento(id,permanente)
#         id   = id do evento
#         permanente = o evento será apagado pemanentemente do mapa(true/false)
#==============================================================================#

class Game_Interpreter
  def criar_evento(mapa,id,x=0,y=0)
    $scene.spriteset.refresh_character($game_map.create_event(mapa,id,x,y))
  end
  def deletar_evento(id,permanente)
    $game_map.delete_event(id,permanente)
  end
end
class Game_Map
  def add_event(map,id,new_id)
    map_data = load_data(sprintf("Data/Map%03d.rvdata", map))
    @map.events[new_id] = map_data.events[id].dup
    @map.events[new_id].id = new_id
    map_data = nil
  end
  def create_event(map_id,id,x,y)
    new_id = @map.events.keys.max + 1
    add_event(map_id,id,new_id)
    @events[new_id] = Game_Event.new(@map_id,@map.events[new_id])
    @events[new_id].moveto(x,y)
    @need_refresh = true
    return @events[new_id]
  end
  def delete_event(id,forever)
    @events[id].erase
    @map.events.delete(id) if forever
    @need_refresh  = true
  end
  def map
    return @map
  end
end

class Scene_Map
  attr_accessor   :spriteset
end

class Spriteset_Map
  def refresh_character(char)
    sprite = Sprite_Character.new(@viewport1, char)
    @character_sprites.push(sprite)
  end
end

[box class=catbg]
Instruções[/box]
No script

[box class=catbg]
Créditos[/box]
+Hideo

Curti :B

Este script me da algumas ideias do que fazer, só largar a preguiça uma hora kkkkkk.
Obrigado por disponibilizar.