Chci se optat jak to love spustim,me to nejak nechce bezet? Nainstaloval jsem lua z repa, ppak love pomoci deb balicku z ofiko stranek, stahnul jsem ten „hello world“ ze stranek, udelal main.lua a game.conf, kdyz pak pustim z raky #love main.lua tak vidim jak probehne init jednutlivych subsystemu ,vyhodi to chybu,ze nemuze najit main.lua a konec,to je vse. Delam neco blbe,ale netusim co.
U love se predava celi adresar obsahujici main.lua popripade .love soubor(zazipovany obsah pracovniho adresare prejmenovani na *.love). Pokud je hra distribuovana jako spustitelny soubor vcetne interpretu, je mozno predat jako parametr i spustitelny soubor ke kteremu byla hra pripojena a to i exe pod linuxem.
Jak už přede mnou napsal GreenHell, je interpretru v příkazové řádce předáván vždy celý název adresáře (to v případě, že se hra vyvíjí) nebo název zip souboru s tímto adresářem, který se přejmenuje na *.love.
Ve Windows je už při instalaci Löve provedena asociace souborů *.love s interpretrem, takže by na ně měl stačit dvojklik, popř. lze *.love „přesunout“ na ikonu interpretru; to stejné lze samozřejmě udělat i v KDE/Gnome či Midnight Commanderu.
Inspirován lákavým nadpisem jsem si začal hrát s Lua/Löve.
Nahlížím však, že Lua je, pokud se textu týče, přísně 8bitová a Löve
0.5.0 se – zdá se – také problémem diakritiky netrápí. Nepodařilo
se mi ve Windows® správně zobrazit Žluťoučkého koně nejenom
v Unicode, ale ani s cp1250 a s fonty arial.ttf
,
arialuni.ttf
, arialun0.ttf
.
Nerad bych znovu vynalézal kolo. Podělí se někdo (autor) o fungující řešení… prosím?
Jinak děkuji autorovi a redakci za nasměrování na tento opravdu zajímavý výtvor.
(Mimochodem název Löve je pro googling velmi nešťastný. Ačkoliv použijete znak ö, zaplaví vás místo informací láska, proto prosím, nekamenujte mě, že jsem možná dost nehledal.)
Ano, Lua skutečně pracuje s osmibitovými znaky v řetězcích, takže s Unicode (na Windows spíše s UCS-2) může být problém. Vyzkouším dnes večer češtinu s Löve na Windows a poreferuji tady v diskusi o výsledku.
Jinak opravdu hledání Googlem vrací spíše kuriozity typu „I think I'm falling in love – Lua is the new perl“ než použitelné výsledky :-), podobně jako při hledání informací k jazyku Logo (to je zde však o mnoho déle než Google) nebo k Expression Language (ovšem tady Sun s názvem střelil úplně vedle, toto je skoro nehledatelné :-)
Testy nabodeníček na Windows jsou prozatím negativní, evidentně se cestou Lua->Löve->(SDL+FreeType) nikde nepřenáší informace o stránce, pouze čistý osmibitový text, tj. znaky s kódy 0–255.
To je pro naše nabodeníčka špatné, protože ve fontech typu OpenType (to jsou AFAIK všechny Vámi zmiňované) jsou v první stránce pouze znaky latinky + akcenty pro západoevropské jazyky, což je vidět i po spuštění následujícího skriptu (nový font se přidá snadno – musí se, abychom to zbytečně nekomplikovali, zkopírovat do adresáře s „hrou“ a změnit řádek s love.graphics.newFont).
Asi (docela jsem si tím jistý :-) by pomohlo použití původních ne-Unicode fontů, například „Arial CE“ apod.
Pokud někdo takový font vlastní (je například ve starých Windows 3.11, snad i v 95kách), může prosím vyzkoušet následující skriptík?:
function load()
local font = love.graphics.newFont(love.default_font, 30)
–local font = love.graphics.newFont(„DejaVuLGCSansMono.ttf“, 30)
– nahradit jméno fontu je „CE“ variantou a odkomentovat
– local font = love.graphics.newFont(„arial.ttf“, 30)
love.graphics.setFont(font);
love.graphics.setColor(200, 200, 200); end
direction = 0
function draw()
love.graphics.setColor(200, 200, 200);
for y = 0, 7 do
local str = ""
for x = 0, 31 do
str = str .. string.char(x+y32)
end
love.graphics.draw(str, 20, 40+y40);
end
love.graphics.setColor(255, 200, 200);
love.graphics.draw(„Příliš žluťoučký kůň úpěl ďábelské
ódy…“, 30, 500);
love.graphics.draw(„Press escape to exit.“, 30, 540); end
function keypressed(key)
if key == love.key_escape then
love.system.exit()
end end
Existuje alespoň jeden snadno dosažitelný font s CE v názvu, se kterým čeština ve Windows XP funguje správně.
Portuji herní engine LÖVE do jazyka Java, trochu jsem o tom napsal jako komentář v dalším článku, kde mi můžete zanechat své vzkazy. :-)