游戏王残局简化版

Annotation For script/c0.lua
Login

Annotation For script/c0.lua

Origin for each line in script/c0.lua from check-in 7e9252a9de:

6d182363a9 2023-06-30    1: str = {}
6d182363a9 2023-06-30    2: fun = {}
d95f494908 2023-06-30    3: 
d95f494908 2023-06-30    4: str["Debug.ReloadFieldBegin"] = Debug.ReloadFieldBegin
d95f494908 2023-06-30    5: 
d95f494908 2023-06-30    6: Debug.ReloadFieldBegin = function(str_1, str_2)
29959a9986 2023-06-30    7:   str["不洗牌"] = str_1 & DUEL_PSEUDO_SHUFFLE
4be88097db 2023-07-05    8:   str["无BP"] = str_1 & DUEL_ATTACK_FIRST_TURN
bf6cc894c2 2023-06-30    9: 
935340b0b8 2023-06-30   10:   if str_2 then
935340b0b8 2023-06-30   11:     if str_2 == 3 then
36a332440b 2023-06-30   12:     str["规则"] = "大师3 "
935340b0b8 2023-06-30   13:     elseif str_2 == 4 then
36a332440b 2023-06-30   14:       str["规则"] = "新大师 "
8210af4dfb 2023-07-01   15:     elseif str_2 == 5 then
8210af4dfb 2023-07-01   16:       str["规则"] = "大师2020 "
935340b0b8 2023-06-30   17:       end
ab8e787d19 2023-06-30   18:   else
36a332440b 2023-06-30   19:     str["规则"] = "大师2020 "
935340b0b8 2023-06-30   20:     end
2ed229a931 2023-06-30   21:   str["Debug.ReloadFieldBegin"](str_1, str_2)
d95f494908 2023-06-30   22:   end
d95f494908 2023-06-30   23: 
fa3eaf118c 2023-07-08   24: fun["通关邀请"] = function(str_1, str_2)
c3f96fe46f 2023-06-29   25:   local effect_1
c3f96fe46f 2023-06-29   26:   effect_1 = Effect.GlobalEffect()
c3f96fe46f 2023-06-29   27:   effect_1:SetType(EFFECT_TYPE_FIELD
c3f96fe46f 2023-06-29   28:     + EFFECT_TYPE_CONTINUOUS)
c3f96fe46f 2023-06-29   29:   effect_1:SetCode(EVENT_DAMAGE)
c3f96fe46f 2023-06-29   30:   function cache_1()
13c0c971de 2023-07-08   31:     if str_1 then
38c55842f2 2023-07-08   32:       str["QB"] = str_1
6a458308d6 2023-07-08   33:       str_1 = false
7e9252a9de 2023-07-08   34:       Debug.ShowHint("残局群181175613")
21f1d91f33 2023-07-08   35:       return true
13c0c971de 2023-07-08   36:       end
13c0c971de 2023-07-08   37: 
c3f96fe46f 2023-06-29   38:     cache_1 = Duel.GetLP(1)
fe3054fa0e 2023-06-29   39:     if cache_1 <= 0 then
f11cd095f5 2023-07-08   40: 
4b62d7ac4f 2023-07-08   41:       if cache_1 < 0 then
4b62d7ac4f 2023-07-08   42:         if str_2 then
8ac61f2bc0 2023-07-08   43:           Debug.ShowHint(str_2)
b2f344b9fc 2023-07-08   44:           end
da250ab414 2023-07-08   45:         end
f11cd095f5 2023-07-08   46: 
c3f96fe46f 2023-06-29   47:       cache_1 = true
c3f96fe46f 2023-06-29   48:     else
c3f96fe46f 2023-06-29   49:       cache_1 = false
c3f96fe46f 2023-06-29   50:       end
c3f96fe46f 2023-06-29   51:     return cache_1
c3f96fe46f 2023-06-29   52:     end
c3f96fe46f 2023-06-29   53:   effect_1:SetCondition(cache_1)
d6c3716877 2023-07-08   54:   function cache_1(effect_event
d6c3716877 2023-07-08   55:     , player_who_activate_the_effect)
f0ffe5edcc 2023-07-08   56:     if str["QB"] then
d6c3716877 2023-07-08   57:       announce_card = Duel.AnnounceCard(player_who_activate_the_effect)
d6c3716877 2023-07-08   58:       card = Duel.CreateToken(player_who_activate_the_effect
d6c3716877 2023-07-08   59:       , announce_card)
38c55842f2 2023-07-08   60:       cache_1 = Card.IsCode(card, str["QB"])
38c55842f2 2023-07-08   61:       if cache_1 then
38c55842f2 2023-07-08   62:       else
38c55842f2 2023-07-08   63:         Duel.SetLP(0, 0)
38c55842f2 2023-07-08   64:         end
d6c3716877 2023-07-08   65:       str["QB"] = false
d6c3716877 2023-07-08   66:     else
d6c3716877 2023-07-08   67:       Debug.ShowHint("残局群181175613")
f0ffe5edcc 2023-07-08   68:       end
78d7353d8f 2023-06-29   69:     return
78d7353d8f 2023-06-29   70:     end
78d7353d8f 2023-06-29   71:   effect_1:SetOperation(cache_1)
78d7353d8f 2023-06-29   72: 
78d7353d8f 2023-06-29   73:   Duel.RegisterEffect(effect_1
78d7353d8f 2023-06-29   74:     , 0)
78d7353d8f 2023-06-29   75:   end
78d7353d8f 2023-06-29   76: 
78d7353d8f 2023-06-29   77: fun["是否效果卡"] = function(card)
d2dde12476 2023-06-29   78: 
d2dde12476 2023-06-29   79:   cache_1 = Card.IsType(card, TYPE_SPELL)
d2dde12476 2023-06-29   80:   cache_2 = Card.IsType(card, TYPE_TRAP)
d2dde12476 2023-06-29   81:   cache_3 = Card.IsType(card, TYPE_EFFECT)
d2dde12476 2023-06-29   82: 
d2dde12476 2023-06-29   83:   if cache_1
d2dde12476 2023-06-29   84:   or cache_2
6f3de2e0f3 2023-07-04   85:   or cache_3 then
e7130db7c4 2023-06-29   86:     return true
e7130db7c4 2023-06-29   87:     end
cc327b2c58 2023-07-04   88:   cache_1 = Card.IsType(card, TYPE_PENDULUM)
cc327b2c58 2023-07-04   89: 
cc327b2c58 2023-07-04   90:   if cache_1 then
d8d61432b6 2023-07-04   91:     cache_1 = Card.IsCode(card, 28363749)
d8d61432b6 2023-07-04   92:     cache_2 = Card.IsCode(card, 19474136)
1d09fc48b2 2023-07-04   93:     cache_3 = Card.IsCode(card, 17390179)
1d09fc48b2 2023-07-04   94:     cache_4 = Card.IsCode(card, 83980492)
1d09fc48b2 2023-07-04   95:     if cache_1
1d09fc48b2 2023-07-04   96:     or cache_2
1d09fc48b2 2023-07-04   97:     or cache_3
1d09fc48b2 2023-07-04   98:     or cache_4 then
5c3d90f056 2023-07-04   99:     else
1d09fc48b2 2023-07-04  100:       return true
1d09fc48b2 2023-07-04  101:       end
cc327b2c58 2023-07-04  102:     end
cc327b2c58 2023-07-04  103: 
e7130db7c4 2023-06-29  104:   return false
e7130db7c4 2023-06-29  105:   end
e7130db7c4 2023-06-29  106: 
648e2ae3c0 2023-07-08  107: fun["开局说明"] = function()
567a672978 2023-07-01  108:   if str["开局说明吗"] == 1 then
7592a88912 2023-07-01  109:     return
7592a88912 2023-07-01  110:   else
567a672978 2023-07-01  111:     str["开局说明吗"] = 1
7592a88912 2023-07-01  112:     end
7592a88912 2023-07-01  113: 
ff0aefc8cb 2023-06-30  114:   cache_1 = 0
0c34cecc84 2023-06-30  115:   cache_1 = cache_1 + LOCATION_DECK
0c34cecc84 2023-06-30  116:   cache_1 = cache_1 + LOCATION_HAND
0c34cecc84 2023-06-30  117:   cache_1 = cache_1 + LOCATION_MZONE
0c34cecc84 2023-06-30  118:   cache_1 = cache_1 + LOCATION_SZONE
0c34cecc84 2023-06-30  119:   cache_1 = cache_1 + LOCATION_GRAVE
0c34cecc84 2023-06-30  120:   cache_1 = cache_1 + LOCATION_REMOVED
0c34cecc84 2023-06-30  121:   cache_1 = cache_1 + LOCATION_EXTRA
ff0aefc8cb 2023-06-30  122: 
ff0aefc8cb 2023-06-30  123:   str["这个残局的效果卡数量"] = Duel.GetMatchingGroupCount(fun["是否效果卡"],0,cache_1,cache_1,nil)
72f53d3a1a 2023-06-30  124: 
4e48d105e5 2023-06-30  125:   cache_1 = Duel.GetOverlayGroup(0, LOCATION_MZONE, LOCATION_MZONE)
72f53d3a1a 2023-06-30  126: 
4e48d105e5 2023-06-30  127:   for k in aux.Next(cache_1) do
4e48d105e5 2023-06-30  128:     cache_1 = fun["是否效果卡"](k)
4e48d105e5 2023-06-30  129:     if cache_1 then
4e48d105e5 2023-06-30  130:       str["这个残局的效果卡数量"] = str["这个残局的效果卡数量"] + 1
4e48d105e5 2023-06-30  131:       end
4e48d105e5 2023-06-30  132:     end
06ee05c026 2023-06-30  133: 
06ee05c026 2023-06-30  134:   str["开局说明"] =""
06ee05c026 2023-06-30  135: 
0d3a4c8010 2023-06-30  136:   str["开局说明"] = str["开局说明"] .. str["这个残局的效果卡数量"]
36a332440b 2023-06-30  137:   str["开局说明"] = str["开局说明"] .. "卡 "
8338c6d2e6 2023-06-30  138: 
8338c6d2e6 2023-06-30  139:   str["开局说明"] = str["开局说明"] .. str["规则"]
8338c6d2e6 2023-06-30  140: 
3fd449f7a7 2023-06-30  141:   if str["不洗牌"] == 0 then
3fd449f7a7 2023-06-30  142:   else
36a332440b 2023-06-30  143:     str["开局说明"] = str["开局说明"] .. "伪洗牌 "
15b94d8040 2023-06-30  144:     end
be78d8f253 2023-07-05  145:   if str["无BP"] == 0 then
be78d8f253 2023-07-05  146:     str["开局说明"] = str["开局说明"] .. "无BP "
be78d8f253 2023-07-05  147:     end
15b94d8040 2023-06-30  148: 
15b94d8040 2023-06-30  149:   if str["开局添加手卡"] then
36a332440b 2023-06-30  150:     str["开局说明"] = str["开局说明"] .. "选"
15b94d8040 2023-06-30  151:     str["开局说明"] = str["开局说明"] .. str["开局添加手卡"]
36a332440b 2023-06-30  152:     str["开局说明"] = str["开局说明"] .. "卡 "
36a332440b 2023-06-30  153:     end
36a332440b 2023-06-30  154: 
6a26890958 2023-07-06  155:   if str["禁格"] then
38127bc74b 2023-07-06  156:     str["开局说明"] = str["开局说明"] .. "禁"
38127bc74b 2023-07-06  157:     str["开局说明"] = str["开局说明"] .. str["禁格"]
38127bc74b 2023-07-06  158:     str["开局说明"] = str["开局说明"] .. "格 "
38127bc74b 2023-07-06  159:     end
38127bc74b 2023-07-06  160: 
52e4f82c0b 2023-07-07  161:   if str["印卡"] then
52e4f82c0b 2023-07-07  162:     str["开局说明"] = str["开局说明"] .. "印卡 "
52e4f82c0b 2023-07-07  163:     end
52e4f82c0b 2023-07-07  164: 
647c058939 2023-06-30  165:   Debug.ShowHint(str["开局说明"])
648e2ae3c0 2023-07-08  166:   fun["通关邀请"]()
32fa479c6d 2023-06-30  167:   end
32fa479c6d 2023-06-30  168: 
45467c0d0c 2023-06-30  169: fun["开局添加手卡"] = function(str_1)
32fa479c6d 2023-06-30  170:   str["开局添加手卡"] = str_1
32fa479c6d 2023-06-30  171:   effect_1 = Effect.GlobalEffect()
32fa479c6d 2023-06-30  172:   effect_1:SetType(EFFECT_TYPE_FIELD
32fa479c6d 2023-06-30  173:     + EFFECT_TYPE_CONTINUOUS)
32fa479c6d 2023-06-30  174:   effect_1:SetCode(EVENT_ADJUST)
32fa479c6d 2023-06-30  175:   effect_1:SetCountLimit(1)
32fa479c6d 2023-06-30  176:   function cache_1()
287a20cec6 2023-07-01  177:     if str["已添加手卡"] == 1 then
287a20cec6 2023-07-01  178:       return false
287a20cec6 2023-07-01  179:     else
287a20cec6 2023-07-01  180:       str["已添加手卡"] = 1
287a20cec6 2023-07-01  181:       return true
287a20cec6 2023-07-01  182:       end
287a20cec6 2023-07-01  183: 
32fa479c6d 2023-06-30  184:     end
32fa479c6d 2023-06-30  185:   effect_1:SetCondition(cache_1)
32fa479c6d 2023-06-30  186:   function cache_1(effect_event
32fa479c6d 2023-06-30  187:     , player_who_activate_the_effect)
737aacba66 2023-06-30  188: 
32fa479c6d 2023-06-30  189:     str["玩家选定的卡"] = Duel.SelectMatchingCard(player_who_activate_the_effect
32fa479c6d 2023-06-30  190:        , Card.IsAbleToHand
32fa479c6d 2023-06-30  191:        , player_who_activate_the_effect
32fa479c6d 2023-06-30  192:        , LOCATION_DECK
32fa479c6d 2023-06-30  193:        , 0
32fa479c6d 2023-06-30  194:        , str_1
32fa479c6d 2023-06-30  195:        , str_1
32fa479c6d 2023-06-30  196:        , nil)
32fa479c6d 2023-06-30  197:     Duel.SendtoHand(str["玩家选定的卡"]
32fa479c6d 2023-06-30  198:       , nil
32fa479c6d 2023-06-30  199:       , REASON_RULE)
32fa479c6d 2023-06-30  200:     end
32fa479c6d 2023-06-30  201:   effect_1:SetOperation(cache_1)
32fa479c6d 2023-06-30  202:   Duel.RegisterEffect(effect_1
32fa479c6d 2023-06-30  203:     , 0)
dbd1c234df 2023-07-05  204:   fun["开局说明"]()
dbd1c234df 2023-07-05  205:   end
1700f9f25e 2023-07-06  206: 
1700f9f25e 2023-07-06  207: fun["禁格"] = function(str_1)
6a26890958 2023-07-06  208:   str["禁格"] = str_1
1700f9f25e 2023-07-06  209:   effect_1 = Effect.GlobalEffect()
1700f9f25e 2023-07-06  210:   effect_1:SetType(EFFECT_TYPE_FIELD)
6a26890958 2023-07-06  211:   effect_1:SetCode(EFFECT_USE_EXTRA_MZONE)
6a26890958 2023-07-06  212:   effect_1:SetValue(str_1)
6a26890958 2023-07-06  213:   Duel.RegisterEffect(effect_1,0)
6a26890958 2023-07-06  214:   end
264925f3bc 2023-07-07  215: 
bd625da610 2023-07-07  216: fun["印卡"] = function(str_1, str_2, str_3)
4d7cf6cdaf 2023-07-07  217:   str["印卡"] = 1
bd625da610 2023-07-07  218: 
2ddc3f05f9 2023-07-07  219:   if str_3 then
2ddc3f05f9 2023-07-07  220:   else
2ddc3f05f9 2023-07-07  221:     str_3 = str_2
2ddc3f05f9 2023-07-07  222:     end
2ddc3f05f9 2023-07-07  223: 
94bd545b2f 2023-07-07  224:   str["当前印卡数"] = 1
94bd545b2f 2023-07-07  225: 
a2c4818549 2023-07-07  226:   effect_1 = Effect.CreateEffect(str_1)
b325ab1169 2023-07-07  227: 
c8084df530 2023-07-07  228:   effect_1:SetType(EFFECT_TYPE_IGNITION)
0db518c6bf 2023-07-07  229: 
c197dc7121 2023-07-07  230:   effect_1:SetProperty(EFFECT_FLAG_BOTH_SIDE
c197dc7121 2023-07-07  231:     + EFFECT_FLAG_UNCOPYABLE
c71ce2ef3c 2023-07-07  232:     + EFFECT_FLAG_CANNOT_NEGATE
c71ce2ef3c 2023-07-07  233:     + EFFECT_FLAG_CANNOT_DISABLE)
0db518c6bf 2023-07-07  234: 
cd97fa9b51 2023-07-07  235: 
086529037c 2023-07-07  236:   cache_1 = function()
086529037c 2023-07-07  237:     Duel.SetChainLimit(aux.FALSE)
086529037c 2023-07-07  238:     return true
086529037c 2023-07-07  239:     end
0db518c6bf 2023-07-07  240: 
086529037c 2023-07-07  241:   effect_1:SetTarget(cache_1)
0db518c6bf 2023-07-07  242: 
48b1ff2073 2023-07-07  243:   effect_1:SetRange(LOCATION_EXTRA)
0db518c6bf 2023-07-07  244: 
48b1ff2073 2023-07-07  245:   function print_hand(effect_event
48b1ff2073 2023-07-07  246:       , player_who_activate_the_effect)
6f74bff292 2023-07-07  247:     announce_card = Duel.AnnounceCard(player_who_activate_the_effect)
6f74bff292 2023-07-07  248:     card = Duel.CreateToken(player_who_activate_the_effect
6f74bff292 2023-07-07  249:       , announce_card)
bd625da610 2023-07-07  250:     if str["当前印卡数"] <= str_2 then
df472ff387 2023-07-07  251:       str["当前印卡数"] = str["当前印卡数"] + 1
df472ff387 2023-07-07  252:       Duel.SendtoHand(card,nil,REASON_RULE)
df472ff387 2023-07-07  253:     else
bd625da610 2023-07-07  254:       if str["当前印卡数"] <= str_3 then
7cf8de5797 2023-07-07  255:         str["当前印卡数"] = str["当前印卡数"] + 1
7cf8de5797 2023-07-07  256:         Duel.Remove(card,POS_FACEUP,REASON_RULE)
7cf8de5797 2023-07-07  257:         Duel.SendtoDeck(card,player_who_activate_the_effect,0,REASON_RULE)
7cf8de5797 2023-07-07  258:       else
7cf8de5797 2023-07-07  259:         Debug.ShowHint("印卡过多!")
6fd7ae5db6 2023-07-07  260:         end
6fd7ae5db6 2023-07-07  261: 
6fd7ae5db6 2023-07-07  262:       end
6fd7ae5db6 2023-07-07  263:     end
8c94409d80 2023-07-07  264:   effect_1:SetOperation(print_hand)
6fd7ae5db6 2023-07-07  265:   str_1:RegisterEffect(effect_1)
6fd7ae5db6 2023-07-07  266:   end
dfafea2170 2023-07-08  267: 
dfafea2170 2023-07-08  268: 
4eec9f72fd 2023-07-08  269: --~ fun["QB"] = function(str_1)
4eec9f72fd 2023-07-08  270: --~   effect_1 = Effect.GlobalEffect()
4eec9f72fd 2023-07-08  271: --~   effect_1:SetType(EFFECT_TYPE_FIELD
4eec9f72fd 2023-07-08  272: --~     + EFFECT_TYPE_CONTINUOUS)
4eec9f72fd 2023-07-08  273: --~   effect_1:SetCode(EVENT_ADJUST)
4eec9f72fd 2023-07-08  274: --~   effect_1:SetCountLimit(1)
4eec9f72fd 2023-07-08  275: --~   function cache_1()
4eec9f72fd 2023-07-08  276: --~     if str["已添加手卡"] == 1 then
4eec9f72fd 2023-07-08  277: --~       return false
4eec9f72fd 2023-07-08  278: --~     else
4eec9f72fd 2023-07-08  279: --~       str["已添加手卡"] = 1
4eec9f72fd 2023-07-08  280: --~       return true
4eec9f72fd 2023-07-08  281: --~       end
4eec9f72fd 2023-07-08  282: 
4eec9f72fd 2023-07-08  283: --~     end
4eec9f72fd 2023-07-08  284: --~   effect_1:SetCondition(cache_1)
4eec9f72fd 2023-07-08  285: --~   announce_card = Duel.AnnounceCard(0)
4eec9f72fd 2023-07-08  286: --~   card = Duel.CreateToken(0
4eec9f72fd 2023-07-08  287: --~     , announce_card)
4eec9f72fd 2023-07-08  288: --~   end