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

Kinsoyo RGSS3 Factory - Basic Scripts (Interrompida)

Iniciado por miguel8884, 30/08/2014 às 17:32


O seu novo script "GST Distribute Points System" não funciona com o script "Kinsoyo RGSS3 Factory - Scene_Menu edit" da um bug quando se abre o menu, mesmo com a opção de aparecer no menu como false. Pode dar um jeito de fazer funcionar ? : )
                               

10/09/2014 às 21:50 #47 Última edição: 10/09/2014 às 21:56 por miguel8884
Okay... Vou ver aqui o que pode ter acontecido!  :ok:

Edit:

Já descobri o que está acontecendo, é que o script que eu te fiz, ele muda a cena que eu mudo nesse outro script, de qualquer forma, arrumei aqui, compatível com o outro script!

#===============================================================================
# Kinsoyo RGSS3 Factory - Scene_Menu edit
# By: Miguel8884
#
# Não foi 100% por alguns erros que encontrei no caminho, mas tentei me
# aproximar ao máximo ao pedido!
#===============================================================================
class Scene_ItemBase < Scene_MenuBase
  #--------------------------------------------------------------------------
  # * Exibição da sub-janela
  #     window : sub-janela
  #--------------------------------------------------------------------------
  def show_sub_window(window)
    width_remain = Graphics.width - window.width
    window.x = 0
    window.y = 0
    window.show.activate
  end
  #--------------------------------------------------------------------------
  # * Ocultação da sub-janela
  #     window : sub-janela
  #--------------------------------------------------------------------------
  def hide_sub_window(window)
    window.hide.deactivate
    activate_item_window
  end
end

class Window_MenuStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #     y      : coordenada Y
  #--------------------------------------------------------------------------
  def initialize(x,y)
    super(x, window_y, window_width, window_height)
    @pending_index = -1
    refresh
  end
  #--------------------------------------------------------------------------
  # * Aquisição da altura da janela
  #--------------------------------------------------------------------------
  def window_height
    98 + 24
  end
  #--------------------------------------------------------------------------
  # * Aquisição da coordenada Y
  #--------------------------------------------------------------------------
  def window_y
    Graphics.height-(98+24)
  end
  #--------------------------------------------------------------------------
  # * Aquisição de altura do item
  #--------------------------------------------------------------------------
  def item_height
    98
  end
end

class Window_MenuCommand < Window_Command
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #--------------------------------------------------------------------------
  def initialize(x)
    super(x, window_y)
    select_last
  end
  #--------------------------------------------------------------------------
  # * Aquisição da coordenada Y
  #--------------------------------------------------------------------------
  def window_y
    if Distribute_Config::Put_On_Menu
      Graphics.height-(98+24)-fitting_height(8)
    else
      Graphics.height-(98+24)-fitting_height(7)
    end
  end
end

class Scene_Menu < Scene_MenuBase
  #--------------------------------------------------------------------------
  # * Inicialização do processo
  #--------------------------------------------------------------------------
  def start
    super
    create_command_window
    create_status_window
    create_gold_window
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de atributos
  #--------------------------------------------------------------------------
  def create_status_window
    @status_window = Window_MenuStatus.new(0,0)
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de comando
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_MenuCommand.new(0)
    @command_window.set_handler(:item,      method(:command_item))
    @command_window.set_handler(:skill,     method(:command_personal))
    @command_window.set_handler(:equip,     method(:command_personal))
    if Distribute_Config::Put_On_Menu
      @command_window.set_handler(:dist,    method(:command_personal))
    end
    @command_window.set_handler(:status,    method(:command_personal))
    @command_window.set_handler(:formation, method(:command_formation))
    @command_window.set_handler(:save,      method(:command_save))
    @command_window.set_handler(:game_end,  method(:command_game_end))
    @command_window.set_handler(:cancel,    method(:return_scene))
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de dinheiro
  #--------------------------------------------------------------------------
  def create_gold_window
    @gold_window = Window_Gold.new
    @gold_window.x = 160
    @gold_window.y = Graphics.height - @gold_window.height - @status_window.height
  end
end

class Scene_Item < Scene_ItemBase
  #--------------------------------------------------------------------------
  # * Criação da janela de categorias
  #--------------------------------------------------------------------------
  def create_category_window
    @category_window = Window_ItemCategoryEdit.new
    @category_window.viewport = @viewport
    @category_window.help_window = @help_window
    @category_window.y = Graphics.height - @help_window.height - @category_window.height
    @category_window.set_handler(:ok,     method(:on_category_ok))
    @category_window.set_handler(:cancel, method(:return_scene))
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de ajuda.
  #--------------------------------------------------------------------------
  def create_help_window
    @help_window = Window_HelpItem.new
    @help_window.viewport = @viewport
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de itens
  #--------------------------------------------------------------------------
  def create_item_window
    @item_window = Window_ItemList.new(160, 0, Graphics.width-160, Graphics.height-96*2)
    @item_window.y = Graphics.height - @help_window.height - @item_window.height
    @item_window.viewport = @viewport
    @item_window.help_window = @help_window
    @item_window.set_handler(:ok,     method(:on_item_ok))
    @item_window.set_handler(:cancel, method(:on_item_cancel))
    @category_window.item_window = @item_window
  end
end

