TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua

标题: [lun]012_basara_v2 [打印本页]

作者: 渣渣疯子    时间: 2012-8-27 19:54:12     标题: [lun]012_basara_v2

  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FontFileName          # frame duration, in millisecond
  4.     global _FD                  
  5.     global _Fs
  6.     global _Length
  7.     global _Bd
  8.     global _Br
  9.     global _FaceID
  10.     global _Font
  11.     _FontFileName = GetVal(val_FontFileName)
  12.     _FD = 1000 / GetVal(val_FXFPS)
  13.     _Fs = GetVal(val_FontSize)
  14.     _Length = GetVal(val_TextLength)
  15.     _Bd = GetVal(val_Bord)
  16.     _Br = GetVal(val_Blur)
  17.     _FaceID = GetVal(val_FaceID)
  18.     _Font = InitFont(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), 0xFFFFFF, 2, False)

  19. def fr(x):

  20.     X = randint(-x,x)

  21.     return frx(X)+fry(X)+frz(X)

  22. def tcaxPy_Main(_i, _j, _n, _BT, _ET, _SK, _KT, _X, _Y, _A, _TXT):

  23.     ASS_BUF  = []        # used for saving ASS FX lines

  24.     if _j == 0:
  25.         global POS
  26.         POS = [_X,_Y]
  27.     dx = _X - int(_A / 2 + 0.5)
  28.     dy = _Y - int(_Fs / 2 + 0.5)
  29.     mask = TextOutlineDraw(_Font, _TXT, dx, dy)
  30.     PIC = ["m 0 0 b 0 0 0 0 0 0 b 0 0 -1 -1 -1 -2 b -1 -3 1 -4 1 -4 b 2 -4 3 -5 4 -5 b 8 -2 12 -9 15 -7 b 15 -7 14 -6 14 -6 b 14 -6 22 -9 25 -11 b 22 -9 18 -6 14 -4 b 16 -4 18 -5 19 -5 b 18 -4 16 -3 15 -3 b 16 -3 17 -2 18 -2 b 16 -2 12 2 10 -1 b 8 0 3 1 0 0 ","m 0 0 b -1 1 -4 -4 -5 -6 b -5 -5 -9 -11 -10 -14 b -10 -15 -12 -18 -13 -19 b -15 -19 -10 -13 -9 -14 b -7 -12 -4 -10 -3 -7 b -1 -8 2 -3 2 -2 b 1 0 3 -1 0 0 ","m 18 0 l 9 21 b 8 24 10 25 12 21 ","m 0 0 b 0 -5 5 -11 10 -8 b 10 -13 13 -13 15 -13 b 13 -13 15 -8 10 -8 b 10 -3 2 0 0 0 ","m 3 9 b -6 9 -7 -7 2 -12 b 7 -8 6 1 3 9 "]
  31.    
  32.     if _i < 2:
  33.         for s in range(15):
  34.             ass_main(ASS_BUF,SubL(_BT-50+_j*5+s,_BT+_j*5+s,15-s), an(5)+move(_X+100,_Y,_X,_Y)+alpha1(255-(_n-_j)*5)+alpha3(180)+fad(500,0)+be(30)+animation(be(10))+color3("E9D9E6")+color1("FFFFFF")+bord(1), _TXT)
  35.         
  36.         sb1=""
  37.         for i in range (0,30):
  38.             a = -0.15+0.01*i
  39.             l = (pow((abs(a)/0.15),0.3)+0.5)*120*8
  40.             sb1= sb1 + "m 0 0 l"+" "+str(int(l*cos(a)))+" "+str(int(l*sin(a)))+" 0 1 c "
  41.         sb2 = ""
  42.         for j in range (0,30):
  43.             a = -0.15+0.01*j
  44.             l = (pow((abs(a)/0.15),0.3)+0.5)*60*8
  45.             sb2 = sb2 +"m 0 0 l"+" "+str(int(l*cos(a)))+" "+str(int(l*sin(a)))+" 0 1 c "


  46.             
  47.         tStep = 2
  48.         for e in range(_BT+_SK,_BT+_SK+_KT,tStep):

  49.             startag = randint(0, 359)
  50.             endag = startag + randint(0,9)/10 * randint(50, 100)
  51.             ass_main(ASS_BUF, SubL(e,e+ 100,19), pos(_X, _Y)+ an(7)+fad(300, 300)+fsc(50,50)+alpha1(0)+be(1)+shad(0)+bord(0)+color1("FF7C00")+ frz(startag) + animation1(0,1000,frz(endag)),"{\p4}"+sb1)
  52.             ass_main(ASS_BUF, SubL(e,e + 100,20), pos(_X, _Y)+ an(7)+fad(300, 300)+fsc(50,50)+alpha1(17)+be(1)+shad(0)+bord(0)+color1("FFFFFF")+ frz(startag) + animation1(0,1000,frz(endag)),"{\p4}"+sb2)
  53.         ass_main(ASS_BUF,SubL(_BT,_BT+_SK,45),an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  54.         ass_main(ASS_BUF,SubL(_BT+_SK,_BT+_SK+_KT/2,45),an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2)+fsc(100,100)+animation(fsc(120,120)), _TXT)
  55.         ass_main(ASS_BUF,SubL(_BT+_SK+_KT/2,_BT+_SK+_KT,45),an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2)+fsc(120,120)+animation(fsc(100,100)), _TXT)
  56.         ass_main(ASS_BUF,SubL(_BT+_SK+_KT,_ET-50,45),an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  57.         ts = _BT + _SK - 2 * int(_FD/10)
  58.         te = _BT + _SK + _KT
  59.         ts1 = ts - int(_FD/10)
  60.         te1 = te - int(_FD/10)
  61.         ass_main(ASS_BUF,SubL(ts1,te1,50), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("482922")+color2("FFFFFF")+bord(3)+blur(2)+be(3)+K(_KT), _TXT)
  62.         ts2 = ts + int(_FD/10)
  63.         te2 = te + int(_FD/10)
  64.         ass_main(ASS_BUF,SubL(ts2,te2,51), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("FFFFFF")+color2("482922")+bord(3)+blur(2)+be(3)+K(_KT), _TXT)
  65.         if _i == 0:
  66.             for s in range(15):
  67.                 ass_main(ASS_BUF,SubL(_ET-50-(_n-_j)*5+s,_ET-(_n-_j)*5+s,15-s), an(5)+move(_X,_Y,_X-100,_Y)+alpha1(255-(_n-_j)*5)+alpha3(180)+fad(500,0)+be(30)+animation(be(10))+color3("E9D9E6")+color1("FFFFFF")+bord(1), _TXT)

  68.         if _i == 1:
  69.             for p in range(_ET-50,_ET+70,8):
  70.                 for m in range(5):
  71.                     RAN = randint(70,130)
  72.                     ass_main(ASS_BUF,SubL(p,p+6), an(5)+pos(_X+randint(-30,30),_Y+randint(-30,30))+fscx(RAN)+fscy(RAN)+bord(2)+be(8)+blur(3)+color3('D6E8E9')+color1('FFFFFF')+shad(0),"{\p4}m 0 100 l 1 1 l 100 0 l 1 -1 l 0 -100 l -1 -1 l -100 0 l -1 1 m 6 6 {\p0}")
  73.                     ass_main(ASS_BUF,SubL(p,p+6), an(5)+pos(_X+randint(-30,30),_Y+randint(-30,30))+fscx(RAN)+fscy(RAN)+bord(2)+be(8)+blur(3)+color3('D6E8E9')+color1('FFFFFF')+shad(0),"{\p4}m 0 100 l 1 1 l 100 0 l 1 -1 l 0 -100 l -1 -1 l -100 0 l -1 1 m 6 6 {\p0}")
  74.                     ass_main(ASS_BUF,SubL(p,p+6), an(5)+pos(_X+randint(-30,30),_Y+randint(-30,30))+fscx(RAN)+fscy(RAN)+bord(2)+be(8)+blur(3)+color3('D6E8E9')+color1('FFFFFF')+shad(0),"{\p4}m 0 100 l 1 1 l 100 0 l 1 -1 l 0 -100 l -1 -1 l -100 0 l -1 1 m 6 6 {\p0}")
  75.     if _i == 2:
  76.         drution = 10 * _FD
  77.         ass_main(ASS_BUF,SubL(_BT-_FD,_BT,10), an(5)+move(_X + _Length[_i], _Y, _X, _Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(8)+blur(3)+fry(-180)+alpha(100)+animation(0,drution/2, 1.25, fs(_Fs * 2) + fry(-90) + alpha(200))+animation(drution/2, drution, 0.8, fs(_Fs) + fry(0) + alpha(150)), _TXT)
  78.         tp = int((_KT + randint(-5, 5)) / 8)
  79.         num = 200
  80.         L1 = Bezier1(num, _X - _A * 2 + randint(-10, 10), _Y - _Fs + randint(-10, 10), _X + _A * 2 + randint(-10, 10), _Y + _Fs + randint(-10, 10))
  81.         L2 = Bezier1(num, _X - _A * 3 + randint(-5, 5), _Y - _Fs + randint(-10, 5), _X + _A * 3 + randint(-5, 5), _Y + _Fs + randint(-5, 10))
  82.         L3 = Bezier1(num, _X - _A * 3 / 2 + randint(-10, 10), _Y - _Fs * 3 / 2 + randint(-10, 10), _X + _A * 3 / 2 + randint(-10, 10), _Y + _Fs * 3 / 2 + randint(-10, 10))
  83.         L4 = Bezier1(num, _X + _A * 2 + randint(-10, 10), _Y - _Fs + randint(-10, 10), _X - _A * 2 + randint(-10, 10), _Y + _Fs + randint(-10, 10))
  84.         L5 = Bezier1(num, _X + _A * 3 / 2 + randint(-10, 5), _Y - _Fs * 3 / 2 + randint(-10, 10), _X - _A * 3 / 2 + randint(-5, 10), _Y + _Fs * 3 / 2 + randint(-10, 10))
  85.         L6 = Bezier1(num, _X - _A + randint(-10, 10), _Y + _Fs + randint(-10, 10), _X + _A + randint(-10, 10), _Y - _Fs + randint(-10, 10))
  86.         L = [L1, L4, L3, L2, L6, L5]
  87.         for e in range(randint(4, 6)):
  88.             for g in range(num):
  89.                 EFT = pos(L[e][g][0], L[e][g][1]) + bord(0) + blur(1) + t(0, 20, 1, fsc(110, 110) + be(1)) + t(30, 50, 1, fsc(150, 150) + be(2)) + fade(0, 255, 0, 0, 20, 30, 50) + color1("0000FF")
  90.                 ass_main(ASS_BUF, SubL(_BT+_SK + g * tp / num + e * 5, _BT+_SK + g * tp / num + e * 5 + 5, 5), EFT, PixPt())
  91.         ass_main(ASS_BUF,SubL(_BT,_BT+_SK,1), an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  92.         ass_main(ASS_BUF,SubL(_BT+_SK,_ET-(_n-_j) * 10,1), an(5)+pos(_X,_Y)+bord(2)+blur(2)+color3("9CDDE6")+alpha1(255), _TXT)
  93.         ass_main(ASS_BUF,SubL(_ET-(_n-_j) * 10,_ET-(_n-_j) * 10+40,1), an(5)+move(_X,_Y,POS[0]+_Length[_i]/2,_Y-20)+frx(0)+fscx(100)+fscy(100)+animation(0,400,fscx(35)+fscy(35)+frx(85))+bord(2)+blur(2)+color3("9CDDE6")+alpha1(255), _TXT)
  94.         if _j % 3 == 0:
  95.             PIX = TextPix(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), DecRGB('84DDED'), 0, False, _TXT)
  96.             PIX = PixBlur(PIX, _Br)

  97.             InitPosX = _X - int(_A / 2 + 0.5) + PIX[0][0]   #first X
  98.             InitPosY = _Y - int(_A / 2 + 0.5) + PIX[0][1]   #first Y
  99.             for h in range(PIX[1][1]):
  100.                 PosY = InitPosY + h

  101.                 for w in range(PIX[1][0]):
  102.                     PosX = InitPosX + w
  103.                     X = PosX-randint(-50,50)
  104.                     Y = PosY-randint(15,30)
  105.                     idx = 4 * (h * PIX[1][0] + w)
  106.                     PixR = PIX[2][idx + 0]
  107.                     PixG = PIX[2][idx + 1]
  108.                     PixB = PIX[2][idx + 2]
  109.                     PixA = PIX[2][idx + 3]
  110.                     if PixA != 0:
  111.                         M1 = move(PosX,PosY,_X - int(_A / 2 + 0.5),Y)
  112.                         M2 = move(PosX,PosY,_X + int(_A / 2 + 0.5),Y)
  113.                         if h % 2 == 0:
  114.                             ass_main(ASS_BUF,SubL(_BT+_SK , _BT+_SK+(sqrt((PIX[1][1] - h) * (PIX[1][1] - h) + w * w) * 4)), M1+bord(0.5)+color3("84C6E3")+be(3)+color1(FmtRGB(PixR,PixG,PixB))+alpha(255-PixA),PixPt())
  115.                         else:
  116.                             ass_main(ASS_BUF,SubL(_BT+_SK , _BT+_SK+(sqrt((PIX[1][1] - h) * (PIX[1][1] - h) + (PIX[1][0] - w) * (PIX[1][0] - w)) * 4)), M2+bord(0.5)+color3("84C6E3")+be(3)+color1(FmtRGB(PixR,PixG,PixB))+alpha(255-PixA),PixPt())
  117.         else:
  118.             PIX = TextPix(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), DecRGB('84DDED'), 0, False, _TXT)
  119.             PIX = PixBlur(PIX, _Br)

  120.             InitPosX = _X - int(_A / 2 + 0.5) + PIX[0][0]   #first X
  121.             InitPosY = _Y - int(_A / 2 + 0.5) + PIX[0][1]   #first Y
  122.             for h in range(PIX[1][1]):
  123.                 PosY = InitPosY + h

  124.                 for w in range(PIX[1][0]):
  125.                     PosX = InitPosX + w
  126.                     X1 = PosX+randint(-30,0)
  127.                     X2 = PosX+randint(0,30)
  128.                     Y = PosY-randint(15,30)
  129.                     idx = 4 * (h * PIX[1][0] + w)
  130.                     PixR = PIX[2][idx + 0]
  131.                     PixG = PIX[2][idx + 1]
  132.                     PixB = PIX[2][idx + 2]
  133.                     PixA = PIX[2][idx + 3]
  134.                     if PixA != 0:
  135.                         M3 = move(PosX,PosY,X1,_Y + int(_A / 2 + 0.5))
  136.                         M4 = move(PosX,PosY,X2,_Y + int(_A / 2 + 0.5))
  137.                         if w % 2 == 0:
  138.                             ass_main(ASS_BUF,SubL(_BT+_SK , _BT+_SK+(sqrt(h * h + (PIX[1][0] - w) * (PIX[1][0] - w)) * 4)), M3+bord(0.5)+color3("84C6E3")+be(3)+color1(FmtRGB(PixR,PixG,PixB))+alpha(255-PixA),PixPt())
  139.                         else:
  140.                             ass_main(ASS_BUF,SubL(_BT+_SK , _BT+_SK+(sqrt(h * h + w * w) * 4)), M4+bord(0.5)+color3("84C6E3")+be(3)+color1(FmtRGB(PixR,PixG,PixB))+alpha(255-PixA),PixPt())
  141.     if _i == 3:
  142.         ass_main(ASS_BUF,SubL(_BT-40+_j * 10,_BT+_j * 10,3), an(5)+move(POS[0]+_Length[_i]/2,_Y-20,_X,_Y)+frx(0)+fscx(100)+fscy(100)+animation(0,400,fscx(35)+fscy(35)+frx(85))+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  143.         ass_main(ASS_BUF,SubL(_BT+_j * 10,_BT+_SK,3), an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  144.         ass_main(ASS_BUF,SubL(_BT+_SK,_ET+50,3), an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2)+fad(0,200), _TXT)
  145.         for i in range (40):
  146.             RAN1 = randint(80,120)
  147.             RAN2 = randint(-35,-3)
  148.             RAN3 = randint(-20,10)
  149.             RAN4 = randint(-5,5)
  150.             RAN5 = randint(-20,20)
  151.             RAN6 = randint(0,360)
  152.             RAN7 = PIC[randint(0,4)]
  153.             MOV1 = move(_X+RAN4,_Y+RAN4,_X+RAN5,_Y+RAN2)
  154.             POS1 = pos(_X+RAN5,_Y+RAN2)
  155.             ts1 = _BT + _SK
  156.             te1 = _BT + _SK + (_KT/3 * 2)-10
  157.             te2 = _BT + _SK + _KT + 40 + RAN3
  158.             ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("2E2E47")+color3("585682")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  159.             ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("2E2E47")+color3("585682")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  160.     if _i == 4:
  161.         if IsLineChanged(_i):
  162.             num = int(_Length[_i]/2)
  163.             points = Bezier1(num, dx, dy+_Fs/2, dx + _Length[_i], dy+_Fs/2)
  164.             for h in range (num):
  165.                 ass_main(ASS_BUF,SubL(_BT-47+h/5,_BT+h/6+_j * 3,5),pos(points[h][0], points[h][1])+fad(0,300)+alpha1(0)+alpha3(100)+bord(2)+blur(3)+fscx(80)+color1("CCCCCC")+color3("FFFFFF"), '{\p3}m 20 0 b 20 10 30 20 40 20 b 30 20 20 30 20 40 b 20 30 10 20 0 20 b 10 20 20 10 20 0 ')
  166.                
  167.                 for j in range(4):
  168.                     if randint(0,4) == 0:
  169.                         ass_main(ASS_BUF, SubL(_BT-47+h/5,_BT+h,5),blur(3)+bord(2)+mov(points[h][0], points[h][1],points[h][0]+randint(-80,80), points[h][1]+randint(-80,80))+alpha1(0)+alpha3(100)+fad(0,300)+fscx(80)+color1("CCCCCC")+color3("FFFFFF"), '{\p3}m 20 0 b 20 10 30 20 40 20 b 30 20 20 30 20 40 b 20 30 10 20 0 20 b 10 20 20 10 20 0 ')
  170.         ass_main(ASS_BUF, SubL(_BT-40+_j * 15,_BT+_j * 15),pos(_X,_Y)+clip(dx,dy+_Fs/2,dx+_A,dy+_Fs/2)+t(0,400,clip(dx,dy,+dx+_A,dy+_Fs))+fad(100,0)+blur(2)+color1("CCCCCC")+color3("FFFFFF"),_TXT)
  171.         ass_main(ASS_BUF, SubL(_BT+_j * 15,_ET,2),pos(_X,_Y)+blur(2)+color1("FFFFFF")+color3("CCCCCC"),_TXT)
  172.         ass_main(ASS_BUF, SubL(_BT+_SK,_BT+_SK+_KT,2), an(5)+pos(_X,_Y)+blur(2)+color1("FFFFFF")+color3("CCCCCC")+fsc(100,100)+animation(0,_KT * 5,fsc(120,120))+animation(_KT * 5,_KT * 10,fsc(100,100)),_TXT)
  173.         PIX = TextPix(_Font,_TXT)
  174.         PIX= PixBlur(PIX,_Br)
  175.         points = PixPoints(PIX)
  176.         pt_num = len(points)
  177.         for i in range (5):
  178.             pt = points[randint(0, pt_num - 1)]
  179.             RAN1 = randint(0,int(_KT/2))
  180.             RAN2 = randint(int(_KT/3) * 2,_KT)
  181.             RAN3 = randint(120,220)
  182.             ts = _BT+_SK+RAN1
  183.             te = _BT+_SK+RAN2
  184.             ass_main(ASS_BUF, SubL(ts,te,3),pos(dx+pt[0],dy+pt[1])+fscx(60)+fscy(80)+alpha(255)+color1("F8F8F8")+color3("CCCCCC")+blur(1)+be(1)+frz(0)+bord(1)+animation(0,(te-ts) * 10,frz(720))+animation(0,(te-ts)/2 * 10,be(10)+blur(3)+alpha(0)+color1("FFFFFF")+bord(2))+animation((te-ts)/2 * 10,(te-ts) * 10,color1("FFFFFF")+color3("CCCCCC")+alpha1(150)+be(2)+blur(1)), '{\p3}m 20 0 b 20 13 27 20 40 20 b 27 20 20 27 20 40 b 20 27 13 20 0 20 b 13 20 20 13 20 0  ')
  185.             ass_main(ASS_BUF,SubL(ts+randint(0,5),_ET), an(5)+pos(_X+randint(-25,25),_Y+randint(-25,25))+bord(0)+fad(400,400)+alpha1(randint(125,225))+blur(1)+be(2)+color("FFFFFF")+fscx(RAN3)+fscy(RAN3),"{\p1} m 7 0 b 2 0 1 6 1 8 b 1 11 2 17 7 17 b 12 17 13 11 13 8 b 13 6 12 0 7 0 {\p0}")
  186.         for j in range (5):
  187.             RAN2 = randint(int(_KT/3) * 2,_KT)
  188.             RAN1 = randint(30,50)
  189.             ts = _BT+_SK+RAN2
  190.             te = ts+RAN1
  191.             ass_main(ASS_BUF,SubL(ts,te), an(5)+fad(0,300)+pos(_X+randint(-25,25),_Y+randint(-25,25))+color1("F8F8F8")+color3("CCCCCC")+blur(1)+be(1)+frz(0)+bord(1)+animation(0,(te-ts) * 10,frz(720))+animation(0,(te-ts)/2 * 10,be(10)+blur(3)+alpha(0)+color1("FFFFFF")+bord(2))+animation((te-ts)/2 * 10,(te-ts) * 10,color1("FFFFFF")+color3("CCCCCC")+alpha1(150)+be(2)+blur(1))+fscx(50)+fscy(70), '{\p3}m 20 0 b 20 13 27 20 40 20 b 27 20 20 27 20 40 b 20 27 13 20 0 20 b 13 20 20 13 20 0  ')
  192.     if _i == 5:
  193.         if IsLineChanged(_i):
  194.             num = int(_Length[_i]/2)
  195.             points = Bezier1(num, dx, dy+_Fs/2, dx + _Length[_i], dy+_Fs/2)
  196.             for h in range (num):
  197.                 ass_main(ASS_BUF,SubL(_BT-35+h/5,_BT+h/6+_j * 3,5),pos(points[h][0], points[h][1])+fad(0,300)+alpha1(0)+alpha3(100)+bord(2)+blur(4)+fscx(80)+color1("EFE2CF")+color3("F1D28D"), '{\p4}m 100 0 b 100 108 92 100 200 100 b 92 100 100 92 100 200 b 100 92 108 100 0 100 b 108 100 100 108 100 0 ')
  198.                
  199.                 for j in range(4):
  200.                     if randint(0,4) == 0:
  201.                         ass_main(ASS_BUF, SubL(_BT-35+h/5,_BT+h,5),blur(4)+bord(2)+mov(points[h][0], points[h][1],points[h][0]+randint(-80,80), points[h][1]+randint(-80,80))+alpha1(0)+alpha3(100)+fad(0,300)+fscx(80)+color1("EFE2CF")+color3("F1D28D"), '{\p4}m 100 0 b 100 108 92 100 200 100 b 92 100 100 92 100 200 b 100 92 108 100 0 100 b 108 100 100 108 100 0 ')
  202.         ass_main(ASS_BUF, SubL(_BT-30+_j * 15,_BT+_j * 15),pos(_X,_Y)+clip(dx,dy+_Fs/2,dx+_A,dy+_Fs/2)+t(0,300,clip(dx,dy,+dx+_A,dy+_Fs))+fad(100,0)+blur(2)+color1("CCCCCC")+color3("B44C27"),_TXT)
  203.         ass_main(ASS_BUF, SubL(_BT+_j * 15,_ET,2),pos(_X,_Y)+blur(2)+color1("FFFFFF")+color3("B44C27"),_TXT)
  204.         ass_main(ASS_BUF, SubL(_BT+_SK,_BT+_SK+_KT,2), an(5)+pos(_X,_Y)+blur(2)+color1("FFFFFF")+color3("B44C27")+fsc(100,100)+animation(0,_KT * 5,fsc(120,120))+animation(_KT * 5,_KT * 10,fsc(100,100)),_TXT)
  205.         PIX = TextPix(_Font,_TXT)
  206.         PIX= PixBlur(PIX,_Br)
  207.         points = PixPoints(PIX)
  208.         pt_num = len(points)
  209.         for i in range (5):
  210.             pt = points[randint(0, pt_num - 1)]
  211.             RAN1 = randint(0,int(_KT/2))
  212.             RAN2 = randint(int(_KT/3) * 2,_KT)
  213.             RAN3 = randint(120,220)
  214.             ts = _BT+_SK+RAN1
  215.             te = _BT+_SK+RAN2
  216.             ass_main(ASS_BUF, SubL(ts,te,3),pos(dx+pt[0],dy+pt[1])+fscx(60)+fscy(80)+alpha(255)+color1("EFE2CF")+color3("F1D28D")+blur(1)+be(1)+frz(0)+bord(1)+animation(0,(te-ts) * 10,frz(720))+animation(0,(te-ts)/2 * 10,be(10)+blur(3)+alpha(0)+color1("FFFFFF")+bord(2))+animation((te-ts)/2 * 10,(te-ts) * 10,color1("EFE2CF")+color3("F1D28D")+alpha1(150)+be(2)+blur(1)), '{\p4}m 100 0 b 100 108 92 100 200 100 b 92 100 100 92 100 200 b 100 92 108 100 0 100 b 108 100 100 108 100 0 ')
  217.             ass_main(ASS_BUF,SubL(ts+randint(0,5),_ET), an(5)+pos(_X+randint(-25,25),_Y+randint(-25,25))+bord(0)+fad(400,400)+alpha1(randint(125,225))+blur(1)+be(2)+color1("EFE2CF")+fscx(RAN3)+fscy(RAN3),"{\p1} m 7 0 b 2 0 1 6 1 8 b 1 11 2 17 7 17 b 12 17 13 11 13 8 b 13 6 12 0 7 0 {\p0}")
  218.         for j in range (5):
  219.             RAN2 = randint(int(_KT/3) * 2,_KT)
  220.             RAN1 = randint(30,50)
  221.             ts = _BT+_SK+RAN2
  222.             te = ts+RAN1
  223.             ass_main(ASS_BUF,SubL(ts,te), an(5)+fad(0,300)+pos(_X+randint(-25,25),_Y+randint(-25,25))+color1("EFE2CF")+color3("F1D28D")+blur(1)+be(1)+frz(0)+bord(1)+animation(0,(te-ts) * 10,frz(720))+animation(0,(te-ts)/2 * 10,be(10)+blur(3)+alpha(0)+color1("FFFFFF")+bord(2))+animation((te-ts)/2 * 10,(te-ts) * 10,color1("EFE2CF")+color3("F1D28D")+alpha1(150)+be(2)+blur(1))+fscx(50)+fscy(70), '{\p4}m 100 0 b 100 108 92 100 200 100 b 92 100 100 92 100 200 b 100 92 108 100 0 100 b 108 100 100 108 100 0 ')
  224.     if _i == 6:
  225.         for i in range(int(_A)):
  226.             ts = _BT+_SK
  227.             te = _BT+_SK+_KT
  228.             Clip = clip(int(_X-_A/2+i), int(_Y-_Fs/2), int(_X-_A/2+i+1), int(_Y+_Fs/2))
  229.             ass_main(ASS_BUF, SubL(ts,ts + (te-ts)/int(_A)*i,3),an(5)+pos(_X,_Y)+Clip+color1("E7E4DC")+color3("E8DCA8")+bord(2)+be(2),_TXT)
  230.             ass_main(ASS_BUF, SubL(ts + (te-ts)/int(_A)*i,te,3),an(5)+pos(_X,_Y)+Clip+color1("CE9953")+color3("934929")+bord(3),_TXT)
  231.         ass_main(ASS_BUF, SubL(_BT-20,_BT+_SK,3),an(5)+pos(_X,_Y)+color1("E7E4DC")+color3("E8DCA8")+bord(2)+be(2),_TXT)
  232.         ass_main(ASS_BUF, SubL(_BT+_SK+_KT,_ET,3),an(5)+pos(_X,_Y)+color1("CE9953")+color3("934929")+bord(3),_TXT)
  233.         PIX = TextPix(_Font,_TXT)
  234.         PIX= PixBlur(PIX,_Br)
  235.         points = PixPoints(PIX)
  236.         pt_num = len(points)
  237.         for i in range (50):
  238.             cloud = "m "+str(randint(0,200))+" "+str(randint(0,200))+" b "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" b "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))+" "+str(randint(0,200))
  239.             pt = points[randint(0, pt_num - 1)]
  240.             RAN1 = randint(0,int(_KT))
  241.             RAN2 = randint(100,175)
  242.             te1 = _BT+_SK+RAN1
  243.             space1 = int(_A / 2 + 0.5)
  244.             space2 = int(_Fs / 2 + 0.5)
  245.             X1 = _X+randint(-space1,space1)
  246.             Y1 = _Y+randint(-space2,space2)
  247.             ass_main(ASS_BUF, SubL(_BT-20,te1,2),move(_X,_Y,X1,Y1)+bord(0)+alpha(RAN2)+color1("E3CA9C"),"{\p5}"+cloud+"{\p0}")
  248.             ass_main(ASS_BUF, SubL(te1,te1+60,2),move(X1,Y1,_X+randint(30,100),_Y+randint(-25,25))+bord(0)+alpha(RAN2)+color1("D3A964")+frx(0)+fry(0)+animation(0,295,frx(180)+fry(180)+alpha(0))+animation(295,305,frx(180)+fry(180)+alpha(0)+blur(1)+be(4))+animation(305,600,frx(360)+fry(360)+alpha(RAN2)),"{\p5}"+cloud+"{\p0}")
  249.     if _i > 6 and _i < 13:
  250.         ass_main(ASS_BUF,SubL(_BT-40+_j * 10,_BT+_j * 10,3), an(5)+move(POS[0]+_Length[_i]/2,_Y-20,_X,_Y)+frx(0)+fscx(100)+fscy(100)+animation(0,400,fscx(35)+fscy(35)+frx(85))+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  251.         ass_main(ASS_BUF,SubL(_BT+_j * 10,_BT+_SK,3), an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2), _TXT)
  252.         ass_main(ASS_BUF,SubL(_BT+_SK,_ET+50,3), an(5)+pos(_X,_Y)+bord(2)+color3("E9D9E6")+color1("FFFFFF")+be(3)+blur(2)+fad(0,200), _TXT)
  253.         if _i > 6 and _i <9:
  254.             for i in range(40):
  255.                 RAN1 = randint(80,120)
  256.                 RAN2 = randint(-40,30)
  257.                 RAN3 = randint(-20,10)
  258.                 RAN4 = randint(-5,5)
  259.                 RAN5 = randint(-15,15)
  260.                 RAN6 = randint(0,360)
  261.                 RAN7 = PIC[randint(0,4)]
  262.                 MOV1 = move(_X+RAN4,_Y+RAN4,_X+RAN5,_Y+RAN2)
  263.                 POS1 = pos(_X+RAN5,_Y+RAN2)
  264.                 ts1 = _BT + _SK
  265.                 te1 = _BT + _SK + (_KT/3 * 2)-10
  266.                 te2 = _BT + _SK + _KT + 40 + RAN3
  267.                 ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("331F29")+color3("5F424C")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  268.                 ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("331F29")+color3("5F424C")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  269.         if _i == 9:
  270.             for i in range(40):
  271.                 RAN1 = randint(80,120)
  272.                 RAN2 = randint(-30,10)
  273.                 RAN3 = randint(-20,10)
  274.                 RAN4 = randint(-5,5)
  275.                 RAN5 = randint(-30,30)
  276.                 RAN6 = randint(0,360)
  277.                 RAN7 = PIC[randint(0,4)]
  278.                 MOV1 = move(_X+RAN4,_Y+RAN4,_X+RAN5,_Y+RAN2)
  279.                 POS1 = pos(_X+RAN5,_Y+RAN2)
  280.                 ts1 = _BT + _SK
  281.                 te1 = _BT + _SK + (_KT/3 * 2)-10
  282.                 te2 = _BT + _SK + _KT + 40 + RAN3
  283.                 ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("3F130E")+color3("603109")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  284.                 ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("3F130E")+color3("603109")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  285.         if _i == 10:
  286.             for i in range(40):
  287.                 RAN1 = randint(80,120)
  288.                 RAN2 = randint(-35,5)
  289.                 RAN3 = randint(-20,10)
  290.                 RAN4 = randint(-5,5)
  291.                 RAN5 = randint(-15,15)
  292.                 RAN6 = randint(0,360)
  293.                 RAN7 = PIC[randint(0,4)]
  294.                 MOV1 = move(_X+RAN4,_Y+RAN4,_X+RAN5,_Y+RAN2)
  295.                 POS1 = pos(_X+RAN5,_Y+RAN2)
  296.                 ts1 = _BT + _SK
  297.                 te1 = _BT + _SK + (_KT/3 * 2)-10
  298.                 te2 = _BT + _SK + _KT + 40 + RAN3
  299.                 ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("2E2E47")+color3("585682")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  300.                 ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("2E2E47")+color3("585682")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  301.         if _i == 11:
  302.             for i in range(40):
  303.                 R = RandCir2(_X, _Y, 15, 40)
  304.                 RAN1 = randint(80,120)
  305.                 RAN2 = randint(-30,10)
  306.                 RAN3 = randint(-20,10)
  307.                 RAN4 = randint(-5,5)
  308.                 RAN5 = randint(-30,30)
  309.                 RAN6 = randint(0,360)
  310.                 RAN7 = PIC[randint(0,4)]
  311.                 MOV1 = move(_X+RAN4,_Y+RAN4,R[0],R[1])
  312.                 POS1 = pos(R[0],R[1])
  313.                 ts1 = _BT + _SK
  314.                 te1 = _BT + _SK + (_KT/3 * 2)-10
  315.                 te2 = _BT + _SK + _KT + 40 + RAN3
  316.                 ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("331F29")+color3("5F424C")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  317.                 ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("331F29")+color3("5F424C")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  318.         if _i == 12:
  319.             for i in range(40):
  320.                 RAN1 = randint(80,120)
  321.                 RAN2 = randint(-40,5)
  322.                 RAN3 = randint(-20,10)
  323.                 RAN4 = randint(-5,5)
  324.                 RAN5 = randint(-20,20)
  325.                 RAN6 = randint(0,360)
  326.                 RAN7 = PIC[randint(0,4)]
  327.                 MOV1 = move(_X+RAN4,_Y+RAN4,_X+RAN5,_Y+RAN2)
  328.                 POS1 = pos(_X+RAN5,_Y+RAN2)
  329.                 ts1 = _BT + _SK
  330.                 te1 = _BT + _SK + (_KT/3 * 2)-10
  331.                 te2 = _BT + _SK + _KT + 40 + RAN3
  332.                 ass_main(ASS_BUF,SubL(ts1,te1),an(5)+MOV1+fad(randint(0,300),0)+color1("3F130E")+color3("603109")+fsc(70,70)+animation(0,300,fscx(RAN1)+fscy(RAN1))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  333.                 ass_main(ASS_BUF,SubL(te1,te2),an(5)+POS1+fad(0,200)+color1("3F130E")+color3("603109")+fscx(RAN1)+fscy(RAN1)+animation(0,(te2-te1) * 10,fsc(50,50))+alpha(50)+be(8)+blur(4)+bord(2)+frx(RAN6)+frz(RAN6),"{\p2}"+RAN7+"{\p0}")
  334.     if _i == 13:
  335.         ts = _BT + _SK - 2 * int(_FD/10)
  336.         te = _BT + _SK + _KT
  337.         ts1 = ts - int(_FD/10)
  338.         te1 = te - int(_FD/10)
  339.         ass_main(ASS_BUF,SubL(ts1,te1,50), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("482922")+color2("FFFFFF")+bord(3)+blur(2)+be(3)+K(_KT), _TXT)
  340.         ts2 = ts + int(_FD/10)
  341.         te2 = te + int(_FD/10)
  342.         ass_main(ASS_BUF,SubL(ts2,te2,51), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("FFFFFF")+color2("482922")+bord(3)+blur(2)+be(3)+K(_KT), _TXT)
  343.         ass_main(ASS_BUF,SubL(_BT,ts1), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("482922")+bord(3)+blur(2)+be(3), _TXT)
  344.         ass_main(ASS_BUF,SubL(te2,_ET), an(5)+pos(_X,_Y)+color3("E9D9E6")+color1("FFFFFF")+bord(3)+blur(2)+be(3), _TXT)
  345.         RAN = randint(100,150)
  346.         for i in range(30):
  347.             ass_main(ASS_BUF,SubL(_ET,_ET+60),an(5)+move(_X,_Y,_X+randint(-20,20),_Y+randint(-40,40))+fad(randint(0,200),200)+color1("E67FBC")+color3("A84B82")+fsc(70,70)+fr(360)+animation(fscx(RAN)+fscy(RAN))+alpha(50)+be(8)+blur(4)+bord(2)+fad(0,300),"{\p2}"+PIC[randint(0,4)]+"{\p0}")



  348.     return (ASS_BUF,None)           
复制代码
终于把这个坑填了。。。某种意义上来说。。。今天往后...也算个闲人了... 除了前两句和最后一句,剩下的都做了变动,改造了溅射,把当时没想法的三句话也换了别的效果,某个效果还是不太满意,不过...暂时想不到更好的办法了,就这样吧
作者: milkyjing    时间: 2012-8-27 21:32:37

丢视频预览-_-
作者: 兜兜里没糖    时间: 2012-8-27 22:01:23

顶起
作者: 5541188    时间: 2012-8-28 13:04:08

噗 我觉得来个预览神马滴最给力
作者: 渣渣疯子    时间: 2012-11-5 12:41:53

http://v.youku.com/v_show/id_XNDcxMTU0NjI4.html我一直以为丢过视频预览了,结果忘记了,补上好了...




欢迎光临 TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua (http://tcax.org/) Powered by Discuz! X2