segunda-feira, 14 de maio de 2012
video no rpg maker vx
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# - Game_Film II - reloaded ^^
# par berka
#
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# Rgss 1&2 v 1.0
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# -utilizaçao-
# escreva em um evento um script#058
#
# #requerimento minimu;
# [film] # obrigatorio !
# film = monfilm.avi # ou mpg... nome do arquivo e livre
#
# #configuraçao opicional, a ordem e importante
# poe as 4 cordenadas !
# x = 12 # posiçao horizontal
# y = 1 # posiçao vertical
# w = 150 # dimenssao do filme: largura
# h = 150 # dimenssao do filme: altura
#
# full = true # ativa o modo fullscreen
# vol = 750 # entre 0 e 1000 volume sonoro do filme
# bass = 999 # entre 0 e 1000 volume dos bass
# aig = 250 # entre 0 e 1000 volume dos aigus
# #comandos:
# dependendo de como esta as teclas de seu teclado sao os basicos parar video e voltar
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# este novo script de video nao tem o problema de nao passar o video ou ficar piscando
# e surporta varios formatos de arquivos e ele detecta automaticamente o tipo de video
# o encontrei por que o "scenemovie no vx" nao estava muito bom e zarpiando por ai
# consegui encontrar este script que testei e deu tudo certo ele e muito facil de se lidar
# na demo vem dizendo tudo direitinho.
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
class Game_Film
def initialize(hash)
hash.has_key?(:film) ? film=hash[:film] : return
hash.has_key?(:x) ? @x=hash[:x]+" " : @x="0"
hash.has_key?(:y) ? @y=hash[:y]+" " : @y="0"
hash.has_key?(:w) ? @w=hash[:w]+" " : @w=""
hash.has_key?(:h) ? @h=hash[:h]+" " : @h=""
hash.has_key?(:vol) ? @vol=hash[:vol]+" " : @vol="1000"
hash.has_key?(:bass) ? @bass=hash[:bass]+" " : @bass="1000"
hash.has_key?(:aig) ? @aig=hash[:aig]+" " : @aig="1000"
hash.has_key?(:pos) ? @pos="at pos #{hash[:pos].to_i*1000} " : @pos="at pos 0 "
@full=hash[:full] if hash.has_key?(:full)
@full&&dim_ecran !=[640,480] ? @plee="fullscreen " : @plee=""
@type=" "
@type=" type mpegvideo" if File.extname(film)==(".mpg"||".mpeg")
@type=" type avivideo" if File.extname(film)==".avi"
@nom='./Films/'+film
(p "fichier #{@nom} non trouvé";return) if !FileTest.exist?(@nom)
@film=Win32API.new('winmm','mciSendString','ppll','v')
lecture
end
def handle
jeu="\0"*256
ini=Win32API.new('kernel32','GetPrivateProfileStringA','pppplp', 'l')
ini.call('Game','','',jeu,255,".\\Game.ini")
return Win32API.new('user32','FindWindowEx','llpp','l').call(0,0,nil,jeu.delete!("\0"))
end
def lecture
v,t,status,pause=version,Time.now," "*255,false
@film.call("open #{@nom} alias FILE#{@type} style child parent "+handle.to_s,0,0,0)
@film.call("put FILE window at #{@x}#{@y}#{@w}#{@h}",status,255,0)
@film.call("setaudio File volume to #{@vol}",status,255,0)
@film.call("setaudio File bass to #{@bass}",status,255,0)
@film.call("setaudio File trebble to #{@bass}",status,255,0)
@film.call("play FILE #{@plee} notify",status,255,handle)
loop{sleep(0.1)
Input.update
@film.call("status FILE mode notify",status,255,0)
break if status.unpack("aaaa")=="stop".split(//)||Input.trigger?(Input::B)
if Input.trigger?(Input::C)
if !pause;@film.call("pause FILE notify",status,255,handle);pause=true
else;@film.call("play FILE #{@plee} notify",status,255,handle);pause=false
end
end
(t=maj(t))if v=='xp'}
@film.call("close FILE notify",0,0,handle)
$scene=Scene_Map.new
end
def dim_ecran
lw=Win32API.new('user32','GetSystemMetrics','i','i')
return lw.call(0),lw.call(1)
end
def maj(t)
(Graphics.update;return Time.now)if t.sec<=Time.now.sec-9||t.min !=Time.now.min
return t
end
def version;FileTest.exist?('./Data/scripts.rvdata') ? 'vx': 'xp';end
end
Dir.open("./Films") rescue Dir::mkdir("./Films",0777)
class Game_Interpreter;def eval(script);cmd_eval(script);end;end#rmvx
class Interpreter;def eval(script);cmd_eval(script);end;end#rmxp
def cmd_eval(script)
if script.include?("[film]")
hash={}
script.gsub!("[film]"){}
list=script.split("\n")
list.each{|e|e.gsub!(" "){};f=e.split("=");hash[f[0].to_sym]=f[1] if !f[1].nil?}
Game_Film.new(hash)
else;return Kernel.eval(script)
end
end
Assinar:
Postar comentários (Atom)
Implante obrigatório do CHIP em humanos nos EUA REFORMA SANITÃRIA a marca da besta de apocalipse 13
apocalipse 13
13. E faz grandes sinais, de maneira que até fogo faz descer do céu à terra, à vista dos homens.
14. E engana os que habitam na terra com sinais que lhe foi permitido que fizesse em presença da besta, dizendo aos que habitam na terra que fizessem uma imagem à besta que recebera a ferida da espada e vivia.
15. E foi-lhe concedido que desse espírito à imagem da besta, para que também a imagem da besta falasse, e fizesse que fossem mortos todos os que não adorassem a imagem da besta.
16. E faz que a todos, pequenos e grandes, ricos e pobres, livres e servos, lhes seja posto um sinal na sua mão direita, ou nas suas testas,
17. Para que ninguém possa comprar ou vender, senão aquele que tiver o sinal, ou o nome da besta, ou o número do seu nome.
18. Aqui há sabedoria. Aquele que tem entendimento, calcule o número da besta; porque é o número de um homem, e o seu número é seiscentos e sessenta e seis.
13. E faz grandes sinais, de maneira que até fogo faz descer do céu à terra, à vista dos homens.
14. E engana os que habitam na terra com sinais que lhe foi permitido que fizesse em presença da besta, dizendo aos que habitam na terra que fizessem uma imagem à besta que recebera a ferida da espada e vivia.
15. E foi-lhe concedido que desse espírito à imagem da besta, para que também a imagem da besta falasse, e fizesse que fossem mortos todos os que não adorassem a imagem da besta.
16. E faz que a todos, pequenos e grandes, ricos e pobres, livres e servos, lhes seja posto um sinal na sua mão direita, ou nas suas testas,
17. Para que ninguém possa comprar ou vender, senão aquele que tiver o sinal, ou o nome da besta, ou o número do seu nome.
18. Aqui há sabedoria. Aquele que tem entendimento, calcule o número da besta; porque é o número de um homem, e o seu número é seiscentos e sessenta e seis.
Apocalipse14: 9-10
E seguiu-os o terceiro anjo, dizendo com grande voz: Se alguém adorar a besta, e a sua imagem, e receber o sinal na sua testa, ou na sua mão,
Também este beberá do vinho da ira de Deus, que se deitou, não misturado, no cálice da sua ira; e será atormentado com fogo e enxofre diante dos santos anjos e diante do Cordeiro.
Apocalipse 14:9-10
Também este beberá do vinho da ira de Deus, que se deitou, não misturado, no cálice da sua ira; e será atormentado com fogo e enxofre diante dos santos anjos e diante do Cordeiro.
Apocalipse 14:9-10
0 comentários:
Postar um comentário