Olá, Visitante!
Páginas: [1]   Ir para o Fundo

Autor Tópico: Scripts de Urgencia ! ;)  (Lida 179 vezes)

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

  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Online: 11 Jan 2017, 18:59 »
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )
« Última modificação: 11 Jan 2017, 22:12 por JVSodre »

  • *
  • Escudo CRM
  • Mensagens: 169 Ouro: 18
    • RPG Maker VX/Ace
    • Ver perfil
Scripts de Urgencia ! ;)
« Resposta #1 Online: 11 Jan 2017, 22:59 »
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )


1- Pode ser mais específico?
2- Cria um evento na estante em lá em baixo coloca "Ao tocar jogador", daí só configurar o resto
3- Na batalha ou no mapa? (Seria um ABS?)
4- Cria um mapa novo em branco. Na base de dados marque a opção "Começa invisível" ou "Personagem invisível" (ou algo do tipo), e nesse mapa coloque o personagem principal. Crie um evento e lá embaixo coloque "Iniciar automaticamente" e crie uma pergunta escrita o que quiser, nas opções escreva "História normal" na primeira e na segunda "Minha História" (ou vice-versa). Pronto.
5, 6 e 7- Seja mais específico.

   Onde está "Seja específico" é porque você foi muito vago. Explique melhor.
"A árvore sendo cortada observa com tristeza que o cabo do machado é feito de madeira"


  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #2 Online: 11 Jan 2017, 23:32 »
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )


1- Pode ser mais específico?
2- Cria um evento na estante em lá em baixo coloca "Ao tocar jogador", daí só configurar o resto
3- Na batalha ou no mapa? (Seria um ABS?)
4- Cria um mapa novo em branco. Na base de dados marque a opção "Começa invisível" ou "Personagem invisível" (ou algo do tipo), e nesse mapa coloque o personagem principal. Crie um evento e lá embaixo coloque "Iniciar automaticamente" e crie uma pergunta escrita o que quiser, nas opções escreva "História normal" na primeira e na segunda "Minha História" (ou vice-versa). Pronto.
5, 6 e 7- Seja mais específico.

   Onde está "Seja específico" é porque você foi muito vago. Explique melhor.


Bom vamos por topicos  :lol:

1 - Na batalha quando você usa a parte "magias ou habilidade , do lado do nome da magia aparece o dano que cada um dara)

2 - Ta mas como eu uso tipo a imagem do livro em "tela cheia" so que com um texto personalizado por cima da imagem ?

3 - Na Batalha

4 - você pode ser mais especifico o caminho para achar o "iniciar invisivel" ?

5 - Tipo Horários marcados "Horario X tenho Aula de tal " "Horario Z tenho refeição" entre outros horarios que podem ou não ser desbloqueados ou conforme a história se desenvolve

6 - Tipo o "2"

7 - Quando você aperta "ESC" Aparece os status do personagem e o nome, so que eu achei um Script que apagasse e ficou em branco somente o nome, ai eu queria colocar alguma coisa ali aonde eu removi (so que seriam outras coisas)

Outra coisa, eu fui no banco de dados e coloquei na pág hab somente 1 so q fui batalhar e ficou um espaço em branco entre "magias" (q eh o q eu substitui) e Itens

  • *
  • Mensagens: 626 Ouro: 192
  • racer master
    • RPG Maker VX/Ace
    • Ver perfil
Scripts de Urgencia ! ;)
« Resposta #3 Online: 11 Jan 2017, 23:38 »
 Olá!
 Isso tudo que você quer são coisas bem básicas e muito simples de serem feitas. Eu recomendo você assistir algumas vídeo aulas: https://www.youtube.com/watch?v=UvL4QnTTHV0
 Assista todas e treine junto com o Drak, em seguida você tenta fazer sozinho tudo isso que você falou, e caso não consiga, nós podemos dar uma ajuda.
 É muito fácil fazer tudo isso que você está pedindo, porém se nós fizermos você nunca irá aprender como a engine funciona e precisara sempre que alguém faça por você.

 Grande abraço!

  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #4 Online: 11 Jan 2017, 23:48 »
Olá!
 Isso tudo que você quer são coisas bem básicas e muito simples de serem feitas. Eu recomendo você assistir algumas vídeo aulas: https://www.youtube.com/watch?v=UvL4QnTTHV0
 Assista todas e treine junto com o Drak, em seguida você tenta fazer sozinho tudo isso que você falou, e caso não consiga, nós podemos dar uma ajuda.
 É muito fácil fazer tudo isso que você está pedindo, porém se nós fizermos você nunca irá aprender como a engine funciona e precisara sempre que alguém faça por você.

 Grande abraço!

Oi Cara ja olhei varias videoaulas dele e aprendi a mexer com ele, tudo q sei foi por causa das video aulas dele, eu queria era Scripts mesmo, pois nao sou muito bom com Scripts no RPGMVXACE, mas valeu aew  :rainbow:

  • *
  • Mensagens: 626 Ouro: 192
  • racer master
    • RPG Maker VX/Ace
    • Ver perfil
Scripts de Urgencia ! ;)
« Resposta #5 Online: 12 Jan 2017, 00:27 »
 Mas a única coisa que você precisa de um script é a sua exigência numero 3. O resto da para fazer por eventos.

  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #6 Online: 12 Jan 2017, 02:02 »
Mas a única coisa que você precisa de um script é a sua exigência numero 3. O resto da para fazer por eventos.

Eh que eu prefiro por scripts pois sempre o resultado é melhor e estou tentando diminuir meus eventos pois sempre Da algum bug

  • *
  • Mensagens: 74 Ouro: 14
    • RPG Maker VX/Ace
    • Facebook
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #7 Online: 12 Jan 2017, 02:51 »
Spoiler
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )
[close]
Cara , vou logo falando que eu não entendi os itens 6 e 7.

1-Tem um script presente no Sapphire Action System IV v4.4 que pode servir. aqui segue ele :
Spoiler
#-------------------------------------------------------------------------------
# * [ACE] SAS IV Damage Sprites
#-------------------------------------------------------------------------------
# * Por Khas Arcthunder (khasarcthunder.wordpress.com)
# * Versão: 1.0 BR
# * Lançada em: 05/01/2012
#
#-------------------------------------------------------------------------------
# * Termos de Uso
#-------------------------------------------------------------------------------
# Termos de uso – 22 de Junho de 2012
# 1. Você deve dar crédito a Khas se estiver usando algum script Khas;
# 2. Todos os scripts e aulas Khas estão sob licença Creative Commons;
# 3. Todos os scripts Khas são livres para uso não comercial. Caso queira
#    algum script para uso comercial, confira abaixo destes termos quais
#    scripts são de uso comercial livre e quais são de uso comercial pago;
# 4. Todos os scripts Khas são para uso pessoal, você pode usar e editar
#    para uso no seu projeto, porém você não pode postar nenhuma versão
#    modificada;
# 5. Você não pode dar créditos a si próprio por postar algum script Khas;
# 6. Caso queira compartilhar um script Khas, não poste o script ou o link
#    direto de download, apenas redirecione o usuário para
#    http://arcthunder.site40.net/
# 7. Todos os scripts Khas são para uso no maker em que foram feitos.
#    Não é autorizada nenhuma espécie de conversão;
# 8. É sua obrigação (usuário) conferir esta página de termos no dia em que
#    lançar seu projeto. As normas aqui presentes devem ser cumpridas pelo
#    seu projeto.
#
# Scripts de uso comercial livre:
# - Sapphire Action System IV (RPG Maker VX Ace)
# - Awesome Light Effects (RPG Maker VX Ace)
# - Pixel movement (RPG Maker VX e RPG Maker VX Ace)
# - Sprite & Window Smooth Sliding (RPG Maker VX e RPG Maker VX Ace)
# - Pathfinder (RPG Maker VX Ace)
#
# Veja todos os termos em: http://arcthunder.site40.net/termos/
#
#-------------------------------------------------------------------------------
# * Caracteristicas
#-------------------------------------------------------------------------------
# Sistema de números de dano do SAS IV.
# Configure abaixo.
#
#-------------------------------------------------------------------------------
# * Configuração
#-------------------------------------------------------------------------------
module Damage_Core
  # Nome da fonte
  Damage_Font = "Georgia"
  # Tamanho da fonte
  Damage_Size = 22
  # Itálico?
  Damage_Italic = false
  # Negrito?
  Damage_Bold = true
  # Cor - Color.new(red, green, blue)
  Damage_Color = Color.new(255,255,255)
  # Mostrar novo nível?
  Damage_Level = true
  # String de novo nível
  Damage_LString = "Level up!"
