diff --git a/data/X2_font.fnt b/data/X2_font.fnt new file mode 100644 index 0000000..57484a3 --- /dev/null +++ b/data/X2_font.fnt @@ -0,0 +1,130 @@ +bitmap=X2_font.gif +32: 0 0 6 10 0 0 # +33: 8 0 6 10 0 0 # ! +34: 16 0 6 10 0 0 # " +35: 24 0 6 10 0 0 # # +36: 32 0 6 10 0 0 # $ +37: 40 0 6 10 0 0 # % +38: 48 0 6 10 0 0 # & +39: 56 0 6 10 0 0 # ' +40: 64 0 6 10 0 0 # ( +41: 72 0 6 10 0 0 # ) +42: 80 0 6 10 0 0 # * +43: 88 0 6 10 0 0 # + +44: 96 0 6 10 0 0 # , +45: 104 0 6 10 0 0 # - +46: 112 0 6 10 0 0 # . +47: 120 0 6 10 0 0 # / + +48: 0 12 6 10 0 0 # 0 +49: 8 12 6 10 0 0 # 1 +50: 16 12 6 10 0 0 # 2 +51: 24 12 6 10 0 0 # 3 +52: 32 12 6 10 0 0 # 4 +53: 40 12 6 10 0 0 # 5 +54: 48 12 6 10 0 0 # 6 +55: 56 12 6 10 0 0 # 7 +56: 64 12 6 10 0 0 # 8 +57: 72 12 6 10 0 0 # 9 +58: 80 12 6 10 0 0 # : +59: 88 12 6 10 0 0 # ; +60: 96 12 6 10 0 0 # < +61: 104 12 6 10 0 0 # = +62: 112 12 6 10 0 0 # > +63: 120 12 6 10 0 0 # ? + +64: 0 24 6 10 0 0 # @ +65: 8 24 6 10 0 0 # A +66: 16 24 6 10 0 0 # B +67: 24 24 6 10 0 0 # C +68: 32 24 6 10 0 0 # D +69: 40 24 6 10 0 0 # E +70: 48 24 6 10 0 0 # F +71: 56 24 6 10 0 0 # G +72: 64 24 6 10 0 0 # H +73: 72 24 6 10 0 0 # I +74: 80 24 6 10 0 0 # J +75: 88 24 6 10 0 0 # K +76: 96 24 6 10 0 0 # L +77: 103 24 7 10 0 0 # M +78: 112 24 6 10 0 0 # N +79: 120 24 6 10 0 0 # O + +80: 0 36 6 10 0 0 # P +81: 8 36 6 10 0 0 # Q +82: 16 36 6 10 0 0 # R +83: 24 36 6 10 0 0 # S +84: 32 36 6 10 0 0 # T +85: 40 36 6 10 0 0 # U +86: 48 36 6 10 0 0 # V +87: 55 36 8 10 0 0 # W +88: 64 36 6 10 0 0 # X +89: 72 36 6 10 0 0 # Y +90: 80 36 6 10 0 0 # Z +91: 88 36 6 10 0 0 # [ +92: 96 36 6 10 0 0 # \ +93: 104 36 6 10 0 0 # ] +94: 112 36 6 10 0 0 # ^ +95: 120 36 6 10 0 0 # _ + +96: 0 48 6 10 0 0 # ` +97: 8 48 6 10 0 0 # a +98: 16 48 6 10 0 0 # b +99: 24 48 6 10 0 0 # c +100: 32 48 6 10 0 0 # d +101: 40 48 6 10 0 0 # e +102: 48 48 6 10 0 0 # f +103: 56 48 6 10 0 0 # g +104: 64 48 6 10 0 0 # h +105: 72 48 6 10 0 0 # i +106: 80 48 6 10 0 0 # j +107: 88 48 6 10 0 0 # k +108: 96 48 6 10 0 0 # l +109: 103 48 7 10 0 0 # m +110: 112 48 6 10 0 0 # n +111: 120 48 6 10 0 0 # o + +112: 0 60 6 10 0 0 # p +113: 8 60 6 10 0 0 # q +114: 16 60 6 10 0 0 # r +115: 24 60 6 10 0 0 # s +116: 32 60 6 10 0 0 # t +117: 40 60 6 10 0 0 # u +118: 48 60 6 10 0 0 # v +119: 55 60 8 10 0 0 # w +120: 64 60 6 10 0 0 # x +121: 72 60 6 10 0 0 # y +122: 80 60 6 10 0 0 # z +123: 88 60 6 10 0 0 # { +124: 96 60 6 10 0 0 # | +125: 104 60 6 10 0 0 # } +126: 112 60 6 10 0 0 # ~ +127: 120 60 6 10 0 0 # ⌂ + +# Extended characters +161: 0 72 6 10 0 # ¡ +191: 8 72 6 10 0 # ¿ +192: 16 72 6 16 6 # À +193: 24 72 6 16 6 # Á +200: 32 72 6 16 6 # È +201: 40 72 6 16 6 # É +204: 48 72 6 16 6 # Ì +205: 56 72 6 16 6 # Í +210: 64 72 6 16 6 # Ò +211: 72 72 6 16 6 # Ó +217: 80 72 6 16 6 # Ù +218: 88 72 6 16 6 # Ú +209: 96 72 6 14 4 # Ñ +241: 104 72 6 12 2 # ñ +199: 112 72 6 10 0 # Ç +231: 120 72 6 10 0 # ç +224: 0 90 6 14 4 # à +225: 8 90 6 14 4 # á +232: 16 90 6 14 4 # è +233: 24 90 6 14 4 # é +236: 32 90 6 14 4 # ì +237: 40 90 6 14 4 # í +242: 48 90 6 14 4 # ò +243: 56 90 6 14 4 # ó +249: 64 90 6 14 4 # ù +250: 72 90 6 14 4 # ú diff --git a/data/X2_font.gif b/data/X2_font.gif new file mode 100644 index 0000000..edc2c27 Binary files /dev/null and b/data/X2_font.gif differ diff --git a/data/logo.lua b/data/logo.lua index 8883825..b044a86 100644 --- a/data/logo.lua +++ b/data/logo.lua @@ -30,7 +30,7 @@ function draw_logo (x, y) local sh = arcade_config.org_resolucion.height local dw = arcade_config.resolucion.width local dh = arcade_config.resolucion.height - surf.target(textsf) + surf.target(x2logo) view.origin(0,0) surf.cls(0) @@ -57,7 +57,7 @@ function draw_logo (x, y) draw.surf(S_x,S_y,tw,th,24+tw*5-15,0,tw,th) - surf.source(textsf) + surf.source(x2logo) surf.target(curr_surf_tgt) view.origin(ox,oy) draw.surf(0,0,sw,sh,x,y,dw,dh) diff --git a/data/main.lua b/data/main.lua index 1483597..f8c5037 100644 --- a/data/main.lua +++ b/data/main.lua @@ -45,7 +45,10 @@ function mini.init() back=surf.new(arcade_config.surface.width,arcade_config.surface.height) fade.init() - textsf=surf.new(arcade_config.org_resolucion.width,arcade_config.org_resolucion.height) + font_sf=font.load("X2_font.fnt") + + -- text_sf=surf.new(arcade_config.org_resolucion.width,arcade_config.org_resolucion.height) + x2logo=surf.new(arcade_config.org_resolucion.width,arcade_config.org_resolucion.height) -- Càrrega dels audios audio_text_abad = sound.load(audio_text_abad) @@ -101,7 +104,7 @@ function mini.update() if (game_update) then game_update() end end -function text(str,x,y,col) +function text(str,x,y,col) draw.text(str,x-1,y-1,16) draw.text(str,x,y-1,16) draw.text(str,x+1,y-1,16) @@ -115,47 +118,57 @@ function text(str,x,y,col) end function arc_text(str, x, y, col) - local curr_surf_tgt = surf.target() - local curr_surf_src = surf.source() - local sw = arcade_config.org_resolucion.width - local sh = arcade_config.org_resolucion.height - local dw = arcade_config.resolucion.width - local dh = arcade_config.resolucion.height - surf.target(textsf) - surf.cls(0) - draw.text(str,0,0,col) + -- local curr_surf_tgt = surf.target() + -- local curr_surf_src = surf.source() + -- local sw = arcade_config.org_resolucion.width + -- local sh = arcade_config.org_resolucion.height + -- local dw = arcade_config.resolucion.width + -- local dh = arcade_config.resolucion.height + -- surf.target(textsf) + -- surf.cls(0) + + font.current(font_sf) + -- font.spacing(0) + + draw.text(str,x,y,col) + -- draw.text(str,0,0,col) -- print("arc_ "..str) - surf.source(textsf) - surf.target(curr_surf_tgt) - draw.surf(0,0,sw,sh,x,y,dw,dh) - surf.source(curr_surf_src) + -- surf.source(textsf) + -- surf.target(curr_surf_tgt) + -- draw.surf(0,0,sw,sh,x,y,dw,dh) + -- surf.source(curr_surf_src) end function arc_textB(str, x, y, col) - local ox, oy = view.origin() - local curr_surf_tgt = surf.target() - local curr_surf_src = surf.source() - local sw = arcade_config.org_resolucion.width - local sh = arcade_config.org_resolucion.height - local dw = arcade_config.resolucion.width - local dh = arcade_config.resolucion.height - surf.target(textsf) - view.origin(0,0) - surf.cls(0) - draw.text(str,0,0,16) - draw.text(str,1,0,16) - draw.text(str,2,0,16) - draw.text(str,0,1,16) - draw.text(str,2,1,16) - draw.text(str,0,2,16) - draw.text(str,1,2,16) - draw.text(str,2,2,16) + -- local ox, oy = view.origin() + -- local curr_surf_tgt = surf.target() + -- local curr_surf_src = surf.source() + -- local sw = arcade_config.org_resolucion.width + -- local sh = arcade_config.org_resolucion.height + -- local dw = arcade_config.resolucion.width + -- local dh = arcade_config.resolucion.height + -- surf.target(textsf) + -- view.origin(0,0) + -- surf.cls(0) + + font.current(font_sf) + -- font.spacing(0) + + draw.text(str,x+0,y+0,16) + draw.text(str,x+1,y+0,16) + draw.text(str,x+2,y+0,16) + draw.text(str,x+0,y+1,16) + draw.text(str,x+2,y+1,16) + draw.text(str,x+0,y+2,16) + draw.text(str,x+1,y+2,16) + draw.text(str,x+2,y+2,16) - draw.text(str,1,1,col) + -- draw.text(str,1,1,col) + draw.text(str,x,y,col) -- print("arc_B "..str) - surf.source(textsf) - surf.target(curr_surf_tgt) - view.origin(ox,oy) - draw.surf(0,0,sw,sh,x,y,dw,dh) - surf.source(curr_surf_src) + -- surf.source(textsf) + -- surf.target(curr_surf_tgt) + -- view.origin(ox,oy) + -- draw.surf(0,0,dw,dw,x,y,dw,dh) + -- surf.source(curr_surf_src) end \ No newline at end of file diff --git a/data/scenes.lua b/data/scenes.lua index 17a932d..21c1832 100644 --- a/data/scenes.lua +++ b/data/scenes.lua @@ -231,8 +231,10 @@ function draw_scene() elseif scenes.step==5 then -- text(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x*o2aX,7*o2aX,2) -- view.origin(0,scenes.offset-20) -- Ni idea de perquè 38, o es 19*o2aX? - arc_textB(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x*o2aX,7*o2aX,2) - if scenes.char<#scenes.current_scene[scenes.dnum].text[1] then + -- arc_textB(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x*o2aX,7*o2aX,2) + arc_textB(utf8.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x*o2aX,7*o2aX,2) + -- if scenes.char<#scenes.current_scene[scenes.dnum].text[1] then + if scenes.char