[Script Info] ; Script generated by Aegisub 3.0.4 ; http://www.aegisub.org/ Title: Default Aegisub file ScriptType: v4.00+ WrapStyle: 0 ScaledBorderAndShadow: yes Collisions: Normal PlayResX: 1280 PlayResY: 720 Video Zoom Percent: 1 Scroll Position: 0 Active Line: 17 Last Style Storage: Default YCbCr Matrix: None [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding Style: Vietsub-furigana,UVN Thang Gieng,35,&H00FFFFFF,&H000000FF,&H00B74D2F,&H00000000,-1,0,0,0,100,100,0,0,1,0.5,0,2,10,10,10,1 Style: Vietsub,UVN Thang Gieng,70,&H00FFFFFF,&H000000FF,&H00B74D2F,&H00000000,-1,0,0,0,100,100,0,0,1,1,0,2,10,10,50,1 [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Comment: 0,0:00:00.00,0:00:00.00,Vietsub,Get Scr Resolution,0,0,0,code once,xres, yres = _G.aegisub.video_size() if xres == nil then x_rat = 1 y_rat = 1 else x_rat = xres/1024 y_rat = x_rat end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,Get Frame Dur,0,0,0,code once,msa = _G.aegisub.ms_from_frame(1) msb = _G.aegisub.ms_from_frame(100) if msa == nil and msb == nil then frame_dur = 33 else frame_dur = (msb-msa)/100 end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,math.randomseed(8317) Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code syl all,fxgroup.blankfx = (syl.inline_fx == "") Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,heart = {} heart[1] = {x=0,y=16} heart[2] = {x=3,y=12} heart[3] = {x=8,y=8} heart[4] = {x=11,y=4} heart[5] = {x=13,y=-1} heart[6] = {x=13,y=-6} heart[7] = {x=12,y=-9} heart[8] = {x=9,y=-11} heart[9] = {x=4,y=-11} heart[10] = {x=2,y=-8} heart[11] = {x=0, y=-5} heart[12] = {x=-2,y=-8} heart[13] = {x=-4,y=-11} heart[14] = {x=-9,y=-11} heart[15] = {x=-12,y=-9} heart[16] = {x=-13,y=-6} heart[17] = {x=-13,y=-1} heart[18] = {x=-11,y=4} heart[19] = {x=-8,y=8} heart[20] = {x=-4,y=12} Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once all,function char_counter(ref) ci[ref] = ci[ref] + 1; return "" end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code line all,ci = { 0,0,0,0,0,0,0,0 }; cn = _G.unicode.len(orgline.text_stripped:gsub(" ","")) Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,temp = {} Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,function set_temp(ref,val) temp[ref] = val; return val; end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,function tags(dur) tag = string.format("\\t(%d,%d,\\fscx%d\\fscy%d)\\t(%d,%d,\\fscx10\\fscy10)\\t(%d,%d,\\fscx%d\\fscy%d)\\t(%d,%d,\\fscx10\\fscy10)",set_temp("time",math.random(dur-200)),temp.time+1,set_temp("size",math.random(30,70)),temp.size,temp.time+2,temp.time+100,temp.time+101,temp.time+102,set_temp("size",math.random(30,70)),temp.size,temp.time+103,temp.time+200) return tag end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,function tags2(dur) tag = "" temp.time = 0 while temp.time < dur do tag = tag..string.format("\\t(%d,%d,\\fr%d\\fry%d)",set_temp("time",temp.time+math.random(33,66)),temp.time+33,math.random(-2,2),math.random(-20,20)) end return tag end Dialogue: 0,0:00:00.00,0:00:00.00,Vietsub,Beizer Curve Move,0,0,0,code once,function bezier_move(x1,y1,x2,y2,x3,y3,x4,y4,t1,t2,accel,afterimage_blur,afterimage_dur,density) if density == 0 or density == nil then density = 1 end if afterimage_blur == 0 or afterimage_blur == nil then x_blur = 0 y_blur = 0 else x_blur = math.random(-afterimage_blur,afterimage_blur) y_blur = math.random(-afterimage_blur,afterimage_blur) end if afterimage_dur == nil or afterimage_dur < frame_dur then afterimage_dur = frame_dur end if accel == nil then accel = 1 end x_pos = {} y_pos = {} dur = t2 - t1 frames = math.floor(dur/(frame_dur/density)) x_pos[j] = (1-(j/frames)^accel)^3 * x1 + 3*(1-(j/frames)^accel)^2 * ((j/frames)^accel) * x2 + 3*(1-(j/frames)^accel) * ((j/frames)^accel)^2 * x3 + ((j/frames)^accel)^3 * x4 y_pos[j] = (1-(j/frames)^accel)^3 * y1 + 3*(1-(j/frames)^accel)^2 * ((j/frames)^accel) * y2 + 3*(1-(j/frames)^accel) * ((j/frames)^accel)^2 * y3 + ((j/frames)^accel)^3 * y4 if j == 1 then maxloop(frames) end retime("presyl",t1+(j-1)*(frame_dur/density),t1+j*(frame_dur/density)+afterimage_dur) return string.format("\\move(%d,%d,%d,%d)",x_pos[j],y_pos[j],x_pos[j] + x_blur ,y_pos[j] + y_blur) end Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,shape = {"m 10 18 b 4 18 0 0 10 7 m 10 18 b 17 18 20 0 10 7 "} Comment: 0,0:00:00.00,0:00:00.00,Vietsub,heart,0,0,0,template char notext noblank loop 10,!retime("preline",0,500)!{\an5\fad(0,100)\move(!$center+heart[j].x!,!$middle+heart[j].y!,!$center+heart[j].x*(1+math.random())*x_rat!,!$middle+heart[j].y*(1+math.random())*x_rat!)\fscx!set_temp("scx",math.random(2,10))!\fscy!temp.scx!\fr!math.random(180)!\t(\fr!math.random(180)!)\bord1\blur1!(math.random(3) == 1) and tags(line.duration) or ""!\p1}!shape[1]! Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code line all,count={0}; Comment: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,code once,function inc() count[1]=count[1]+1; return "" end Comment: 2,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,template char,!retime("line",20*count[1]-400,20*count[1]-310)!!inc()!{\an5\org(!$scenter-10!,!$smiddle-10!)\fad(0,300)\move(!$scenter+100+math.random(-30,30)!,!$smiddle+math.random(-30,30)!,$scenter,$smiddle,0,300)\bord3\blur0} Comment: 0,0:00:00.00,0:00:05.16,Vietsub,,0,0,0,karaoke,Đừng khiến tôi phải đóng thêm một cánh cửa nào nữa Dialogue: 0,0:00:00.00,0:00:00.00,Vietsub,,0,0,0,,