class Window_ItemCategoryEdit < Window_Command
  #--------------------------------------------------------------------------
  # * Variáveis públicas
  #--------------------------------------------------------------------------
  attr_reader   :item_window
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0)
  end
  #--------------------------------------------------------------------------
  # * Aquisição da largura da janela
  #--------------------------------------------------------------------------
  def window_width
    return 160
  end
  #--------------------------------------------------------------------------
  # * Aquisição do número de colunas
  #--------------------------------------------------------------------------
  def visible_line_number
    return 4
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela
  #--------------------------------------------------------------------------
  def update
    super
    @item_window.category = current_symbol if @item_window
  end
  #--------------------------------------------------------------------------
  # * Criação da lista de comandos
  #--------------------------------------------------------------------------
  def make_command_list
    add_command(Vocab::item,     :item)
    add_command(Vocab::weapon,   :weapon)
    add_command(Vocab::armor,    :armor)
    add_command(Vocab::key_item, :key_item)
  end
  #--------------------------------------------------------------------------
  # * Definição da janela de itens
  #     item_window : janela de itens
  #--------------------------------------------------------------------------
  def item_window=(item_window)
    @item_window = item_window
    update
  end
end

class Window_HelpItem < Window_Base
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     line_number : número de linhas
  #--------------------------------------------------------------------------
  def initialize(line_number = 2)
    super(0, window_y, Graphics.width, fitting_height(line_number))
  end
  #--------------------------------------------------------------------------
  # * Configuração de texto
  #     text : texto
  #--------------------------------------------------------------------------
  def set_text(text)
    if text != @text
      @text = text
      refresh
    end
  end
  def window_y
    return Graphics.height-fitting_height(2)
  end
  #--------------------------------------------------------------------------
  # * Limpeza
  #--------------------------------------------------------------------------
  def clear
    set_text("")
  end
  #--------------------------------------------------------------------------
  # * Definição de item
  #     item : habilidades, itens, etc.
  #--------------------------------------------------------------------------
  def set_item(item)
    set_text(item ? item.description : "")
  end
  #--------------------------------------------------------------------------
  # * Renovação
  #--------------------------------------------------------------------------
  def refresh
    contents.clear
    draw_text_ex(4, 0, @text)
  end
end

class Window_ItemList < Window_Selectable
  #--------------------------------------------------------------------------
  # * Aquisição do número de colunas
  #--------------------------------------------------------------------------
  def col_max
    return 1
  end
end

class Window_SkillList < Window_Selectable
  #--------------------------------------------------------------------------
  # * Aquisição do número de colunas
  #--------------------------------------------------------------------------
  def col_max
    return 1
  end
end

class Scene_Skill < Scene_ItemBase
  #--------------------------------------------------------------------------
  # * Inicialização do processo
  #--------------------------------------------------------------------------
  def start
    super
    create_help_window
    create_status_window
    create_command_window
    create_item_window
    @help_window.y = Graphics.height - @status_window.height - @item_window.height - @help_window.height
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de atributos
  #--------------------------------------------------------------------------
  def create_status_window
    @status_window = Window_SkillStatus.new(0, Graphics.height-(98+22))
    @status_window.viewport = @viewport
    @status_window.actor = @actor
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de itens
  #--------------------------------------------------------------------------
  def create_item_window
    wx = 160
    ww = Graphics.width - 160
    @item_window = Window_SkillList.new(wx, 0, ww, 4*24+24)
    @item_window.y = Graphics.height - @status_window.height - @item_window.height
    @item_window.actor = @actor
    @item_window.viewport = @viewport
    @item_window.help_window = @help_window
    @item_window.set_handler(:ok,     method(:on_item_ok))
    @item_window.set_handler(:cancel, method(:on_item_cancel))
    @command_window.skill_window = @item_window
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de comando
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_SkillCommand.new(0, 0)
    @command_window.y = Graphics.height - @status_window.height - (4*24+24)
    @command_window.viewport = @viewport
    @command_window.help_window = @help_window
    @command_window.actor = @actor
    @command_window.set_handler(:skill,    method(:command_skill))
    @command_window.set_handler(:cancel,   method(:return_scene))
    @command_window.set_handler(:pagedown, method(:next_actor))
    @command_window.set_handler(:pageup,   method(:prev_actor))
  end
end

class Scene_Equip < Scene_MenuBase
  #--------------------------------------------------------------------------
  # * Criação da janela de atributos
  #--------------------------------------------------------------------------
  def create_status_window
    @status_window = Window_EquipStatus.new(0, 0)
    @status_window.x = Graphics.width-@status_window.width
    @status_window.y = Graphics.height-@status_window.height
    @status_window.viewport = @viewport
    @status_window.actor = @actor
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de slots
  #--------------------------------------------------------------------------
  def create_slot_window
    wy = @command_window.y + @command_window.height
    ww = Graphics.width - @status_window.width
    @slot_window = Window_EquipSlot.new(0, wy, ww)
    @slot_window.viewport = @viewport
    @slot_window.help_window = @help_window
    @slot_window.status_window = @status_window
    @slot_window.actor = @actor
    @slot_window.set_handler(:ok,       method(:on_slot_ok))
    @slot_window.set_handler(:cancel,   method(:on_slot_cancel))
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de comando
  #--------------------------------------------------------------------------
  def create_command_window
    wy = @help_window.height
    @command_window = Window_EquipCommandItem.new(0, wy)
    @command_window.viewport = @viewport
    @command_window.help_window = @help_window
    @command_window.set_handler(:equip,    method(:command_equip))
    @command_window.set_handler(:optimize, method(:command_optimize))
    @command_window.set_handler(:clear,    method(:command_clear))
    @command_window.set_handler(:cancel,   method(:return_scene))
    @command_window.set_handler(:pagedown, method(:next_actor))
    @command_window.set_handler(:pageup,   method(:prev_actor))
  end
  #--------------------------------------------------------------------------
  # * Criação da janela de item
  #--------------------------------------------------------------------------
  def create_item_window
    wx = 0
    wy = @slot_window.y + @slot_window.height
    ww = Graphics.width-@status_window.width
    wh = Graphics.height - wy
    @item_window = Window_EquipItem.new(wx, wy, ww, wh)
    @item_window.viewport = @viewport
    @item_window.help_window = @help_window
    @item_window.status_window = @status_window
    @item_window.actor = @actor
    @item_window.set_handler(:ok,     method(:on_item_ok))
    @item_window.set_handler(:cancel, method(:on_item_cancel))
    @slot_window.item_window = @item_window
  end
