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

标题: [SAI]038_akunohanaOP2 [打印本页]

作者: saiyaku    时间: 2013-5-11 22:34:52     标题: [SAI]038_akunohanaOP2

預覽:http://pan.baidu.com/s/1hqqY9CC#dir/path=%2FSaiyakuFX_Preview

用了mod
s.py 見我發的modtag的帖子
主要都是時間的計算 希望各位能看懂腳本
  1. from tcaxPy import *
  2. from s import *


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

  4.     ASS_BUF  = []                # 保存ASS特效
  5.     TCAS_BUF = []                # 保存TCAS特效

  6.     vc = [vc3("000000","961DCA","961DCA","961DCA"),vc3("961DCA","000000","961DCA","961DCA"),vc3("961DCA","961DCA","000000","961DCA"),vc3("961DCA","961DCA","961DCA","000000")][randint(0,3)]
  7.     o = -3
  8.     r = -15
  9.     s = randint(140,200)

  10.     T1 = _BT+_SK-5
  11.     T2 = _BT+_SK+int(_KT/10)
  12.     T3 = _BT+_SK+int(_KT/10)+int(_KT/5*4)
  13.     T4 = _BT+_SK+_KT

  14.     EFT=[bord(2.5)+pos(_X+o,_Y)+vc+frz(-r),bord(2)+pos(_X-o,_Y)+vc+frz(r)]
  15.    
  16.     stat0 = _j%2
  17.     ass_main(ASS_BUF, SubL(T1, T2,20), EFT[stat0]+t(fsc(s,s)), VertLayout(_TXT))

  18.     BT0 = getBT(0)-49

  19.     step0= 56
  20.    
  21.     stat1=stat0

  22.     cd2 = int(_KT/5*4)

  23.     if _i>3:
  24.         step0 = 28

  25.     if _i == 6:
  26.         step0 = 28
  27.         if _j < 4:
  28.             cd2 = int(_KT/5*4)
  29.         else:
  30.             if cd2>step0:
  31.                 cd2 = step0*2-(T2-getBT(6)-199)%(step0*2)

  32.     if _i > 6:
  33.         step0 = 28
  34.         if cd2>step0:
  35.             cd2 = step0*2-(T2-getBT(6)-199)%(step0*2)

  36.         if _i>8:
  37.             cd2 = int(_KT/5*4)

  38.     if T2+cd2 != T3 :
  39.         if _j%2==1:
  40.             if cd2 <step0:
  41.                 cd2 = cd2 + step0
  42.             else:
  43.                 cd2 = cd2 - step0

  44.     ass_main(ASS_BUF, SubL(T2, T2+cd2,20), EFT[stat1]+fsc(s,s), VertLayout(_TXT))

  45.     if T2+cd2 != T3:
  46.         for T in range(T2+cd2,T3,step0):
  47.             step1 = step0

  48.             if T3-T < step0:
  49.                 step1 = T3-T

  50.             stat1 = (stat1+1)%2
  51.             s = randint(140,200)
  52.             ass_main(ASS_BUF, SubL(T, T+step1,20), EFT[stat1]+fsc(s,s), VertLayout(_TXT))


  53.     ass_main(ASS_BUF, SubL(T3, T4,20), EFT[stat1]+fsc(s,s)+t(fsc(100,100)), VertLayout(_TXT))

  54.     stat2 = stat1
  55.     cd = step0*2-(T4-BT0)%(step0*2)

  56.     if _i == 6:
  57.         step0 = 28
  58.         if _j < 4:
  59.             cd = -T4+getBT(6)+199
  60.         else:
  61.             cd = step0*2-(T4-getBT(6)-199)%(step0*2)

  62.     if _i > 6:
  63.         step0 = 28

  64.         cd = step0*2-(T4-getBT(6)-199)%(step0*2)


  65.     if stat2 != stat0:
  66.         if cd <step0:
  67.             cd = cd + step0
  68.         else:
  69.             cd = cd - step0

  70.     if _j%2==1:
  71.         if cd <step0:
  72.             cd = cd + step0
  73.         else:
  74.             cd = cd - step0
  75.         

  76.     ass_main(ASS_BUF, SubL(T4, T4+cd,10), EFT[stat2], VertLayout(_TXT))

  77.     for T in range(T4+cd,_ET+_j*5,step0):
  78.         step = step0

  79.         if _ET+_j*5-T<step:
  80.             step = _ET+_j*5-T
  81.         stat2 = (stat2+1)%2

  82.         ass_main(ASS_BUF, SubL(T, T+step,10),EFT[stat2], VertLayout(_TXT))

  83.     ass_main(ASS_BUF, SubL(_ET+_j*5, _ET+_j*5+40,10), EFT[stat2]+t(fry(360))+fad(0,350), VertLayout(_TXT))

  84.     return (ASS_BUF,None)
复制代码

作者: milkyjing    时间: 2013-5-11 23:08:48

全5星, 好评

p.s. 这特效, 时间确实是个体力活
作者: 过去未来    时间: 2013-5-11 23:25:52

我竟然看不懂
作者: saiyaku    时间: 2013-5-11 23:33:18

milkyjing 发表于 2013-5-11 23:08
全5星, 好评

p.s. 这特效, 时间确实是个体力活

加上了狀態的概念後 已經省了大量的代碼了 純判斷寫出來就要哭了
作者: 神恩神威    时间: 2014-4-23 19:25:12

小白来报道
作者: milkyjing    时间: 2014-4-23 21:11:43

神恩神威 发表于 2014-4-23 19:25
小白来报道

有报道帖, 和论坛周年庆帖子.
作者: 暮雨初歇    时间: 2014-8-29 11:06:44

你发的modtag的帖子 我找不到 求地址

作者: saiyaku    时间: 2014-8-29 12:41:10

暮雨初歇 发表于 2014-8-29 11:06
你发的modtag的帖子 我找不到 求地址

http://www.tcax.org/forum.php?mod=viewthread&tid=162
作者: 暮雨初歇    时间: 2014-8-29 12:42:59

saiyaku 发表于 2014-8-29 12:41
http://www.tcax.org/forum.php?mod=viewthread&tid=162

谢谢哈
作者: Alex    时间: 2014-10-14 16:01:09

Simple but nice =D
作者: Seekladoom    时间: 2022-1-25 23:00:20

本帖最后由 Seekladoom 于 2022-1-25 23:00 编辑

VertLayout()函数的源码定义不在tcaxPy.py文件里面,在tcaxlib.pyd文件里面。
如需查询VertLayout()函数的手册,请看如下链接:
http://www.tcax.org/docs/tcaxLib ... ff367ea721ebc3c2a12

看不懂英文的请使用谷歌机翻。





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