end
#-------------------------------------------------------------------------------
# * Registrar
#-------------------------------------------------------------------------------
if $khas_awesome.nil?
  $khas_awesome = []
end
scripts = []
$khas_awesome.each { |script| scripts << script[0] }
unless scripts.include?("Sapphire Action System")
  error = Sprite.new
  error.bitmap = Bitmap.new(544,416)
  error.bitmap.draw_text(0,208,544,32,"Por favor, instale o Sapphire Action System IV",1)
  error.bitmap.draw_text(0,240,544,32,"Os scripts adicionais precisam do principal",1)
  continue = Sprite.new
  continue.bitmap = Bitmap.new(544,416)
  continue.bitmap.font.color = Color.new(0,255,0)
  continue.bitmap.font.size = error.bitmap.font.size - 3
  continue.bitmap.draw_text(0,384,544,32,"Tecle ENTER para sair",1)
  add = Math::PI/80; max = 2*Math::PI; angle = 0
  loop do
    Graphics.update; Input.update
    angle += add; angle %= max
    continue.opacity = 185 + 70* Math.cos(angle)
    break if Input.trigger?(Input::C)
  end
  error.bitmap.dispose; continue.bitmap.dispose
  error.bitmap = nil; continue.bitmap = nil
  error.dispose; continue.dispose
  error = nil; continue = nil
  exit
end

$khas_awesome << ["SAS Damage Sprites",4.0]

#-------------------------------------------------------------------------------
# * Script
#-------------------------------------------------------------------------------

class Spriteset_Map
  def update_damage_sprites
    $game_map.damage_sprites.each { |damage_sprite| damage_sprite.update; @trash << damage_sprite if damage_sprite.done }
    @trash.each { |item| $game_map.damage_sprites.delete(item) }
    @trash.clear
  end
end

class Game_Map
  def level_up
    return unless Damage_Core::Damage_Level
    @damage_sprites << Sprite_Damage.new($game_player,Damage_Core::Damage_LString)
  end
  def show_text(target,value)
    @damage_sprites << Sprite_Damage.new(target,value)
  end
  def hide_damage_sprites
    virtual_damage = []
    @damage_sprites.each { |damage_sprite| virtual_damage << damage_sprite.release; damage_sprite.dispose }
    @damage_sprites = virtual_damage
  end
  def show_damage_sprites
    virtual_damage = @damage_sprites
    @damage_sprites = []
    virtual_damage.each { |vd| @damage_sprites << Restored_Damage.new(vd) }
    virtual_damage.clear
  end
  def delete_damage_sprites
    if @damage_sprites.nil?
      @damage_sprites = []
    else
      @damage_sprites.each { |damage_sprite| damage_sprite.dispose }
      @damage_sprites.clear
    end
  end
end

class Virtual_Damage
  attr_reader :x
  attr_reader :y
  attr_reader :value
  attr_reader :x_speed
  attr_reader :y_speed
  attr_reader :g_force
  attr_reader :erase
  attr_reader :opacity
  def initialize(x,y,value,xs,ys,gf,e,op)
    @x = x
    @y = y
    @value = value
    @x_speed = xs
    @y_speed = ys
    @g_force = gf
    @erase = e
    @opacity = op
  end
end

class Restored_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(vd)
    super(nil)
    @value = vd.value
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = vd.x
    self.y = vd.y
    self.ox = 50
    self.oy = 50
    self.opacity = vd.opacity
    @x_speed = vd.x_speed
    @y_speed = vd.y_speed
    @g_force = vd.g_force
    @erase = vd.erase
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end

class Sprite_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(target,value)
    super(nil)
    @value = value.to_s
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = target.screen_x
    self.y = target.screen_y
    self.ox = 50
    self.oy = 50
    side = (rand(2) == 0 ? 1 : -1)
    @x_speed = (rand(2)+1)*side
    @y_speed = 6
    @g_force = -0.5
    @erase = false
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end
[close]
2 - Nesse , quando você for fazer o evento na estante , é só colocar a condição de inicio como " ao tocar jogador" e você pode fazer isso usando imagens ou outro script , acho por meio de imagens melhor pra você.

3 - Eu procurei um script assim mas não achei para um sistema de batalha no mapa.

Os itens 4 e 5 podem ser feitos por meio de eventos.
Logo que você disse que o "6 é tipo o 2" então pode ser feito por evento também.  :o:
Já o 7 acho que você vai ter que quebrar a cabeça com os scripts ou então achar um que quebre o galho.
Acho que você deve dar uma olhada no MS - Luna Menu vai valer muito a pena . :blink:

Ah e lembrando , se for usar algum dos scripts que falei , não esquece dos créditos aos criadores. :XD:
O verdadeiro perdedor é aquele que tem medo de tentar , com medo de não vencer.

  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #8 Online: 12 Jan 2017, 09:37 »
Citar
Spoiler
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )
[close]
Cara , vou logo falando que eu não entendi os itens 6 e 7.

1-Tem um script presente no Sapphire Action System IV v4.4 que pode servir. aqui segue ele :
Spoiler
#-------------------------------------------------------------------------------
# * [ACE] SAS IV Damage Sprites
#-------------------------------------------------------------------------------
# * Por Khas Arcthunder (khasarcthunder.wordpress.com)
# * Versão: 1.0 BR
# * Lançada em: 05/01/2012
#
#-------------------------------------------------------------------------------
# * Termos de Uso
#-------------------------------------------------------------------------------
# Termos de uso – 22 de Junho de 2012
# 1. Você deve dar crédito a Khas se estiver usando algum script Khas;
# 2. Todos os scripts e aulas Khas estão sob licença Creative Commons;
# 3. Todos os scripts Khas são livres para uso não comercial. Caso queira
#    algum script para uso comercial, confira abaixo destes termos quais
#    scripts são de uso comercial livre e quais são de uso comercial pago;
# 4. Todos os scripts Khas são para uso pessoal, você pode usar e editar
#    para uso no seu projeto, porém você não pode postar nenhuma versão
#    modificada;
# 5. Você não pode dar créditos a si próprio por postar algum script Khas;
# 6. Caso queira compartilhar um script Khas, não poste o script ou o link
#    direto de download, apenas redirecione o usuário para
#    http://arcthunder.site40.net/
# 7. Todos os scripts Khas são para uso no maker em que foram feitos.
#    Não é autorizada nenhuma espécie de conversão;
# 8. É sua obrigação (usuário) conferir esta página de termos no dia em que
#    lançar seu projeto. As normas aqui presentes devem ser cumpridas pelo
#    seu projeto.
#
# Scripts de uso comercial livre:
# - Sapphire Action System IV (RPG Maker VX Ace)
# - Awesome Light Effects (RPG Maker VX Ace)
# - Pixel movement (RPG Maker VX e RPG Maker VX Ace)
# - Sprite & Window Smooth Sliding (RPG Maker VX e RPG Maker VX Ace)
# - Pathfinder (RPG Maker VX Ace)
#
# Veja todos os termos em: http://arcthunder.site40.net/termos/
#
#-------------------------------------------------------------------------------
# * Caracteristicas
#-------------------------------------------------------------------------------
# Sistema de números de dano do SAS IV.
# Configure abaixo.
#
#-------------------------------------------------------------------------------
# * Configuração
#-------------------------------------------------------------------------------
module Damage_Core
  # Nome da fonte
  Damage_Font = "Georgia"
  # Tamanho da fonte
  Damage_Size = 22
  # Itálico?
  Damage_Italic = false
  # Negrito?
  Damage_Bold = true
  # Cor - Color.new(red, green, blue)
  Damage_Color = Color.new(255,255,255)
  # Mostrar novo nível?
  Damage_Level = true
  # String de novo nível
  Damage_LString = "Level up!"
end
#-------------------------------------------------------------------------------
# * Registrar
#-------------------------------------------------------------------------------
if $khas_awesome.nil?
  $khas_awesome = []
end
scripts = []
$khas_awesome.each { |script| scripts << script[0] }
unless scripts.include?("Sapphire Action System")
  error = Sprite.new
  error.bitmap = Bitmap.new(544,416)
  error.bitmap.draw_text(0,208,544,32,"Por favor, instale o Sapphire Action System IV",1)
  error.bitmap.draw_text(0,240,544,32,"Os scripts adicionais precisam do principal",1)
  continue = Sprite.new
  continue.bitmap = Bitmap.new(544,416)
  continue.bitmap.font.color = Color.new(0,255,0)
  continue.bitmap.font.size = error.bitmap.font.size - 3
  continue.bitmap.draw_text(0,384,544,32,"Tecle ENTER para sair",1)
  add = Math::PI/80; max = 2*Math::PI; angle = 0
  loop do
    Graphics.update; Input.update
    angle += add; angle %= max
    continue.opacity = 185 + 70* Math.cos(angle)
    break if Input.trigger?(Input::C)
  end
  error.bitmap.dispose; continue.bitmap.dispose
  error.bitmap = nil; continue.bitmap = nil
  error.dispose; continue.dispose
  error = nil; continue = nil
  exit
end

$khas_awesome << ["SAS Damage Sprites",4.0]

#-------------------------------------------------------------------------------
# * Script
#-------------------------------------------------------------------------------

class Spriteset_Map
  def update_damage_sprites
    $game_map.damage_sprites.each { |damage_sprite| damage_sprite.update; @trash << damage_sprite if damage_sprite.done }
    @trash.each { |item| $game_map.damage_sprites.delete(item) }
    @trash.clear
  end
end

class Game_Map
  def level_up
    return unless Damage_Core::Damage_Level
    @damage_sprites << Sprite_Damage.new($game_player,Damage_Core::Damage_LString)
  end
  def show_text(target,value)
    @damage_sprites << Sprite_Damage.new(target,value)
  end
  def hide_damage_sprites
    virtual_damage = []
    @damage_sprites.each { |damage_sprite| virtual_damage << damage_sprite.release; damage_sprite.dispose }
    @damage_sprites = virtual_damage
  end
  def show_damage_sprites
    virtual_damage = @damage_sprites
    @damage_sprites = []
    virtual_damage.each { |vd| @damage_sprites << Restored_Damage.new(vd) }
    virtual_damage.clear
  end
  def delete_damage_sprites
    if @damage_sprites.nil?
      @damage_sprites = []
    else
      @damage_sprites.each { |damage_sprite| damage_sprite.dispose }
      @damage_sprites.clear
    end
  end
end

class Virtual_Damage
  attr_reader :x
  attr_reader :y
  attr_reader :value
  attr_reader :x_speed
  attr_reader :y_speed
  attr_reader :g_force
  attr_reader :erase
  attr_reader :opacity
  def initialize(x,y,value,xs,ys,gf,e,op)
    @x = x
    @y = y
    @value = value
    @x_speed = xs
    @y_speed = ys
    @g_force = gf
    @erase = e
    @opacity = op
  end
end

class Restored_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(vd)
    super(nil)
    @value = vd.value
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = vd.x
    self.y = vd.y
    self.ox = 50
    self.oy = 50
    self.opacity = vd.opacity
    @x_speed = vd.x_speed
    @y_speed = vd.y_speed
    @g_force = vd.g_force
    @erase = vd.erase
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end

class Sprite_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(target,value)
    super(nil)
    @value = value.to_s
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = target.screen_x
    self.y = target.screen_y
    self.ox = 50
    self.oy = 50
    side = (rand(2) == 0 ? 1 : -1)
    @x_speed = (rand(2)+1)*side
    @y_speed = 6
    @g_force = -0.5
    @erase = false
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end
[close]
2 - Nesse , quando você for fazer o evento na estante , é só colocar a condição de inicio como " ao tocar jogador" e você pode fazer isso usando imagens ou outro script , acho por meio de imagens melhor pra você.

3 - Eu procurei um script assim mas não achei para um sistema de batalha no mapa.

Os itens 4 e 5 podem ser feitos por meio de eventos.
Logo que você disse que o "6 é tipo o 2" então pode ser feito por evento também.  :o:
Já o 7 acho que você vai ter que quebrar a cabeça com os scripts ou então achar um que quebre o galho.
Acho que você deve dar uma olhada no MS - Luna Menu vai valer muito a pena . :blink:

Ah e lembrando , se for usar algum dos scripts que falei , não esquece dos créditos aos criadores. :XD:

Vlw Cara vou procurar Mais Scripts aew

  • *
  • Escudo CRM
  • Mensagens: 169 Ouro: 18
    • RPG Maker VX/Ace
    • Ver perfil
Scripts de Urgencia ! ;)
« Resposta #9 Online: 12 Jan 2017, 15:04 »
Citar
Spoiler
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )
[close]
Cara , vou logo falando que eu não entendi os itens 6 e 7.

1-Tem um script presente no Sapphire Action System IV v4.4 que pode servir. aqui segue ele :
Spoiler
#-------------------------------------------------------------------------------
# * [ACE] SAS IV Damage Sprites
#-------------------------------------------------------------------------------
# * Por Khas Arcthunder (khasarcthunder.wordpress.com)
# * Versão: 1.0 BR
# * Lançada em: 05/01/2012
#
#-------------------------------------------------------------------------------
# * Termos de Uso
#-------------------------------------------------------------------------------
# Termos de uso – 22 de Junho de 2012
# 1. Você deve dar crédito a Khas se estiver usando algum script Khas;
# 2. Todos os scripts e aulas Khas estão sob licença Creative Commons;
# 3. Todos os scripts Khas são livres para uso não comercial. Caso queira
#    algum script para uso comercial, confira abaixo destes termos quais
#    scripts são de uso comercial livre e quais são de uso comercial pago;
# 4. Todos os scripts Khas são para uso pessoal, você pode usar e editar
#    para uso no seu projeto, porém você não pode postar nenhuma versão
#    modificada;
# 5. Você não pode dar créditos a si próprio por postar algum script Khas;
# 6. Caso queira compartilhar um script Khas, não poste o script ou o link
#    direto de download, apenas redirecione o usuário para
#    http://arcthunder.site40.net/
# 7. Todos os scripts Khas são para uso no maker em que foram feitos.
#    Não é autorizada nenhuma espécie de conversão;
# 8. É sua obrigação (usuário) conferir esta página de termos no dia em que
#    lançar seu projeto. As normas aqui presentes devem ser cumpridas pelo
#    seu projeto.
#
# Scripts de uso comercial livre:
# - Sapphire Action System IV (RPG Maker VX Ace)
# - Awesome Light Effects (RPG Maker VX Ace)
# - Pixel movement (RPG Maker VX e RPG Maker VX Ace)
# - Sprite & Window Smooth Sliding (RPG Maker VX e RPG Maker VX Ace)
# - Pathfinder (RPG Maker VX Ace)
#
# Veja todos os termos em: http://arcthunder.site40.net/termos/
#
#-------------------------------------------------------------------------------
# * Caracteristicas
#-------------------------------------------------------------------------------
# Sistema de números de dano do SAS IV.
# Configure abaixo.
#
#-------------------------------------------------------------------------------
# * Configuração
#-------------------------------------------------------------------------------
module Damage_Core
  # Nome da fonte
  Damage_Font = "Georgia"
  # Tamanho da fonte
  Damage_Size = 22
  # Itálico?
  Damage_Italic = false
  # Negrito?
  Damage_Bold = true
  # Cor - Color.new(red, green, blue)
  Damage_Color = Color.new(255,255,255)
  # Mostrar novo nível?
  Damage_Level = true
  # String de novo nível
  Damage_LString = "Level up!"
end
#-------------------------------------------------------------------------------
# * Registrar
#-------------------------------------------------------------------------------
if $khas_awesome.nil?
  $khas_awesome = []
end
scripts = []
$khas_awesome.each { |script| scripts << script[0] }
unless scripts.include?("Sapphire Action System")
  error = Sprite.new
  error.bitmap = Bitmap.new(544,416)
  error.bitmap.draw_text(0,208,544,32,"Por favor, instale o Sapphire Action System IV",1)
  error.bitmap.draw_text(0,240,544,32,"Os scripts adicionais precisam do principal",1)
  continue = Sprite.new
  continue.bitmap = Bitmap.new(544,416)
  continue.bitmap.font.color = Color.new(0,255,0)
  continue.bitmap.font.size = error.bitmap.font.size - 3
  continue.bitmap.draw_text(0,384,544,32,"Tecle ENTER para sair",1)
  add = Math::PI/80; max = 2*Math::PI; angle = 0
  loop do
    Graphics.update; Input.update
    angle += add; angle %= max
    continue.opacity = 185 + 70* Math.cos(angle)
    break if Input.trigger?(Input::C)
  end
  error.bitmap.dispose; continue.bitmap.dispose
  error.bitmap = nil; continue.bitmap = nil
  error.dispose; continue.dispose
  error = nil; continue = nil
  exit
end

$khas_awesome << ["SAS Damage Sprites",4.0]

#-------------------------------------------------------------------------------
# * Script
#-------------------------------------------------------------------------------

class Spriteset_Map
  def update_damage_sprites
    $game_map.damage_sprites.each { |damage_sprite| damage_sprite.update; @trash << damage_sprite if damage_sprite.done }
    @trash.each { |item| $game_map.damage_sprites.delete(item) }
    @trash.clear
  end
end

class Game_Map
  def level_up
    return unless Damage_Core::Damage_Level
    @damage_sprites << Sprite_Damage.new($game_player,Damage_Core::Damage_LString)
  end
  def show_text(target,value)
    @damage_sprites << Sprite_Damage.new(target,value)
  end
  def hide_damage_sprites
    virtual_damage = []
    @damage_sprites.each { |damage_sprite| virtual_damage << damage_sprite.release; damage_sprite.dispose }
    @damage_sprites = virtual_damage
  end
  def show_damage_sprites
    virtual_damage = @damage_sprites
    @damage_sprites = []
    virtual_damage.each { |vd| @damage_sprites << Restored_Damage.new(vd) }
    virtual_damage.clear
  end
  def delete_damage_sprites
    if @damage_sprites.nil?
      @damage_sprites = []
    else
      @damage_sprites.each { |damage_sprite| damage_sprite.dispose }
      @damage_sprites.clear
    end
  end
end

class Virtual_Damage
  attr_reader :x
  attr_reader :y
  attr_reader :value
  attr_reader :x_speed
  attr_reader :y_speed
  attr_reader :g_force
  attr_reader :erase
  attr_reader :opacity
  def initialize(x,y,value,xs,ys,gf,e,op)
    @x = x
    @y = y
    @value = value
    @x_speed = xs
    @y_speed = ys
    @g_force = gf
    @erase = e
    @opacity = op
  end
end

class Restored_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(vd)
    super(nil)
    @value = vd.value
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = vd.x
    self.y = vd.y
    self.ox = 50
    self.oy = 50
    self.opacity = vd.opacity
    @x_speed = vd.x_speed
    @y_speed = vd.y_speed
    @g_force = vd.g_force
    @erase = vd.erase
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end

class Sprite_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(target,value)
    super(nil)
    @value = value.to_s
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = target.screen_x
    self.y = target.screen_y
    self.ox = 50
    self.oy = 50
    side = (rand(2) == 0 ? 1 : -1)
    @x_speed = (rand(2)+1)*side
    @y_speed = 6
    @g_force = -0.5
    @erase = false
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end
[close]
2 - Nesse , quando você for fazer o evento na estante , é só colocar a condição de inicio como " ao tocar jogador" e você pode fazer isso usando imagens ou outro script , acho por meio de imagens melhor pra você.

3 - Eu procurei um script assim mas não achei para um sistema de batalha no mapa.

Os itens 4 e 5 podem ser feitos por meio de eventos.
Logo que você disse que o "6 é tipo o 2" então pode ser feito por evento também.  :o:
Já o 7 acho que você vai ter que quebrar a cabeça com os scripts ou então achar um que quebre o galho.
Acho que você deve dar uma olhada no MS - Luna Menu vai valer muito a pena . :blink:

Ah e lembrando , se for usar algum dos scripts que falei , não esquece dos créditos aos criadores. :XD:

Vlw Cara vou procurar Mais Scripts aew

Sabe o canal do Drak (que o amigo citou ali em cima?) Ele tem um tutorial chamado "como criar uma tela de título por eventos" ou algo do tipo. Faça tudo que ele ensina e adapte para o que você quiser.

O problema que você impõe é: você só quer script!
Sendo que tirando um ou dois pedidos que você fez no tópico, todos os outros são nível iniciante de evento. Por isso não existem scripts específicos para aquilo. A menos, claro, que você aprenda a programar no rpg maker vx ace. Nesse caso, recomendo o tutorial em vídeo do Khas (https://www.youtube.com/watch?v=QD7XlqUnLH4) é tudo em português então não se preocupe.

Assista TODOS os vídeos do Drak mesmo que seja sobre um assunto que você não vá usar no seu projeto, vai ter alguma dica que vai ser MUITO útil lá pra frente.

Não lembro exatamente onde fica a opção de deixar invisível (não uso o VXAce faz tempo) mas tá nas últimas abas da base de dados. (A base de dados é onde você configura os personagens, itens, armas etc.) Pra deixar invisível é só ir na aba onde você pode mudar a tela de título, sabe? No canto tem umas caixinhas e marque a que eu falei. No tutorial do Drak sobre tela de título por eventos ele ensina isso.
"A árvore sendo cortada observa com tristeza que o cabo do machado é feito de madeira"


  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #10 Online: 12 Jan 2017, 15:45 »
Citar
Spoiler
Oie, sou eu Denovo :o:

Bem Quem puder me ajudar com alguns Scripts(eles podem ser de links separados) eu não sou muito bom em criar Scripts pro RPG maker então se tiver encontrado pelo menos 1 desses fala aew, tanks

1 - Aparecer quantidade de dano do lado da Magia
2 - Quando eu chego na estante X abre um livro
3 - Mostrar Vida do Inimigo (Tipo aquelas Barras de HP, etc...)
4 - Logo Após do Título aparecer 2 Escolhas ( no caso seria "história normal" ou "Minha História" - Dificil de Explicar - mas uma iria pra mapa X e ou pra Mapa Z)
5 - Sistema de Aulas, Refeições e outros eventos (Estilo Harry Potter)
6 - Quando aperta tecla "X" aparece uma lista de materiais centralizadas (sem aquelas restrições de tamanho dos eventos "mensagens")
7 - Mais espaço (novos status ex: Turma nº x) entre outras coisas


Agradeço quem Puder me ajudar agradeço, Abraços (Qualquer coisa me Chama no Skype ou Face  :clap: )
[close]
Cara , vou logo falando que eu não entendi os itens 6 e 7.

1-Tem um script presente no Sapphire Action System IV v4.4 que pode servir. aqui segue ele :
Spoiler
#-------------------------------------------------------------------------------
# * [ACE] SAS IV Damage Sprites
#-------------------------------------------------------------------------------
# * Por Khas Arcthunder (khasarcthunder.wordpress.com)
# * Versão: 1.0 BR
# * Lançada em: 05/01/2012
#
#-------------------------------------------------------------------------------
# * Termos de Uso
#-------------------------------------------------------------------------------
# Termos de uso – 22 de Junho de 2012
# 1. Você deve dar crédito a Khas se estiver usando algum script Khas;
# 2. Todos os scripts e aulas Khas estão sob licença Creative Commons;
# 3. Todos os scripts Khas são livres para uso não comercial. Caso queira
#    algum script para uso comercial, confira abaixo destes termos quais
#    scripts são de uso comercial livre e quais são de uso comercial pago;
# 4. Todos os scripts Khas são para uso pessoal, você pode usar e editar
#    para uso no seu projeto, porém você não pode postar nenhuma versão
#    modificada;
# 5. Você não pode dar créditos a si próprio por postar algum script Khas;
# 6. Caso queira compartilhar um script Khas, não poste o script ou o link
#    direto de download, apenas redirecione o usuário para
#    http://arcthunder.site40.net/
# 7. Todos os scripts Khas são para uso no maker em que foram feitos.
#    Não é autorizada nenhuma espécie de conversão;
# 8. É sua obrigação (usuário) conferir esta página de termos no dia em que
#    lançar seu projeto. As normas aqui presentes devem ser cumpridas pelo
#    seu projeto.
#
# Scripts de uso comercial livre:
# - Sapphire Action System IV (RPG Maker VX Ace)
# - Awesome Light Effects (RPG Maker VX Ace)
# - Pixel movement (RPG Maker VX e RPG Maker VX Ace)
# - Sprite & Window Smooth Sliding (RPG Maker VX e RPG Maker VX Ace)
# - Pathfinder (RPG Maker VX Ace)
#
# Veja todos os termos em: http://arcthunder.site40.net/termos/
#
#-------------------------------------------------------------------------------
# * Caracteristicas
#-------------------------------------------------------------------------------
# Sistema de números de dano do SAS IV.
# Configure abaixo.
#
#-------------------------------------------------------------------------------
# * Configuração
#-------------------------------------------------------------------------------
module Damage_Core
  # Nome da fonte
  Damage_Font = "Georgia"
  # Tamanho da fonte
  Damage_Size = 22
  # Itálico?
  Damage_Italic = false
  # Negrito?
  Damage_Bold = true
  # Cor - Color.new(red, green, blue)
  Damage_Color = Color.new(255,255,255)
  # Mostrar novo nível?
  Damage_Level = true
  # String de novo nível
  Damage_LString = "Level up!"
end
#-------------------------------------------------------------------------------
# * Registrar
#-------------------------------------------------------------------------------
if $khas_awesome.nil?
  $khas_awesome = []
end
scripts = []
$khas_awesome.each { |script| scripts << script[0] }
unless scripts.include?("Sapphire Action System")
  error = Sprite.new
  error.bitmap = Bitmap.new(544,416)
  error.bitmap.draw_text(0,208,544,32,"Por favor, instale o Sapphire Action System IV",1)
  error.bitmap.draw_text(0,240,544,32,"Os scripts adicionais precisam do principal",1)
  continue = Sprite.new
  continue.bitmap = Bitmap.new(544,416)
  continue.bitmap.font.color = Color.new(0,255,0)
  continue.bitmap.font.size = error.bitmap.font.size - 3
  continue.bitmap.draw_text(0,384,544,32,"Tecle ENTER para sair",1)
  add = Math::PI/80; max = 2*Math::PI; angle = 0
  loop do
    Graphics.update; Input.update
    angle += add; angle %= max
    continue.opacity = 185 + 70* Math.cos(angle)
    break if Input.trigger?(Input::C)
  end
  error.bitmap.dispose; continue.bitmap.dispose
  error.bitmap = nil; continue.bitmap = nil
  error.dispose; continue.dispose
  error = nil; continue = nil
  exit
end

$khas_awesome << ["SAS Damage Sprites",4.0]

#-------------------------------------------------------------------------------
# * Script
#-------------------------------------------------------------------------------

class Spriteset_Map
  def update_damage_sprites
    $game_map.damage_sprites.each { |damage_sprite| damage_sprite.update; @trash << damage_sprite if damage_sprite.done }
    @trash.each { |item| $game_map.damage_sprites.delete(item) }
    @trash.clear
  end
end

class Game_Map
  def level_up
    return unless Damage_Core::Damage_Level
    @damage_sprites << Sprite_Damage.new($game_player,Damage_Core::Damage_LString)
  end
  def show_text(target,value)
    @damage_sprites << Sprite_Damage.new(target,value)
  end
  def hide_damage_sprites
    virtual_damage = []
    @damage_sprites.each { |damage_sprite| virtual_damage << damage_sprite.release; damage_sprite.dispose }
    @damage_sprites = virtual_damage
  end
  def show_damage_sprites
    virtual_damage = @damage_sprites
    @damage_sprites = []
    virtual_damage.each { |vd| @damage_sprites << Restored_Damage.new(vd) }
    virtual_damage.clear
  end
  def delete_damage_sprites
    if @damage_sprites.nil?
      @damage_sprites = []
    else
      @damage_sprites.each { |damage_sprite| damage_sprite.dispose }
      @damage_sprites.clear
    end
  end
end

class Virtual_Damage
  attr_reader :x
  attr_reader :y
  attr_reader :value
  attr_reader :x_speed
  attr_reader :y_speed
  attr_reader :g_force
  attr_reader :erase
  attr_reader :opacity
  def initialize(x,y,value,xs,ys,gf,e,op)
    @x = x
    @y = y
    @value = value
    @x_speed = xs
    @y_speed = ys
    @g_force = gf
    @erase = e
    @opacity = op
  end
end

class Restored_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(vd)
    super(nil)
    @value = vd.value
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = vd.x
    self.y = vd.y
    self.ox = 50
    self.oy = 50
    self.opacity = vd.opacity
    @x_speed = vd.x_speed
    @y_speed = vd.y_speed
    @g_force = vd.g_force
    @erase = vd.erase
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end

class Sprite_Damage < Sprite
  attr_accessor :done
  include Damage_Core
  def initialize(target,value)
    super(nil)
    @value = value.to_s
    self.bitmap = Bitmap.new(160,20)
    self.bitmap.font.name = Damage_Font
    self.bitmap.font.size = Damage_Size
    self.bitmap.font.bold = Damage_Bold
    self.bitmap.font.italic = Damage_Italic
    self.bitmap.font.color = Damage_Color
    self.bitmap.draw_text(0,0,160,20,@value,1)
    self.x = target.screen_x
    self.y = target.screen_y
    self.ox = 50
    self.oy = 50
    side = (rand(2) == 0 ? 1 : -1)
    @x_speed = (rand(2)+1)*side
    @y_speed = 6
    @g_force = -0.5
    @erase = false
  end
  def update
    self.x += @x_speed
    if @erase
      if self.opacity <= 0
        dispose
      else
        @y_speed += @g_force unless @y_speed < -6
        self.y -= @y_speed
        self.opacity -= 10
      end
    else
      if @y_speed < -7
        @erase = true
        @y_speed = 5
      else
        self.y -= @y_speed
        @y_speed += @g_force
      end
    end
  end
  def release
    return Virtual_Damage.new(self.x,self.y,@value,@x_speed,@y_speed,@g_force,@erase,self.opacity)
  end
  def dispose
    self.bitmap.dispose
    self.bitmap = nil
    super
    @done = true
  end
end
[close]
2 - Nesse , quando você for fazer o evento na estante , é só colocar a condição de inicio como " ao tocar jogador" e você pode fazer isso usando imagens ou outro script , acho por meio de imagens melhor pra você.

3 - Eu procurei um script assim mas não achei para um sistema de batalha no mapa.

Os itens 4 e 5 podem ser feitos por meio de eventos.
Logo que você disse que o "6 é tipo o 2" então pode ser feito por evento também.  :o:
Já o 7 acho que você vai ter que quebrar a cabeça com os scripts ou então achar um que quebre o galho.
Acho que você deve dar uma olhada no MS - Luna Menu vai valer muito a pena . :blink:

Ah e lembrando , se for usar algum dos scripts que falei , não esquece dos créditos aos criadores. :XD:

Vlw Cara vou procurar Mais Scripts aew

Sabe o canal do Drak (que o amigo citou ali em cima?) Ele tem um tutorial chamado "como criar uma tela de título por eventos" ou algo do tipo. Faça tudo que ele ensina e adapte para o que você quiser.

O problema que você impõe é: você só quer script!
Sendo que tirando um ou dois pedidos que você fez no tópico, todos os outros são nível iniciante de evento. Por isso não existem scripts específicos para aquilo. A menos, claro, que você aprenda a programar no rpg maker vx ace. Nesse caso, recomendo o tutorial em vídeo do Khas (https://www.youtube.com/watch?v=QD7XlqUnLH4) é tudo em português então não se preocupe.

Assista TODOS os vídeos do Drak mesmo que seja sobre um assunto que você não vá usar no seu projeto, vai ter alguma dica que vai ser MUITO útil lá pra frente.

Não lembro exatamente onde fica a opção de deixar invisível (não uso o VXAce faz tempo) mas tá nas últimas abas da base de dados. (A base de dados é onde você configura os personagens, itens, armas etc.) Pra deixar invisível é só ir na aba onde você pode mudar a tela de título, sabe? No canto tem umas caixinhas e marque a que eu falei. No tutorial do Drak sobre tela de título por eventos ele ensina isso.

Vlw, minha preferencia por Scripts é por que sempre da algum erro (possivelmente excesso de Eventos) e meu personagem nao consegue andar mas vou tentar . . .

  • *
  • Mensagens: 74 Ouro: 14
    • RPG Maker VX/Ace
    • Facebook
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #11 Online: 12 Jan 2017, 17:46 »
Eu vi que você é muito preocupado com o lag que os eventos podem ocasionar , então tenho mais esses dois scripts Anti-Lag :

MOG - Simple Anti Lag (V2.1)
Ativar/Desativar :
Spoiler
[$game_system.anti_lag = true
$game_system.anti_lag = false
[close]
Script :
Spoiler
#==============================================================================
# +++ MOG - Simple Anti Lag (V2.1) +++
#==============================================================================
# By Moghunter
# https://atelierrgss.wordpress.com/
#==============================================================================
# Sistema de antilag. Basicamente faz com que o sistema não atualize os eventos
# fora da tela.
#==============================================================================
# Para forçar um evento atualizar fora da tela coloque este comentário no
# evento.
#
# <Force Update>
#
#==============================================================================
# Para desativar ou ativar o sistema de antilag use o comando abaixo
#
# $game_system.anti_lag = true
#
#==============================================================================
# NOTA - Este script não funciona em mapas com efeito LOOP.
#
#==============================================================================
# ● Version History
#==============================================================================
# 2.1 - Compatibilidade com resoluções maiores que o padrão.
#==============================================================================
module MOG_ANTI_LAG
  #Area que será atualizada fora da tela.
  UPDATE_OUT_SCREEN_RANGE = 3
end

$imported = {} if $imported.nil?
$imported[:mog_anti_lag] = true

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System
 
  attr_accessor :anti_lag
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------   
  alias mog_antilag_initialize initialize
  def initialize
      @anti_lag = true
      mog_antilag_initialize
  end 
   
end

#==============================================================================
# ■ Game CharacterBase
#==============================================================================
class Game_CharacterBase
 
  attr_accessor :force_update
  attr_accessor :can_update
 
  #--------------------------------------------------------------------------
  # ● Init Public Members
  #-------------------------------------------------------------------------- 
  alias mog_antilag_init_public_members init_public_members
  def init_public_members
      mog_antilag_init_public_members
      @force_update = false ; @can_update = true
  end
 
end

#==============================================================================
# ■ Game_Character
#==============================================================================
class Game_Event < Game_Character

  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------
  alias mog_anti_lag_initialize initialize
  def initialize(map_id, event)
      mog_anti_lag_initialize(map_id, event)
      anti_lag_initial_setup
  end
 
 #--------------------------------------------------------------------------
 # ● Setup Page Setting
 #--------------------------------------------------------------------------                     
  alias mog_antilag_setup_page_settings setup_page_settings
  def setup_page_settings
      mog_antilag_setup_page_settings
      set_force_update
  end
   
 #--------------------------------------------------------------------------
 # ● Set Force Update
 #--------------------------------------------------------------------------                       
  def set_force_update
      return if @list == nil
      for command in @list
          if command.code == 108
             @force_update = true if command.parameters[0] =~ /<Force Update>/
          end
      end
   end 
 
  #--------------------------------------------------------------------------
  # ● Anti Lag Initial Setup
  #-------------------------------------------------------------------------- 
  def anti_lag_initial_setup
      @can_update = true, rg = [(Graphics.width / 32) - 1, (Graphics.height / 32) - 1]
      @loop_map = ($game_map.loop_horizontal? or $game_map.loop_vertical?) ? true : false
      out_screen = MOG_ANTI_LAG::UPDATE_OUT_SCREEN_RANGE
      @antilag_range = [-out_screen, rg[0] + out_screen,rg[1] + out_screen]
  end
     
  #--------------------------------------------------------------------------
  # ● Anti Lag Force Update
  #--------------------------------------------------------------------------   
  def antilag_force_update?
      return true if !$game_system.anti_lag
      return true if @loop_map
      return true if @force_update
      return true if @trigger != nil and @trigger >= 3
      return true if anti_lag_event_on_screen?
      return false
  end 
   
 #--------------------------------------------------------------------------
 # ● Anti Lag Event On Screen?
 #--------------------------------------------------------------------------
 def anti_lag_event_on_screen?
     distance_x = @x - ($game_map.display_x).truncate
     distance_y = @y - ($game_map.display_y).truncate
     if distance_x.between?(@antilag_range[0], @antilag_range[1]) and
        distance_y.between?(@antilag_range[0], @antilag_range[2])
        return true
     end
     return false
 end
 
 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------     
  alias mog_anti_lag_update update
  def update
      @can_update = antilag_force_update?
      return if !@can_update
      mog_anti_lag_update
  end
end

#==============================================================================
# ■ Sprite Character
#==============================================================================
class Sprite_Character < Sprite_Base

 #--------------------------------------------------------------------------
 # ● Check Can Update Sprite
 #--------------------------------------------------------------------------       
  def check_can_update_sprite
      reset_sprite_effects  if (self.visible and !@character.can_update)
      self.visible = @character.can_update
      @balloon_sprite.visible = self.visible if @balloon_sprite != nil
  end
 
 #--------------------------------------------------------------------------
 # ● Reset Sprite Effects
 #--------------------------------------------------------------------------         
  def reset_sprite_effects
      dispose_animation ; dispose_balloon
  end

 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------           
  alias mog_anti_lag_update update
  def update
      if @character.is_a?(Game_Event)
         check_can_update_sprite
         return if !self.visible
      end
      mog_anti_lag_update
  end
 
end
[close]

MOG - Anti Animation Lag (v1.1)
Ativar/Desativar :
Spoiler
$game_system.anti_lag_animation = true
$game_system.anti_lag_animation = false
[close]
Script :
Spoiler
#==============================================================================
# +++ MOG - Anti Animation Lag (v1.1) +++
#==============================================================================
# By Moghunter
# https://atelierrgss.wordpress.com/
#==============================================================================
# Este script remove as travadas (Lag) relacionadas ao dispose de uma animação.
#==============================================================================

#==============================================================================
# Durante a execução do jogo o Rpg Maker VX ACE leva um tempo considerável para
# ler ou apagar (Dispose) um arquivo. (Imagem, som ou video)
# O que acaba acarretando pequenas travadas durante o jogo, efeito perceptível
# ao usar arquivos relativamente pesados. (Arquivos de animações.)
#==============================================================================
# NOTA - Este script não elimina as travadas relacionadas ao tempo de leitura
# de uma animação, apenas ao tempo relacionado para apagar uma animação.
#==============================================================================
 
$imported = {} if $imported.nil?
$imported[:mog_anti_animation_lag] = true

#===============================================================================
# ■ Game_Temp
#===============================================================================
class Game_Temp
  attr_accessor :animation_garbage
 
  #--------------------------------------------------------------------------
  # ● Initialize
  #-------------------------------------------------------------------------- 
  alias mog_anti_lag_animation_initialize initialize
  def initialize
      @animation_garbage = []
      mog_anti_lag_animation_initialize
  end 
 
end

#===============================================================================
# ■ Game System
#===============================================================================
class Game_System
 
  attr_accessor :anti_lag_animation
 
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------   
  alias mog_antilag_animation_initialize initialize
  def initialize
      @anti_lag_animation = true
      mog_antilag_animation_initialize
  end 
 
end 

#===============================================================================
# ■ SceneManager
#===============================================================================
class << SceneManager
 
  #--------------------------------------------------------------------------
  # ● Call
  #-------------------------------------------------------------------------- 
  alias mog_anti_lag_animation_call call
  def call(scene_class)
      mog_anti_lag_animation_call(scene_class)
      dispose_animation_garbage
  end 
 
  #--------------------------------------------------------------------------
  # ● Goto
  #--------------------------------------------------------------------------   
  alias mog_anti_lag_animation_goto goto
  def goto(scene_class)
      mog_anti_lag_animation_goto(scene_class)
      dispose_animation_garbage
  end
 
  #--------------------------------------------------------------------------
  # ● Dispose Animation Garbage
  #-------------------------------------------------------------------------- 
  def dispose_animation_garbage
      return if $game_temp.animation_garbage == nil
      for animation in $game_temp.animation_garbage
          animation.dispose
      end 
      $game_temp.animation_garbage = nil
  end 

end

#==============================================================================
# ■ Game Map
#==============================================================================
class Game_Map
 
  #--------------------------------------------------------------------------
  # ● Setup
  #--------------------------------------------------------------------------   
  alias mog_anti_lag_animation_setup setup
  def setup(map_id)
      SceneManager.dispose_animation_garbage
      mog_anti_lag_animation_setup(map_id)
  end

end

#==============================================================================
# ■ Scene Base
#==============================================================================
class Scene_Base
 
  #--------------------------------------------------------------------------
  # ● Terminate
  #--------------------------------------------------------------------------     
  alias mog_anti_lag_animation_terminate terminate
  def terminate
      mog_anti_lag_animation_terminate
      SceneManager.dispose_animation_garbage
  end
 
end

#==============================================================================
# ■ Sprite Base
#==============================================================================
class Sprite_Base < Sprite 

  #--------------------------------------------------------------------------
  # ● Dispose Animation
  #--------------------------------------------------------------------------
  alias mog_anti_lag_animation_dispose_animation dispose_animation
  def dispose_animation
      if $game_system.anti_lag_animation 
         execute_animation_garbage 
         return
      end 
      mog_anti_lag_animation_dispose_animation
  end
   
  #--------------------------------------------------------------------------
  # ● Execute Animation Garbage
  #-------------------------------------------------------------------------- 
  def execute_animation_garbage 
      $game_temp.animation_garbage = [] if $game_temp.animation_garbage == nil
      if @ani_bitmap1
         @@_reference_count[@ani_bitmap1] -= 1
        if @@_reference_count[@ani_bitmap1] == 0
            $game_temp.animation_garbage.push(@ani_bitmap1)
         end
      end
      if @ani_bitmap2
         @@_reference_count[@ani_bitmap2] -= 1
         if @@_reference_count[@ani_bitmap2] == 0
            $game_temp.animation_garbage.push(@ani_bitmap2)
        end
     end
     if @ani_sprites
        @ani_sprites.each {|sprite| sprite.dispose }
        @ani_sprites = nil ; @animation = nil
     end
     @ani_bitmap1 = nil ; @ani_bitmap2 = nil
  end   
 
end
[close]
O verdadeiro perdedor é aquele que tem medo de tentar , com medo de não vencer.

  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #12 Online: 12 Jan 2017, 17:49 »
Eu vi que você é muito preocupado com o lag que os eventos podem ocasionar , então tenho mais esses dois scripts Anti-Lag :

MOG - Simple Anti Lag (V2.1)
Ativar/Desativar :
Spoiler
[$game_system.anti_lag = true
$game_system.anti_lag = false
[close]
Script :
Spoiler
#==============================================================================
# +++ MOG - Simple Anti Lag (V2.1) +++
#==============================================================================
# By Moghunter
# https://atelierrgss.wordpress.com/
#==============================================================================
# Sistema de antilag. Basicamente faz com que o sistema não atualize os eventos
# fora da tela.
#==============================================================================
# Para forçar um evento atualizar fora da tela coloque este comentário no
# evento.
#
# <Force Update>
#
#==============================================================================
# Para desativar ou ativar o sistema de antilag use o comando abaixo
#
# $game_system.anti_lag = true
#
#==============================================================================
# NOTA - Este script não funciona em mapas com efeito LOOP.
#
#==============================================================================
# ● Version History
#==============================================================================
# 2.1 - Compatibilidade com resoluções maiores que o padrão.
#==============================================================================
module MOG_ANTI_LAG
  #Area que será atualizada fora da tela.
  UPDATE_OUT_SCREEN_RANGE = 3
end

$imported = {} if $imported.nil?
$imported[:mog_anti_lag] = true

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System
 
  attr_accessor :anti_lag
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------   
  alias mog_antilag_initialize initialize
  def initialize
      @anti_lag = true
      mog_antilag_initialize
  end 
   
end

#==============================================================================
# ■ Game CharacterBase
#==============================================================================
class Game_CharacterBase
 
  attr_accessor :force_update
  attr_accessor :can_update
 
  #--------------------------------------------------------------------------
  # ● Init Public Members
  #-------------------------------------------------------------------------- 
  alias mog_antilag_init_public_members init_public_members
  def init_public_members
      mog_antilag_init_public_members
      @force_update = false ; @can_update = true
  end
 
end

#==============================================================================
# ■ Game_Character
#==============================================================================
class Game_Event < Game_Character

  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------
  alias mog_anti_lag_initialize initialize
  def initialize(map_id, event)
      mog_anti_lag_initialize(map_id, event)
      anti_lag_initial_setup
  end
 
 #--------------------------------------------------------------------------
 # ● Setup Page Setting
 #--------------------------------------------------------------------------                     
  alias mog_antilag_setup_page_settings setup_page_settings
  def setup_page_settings
      mog_antilag_setup_page_settings
      set_force_update
  end
   
 #--------------------------------------------------------------------------
 # ● Set Force Update
 #--------------------------------------------------------------------------                       
  def set_force_update
      return if @list == nil
      for command in @list
          if command.code == 108
             @force_update = true if command.parameters[0] =~ /<Force Update>/
          end
      end
   end 
 
  #--------------------------------------------------------------------------
  # ● Anti Lag Initial Setup
  #-------------------------------------------------------------------------- 
  def anti_lag_initial_setup
      @can_update = true, rg = [(Graphics.width / 32) - 1, (Graphics.height / 32) - 1]
      @loop_map = ($game_map.loop_horizontal? or $game_map.loop_vertical?) ? true : false
      out_screen = MOG_ANTI_LAG::UPDATE_OUT_SCREEN_RANGE
      @antilag_range = [-out_screen, rg[0] + out_screen,rg[1] + out_screen]
  end
     
  #--------------------------------------------------------------------------
  # ● Anti Lag Force Update
  #--------------------------------------------------------------------------   
  def antilag_force_update?
      return true if !$game_system.anti_lag
      return true if @loop_map
      return true if @force_update
      return true if @trigger != nil and @trigger >= 3
      return true if anti_lag_event_on_screen?
      return false
  end 
   
 #--------------------------------------------------------------------------
 # ● Anti Lag Event On Screen?
 #--------------------------------------------------------------------------
 def anti_lag_event_on_screen?
     distance_x = @x - ($game_map.display_x).truncate
     distance_y = @y - ($game_map.display_y).truncate
     if distance_x.between?(@antilag_range[0], @antilag_range[1]) and
        distance_y.between?(@antilag_range[0], @antilag_range[2])
        return true
     end
     return false
 end
 
 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------     
  alias mog_anti_lag_update update
  def update
      @can_update = antilag_force_update?
      return if !@can_update
      mog_anti_lag_update
  end
end

#==============================================================================
# ■ Sprite Character
#==============================================================================
class Sprite_Character < Sprite_Base

 #--------------------------------------------------------------------------
 # ● Check Can Update Sprite
 #--------------------------------------------------------------------------       
  def check_can_update_sprite
      reset_sprite_effects  if (self.visible and !@character.can_update)
      self.visible = @character.can_update
      @balloon_sprite.visible = self.visible if @balloon_sprite != nil
  end
 
 #--------------------------------------------------------------------------
 # ● Reset Sprite Effects
 #--------------------------------------------------------------------------         
  def reset_sprite_effects
      dispose_animation ; dispose_balloon
  end

 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------           
  alias mog_anti_lag_update update
  def update
      if @character.is_a?(Game_Event)
         check_can_update_sprite
         return if !self.visible
      end
      mog_anti_lag_update
  end
 
end
[close]

MOG - Anti Animation Lag (v1.1)
Ativar/Desativar :
Spoiler
$game_system.anti_lag_animation = true
$game_system.anti_lag_animation = false
[close]
Script :
Spoiler
#==============================================================================
# +++ MOG - Anti Animation Lag (v1.1) +++
#==============================================================================
# By Moghunter
# https://atelierrgss.wordpress.com/
#==============================================================================
# Este script remove as travadas (Lag) relacionadas ao dispose de uma animação.
#==============================================================================

#==============================================================================
# Durante a execução do jogo o Rpg Maker VX ACE leva um tempo considerável para
# ler ou apagar (Dispose) um arquivo. (Imagem, som ou video)
# O que acaba acarretando pequenas travadas durante o jogo, efeito perceptível
# ao usar arquivos relativamente pesados. (Arquivos de animações.)
#==============================================================================
# NOTA - Este script não elimina as travadas relacionadas ao tempo de leitura
# de uma animação, apenas ao tempo relacionado para apagar uma animação.
#==============================================================================
 
$imported = {} if $imported.nil?
$imported[:mog_anti_animation_lag] = true

#===============================================================================
# ■ Game_Temp
#===============================================================================
class Game_Temp
  attr_accessor :animation_garbage
 
  #--------------------------------------------------------------------------
  # ● Initialize
  #-------------------------------------------------------------------------- 
  alias mog_anti_lag_animation_initialize initialize
  def initialize
      @animation_garbage = []
      mog_anti_lag_animation_initialize
  end 
 
end

#===============================================================================
# ■ Game System
#===============================================================================
class Game_System
 
  attr_accessor :anti_lag_animation
 
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------   
  alias mog_antilag_animation_initialize initialize
  def initialize
      @anti_lag_animation = true
      mog_antilag_animation_initialize
  end 
 
end 

#===============================================================================
# ■ SceneManager
#===============================================================================
class << SceneManager
 
  #--------------------------------------------------------------------------
  # ● Call
  #-------------------------------------------------------------------------- 
  alias mog_anti_lag_animation_call call
  def call(scene_class)
      mog_anti_lag_animation_call(scene_class)
      dispose_animation_garbage
  end 
 
  #--------------------------------------------------------------------------
  # ● Goto
  #--------------------------------------------------------------------------   
  alias mog_anti_lag_animation_goto goto
  def goto(scene_class)
      mog_anti_lag_animation_goto(scene_class)
      dispose_animation_garbage
  end
 
  #--------------------------------------------------------------------------
  # ● Dispose Animation Garbage
  #-------------------------------------------------------------------------- 
  def dispose_animation_garbage
      return if $game_temp.animation_garbage == nil
      for animation in $game_temp.animation_garbage
          animation.dispose
      end 
      $game_temp.animation_garbage = nil
  end 

end

#==============================================================================
# ■ Game Map
#==============================================================================
class Game_Map
 
  #--------------------------------------------------------------------------
  # ● Setup
  #--------------------------------------------------------------------------   
  alias mog_anti_lag_animation_setup setup
  def setup(map_id)
      SceneManager.dispose_animation_garbage
      mog_anti_lag_animation_setup(map_id)
  end

end

#==============================================================================
# ■ Scene Base
#==============================================================================
class Scene_Base
 
  #--------------------------------------------------------------------------
  # ● Terminate
  #--------------------------------------------------------------------------     
  alias mog_anti_lag_animation_terminate terminate
  def terminate
      mog_anti_lag_animation_terminate
      SceneManager.dispose_animation_garbage
  end
 
end

#==============================================================================
# ■ Sprite Base
#==============================================================================
class Sprite_Base < Sprite 

  #--------------------------------------------------------------------------
  # ● Dispose Animation
  #--------------------------------------------------------------------------
  alias mog_anti_lag_animation_dispose_animation dispose_animation
  def dispose_animation
      if $game_system.anti_lag_animation 
         execute_animation_garbage 
         return
      end 
      mog_anti_lag_animation_dispose_animation
  end
   
  #--------------------------------------------------------------------------
  # ● Execute Animation Garbage
  #-------------------------------------------------------------------------- 
  def execute_animation_garbage 
      $game_temp.animation_garbage = [] if $game_temp.animation_garbage == nil
      if @ani_bitmap1
         @@_reference_count[@ani_bitmap1] -= 1
        if @@_reference_count[@ani_bitmap1] == 0
            $game_temp.animation_garbage.push(@ani_bitmap1)
         end
      end
      if @ani_bitmap2
         @@_reference_count[@ani_bitmap2] -= 1
         if @@_reference_count[@ani_bitmap2] == 0
            $game_temp.animation_garbage.push(@ani_bitmap2)
        end
     end
     if @ani_sprites
        @ani_sprites.each {|sprite| sprite.dispose }
        @ani_sprites = nil ; @animation = nil
     end
     @ani_bitmap1 = nil ; @ani_bitmap2 = nil
  end   
 
end
[close]

Vlw Cara mas não é Lag o problema e sim um bug que acontece que quando eu uso muitos Scripts "Inicio Automatico" o meu personagem não se Move

"Mas Então Usa o Processo Paralelo" O ruim é que so pode usar uma vez (que eu saiba) :hmm:

  • *
  • Escudo CRM
  • Mensagens: 169 Ouro: 18
    • RPG Maker VX/Ace
    • Ver perfil
Scripts de Urgencia ! ;)
« Resposta #13 Online: 12 Jan 2017, 22:10 »
Não é bug.
Sempre que tem um evento de "Início automático" apenas aquele evento vai funcionar no mapa, todos os outros (incluindo o personagem) não funcionam.
O jeito é colocar processo paralelo, pois assim, quantos eventos de "processo paralelo" houverem no mapa vão funcionar ao mesmo tempo. Se você usar muitos eventos (acima de 10, por exemplo) vai dar lag, mas vão funcionar sim.

EDIT: Pra resumir, você pode usar mais de um evento de "processo paralelo" sem medo. Como eu disse, não existe limitações, podem ser dois, três, vinte eventos, vão funcionar tranquilamente.  :ok:
« Última modificação: 12 Jan 2017, 22:13 por 9155gabrielgap »
"A árvore sendo cortada observa com tristeza que o cabo do machado é feito de madeira"


  • *
  • Mensagens: 15 Ouro: 1
  • Eu e Minhas Regras
    • RPG Maker VX/Ace
    • Facebook
    • Twitter
    • Ver perfil
    • E-mail
Scripts de Urgencia ! ;)
« Resposta #14 Online: 12 Jan 2017, 22:14 »
Não é bug.
Sempre que tem um evento de "Início automático" apenas aquele evento vai funcionar no mapa, todos os outros (incluindo o personagem) não funcionam.
O jeito é colocar processo paralelo, pois assim, quantos eventos de "processo paralelo" houverem no mapa vão funcionar ao mesmo tempo. Se você usar muitos eventos (acima de 10, por exemplo) vai dar lag, mas vão funcionar sim.

EDIT: Pra resumir, você pode usar mais de um evento de "processo paralelo" sem medo. Como eu disse, não existe limitações, podem ser dois, três, vinte eventos, vão funcionar tranquilamente.  :ok:

Ok! Valeu a Dica  :ok:

Páginas: [1]   Ir para o Topo
 

SMF 2.0.2 | SMF © 2013, Simple Machines
© Centro RPG Maker - Alguns direitos reservados.
Layout por Uhtred