end

class Window_EquipCommandItem < Window_Command
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #     y      : coordenada Y
  #     width  : largura
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y)
  end
  #--------------------------------------------------------------------------
  # * Aquisição da largura da janela
  #--------------------------------------------------------------------------
  def window_width
    return 160
  end
  #--------------------------------------------------------------------------
  # * Criação da lista de comandos
  #--------------------------------------------------------------------------
  def make_command_list
    add_command(Vocab::equip2,   :equip)
    add_command(Vocab::optimize, :optimize)
    add_command(Vocab::clear,    :clear)
  end
end
# Fim do script #

Não funcionou
o erro ocorre Linha 953 do GST Distribute Points System


Opa, deu errado no seu e não no meu por que meu script de distribuir pontos ta antes do de menu, mas é só substituir o de distribuir por esse aqui, era só definir uma coisa, se der mais erros, me avise!

#===============================================================================
# ** GST Distribute Points System
# Autor: miguel8884
#-------------------------------------------------------------------------------
# Data de lançamento: 10/09/2014
# Versão: 1.0
#-------------------------------------------------------------------------------
# Dependências:
# * Nenhuma
#-------------------------------------------------------------------------------
# Descrição:
#
# O script permite que você tenha uma cena de distribuição de pontos para todos
# os heróis, onde eles poderam aumentar seus atributos com os pontos.
#-------------------------------------------------------------------------------
# Características:
# * Possibilidade de adição no menu!
# * Sem lag!
# * Todos os heróis podem distribuir pontos!
# * Alta configuração!
# * Fácil adição de pontos!
#-------------------------------------------------------------------------------
# Log:
# v1.0
#   10/09/2014 - Script lançado!
#-------------------------------------------------------------------------------
# - Chamando a cena por eventos, adicionando e retirando pontos -
# Para chamar a cena por eventos, apenas use no chamar script:
# call_distribute(id)
# No lugar de id coloque o id do herói na equipe, começando do 0 até 3
#
# Para adcionar pontos, apenas use no chamar script:
# add_points(amount,actor)
# No lugar de amount coloque a quantidade que quer aumentar
# No lugar de actor coloque o id do herói na equipe, do 0 até 3
#
# Para retirar, use o mesmo comando, mas no amount coloque o número negativo
# de acordo com o tanto que quer tirar
#===============================================================================
module Distribute_Config
  #--------------------------------------------------------------------------
  # * Criação de variáveis - Não mexa
  #--------------------------------------------------------------------------
  Param_Conf = Hash.new
  Actor = Array.new
  #--------------------------------------------------------------------------
  # * Configuração - Cor
  #--------------------------------------------------------------------------
  # Cor verde no texto #
  Green_Color = Color.new(120,230,120)
  #--------------------------------------------------------------------------
  # * Configuração Geral
  #--------------------------------------------------------------------------
  # Colocar opção no menu #
  Put_On_Menu = true
  # Recuperar jogador após aumentar hp ou mp máximo? #
  Heal_Player = true
  # Nome do SE após o comando não ter condições de ser executado #
  Wrong_Select = "buzzer1"
  # Pontos que cada herói começa #
  Initial_Points = 36
  #--------------------------------------------------------------------------
  # * Vocabulário
  #--------------------------------------------------------------------------
  # Vocabulário para preço #
  Price_Vocab = "Preço: "
  # Vocabulário do topo #
  Top_Vocab = "Distribuir Pontos"
  # Vocabulário para pontos
  Points_Vocab = "Pontos: "
  # Vocabulário no menu
  Menu_Vocab = "Distribuir"
  #--------------------------------------------------------------------------
  # * Configurações - Habilidades (por herói)
  #--------------------------------------------------------------------------
  #--------------------------------------------------------------------------
  # * Instruções 
  # \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  # Você edita aqui as configurações de preço nome e outros para cada habilidade
  # do herói em questão seguindo pelo id de cada uma delas!
  #
  # A primeira coisa que temos é Actor[id] = [
  # Aqui nós colocamos no lugar de id o número do jogador na equipe, começando
  # do 0 e terminando no 3 normalmente. No script você já terá todos os Actor
  # configurados em sequência, é só editar um por um!
  #
  # Param_Conf[id] = { é a próxima configuração
  # Aqui teremos de colocar no lugar de id o id do parâmetro que vamos utilizar,
  # existem 8 parâmetros sendo que a contagem começa do 0, assim teremos até
  # o parâmetro 7, seguindo essa sequência:
  # 0 = HP Máximo
  # 1 = MP Máximo
  # 2 = Ataque
  # 3 = Defesa
  # 4 = Ataque Mágico
  # 5 = Defesa Mágica
  # 6 = Agilidade
  # 7 = Sorte
  #
  # Dentro do Param_Config teremos as configurações do parâmetro atual, no caso
  # seu id correspondente a tabela acima.
  # vocab: "vocabulário para o parâmetro",
  # icon: id do ícone do parâmetro,
  # point_value: valor adicionado no parâmetro a cada ponto gasto,
  # point_price: pontos gastos em cada confirmação,
  # inc_exp: adicionar experiência no herói em questão ao aumentar algum
  # parâmetro, caso não queira coloque 0,
  # change_price_level: nível em que o herói em questão deve estar para os
  # pontos ficarem mais caros ou darem mais a cada gasto,
  # change_price_points: pontos adcionados que seram gastos após o nível ser
  # ultrapassado, ou seja, quanto ficará mais caro,
  # change_price_value: após ser efetuada a ultrapassagem de nível quanto
  #  herói receberá a mais em cada compra,
  # des: descrição do parâmetro,
  #
  # OBS: Nunca esqueça de colocar a vírgula ao final de todas as configurações
  #
  # Exemplo:
  #
  # Param_Conf[0] = {
  # vocab: "HP Máximo",
  # icon: 1,
  # point_value: 36,
  # point_price: 1,
  # inc_exp: 50,
  # change_price_level: 3,
  # change_price_points: 2,
  # change_price_value: 100,
  # des: "Dizem que um guerreiro com grande vida tem mais 
