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: )
Citação de: JVSodre online 11/01/2017 às 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: )
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.
Citação de: 9155gabrielgap online 11/01/2017 às 22:59
Citação de: JVSodre online 11/01/2017 às 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: )
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
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!
Citação de: Speed online 11/01/2017 às 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!
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:
Mas a única coisa que você precisa de um script é a sua exigência numero 3. O resto da para fazer por eventos.
Citação de: Speed online 12/01/2017 às 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.
Eh que eu prefiro por scripts pois sempre o resultado é melhor e estou tentando diminuir meus eventos pois sempre Da algum bug
Citação de: JVSodre online 11/01/2017 às 18:59
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: )
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
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:
CitarCitação de: King Ragnar online 12/01/2017 às 02:51
Citação de: JVSodre online 11/01/2017 às 18:59
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: )
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
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
Citação de: JVSodre online 12/01/2017 às 09:37
CitarCitação de: King Ragnar online 12/01/2017 às 02:51
Citação de: JVSodre online 11/01/2017 às 18:59
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: )
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
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.
Citação de: 9155gabrielgap online 12/01/2017 às 15:04
Citação de: JVSodre online 12/01/2017 às 09:37
CitarCitação de: King Ragnar online 12/01/2017 às 02:51
Citação de: JVSodre online 11/01/2017 às 18:59
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: )
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
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 . . .
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
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
MOG - Anti Animation Lag (v1.1)
Ativar/Desativar :
Spoiler
$game_system.anti_lag_animation = true
$game_system.anti_lag_animation = false
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
Citação de: King Ragnar online 12/01/2017 às 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
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
MOG - Anti Animation Lag (v1.1)
Ativar/Desativar :
Spoiler
$game_system.anti_lag_animation = true
$game_system.anti_lag_animation = false
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
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:
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:
Citação de: 9155gabrielgap online 12/01/2017 às 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:
Ok! Valeu a Dica :ok: