UltimaForum

Wsparcie [VX] - AVI

FireBlade - Nie 03 Paź, 2010 16:38
Temat postu: AVI
Witam.
Mam kłopot ponieważ chciała bym aby ten skrypt :
Spoiler:


class Scene_Movie

def initialize(movie)
@readini = Win32API.new 'kernel32', 'GetPrivateProfileStringA', %w(p p p p l p), 'l'
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".avi"
main
end

def main

game_name = "\0" * 256
@readini.call('Game','Title','',game_name,255,".\\Game.ini")
game_name.delete!("\0")
@wnd = Win32API.new('user32','FindWindowEx','%w(l,l,p,p)','L')
@temp = @wnd.call(0,0,nil,game_name).to_s
movie = Win32API.new('winmm','mciSendString','%w(p,p,l,l)','V')
movie.call("open \""+@movie_name+"\" alias FILE style 1073741824 parent " + @temp.to_s,0,0,0)
@message = Win32API.new('user32','SendMessage','%w(l,l,l,l)','V')

@detector = Win32API.new('user32','GetSystemMetrics','%w(l)','L')
@width = @detector.call(0)
if @width == 640
fullscreen
Graphics.update
sleep(1)
Graphics.update
sleep(1)
Graphics.update
sleep(1)
end

status = " " * 255
movie.call("play FILE",0,0,0)
loop do
sleep(0.1)
@message.call(@temp.to_i,11,0,0)
Graphics.update
@message.call(@temp.to_i,11,1,0)
Input.update
movie.call("status FILE mode",status,255,0)
true_status = status.unpack("aaaa")
if true_status.to_s != "play"
break
end
if Input.trigger?(Input::B)
Input.update
break
end
end
movie.call("close FILE",0,0,0)
bail
end

def bail
if @width == 640
fullscreen
end
end
end

def fullscreen()

$full.call(18,0,0,0)
$full.call(13,0,0,0)
$full.call(18,0,2,0)
$full.call(13,0,2,0)
end
$full = Win32API.new('user32','keybd_event','%w(l,l,l,l)','')



Odtwarzał filmy WMV a nie tylko AVI >_>

Mam nadzieje że ktoś pomoże
Pozdrawiam FBI

CreeperCrisis - Nie 03 Paź, 2010 17:11

A może zrób tak, żeby odtwarzało tylko filmy WMV:

Nie wiem jak to zrobić ale zauważyłem:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".avi"

Spróbuj zmienić na:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".wmv"


Jak nie będzie działało ustaw jak było Bo nic nie wymyślę.

EDIT: Słuchaj... Spróbuj wstawić linijkę:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".wmv"

Pod linijkę:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".avi"

FireBlade - Nie 03 Paź, 2010 17:14

Kiedy zrobiłam bez tego :
CRISIS CORE napisał/a:
EDIT: Słuchaj... Spróbuj wstawić linijkę:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".wmv"

Pod linijkę:
Kod:
@movie_name = Dir.getwd()+"\\Graphics\\"+movie+".avi"

To jakby wyświetlało film ale go nie widać :/

CreeperCrisis - Nie 03 Paź, 2010 17:20

To nie wiem... Spróbuj pierwszy sposób i skonwertuj AVI do WMV:

http://www.instalki.pl/pr..._Converter.html

FireBlade - Nie 03 Paź, 2010 17:25

Ale później na AVI są napisy z jakiego programu są skonwertowane i psuje mi to efekt
Squall - Nie 03 Paź, 2010 17:39

A czy WMV nie zajmuje mniej niż AVI? Pytanie retoryczne bo nie wiem?
FireBlade - Nie 03 Paź, 2010 17:39

Tak zajmuje mnie ale Squall to nie jest temat o pytaniach ; P
Yoroiookami - Nie 03 Paź, 2010 18:12

FireBlade - nie wiem jak chcesz to zrobić, żeby działało u wszystkich. Ten skrypt ma tyle dziur, że o ile ktoś nie ma tych kodeków co ty - wyświetla tylko czarny ekran, lub zawiesza grę :(

P.S. Nie twierdzę że to wina skryptu :mrgreen:


Powered by phpBB modified by Przemo © 2003 phpBB Group