# chances de sobreviver"
  # },
  #--------------------------------------------------------------------------
  Actor[0] = [
  Param_Conf[0] = {
  vocab: "HP Máximo",
  icon: 1,
  point_value: 36,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 100,
  des: "Dizem que um guerreiro com grande vida tem mais 
chances de sobreviver"
  },
  Param_Conf[1] = {
  vocab: "MP Máximo",
  icon: 2,
  point_value: 4,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Um guerreiro sem mana, não tem como chegar as mais
altas magias de um grande mago"
  },
  Param_Conf[2] = {
  vocab: "Ataque",
  icon: 3,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Quanto mais forte, mais se sobresaíra"
  },
  Param_Conf[3] = {
  vocab: "Defesa",
  icon: 4,
  point_value: 3,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "O ataque é importante, mas alguém com defesa não 
apanha tão fácil"
  },
  Param_Conf[4] = {
  vocab: "Ataque Mágico",
  icon: 5,
  point_value: 1,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "A força e a magia são as melhores aliadas"
  },
  Param_Conf[5] = {
  vocab: "Defesa Mágica",
  icon: 6,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Usar a magia para se proteger, apenas sabios fazem 
isso"
  },
  Param_Conf[6] = {
  vocab: "Agilidade",
  icon: 7,
  point_value: 4,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Como atacam algo que não conseguem ver?"
  },
  Param_Conf[7] = {
  vocab: "Sorte",
  icon: 8,
  point_value: 7,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Se a sorte está do seu lado, tudo será mais fácil"
  },
  ]
  #--------------------------------------------------------------------------
  # * Herói 2
  #--------------------------------------------------------------------------
  Actor[1] = [
  Param_Conf[0] = {
  vocab: "HP Máximo",
  icon: 1,
  point_value: 36,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 100,
  des: "Dizem que um guerreiro com grande vida tem mais 
chances de sobreviver"
  },
  Param_Conf[1] = {
  vocab: "MP Máximo",
  icon: 2,
  point_value: 4,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Um guerreiro sem mana, não tem como chegar as mais
altas magias de um grande mago"
  },
  Param_Conf[2] = {
  vocab: "Ataque",
  icon: 3,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Quanto mais forte, mais se sobresaíra"
  },
  Param_Conf[3] = {
  vocab: "Defesa",
  icon: 4,
  point_value: 3,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "O ataque é importante, mas alguém com defesa não 
apanha tão fácil"
  },
  Param_Conf[4] = {
  vocab: "Ataque Mágico",
  icon: 5,
  point_value: 1,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "A força e a magia são as melhores aliadas"
  },
  Param_Conf[5] = {
  vocab: "Defesa Mágica",
  icon: 6,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Usar a magia para se proteger, apenas sabios fazem 
isso"
  },
  Param_Conf[6] = {
  vocab: "Agilidade",
  icon: 7,
  point_value: 4,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Como atacam algo que não conseguem ver?"
  },
  Param_Conf[7] = {
  vocab: "Sorte",
  icon: 8,
  point_value: 7,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Se a sorte está do seu lado, tudo será mais fácil"
  },
  ]
  #--------------------------------------------------------------------------
  # * Herói 3
  #--------------------------------------------------------------------------
  Actor[2] = [
  Param_Conf[0] = {
  vocab: "HP Máximo",
  icon: 1,
  point_value: 36,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Dizem que um guerreiro com grande vida tem mais 
chances de sobreviver"
  },
  Param_Conf[1] = {
  vocab: "MP Máximo",
  icon: 2,
  point_value: 4,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Um guerreiro sem mana, não tem como chegar as mais
altas magias de um grande mago"
  },
  Param_Conf[2] = {
  vocab: "Ataque",
  icon: 3,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Quanto mais forte, mais se sobresaíra"
  },
  Param_Conf[3] = {
  vocab: "Defesa",
  icon: 4,
  point_value: 3,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "O ataque é importante, mas alguém com defesa não 
apanha tão fácil"
  },
  Param_Conf[4] = {
  vocab: "Ataque Mágico",
  icon: 5,
  point_value: 1,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "A força e a magia são as melhores aliadas"
  },
  Param_Conf[5] = {
  vocab: "Defesa Mágica",
  icon: 6,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Usar a magia para se proteger, apenas sabios fazem 
isso"
  },
  Param_Conf[6] = {
  vocab: "Agilidade",
  icon: 7,
  point_value: 4,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Como atacam algo que não conseguem ver?"
  },
  Param_Conf[7] = {
  vocab: "Sorte",
  icon: 8,
  point_value: 7,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Se a sorte está do seu lado, tudo será mais fácil"
  },
  ]
  #--------------------------------------------------------------------------
  # * Herói 4
  #--------------------------------------------------------------------------
  Actor[3] = [
  Param_Conf[0] = {
  vocab: "HP Máximo",
  icon: 1,
  point_value: 36,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Dizem que um guerreiro com grande vida tem mais 
chances de sobreviver"
  },
  Param_Conf[1] = {
  vocab: "MP Máximo",
  icon: 2,
  point_value: 4,
  point_price: 1,
  inc_exp: 50,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Um guerreiro sem mana, não tem como chegar as mais
altas magias de um grande mago"
  },
  Param_Conf[2] = {
  vocab: "Ataque",
  icon: 3,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Quanto mais forte, mais se sobresaíra"
  },
  Param_Conf[3] = {
  vocab: "Defesa",
  icon: 4,
  point_value: 3,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "O ataque é importante, mas alguém com defesa não 
apanha tão fácil"
  },
  Param_Conf[4] = {
  vocab: "Ataque Mágico",
  icon: 5,
  point_value: 1,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "A força e a magia são as melhores aliadas"
  },
  Param_Conf[5] = {
  vocab: "Defesa Mágica",
  icon: 6,
  point_value: 2,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Usar a magia para se proteger, apenas sabios fazem 
isso"
  },
  Param_Conf[6] = {
  vocab: "Agilidade",
  icon: 7,
  point_value: 4,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Como atacam algo que não conseguem ver?"
  },
  Param_Conf[7] = {
  vocab: "Sorte",
  icon: 8,
  point_value: 7,
  point_price: 1,
  inc_exp: 0,
  change_price_level: 3,
  change_price_points: 2,
  change_price_value: 7,
  des: "Se a sorte está do seu lado, tudo será mais fácil"
  },
  ]
  #--------------------------------------------------------------------------
  # * Fim das configurações
  #--------------------------------------------------------------------------
