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

 找回密码
 新人加入
查看: 7119|回复: 1
打印 上一主题 下一主题

[完整特效] [kk]_07 中二病でも恋がしたい!Lite-OP [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2012-11-2 22:57:06 |显示全部楼层 |倒序浏览
其实这东西之前在群邮上共享过了(好像过期了?)
嘛,发上来刷刷存在感....
  1. from tcaxPy import *

  2. def exint(x):
  3.     if x >= 0 :
  4.         x = int(x)
  5.     else:
  6.         x = 0
  7.     return x
  8. def tcaxPy_Init():
  9.     global _FontFileName
  10.     global _FaceID
  11.     global _Fs
  12.     global _Height
  13.     global Font
  14.     _FontFileName = GetVal(val_FontFileName)
  15.     _FaceID       = GetVal(val_FaceID)
  16.     _Fs           = GetVal(val_FontSize)
  17.     _Height       = GetVal(val_TextHeight)
  18.     Font = InitFont(_FontFileName, _FaceID, _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), 0xFFFFFF, 0, 0)
  19.    





  20. def tcaxPy_Main(_i, _j, _n, _BT, _ET, _SK, _KT, _x, _y, _a, _txt):



  21.     ASS_BUF = []
  22.     Font1 = InitFont(_FontFileName, _FaceID, _Fs+3, GetVal(val_Spacing), GetVal(val_SpaceScale), 0xFFFFFF, 0, 0)         
  23.     dx = _x - int(_a / 2 + 0.5)
  24.     dy = _y - int(_Fs / 2 + 0.5)  
  25.     mask = TextOutlineDraw(Font, _txt, dx, dy)
  26.     mask1 = TextOutlineDraw(Font1, _txt, dx, dy)
  27.     m = randint(-14,12)
  28.     n = randint(-12,12)
  29.     if _i < 2 :
  30.         ass_main(ASS_BUF, SubL(_BT+_SK, _ET+_j*5,10), an(5) + pos(_x+n, _y+m)+fs(1)+blur(1)+t(0,_KT*8+100,color1("68D5B9"))+t(0,_KT*10,fs(_Fs+5)+blur(3)) + clip2(7, mask)+fad(0,200), "●")
  31.         ass_main(ASS_BUF, SubL(_BT+_SK, _ET+_j*5,8), an(5) + pos(_x+n, _y+m)+clip2(7, mask1)+color1("FFFFFF")+fs(1)+blur(1)+t(0,_KT*8+200,color1("000000"))+bord(0)+t(0,_KT*10,fs(_Fs+5)+blur(10))+fad(0,200), "●")
  32.         
  33.     if _i > 3 and _i < 8 :
  34.         
  35.         ass_main(ASS_BUF, SubL(_BT+_SK, _ET+_j*5,10), an(5) + pos(_x+n, _y+m)+fs(1)+blur(1)+t(0,_KT*8+100,color1("68D5B9"))+t(0,_KT*10,fs(_Fs+5)+blur(3)) + clip2(7, mask)+fad(0,200), "●")
  36.         ass_main(ASS_BUF, SubL(_BT+_SK, _ET+_j*5,8), an(5) + pos(_x+n, _y+m)+clip2(7, mask1)+color1("FFFFFF")+fs(1)+blur(1)+t(0,_KT*8+200,color1("000000"))+bord(0)+t(0,_KT*10,fs(_Fs+5)+blur(10))+fad(0,200), "●")
  37.    
  38.     if _i == 8 or _i == 9 :
  39.         dx = _x-int(_a/2+0.5)
  40.         dy = _y-int(_Fs/2+0.5)
  41.         for k in range(2):
  42.             T = _a
  43.             P_s = (dx-3,_y-k)
  44.             P_t = (_x,_y-_a*0.6-k)
  45.             P_e = (dx+_a+3, _y-k)
  46.             JUMP = Jump(P_s, P_e, P_t, T)
  47.             for i in range(T):
  48.                 POS = pos(JUMP[i][0], JUMP[i][1])
  49.                 EFT = move(JUMP[i][0], JUMP[i][1],JUMP[i][0]+randint(-20,10), JUMP[i][1]+randint(10,60),_KT*6-_KT/_a*i*10+100,_KT*10+800+i)+fad(0,500)
  50.                 ass_main(ASS_BUF, SubL(_BT+_SK+_KT/_a*i-10, _BT+_SK+_KT+_KT/_a*i+70, 30), EFT+bord(1)+be(2)+color3("5BDEFF")+color1("FFFFFF"),PixPt())
  51.         ass_main(ASS_BUF, SubL(_BT,_ET,5),an(5)+pos(_x,_y)+fad(200,200)+bord(1)+be(3)+blur(0)+color1("000000")+color3("5BDEFF")+blur(0)+t(_SK*10-150,(_SK+_KT/2)*10,color1('FFFFFF')+be(0)+color3('FFFFFF')+fs(_Fs+5)+blur(1.5)+bord(2))+t((_SK+_KT/2)*10,(_SK+_KT*1.5)*10,color1('5BDEFF')+color3('000000')+fs(_Fs)+bord(1)+be(3)+blur(0)), _txt)
  52.     if _i==2 or _i==3 :
  53.         PIX = TextPix(Font, _txt)
  54.         points = PixPoints(PIX)
  55.         pt_num = len(points)
  56.         dx = _x - int(_a / 2 + 0.5) + PIX[0][0]
  57.         dy = _y - int(_Fs / 2 + 0.5) + PIX[0][1]
  58.         for i in range(pt_num):
  59.             ag = (dy + points[i][1] - _y) / GetVal(val_TextHeight)[_i][_j] * 0.25
  60.             iag = int(ag / pi / 2 * 360)
  61.             EFT = pos(dx + points[i][0], dy + points[i][1])+fscx(0)+t(0,_KT*10+100,fscx(90))+t(_KT*10,(_ET+6*_j-10-_n*2-_BT-_SK)*10,fscx(0))+ frz(20)+t(frz(40))+t(fry(30)) + fad(100, 400) + alpha1(180) + color1('FFFFFF') + be(3)
  62.             ass_main(ASS_BUF, SubL(_BT+_SK, _ET+6*_j-_n, 10, Pix_Style), EFT, "{\p1}m 0 0 l -40 0 0 1")
  63.         ass_main(ASS_BUF, SubL(_BT+_j*7, _ET+7*_j, 1), pos(_x,_y)+fad(200,200)+bord(1)+be(2), _txt)
  64.     if _i==10 or _i==11 :
  65.         col = ("0093D6","14ACF7","002598")
  66.         col1 = col[randint(0,2)]
  67.         for i in range (_BT+_SK-45,_BT+_SK+_KT-45,int(_KT/5)):
  68.             ass_main(ASS_BUF, SubL(i+randint(-30,30),i+180,10), fad(0,300)+mov(_x+100+randint(-30,30),_y-100,_x+randint(-35,35),_y+randint(20,50))+color1(col1)+bord(0)+alpha3(100)+bord(1.5)+blur(5)+fsc(60,120)+t(fry(randint(-720,720))+fry(randint(-720,720))+frz(randint(-720,720))), "{\p5}m 0 0 m 129 237 b 129 237 129 237 129 237 b 103 231 85 202 68 157 b 57 138 41 129 31 116 b 27 112 24 107 22 101 b 21 97 21 92 22 88 b 28 76 28 78 31 75 b 32 71 33 67 34 63 b 39 59 44 54 49 50 b 56 46 63 41 70 37 b 77 35 85 32 92 30 b 95 29 97 29 100 28 b 103 28 107 29 110 29 b 113 27 117 26 120 24 b 124 24 127 25 131 25 b 134 25 137 24 140 24 b 142 24 145 24 147 24 b 149 24 152 23 154 23 b 157 24 159 26 162 27 b 164 29 165 30 167 32 b 169 32 171 33 173 33 b 174 33 175 34 176 34 b 178 34 180 34 182 34 b 184 35 186 36 188 37 b 189 38 191 40 192 41 b 194 42 197 43 199 44 b 200 46 200 49 201 51 b 202 52 204 52 204 55 b 183 55 162 68 142 81 b 122 93 108 112 90 132 b 88 139 71 146 78 165 b 79 177 103 224 129 231 b 132 232 132 235 129 237{\p0}")
  69.         ass_main(ASS_BUF, SubL(_BT,_ET,1),an(5)+pos(_x,_y)+fad(200,200)+bord(1)+blur(0)+t(_SK*10-150,(_SK+_KT/2)*10,blur(5)+bord(6)+t(_SK*10-150,(_SK+_KT)*10+50,color3("0093D6")+color1('FFFFFF'))+fs(_Fs+6))+t((_SK+_KT/2)*10,(_SK+_KT)*10+50,blur(0)+bord(1)+be(1)+fs(_Fs)), _txt)
  70.     if _i > 11 :
  71.         if _i == 14 :
  72.             fa = 3000
  73.         else :
  74.             fa = 200
  75.         col = ("{\p2}m 26 37 l 38 27 l 45 19 l 52 11 l 57 7 b 66 0 72 9 64 29 l 59 26 l 62 31 b 58 36 52 43 46 47 l 41 44 l 44 48 b 41 52 37 56 33 58 l 28 52 l 30 58 l 27 61 l 24 58 l 24 61 l 21 58 l 17 61 l 17 59 b 11 62 6 64 0 64 l 0 60 b 5 60 12 57 16 54 l 14 51 l 18 51 l 17 47 l 20 50 l 20 42 l 24 38 l 25 45","{\p3}m 0 0 b 0 0 0 0 0 0 b 9 -4 16 -8 26 -11 b 26 -14 25 -16 25 -19 b 27 -22 29 -23 32 -23 b 33 -23 34 -22 35 -22 b 36 -27 31 -34 37 -38 b 38 -45 43 -45 46 -49 b 48 -47 49 -40 49 -35 b 49 -42 49 -49 49 -56 b 50 -56 51 -56 52 -56 b 53 -66 58 -76 69 -85 b 82 -96 91 -102 95 -98 b 105 -100 96 -76 96 -65 b 98 -78 103 -90 102 -103 b 145 -135 163 -128 199 -124 b 190 -112 169 -103 172 -89 b 159 -84 149 -92 128 -79 b 145 -85 154 -83 167 -83 b 157 -76 138 -70 138 -61 b 131 -51 116 -45 105 -37 b 94 -39 83 -41 72 -38 b 92 -39 100 -37 101 -33 b 85 -23 66 -13 48 -9 b 43 -13 40 -12 38 -8 b 36 -5 33 -3 27 -3 b 27 -4 26 -5 26 -6 b 17 -6 10 -3 1 1")
  76.         yum = col[randint(0,1)]
  77.         for i in range (_BT+_SK-45,_BT+_SK+_KT-45,int(_KT/3)):
  78.             ass_main(ASS_BUF, SubL(i+randint(-30,30),i+180,4), fad(0,300)+mov(_x+100+randint(-30,30),_y-100,_x+randint(-35,35),_y+randint(20,50))+color1("92BEC1")+color3("FFFFFF")+bord(0)+alpha3(100)+bord(1.5)+t(blur(10))+fsc(60,60)+t(fry(randint(-360,360))+fry(randint(-450,560))+frz(randint(-720,720))), yum)
  79.         ass_main(ASS_BUF, SubL(_BT,_ET,5),an(5)+pos(_x,_y)+fad(200,fa)+bord(1)+be(3)+color1("92BEC1")+color3("000000")+blur(0)+t(_SK*10-150,(_SK+_KT/2)*10,color1('FFFFFF')+be(0)+color3('FFFFFF')+fs(_Fs+6))+t((_SK+_KT/2)*10,(_SK+_KT*1.5)*10,color1('92BEC1')+color3('000000')+fs(_Fs)+be(3)), _txt)
  80.     return (ASS_BUF, None)
复制代码
预览传度娘盘上了,有兴趣的可以下来看看


视频预览

ass文件
3

查看全部评分

Rank: 4

沙发
发表于 2012-11-7 22:58:10 |显示全部楼层
本帖最后由 kk123456 于 2012-11-7 23:10 编辑
usfsaf 发表于 2012-11-7 09:49
才人 ,特效好多,好漂亮...  试试看能否猥琐地抄之...


我这没事的说,加上句

def tcaxPy_Fin():

    FinFont(Font)
看看
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-5-3 09:48

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH