Bem-vindo, visitante!
 Login:  Senha:
Para refletir: "Das piores histórias saem as grandes ideias." - Deen

Autor Tópico: Event Spawn 2.0  (Lido 992 vezes)

0 Membros e 1 Visitante estão vendo este tópico.

Hideo

  • Membro
  • *
  • Mensagens: 105
  • Reputação: 20
  • Offline
Event Spawn 2.0
« em: 04 de Dezembro de 2009, 11:41:06 »
Pontuação: 0

Event Spawn

Versão 2.0
by: Hideo
Introdução:
Esse script serve simplesmente para criar um evento de um mapa no outro, como no sistema de ferramentas do XAS abs. Essa versão está com a maioria dos bugs corrigidas, agora switches locais e mais de uma página funcionam, qualquer bug poste aqui!


Screens:
desnecessário ¬¬


Script:
Código: [Selecionar]
#==============================================================================#
#= = = = = = = = = = = = = = = = Event Spawner = = = = = = = = = = = = = = = = #
#----------------#=============================================================#
# por : Hideo    #
# 04/12/09       #
# v : 2.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
#==============================================================================#

class Game_Interpreter
  def criar_evento(mapa,evento,x=0,y=0)
    map_data = load_data(sprintf("Data/Map%03d.rvdata", mapa))
    event_data = Game_Event.new(map_data.id,map_data.events[evento],$game_map.events.length+1)
    $game_map.events[$game_map.events.length+1] = event_data
    $game_map.events[$game_map.events.length].moveto(x,y)
    $game_map.refresh
    $scene.spriteset = Spriteset_Map.new
  end
end

class Scene_Map
  attr_accessor   :spriteset
end

class Game_Event < Game_Character
  def initialize(map_id, event,id=0)
    super()
    if $game_map.map_id != map_id
      @map_id = $game_map.map_id
    else
      @map_id = map_id
    end
    @event = event
    if id != 0
      @id = id
    else
      @id = @event.id
    end
    @erased = false
    @starting = false
    @through = true
    moveto(@event.x, @event.y)           
    refresh
  end

  def conditions_met?(page)
    c = page.condition
    if c.switch1_valid     
      return false if $game_switches[c.switch1_id] == false
    end
    if c.switch2_valid     
      return false if $game_switches[c.switch2_id] == false
    end
    if c.variable_valid     
      return false if $game_variables[c.variable_id] < c.variable_value
    end
    if c.self_switch_valid 
      key = [@map_id, @id, c.self_switch_ch]
      return false if $game_self_switches[key] != true
    end
    if c.item_valid         
      item = $data_items[c.item_id]
      return false if $game_party.item_number(item) == 0
    end
    if c.actor_valid       
      actor = $game_actors[c.actor_id]
      return false unless $game_party.members.include?(actor)
    end
    return true   
  end
  def update
    super
    check_event_trigger_auto                 
    if @interpreter != nil                     
      unless @interpreter.running?             
        @interpreter.setup(@list, @id)   
      end
      @interpreter.update                     
    end
  end
end



Instruções:
  O funcionamento desse script é bem simples, para criar o evento, apenas use no comando 'chamar script' o seguinte código:
Código: [Selecionar]
criar_evento(mapa,id,x,y)sendo:
Mapa : id do mapa do evento
ID     : id do evento
x,y    : coordenadas X e Y do evento


Demo:
Download


Créditos:
  • Script - Hideo(Darklich)

« Última modificação: 04 de Dezembro de 2009, 11:41:47 por Hideo »

Ivens axel

  • Membro
  • *
  • Mensagens: 73
  • Reputação: 4
  • Offline
Re: Event Spawn 2.0
« Resposta #1 em: 27 de Fevereiro de 2010, 09:15:11 »
Pontuação: 0
Tenho uma dúvida: como faz pra saber o ID do mapa?
"Em fase de aprendizado!!!"

Sistema de loja como habilidade:  http://forums.mundorpgmaker.com.br/tutoriais-e-sistemas-por-eventos-em-rmvx/loja-como-habilidade-para-vx/

Novo projeto: Conexão Terra

Hideo

  • Membro
  • *
  • Mensagens: 105
  • Reputação: 20
  • Offline
Re: Event Spawn 2.0
« Resposta #2 em: 05 de Março de 2010, 17:57:05 »
Pontuação: 0
entre nas opções do mapa e vai estar escrito: Opções de mapa - ID:xxx

 

Tópicos Relacionados

  Assunto / Iniciado por Respostas Última mensagem
4 Respostas
586 Visualizações
Última mensagem 07 de Agosto de 2009, 14:27:56
por Peazinn.Hokage-Sama
0 Respostas
1831 Visualizações
Última mensagem 06 de Novembro de 2009, 17:45:57
por Kdell
6 Respostas
360 Visualizações
Última mensagem 01 de Fevereiro de 2011, 14:24:27
por shadowman
12 Respostas
441 Visualizações
Última mensagem 31 de Agosto de 2011, 23:00:00
por caio2011