end

class Game_Interpreter
  #--------------------------------------------------------------------------
  # * Chamar janela de distribuição
  #    actor   : personagem da janela
  #--------------------------------------------------------------------------
  def call_distribute(actor)
    $gst_actor = actor
    SceneManager.call(Scene_Distribute)
  end
  #--------------------------------------------------------------------------
  # * Aumentar pontos
  #    actor   : personagem
  #    amount  : quantidade
  #--------------------------------------------------------------------------
  def add_points(amount,actor)
    $game_party.members[actor].points += amount
  end
end

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Variável pública
  #--------------------------------------------------------------------------
  attr_accessor :points
  #--------------------------------------------------------------------------
  # * Alias
  #--------------------------------------------------------------------------
  alias gst_actor_dist_ini initialize
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     actor_id : ID do herói
  #--------------------------------------------------------------------------
  def initialize(actor_id)
    gst_actor_dist_ini(actor_id)
    @points = Distribute_Config::Initial_Points
  end
end

class Window_DistDescription < Window_Base
  #--------------------------------------------------------------------------
  # * Variável pública
  #--------------------------------------------------------------------------
  attr_accessor :id
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #     y      : coordenada Y
  #     width  : largura da janela
  #     height : altura da janela
  #--------------------------------------------------------------------------
  def initialize(x,y,width,height)
    super(x,y,width,height)
    @id = 0
    set_text
  end
  #--------------------------------------------------------------------------
  # * Fazer texto
  #--------------------------------------------------------------------------
  def set_text
    self.contents.clear
    draw_text_ex(0,0,Distribute_Config::Param_Conf[@id][:des])
  end
end

class Window_DistParams < Window_Selectable
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #     y      : coordenada Y
  #     width  : largura da janela
  #--------------------------------------------------------------------------
  def initialize(x,y,height)
    super(x,y,window_width,height)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Aquisição da largura da janela
  #--------------------------------------------------------------------------
  def window_width
    Graphics.width
  end
  #--------------------------------------------------------------------------
  # * Aquisição do número máximo de itens
  #--------------------------------------------------------------------------
  def item_max
    return 8
  end
  #--------------------------------------------------------------------------
  # * Aquisição de altura do item
  #--------------------------------------------------------------------------
  def item_height
    return 24
  end
  #--------------------------------------------------------------------------
  # * Desenho de um item
  #     index : índice do item
  #--------------------------------------------------------------------------
  def draw_item(index)
    case index
    when 0
      paramw = Distribute_Config::Actor[$gst_actor][0]
      param_id = 0
    when 1
      paramw = Distribute_Config::Actor[$gst_actor][1]
      param_id = 1
    when 2
      paramw = Distribute_Config::Actor[$gst_actor][2]
      param_id = 2
    when 3
      paramw = Distribute_Config::Actor[$gst_actor][3]
      param_id = 3
    when 4
      paramw = Distribute_Config::Actor[$gst_actor][4]
      param_id = 4
    when 5
      paramw = Distribute_Config::Actor[$gst_actor][5]
      param_id = 5
    when 6
      paramw = Distribute_Config::Actor[$gst_actor][6]
      param_id = 6
    when 7
      paramw = Distribute_Config::Actor[$gst_actor][7]
      param_id = 7
    end
    if $game_party.members[$gst_actor].level >= paramw[:change_price_level]
      draw_icon(paramw[:icon],5,index*24)
      draw_text(29,index*24,Graphics.width-200,24,paramw[:vocab])
      draw_text(200,index*24,140,24,$game_party.members[$gst_actor].param(param_id))
      draw_text(390,index*24,140,24,"#{Distribute_Config::Price_Vocab}#{paramw[:point_price] + paramw[:change_price_points]}")
      change_color(Distribute_Config::Green_Color)
      draw_text(300,index*24,140,24,$game_party.members[$gst_actor].param(param_id) + paramw[:point_value] + paramw[:change_price_value])
      draw_right_arrow(250,index*24)
      change_color(normal_color)
    else
      draw_icon(paramw[:icon],5,index*24)
      draw_text(29,index*24,Graphics.width-200,24,paramw[:vocab])
      draw_text(200,index*24,140,24,$game_party.members[$gst_actor].param(param_id))
      draw_text(390,index*24,140,24,"#{Distribute_Config::Price_Vocab}#{paramw[:point_price]}")
      change_color(Distribute_Config::Green_Color)
      draw_text(300,index*24,140,24,$game_party.members[$gst_actor].param(param_id) + paramw[:point_value])
      draw_right_arrow(250,index*24)
      change_color(normal_color)
    end
  end
  #--------------------------------------------------------------------------
  # * Desenho de flecha
  #     x    : coordenada X
  #     y    : coordenada Y
  #--------------------------------------------------------------------------
  def draw_right_arrow(x, y)
    change_color(system_color)
    draw_text(x, y, 22, line_height, "→", 1)
  end
  #--------------------------------------------------------------------------
  # * Retorno à seleção anterior
  #--------------------------------------------------------------------------
  def select_last
    select(index)
  end
end

class Window_DistStatus < Window_Base
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #--------------------------------------------------------------------------
  def initialize
    super(0,fitting_height(1),Graphics.width-200,fitting_height(1))
    @actor = $game_party.members[$gst_actor]
    refresh
  end
  #--------------------------------------------------------------------------
  # * Renovar conteúdo
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_actor_hp(@actor,0,0)
    draw_actor_mp(@actor,150,0)
  end
end

class Window_DistTop < Window_Base
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #--------------------------------------------------------------------------
  def initialize
    super(0,0,Graphics.width,fitting_height(1))
    refresh
  end
  #--------------------------------------------------------------------------
  # * Renovar conteúdo
  #--------------------------------------------------------------------------
  def refresh
    draw_text(-10,0,Graphics.width,24,Distribute_Config::Top_Vocab,1)
  end
end

class Window_DistPoints < Window_Base
  #--------------------------------------------------------------------------
  # * Variável pública
  #--------------------------------------------------------------------------
  attr_accessor :actor
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     x      : coordenada X
  #     y      : coordenada Y
  #     width  : largura da janela
  #     height : altura da janela
  #--------------------------------------------------------------------------
  def initialize(x,y,width,height)
    super(x,y,width,height)
    @actor = $game_party.members[$gst_actor]
    refresh
  end
  #--------------------------------------------------------------------------
  # * Renovar conteúdo
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_text(0,0,self.width,24,"#{Distribute_Config::Points_Vocab}#{@actor.points}")
  end
end

class Scene_Distribute < Scene_Base
  #--------------------------------------------------------------------------
  # * Inicialização do processo
  #--------------------------------------------------------------------------
  def start
    super
    @switch = false
    create_background
    create_status_window
    create_points_window
    create_top_window
    create_param_list
    create_description_window
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela
  #--------------------------------------------------------------------------
  def update
    super
    @des_window.id = @param_window.index
    @des_window.set_text
  end
  #--------------------------------------------------------------------------
  # * Finalização do processo
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_background
    dispose_all_windows
  end
  #--------------------------------------------------------------------------
  # * Criar janela de dados do herói
  #--------------------------------------------------------------------------
  def create_status_window
    @status_window = Window_DistStatus.new
  end
  #--------------------------------------------------------------------------
  # * Criar janela superior
  #--------------------------------------------------------------------------
  def create_top_window
    @top_window = Window_DistTop.new
  end
  #--------------------------------------------------------------------------
  # * Criar janela de pontos
  #--------------------------------------------------------------------------
  def create_points_window
    wx = @status_window.width
    wy = @status_window.y
    wh = @status_window.height
    ww = Graphics.width - @status_window.width
    @points_window = Window_DistPoints.new(wx,wy,ww,wh)
  end
  #--------------------------------------------------------------------------
  # * Criar janela da lista de paramêtros do herói
  #--------------------------------------------------------------------------
  def create_param_list
    wx = 0
    wy = @points_window.y + @points_window.height
    wh = Graphics.height - @points_window.height - @top_window.height - 96
    @param_window = Window_DistParams.new(wx,wy,wh)
    @param_window.set_handler(:ok,method(:on_increase_ok))
    @param_window.set_handler(:cancel,method(:on_cancel))
    @param_window.activate
    @param_window.select(0)
  end
  #--------------------------------------------------------------------------
  # * Criar janela de descrição
  #--------------------------------------------------------------------------
  def create_description_window
    wx = 0
    wy = @param_window.height + 96
    ww = Graphics.width
    wh = Graphics.height - @param_window.height - 96
    @des_window = Window_DistDescription.new(wx,wy,ww,wh)
  end
  #--------------------------------------------------------------------------
  # * Ao confirmar na lista
  #--------------------------------------------------------------------------
  def on_increase_ok
    case @param_window.index
    when 0
      paramw = Distribute_Config::Actor[$gst_actor][0]
      param_id = 0
    when 1
      paramw = Distribute_Config::Actor[$gst_actor][1]
      param_id = 1
    when 2
      paramw = Distribute_Config::Actor[$gst_actor][2]
      param_id = 2
    when 3
      paramw = Distribute_Config::Actor[$gst_actor][3]
      param_id = 3
    when 4
      paramw = Distribute_Config::Actor[$gst_actor][4]
      param_id = 4
    when 5
      paramw = Distribute_Config::Actor[$gst_actor][5]
      param_id = 5
    when 6
      paramw = Distribute_Config::Actor[$gst_actor][6]
      param_id = 6
    when 7
      paramw = Distribute_Config::Actor[$gst_actor][7]
      param_id = 7
    end
    if $game_party.members[$gst_actor].level >= paramw[:change_price_level]
      @param_window.refresh
      if $game_party.members[$gst_actor].points >= paramw[:point_price] + paramw[:change_price_points]
        $game_party.members[$gst_actor].points -= paramw[:point_price] + paramw[:change_price_points]
        $game_party.members[$gst_actor].add_param(param_id,paramw[:point_value] + paramw[:change_price_value])
        $game_party.members[$gst_actor].gain_exp(paramw[:inc_exp])
        if Distribute_Config::Heal_Player
          $game_party.members[$gst_actor].hp = $game_party.members[$gst_actor].mhp
          $game_party.members[$gst_actor].mp = $game_party.members[$gst_actor].mmp
        end
        @param_window.activate
        @param_window.select_last
      else
        RPG::SE.new(Distribute_Config::Wrong_Select,80).play
        @param_window.activate
        @param_window.select_last
      end
    else
      if $game_party.members[$gst_actor].points >= paramw[:point_price]
        $game_party.members[$gst_actor].points -= paramw[:point_price]
        $game_party.members[$gst_actor].add_param(param_id,paramw[:point_value])
        $game_party.members[$gst_actor].gain_exp(paramw[:inc_exp])
        if Distribute_Config::Heal_Player
          $game_party.members[$gst_actor].hp = $game_party.members[$gst_actor].mhp
          $game_party.members[$gst_actor].mp = $game_party.members[$gst_actor].mmp
        end
        @param_window.activate
        @param_window.select_last
      else
        RPG::SE.new(Distribute_Config::Wrong_Select,80).play
        @param_window.activate
        @param_window.select_last
      end
    end
    refresh_all_window
  end
  #--------------------------------------------------------------------------
  # * Ao cancelar na lista
  #--------------------------------------------------------------------------
  def on_cancel
    return_scene
  end
  #--------------------------------------------------------------------------
  # * Apagar todas as janelas
  #--------------------------------------------------------------------------
  def dispose_all_windows
    @status_window.dispose
    @points_window.dispose
    @top_window.dispose
    @param_window.dispose
    @des_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Renovar todas janelas
  #--------------------------------------------------------------------------
  def refresh_all_window
    @status_window.refresh
    @points_window.refresh
    @param_window.redraw_current_item
  end
  #--------------------------------------------------------------------------
  # * Criação do fundo
  #--------------------------------------------------------------------------
  def create_background
    @background_sprite = Sprite.new
    @background_sprite.bitmap = SceneManager.background_bitmap
    @background_sprite.color.set(16, 16, 16, 128)
  end
  #--------------------------------------------------------------------------
  # * Apagar o fundo
  #--------------------------------------------------------------------------
  def dispose_background
    @background_sprite.dispose
  end
