A Hiba c. extragalaktikus művem JavaScript-ben való újrafogalmazása közben jutott eszembe ez a novella. A klasszikus Galakita 26. számában közölték le. Remélem nemsokára talán letölthető lesz innen http://galaktikabolt.hu/ (most at 5. résznél tartanak). De addig is a lényeges oldalt befénymáslottam (itt megtekinthető). A Galaktikabeli fordítás a "Die Science Fiction-Horror-Film-Taschen-Computer" fordítás alapján készült 1971-ben, még a bull-shit generátorok világa előtti korszakban. Az eredeti mű címe: "The Science Fiction Horror Movie Pocket Computer". Az eredetit nézegetve a magyar fordító picit belenyúlt a lehetséges történetek menetébe. És persze ezt a koncepciót fejleszti tovább a Sci-fi TV film szinposzis generátor is. Más irányú kiegészítés excel-ben megvalósíva (részletek itt, kicsit több magyarázat). És itt van a php téma is. Azóta magyarul is megjelent egy az index-en. Hihi. Írhatunk magunknak halivúdi film-forgatókönyveket!
Az alap egy irányított gráf, amelyet többféle úton lehet bejárni. A bejárások közben mindig más és más történetet kapunk. Persze nem annyira egyedi, de mindenképpen jó vicc. Már többször is leprogramoztam és elérkezettnek láttam a időt, hogy JavaScript-ben is meglegyen. Nagyon picit változtattam csak rajta. Magyarban próbáltam az egyes és többes számot helyesen összehozni (ami még az eredeti verzióban sem volt megoldva) és persze a tárgy kirakása is figyelmet igényelt. Néhol azért döcögnek a mondatok, de nagy általánosságban élvezhető. Egy helyen az irányítás menetébe is beavatkoztam. Az alján nem csak a bal oldali "de"-hez lehet eljutni a "hatástalannak bizonyul" pontból, hanem a jobb oldalihoz is. Ezzel nem lesz kör a gráfban és érdekesebb történetekhez juthatunk.
Frissítésenként 5 történet olvasható.
A JavaScript forrása megtekinthető itt. A csomópontok egy szövegrészből és a belőle induló további csomópontokra mutatókból áll. Így rekurzívan megadható a teljes fa. Ezt az elején felépíti a szkript. A kontrolok is benne vannak (egyes/többes szám, tárgyas ragokat ki kell-e tenni). A végén egy számozott listát épít fel az 5 darab "novellából". Sajnos a nagyon rövid történetek valószínűsége ugyanannyi, mint a hosszabaknak, ezért azt is bele kellett tenni, hogy ha kétszer ugyanaz a történet jönne létre, akkor csináljon egy újat. Ez 500 történet megírásánál is pillanatok alatt elkészül.
Elvileg az is megvalósítható, hogy a hívásban html-ből meg lehessen, hogy hány novellát hozzon létre. A SCRIPT HTML tag-ben lehet egy olyan attribútumot megani, amit később vissza lehet olvasni (pl. <SCRIPT ... novel=15>). Sajnos a különböző browser-ekben másként lehet megoldani, ezért végül is nem implementáltam. Illetve az is probléma, ha két SCRIPT tag-et adunk meg, akkor hogyan lehet azonosítani, hogy éppen melyik fut. Ezt majd legközelebb...
Vigyázzunk magunkra minden nap!
+jegyzések