end

class Window_MenuCommand < Window_Command
  #--------------------------------------------------------------------------
  # * Fazer a lista de comandos
  #--------------------------------------------------------------------------
  def make_command_list
    add_main_commands
    if Distribute_Config::Put_On_Menu
      add_dist_command
    end
    add_formation_command
    add_original_commands
    add_save_command
    add_game_end_command
  end
  #--------------------------------------------------------------------------
  # * Adicionar comando de distribuir pontos
  #--------------------------------------------------------------------------
  def add_dist_command
    add_command(Distribute_Config::Menu_Vocab, :dist)
  end
end

class Scene_Menu < Scene_MenuBase
  #--------------------------------------------------------------------------
  # * Criar janela de comando
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_MenuCommand.new(0)
    @command_window.set_handler(:item,      method(:command_item))
    @command_window.set_handler(:skill,     method(:command_personal))
    @command_window.set_handler(:equip,     method(:command_personal))
    if Distribute_Config::Put_On_Menu
      @command_window.set_handler(:dist,    method(:command_personal))
    end
    @command_window.set_handler(:status,    method(:command_personal))
    @command_window.set_handler(:formation, method(:command_formation))
    @command_window.set_handler(:save,      method(:command_save))
    @command_window.set_handler(:game_end,  method(:command_game_end))
    @command_window.set_handler(:cancel,    method(:return_scene))
  end
  #--------------------------------------------------------------------------
  # * Comandos individuais [Confirmação]
  #--------------------------------------------------------------------------
  def on_personal_ok
    case @command_window.current_symbol
    when :skill
      SceneManager.call(Scene_Skill)
    when :equip
      SceneManager.call(Scene_Equip)
    when :status
      SceneManager.call(Scene_Status)
    when :dist
      SceneManager.call(Scene_Distribute)
      $gst_actor = @status_window.index
    end
  end
end
#===============================================================================
# Fim do script
#===============================================================================

Verdade : ) troquei a ordem e funcionou...agora eu continuo usando os antigos ou troco pelos novos scripts?


Esses novos ficaram perfeitos : ) consertam ate o bug que dava no menu(quando o GST Distribute Points System estava configurado para aparecer no menu). E agora tanto faz a ordem que os scripts são colocados...tudo funciona perfeitamente.

Obrigado.

Então você gosta de trabalhar com janelas e o gráfico né?
Bom meu ultimo projeto foi um fracasso imenso pq n tinha uma historia bem feita... Então resolvi começar a juntar resouces pra um Fan-game de Kingdom-Hearts que estou planejando.. Nada muito sério nem começei um projeto ainda. Você conseguiria fazer uma lifebar com a mana e o HP do char? e o mais importante: No círculo do meio vai caber uma foto do seu personagem... vou colocar aqui algumas fotos me diga se é possível?

Imagem da lifebar original do KH2


Uma pixel art da barra pra ver se te serve de inspiração...


Lembrando esqueça a barra de "Drive" pq n vai rolar no meu game  :derp:
Se for dificil colocar a mana e a vida certa funcionando e indicando qnt vc tem faz só a barra da vida que eu já fico feliz  :XD:

Você poderia ter utilizado a ficha, mas como ficou bem explicado, eu faço! Vou tentar me aproximar ao máximo do seu pedido.

muito obrigado man! estarei ansioso. Gosto muito dos seus scripts tipo os das luzinhas (não lembro o nome mas uso nas florestas do meu game pra dar um efeito real)

[box2 class=titlebg title=Pedido]Membro: Miguel884
Pedido: Venho pedir um script no qual os eventos possam ocupar mais espaço no mapa, tipo um char que tenho é maior que o padrão do ace, ele ocupa 3 tiles horizontais e 3 verticais (no jogo) assim:

▨▨▨
▨▨▨


Cada quadrinho é um tile, o quadrinho vermelho é onde criei o evento no mapa, os quadrados ao todo são os tiles no qual o char ocupa no mapa. Normalmente o ator precisa chegar no tile criado para aciona-lo, queria um script que pudesse acionar esse evento (que ocupa vários tiles) nesses outros tiles sem ter que copiar o mesmo evento para esses outros tiles.

Imagens: Nenhuma.
Algo em que se basear: Tem esse script do MOG que é um sensor para eventos. Ele faz com que o evento seja ativo quando o herói estiver X tiles perto dele só que em uma outra página do evento.
Script
#==============================================================================
# +++ MOG - Event Sensor Range (v1.0) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com
#==============================================================================
# Permite que o evento tenha dois comportamentos, de curta distância e de 
# longa distância.
#===============================================================================
# - Utilização
# Crie uma página com a condição de ativação Self Switch D, está página será 
# usada quando o player estiver perto do evento.
# Defina a area do sensor do evento colocando este nome no evento.
#
# <SensorX> 
#
# X = Area do Sensor
#
#===============================================================================
module MOG_EVENT_SENSOR
  #Definição da letra da Self Switch que ativará a página de curta distância.
  SENSOR_SELF_SWITCH = "D"
end

#===============================================================================
# ■ GAME EVENT
#===============================================================================
class Game_Event < Game_Character
  
  attr_reader   :sensor_range
  
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------            
  alias mog_event_sensor_initialize initialize
  def initialize(map_id, event)
      mog_event_sensor_initialize(map_id, event)
      setup_event_sensor
  end
  
  #--------------------------------------------------------------------------
  # ● Setup Event Sensor
  #--------------------------------------------------------------------------          
  def setup_event_sensor
      @sensor_range =  @event.name =~ /<Sensor(\d+)>/ ? $1.to_i : 0
  end  
  
  #--------------------------------------------------------------------------
  # ● Update
  #--------------------------------------------------------------------------            
  alias mog_event_sensor_update update 
  def update
      mog_event_sensor_update
      update_event_sensor 
  end  
  
  #--------------------------------------------------------------------------
  # ● Update Sensor
  #--------------------------------------------------------------------------        
  def update_event_sensor 
      return if @sensor_range == 0
      distance = ($game_player.x - self.x).abs + ($game_player.y - self.y).abs
      enable   = (distance <= @sensor_range)
      key = [$game_map.map_id, self.id, MOG_EVENT_SENSOR::SENSOR_SELF_SWITCH]
      last_enable = $game_self_switches[key]
      execute_sensor_effect(enable,key) if enable != last_enable
    end

  #--------------------------------------------------------------------------
  # ● Execute_Sensor Effect
  #--------------------------------------------------------------------------            
  def execute_sensor_effect(enable,key)      
      @pattern = 0 ; @pattern_count = 0               
      $game_self_switches[key] = enable ;  self.refresh
  end
    
end

$mog_rgss3_event_sensor = true
[close]
Complexidade da configuração: Talvez Média ou Dificil, não entendo RGSS(3) por isso não tenho como afirmar.
Tamanho da tela: 640x480 (Padrão XP só que no Ace)
[/box2]

Bem é isso, desculpe lhe abusar por mais um script e talz. O script do mog tem um sensor do tipo '360' ele não da o resultado que eu quero já que ele é feito para chars padrões do ACe, ou seja, do tamanho normal. Quero um script no qual eu possa colocar o numero de tiles a mais nos lados e para cima (X e Y) e ai o evento substituirá esses tiles como se houvesse outros eventos iguais a ele nesses outros tiles, para isso quero poder colocar no evento "grande" algo parecido com isso:

X=3
Y=1


Porquê? O evento quando ultrapassa os padrões do Ace o char fica centralizado no tile, assim como no exemplo.

▨▨▨
▨▨▨


Coloquei lá Y=1 pois tem um tile a mais em cada lado, e X=3 pois o char ocupa mais três tiles pra cima. Não sei se é X e Y eu sempre me confundo   :XD: . Fui explicativo?

Membro: Miguel8844
Pedido: Bom eu estava querendo fazer um jogo, sobre Star Wars e eu queria um ABS, que fosse possível que usasse para uns personagens o sabre de luz e para outros a arma de laser.
Imagens: Nenhuma.
Algo em que se basear: http://centrorpg.com/index.php?topic=870.0
Complexidade da configuração: Eu prefiro um sistema bastante configurável,para se o script tiver alguma falha eu mesmo poder arrumar.

"Minha flecha transpassará todos os meus inimigos"

Quero pedir a todos desculpas pela demora nos scripts e pela falta do meu esclarecimento diante das circunstâncias...

É porque devem saber que eu estudo, enfim, estou em provas e fiquei com o tempo curto para tudo, também estou com muitos trabalhos para fazer. Então peço que entendam a minha demora, não vou deixar de fazer o pedido do Akkain!

O ArrowPotter me informou ter encontrado o script que precisava, e Destructor, desculpe, mas sistemas de batalhas sã meio complicados de fazer ainda mais no momento, esqueci de colocar que não faria sistemas de batalhas, sorry /:!

Membro: Miguel8884
Pedido: Eu uso o Pixel Moviment que vem com 8 direções eu queria um script que quando o personagem ir andar nas 8 direções tivesse um gráfico com ele nas diagonais.
Imagens: ñ
Algo em que se basear: nada
Complexidade da configuração: pouca configuração
Tamanho da tela: 544 x 416