Merge pull request '도적 카드 전체에 공식 스킬 아이콘 적용' (#73) from codex/thief-card-icons into main

This commit was merged in pull request #73.
This commit is contained in:
2026-06-16 23:20:40 +09:00
9 changed files with 6196 additions and 342 deletions

View File

@@ -32,10 +32,10 @@
{
"@type": "script.SlayDeckController",
"Enable": true,
"Energy": 0.0,
"MaxEnergy": 3.0,
"Turn": 0.0,
"TweenEventId": 0.0
"Energy": 0,
"MaxEnergy": 3,
"Turn": 0,
"TweenEventId": 0
}
],
"@version": 1

File diff suppressed because one or more lines are too long

View File

@@ -378,7 +378,8 @@
"rarity": "normal",
"desc": "피해를 3 줍니다. 약화를 1 부여합니다.",
"weak": 1,
"damage": 3
"damage": 3,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"SilentStrike": {
"name": "타격",
@@ -387,7 +388,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "피해를 6 줍니다.",
"damage": 6
"damage": 6,
"image": "92a5020c978c46bdabab910598118b86"
},
"Survivor": {
"name": "생존자",
@@ -397,7 +399,8 @@
"rarity": "normal",
"desc": "방어도를 8 얻습니다. 카드를 1장 버립니다.",
"block": 8,
"discard": 1
"discard": 1,
"image": "49c8f279bfa64bf3954037f17da0052d"
},
"SilentDefend": {
"name": "수비",
@@ -406,7 +409,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "방어도를 5 얻습니다.",
"block": 5
"block": 5,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Slice": {
"name": "칼질",
@@ -415,7 +419,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "피해를 6 줍니다.",
"damage": 6
"damage": 6,
"image": "92a5020c978c46bdabab910598118b86"
},
"Shiv": {
"name": "표창",
@@ -426,7 +431,8 @@
"desc": "피해를 4 줍니다. 소멸.",
"damage": 4,
"exhaust": true,
"token": true
"token": true,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"DaggerSpray": {
"name": "단검 분사",
@@ -437,7 +443,8 @@
"desc": "모든 적에게 피해를 4만큼 2번 줍니다.",
"aoe": true,
"damage": 4,
"hits": 2
"hits": 2,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"DaggerThrow": {
"name": "단검 투척",
@@ -448,7 +455,8 @@
"desc": "피해를 9 줍니다. 카드를 1장 뽑습니다. 카드를 1장 버립니다.",
"draw": 1,
"damage": 9,
"discard": 1
"discard": 1,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"PoisonedStab": {
"name": "독 찌르기",
@@ -458,7 +466,8 @@
"rarity": "normal",
"desc": "피해를 6 줍니다. 중독을 3 부여합니다.",
"poison": 3,
"damage": 6
"damage": 6,
"image": "19361e72087946b1888684185b40d935"
},
"SuckerPunch": {
"name": "불의의 일격",
@@ -468,7 +477,8 @@
"rarity": "normal",
"desc": "피해를 8 줍니다. 약화를 1 부여합니다.",
"weak": 1,
"damage": 8
"damage": 8,
"image": "92a5020c978c46bdabab910598118b86"
},
"LeadingStrike": {
"name": "선제 타격",
@@ -478,7 +488,8 @@
"rarity": "normal",
"desc": "피해를 3 줍니다. 표창을 2장 손으로 가져옵니다.",
"damage": 3,
"addShiv": 2
"addShiv": 2,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"FollowThrough": {
"name": "완수",
@@ -487,7 +498,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "피해를 7 줍니다. 손에 다른 카드가 5장 이상 있다면, 1번 추가로 적중합니다.",
"damage": 7
"damage": 7,
"image": "92a5020c978c46bdabab910598118b86"
},
"FlickFlack": {
"name": "재주넘기",
@@ -498,7 +510,8 @@
"desc": "교활. 모든 적에게 피해를 6 줍니다.",
"aoe": true,
"damage": 6,
"sly": true
"sly": true,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"Ricochet": {
"name": "도탄",
@@ -509,7 +522,8 @@
"desc": "교활. 무작위 적에게 피해를 3만큼 4번 줍니다.",
"damage": 3,
"hits": 4,
"sly": true
"sly": true,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"Prepared": {
"name": "예비",
@@ -519,7 +533,8 @@
"rarity": "normal",
"desc": "카드를 1장 뽑습니다. 카드를 1장 버립니다.",
"draw": 1,
"discard": 1
"discard": 1,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"Anticipate": {
"name": "예측",
@@ -528,7 +543,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "이번 턴 동안 민첩을 2 얻습니다.",
"dex": 2
"dex": 2,
"image": "49c8f279bfa64bf3954037f17da0052d"
},
"Deflect": {
"name": "튕겨내기",
@@ -537,7 +553,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "방어도를 4 얻습니다.",
"block": 4
"block": 4,
"image": "0946f69d84464df29b24b94c744c868d"
},
"BladeDance": {
"name": "검무",
@@ -547,7 +564,8 @@
"rarity": "normal",
"desc": "표창을 3장 손으로 가져옵니다. 소멸.",
"addShiv": 3,
"exhaust": true
"exhaust": true,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"Backflip": {
"name": "공중제비",
@@ -557,7 +575,8 @@
"rarity": "normal",
"desc": "방어도를 5 얻습니다. 카드를 2장 뽑습니다.",
"block": 5,
"draw": 2
"draw": 2,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"DodgeAndRoll": {
"name": "구르기",
@@ -566,7 +585,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "방어도를 4 얻습니다. 다음 턴에, 방어도를 4 얻습니다",
"block": 4
"block": 4,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"PiercingWail": {
"name": "귀를 찢는 비명",
@@ -575,7 +595,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "이번 턴 동안 모든 적이 힘을 6 잃습니다. 소멸.",
"draw": 1
"draw": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"CloakAndDagger": {
"name": "망토와 단검",
@@ -585,7 +606,8 @@
"rarity": "normal",
"desc": "방어도를 6 얻습니다. 표창을 1장 손으로 가져옵니다.",
"block": 6,
"addShiv": 1
"addShiv": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"DeadlyPoison": {
"name": "맹독",
@@ -594,7 +616,8 @@
"class": "bandit",
"rarity": "normal",
"desc": "중독을 5 부여합니다.",
"poison": 5
"poison": 5,
"image": "19361e72087946b1888684185b40d935"
},
"Snakebite": {
"name": "뱀 물기",
@@ -604,7 +627,8 @@
"rarity": "normal",
"desc": "보존. 중독을 7 부여합니다.",
"poison": 7,
"retain": true
"retain": true,
"image": "19361e72087946b1888684185b40d935"
},
"Untouchable": {
"name": "범접 불가",
@@ -614,7 +638,8 @@
"rarity": "normal",
"desc": "교활. 방어도를 6 얻습니다.",
"block": 6,
"sly": true
"sly": true,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Skewer": {
"name": "꼬챙이",
@@ -623,7 +648,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 8만큼 X번 줍니다.",
"draw": 1
"draw": 1,
"image": "92a5020c978c46bdabab910598118b86"
},
"Backstab": {
"name": "배신",
@@ -632,7 +658,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "선천성. 피해를 11 줍니다. 소멸.",
"damage": 11
"damage": 11,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"PreciseCut": {
"name": "정밀한 베기",
@@ -641,7 +668,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 13 줍니다. 손에 있는 다른 카드 1장당 피해량이 2 감소합니다.",
"damage": 13
"damage": 13,
"image": "92a5020c978c46bdabab910598118b86"
},
"Finisher": {
"name": "마무리",
@@ -650,7 +678,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "이번 턴에 사용한 공격 카드 1장당 피해를 6 줍니다.",
"damage": 6
"damage": 6,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"MementoMori": {
"name": "메멘토 모리",
@@ -659,7 +688,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 9 줍니다. 이번 턴에 버린 카드 1장당 피해량이 4 증가합니다.",
"damage": 9
"damage": 9,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Strangle": {
"name": "목 조르기",
@@ -668,7 +698,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 8 줍니다. 이번 턴에 카드를 사용할 때마다, 대상 적이 체력을 2 잃습니다.",
"damage": 8
"damage": 8,
"image": "92a5020c978c46bdabab910598118b86"
},
"Flechettes": {
"name": "프레췌",
@@ -677,7 +708,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "손에 있는 스킬 카드 1장당 피해를 5 줍니다.",
"damage": 5
"damage": 5,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"Pounce": {
"name": "덮치기",
@@ -686,7 +718,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 12 줍니다. 다음에 사용하는 스킬 카드의 비용이 0 이 됩니다.",
"damage": 12
"damage": 12,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"Dash": {
"name": "돌진",
@@ -696,7 +729,8 @@
"rarity": "unique",
"desc": "방어도를 10 얻습니다. 피해를 10 줍니다.",
"block": 10,
"damage": 10
"damage": 10,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"Predator": {
"name": "천적",
@@ -706,7 +740,8 @@
"rarity": "unique",
"desc": "피해를 15 줍니다. 다음 턴에, 카드를 2장 뽑습니다.",
"draw": 2,
"damage": 15
"damage": 15,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"Pinpoint": {
"name": "정밀 사격",
@@ -715,7 +750,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "피해를 15 줍니다. 이번 턴에 스킬을 사용할 때마다 비용이 1 감소합니다.",
"damage": 15
"damage": 15,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"CalculatedGamble": {
"name": "계산된 도박",
@@ -724,7 +760,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "손에 있는 모든 카드를 버린 뒤, 버린 카드의 수만큼 카드를 뽑습니다. 소멸.",
"draw": 1
"draw": 1,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"Expose": {
"name": "들춰내기",
@@ -733,7 +770,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "대상 적의 모든 인공물과 방어도를 제거합니다. 취약을 2 부여합니다. 소멸.",
"vuln": 2
"vuln": 2,
"image": "0946f69d84464df29b24b94c744c868d"
},
"HiddenDaggers": {
"name": "숨겨진 단검",
@@ -743,7 +781,8 @@
"rarity": "unique",
"desc": "카드를 2장 버립니다. 표창을 2장 손으로 가져옵니다.",
"discard": 2,
"addShiv": 2
"addShiv": 2,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"EscapePlan": {
"name": "탈출구",
@@ -753,7 +792,8 @@
"rarity": "unique",
"desc": "카드를 1장 뽑습니다. 뽑은 카드가 스킬 카드라면, 방어도를 3 얻습니다.",
"block": 3,
"draw": 1
"draw": 1,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"Acrobatics": {
"name": "곡예",
@@ -763,7 +803,8 @@
"rarity": "unique",
"desc": "카드를 3장 뽑습니다. 카드를 1장 버립니다.",
"draw": 3,
"discard": 1
"discard": 1,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"HandTrick": {
"name": "손기술",
@@ -772,7 +813,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "방어도를 7 얻습니다. 이번 턴 동안 손에 있는 스킬 카드 1장에 교활을 추가합니다.",
"block": 7
"block": 7,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"Mirage": {
"name": "신기루",
@@ -781,7 +823,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "모든 적에게 부여된 중독과 동일한 만큼의 방어도를 얻습니다. 소멸.",
"draw": 1
"draw": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Expertise": {
"name": "전문성",
@@ -790,7 +833,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "손에 있는 카드가 6장이 될 때까지 카드를 뽑습니다.",
"draw": 1
"draw": 1,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"BubbleBubble": {
"name": "차오르는 독",
@@ -799,7 +843,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "적이 중독을 보유하고 있다면, 중독을 9 부여합니다.",
"poison": 9
"poison": 9,
"image": "19361e72087946b1888684185b40d935"
},
"Blur": {
"name": "흐릿함",
@@ -808,7 +853,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "방어도를 5 얻습니다. 다음 턴 시작 시 방어도가 사라지지 않습니다.",
"block": 5
"block": 5,
"image": "0946f69d84464df29b24b94c744c868d"
},
"LegSweep": {
"name": "다리 걸기",
@@ -818,7 +864,8 @@
"rarity": "unique",
"desc": "약화를 2 부여합니다. 방어도를 11 얻습니다.",
"block": 11,
"weak": 2
"weak": 2,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"UpMySleeve": {
"name": "비책",
@@ -827,7 +874,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "표창을 3장 손으로 가져옵니다. 이 카드의 비용이 1 감소합니다.",
"addShiv": 3
"addShiv": 3,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"BouncingFlask": {
"name": "탄성 플라스크",
@@ -836,7 +884,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "무작위 적에게 중독을 3만큼 3번 부여합니다.",
"poison": 9
"poison": 9,
"image": "19361e72087946b1888684185b40d935"
},
"Reflex": {
"name": "반사신경",
@@ -846,7 +895,8 @@
"rarity": "unique",
"desc": "교활. 카드를 2장 뽑습니다.",
"draw": 2,
"sly": true
"sly": true,
"image": "49c8f279bfa64bf3954037f17da0052d"
},
"Haze": {
"name": "아지랑이",
@@ -856,7 +906,8 @@
"rarity": "unique",
"desc": "교활. 모든 적에게 중독을 4 부여합니다.",
"poison": 4,
"sly": true
"sly": true,
"image": "19361e72087946b1888684185b40d935"
},
"Tactician": {
"name": "전략가",
@@ -867,7 +918,8 @@
"desc": "교활. 을 얻습니다.",
"powerEffect": "energyPerTurn",
"value": 1,
"sly": true
"sly": true,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"WellLaidPlans": {
"name": "괜찮은 전략",
@@ -877,7 +929,8 @@
"rarity": "unique",
"desc": "내 턴 종료 시, 카드를 최대 1장까지 보존합니다.",
"powerEffect": "blockPerTurn",
"value": 2
"value": 2,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"InfiniteBlades": {
"name": "무한의 검날",
@@ -886,7 +939,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "내 턴 시작 시, 표창을 1장 손으로 가져옵니다.",
"turnStartShiv": 1
"turnStartShiv": 1,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"Footwork": {
"name": "발놀림",
@@ -895,7 +949,8 @@
"class": "bandit",
"rarity": "unique",
"desc": "민첩을 2 얻습니다.",
"dex": 2
"dex": 2,
"image": "49c8f279bfa64bf3954037f17da0052d"
},
"Outbreak": {
"name": "발병",
@@ -907,7 +962,8 @@
"aoe": true,
"powerEffect": "strengthPerTurn",
"value": 1,
"damage": 11
"damage": 11,
"image": "19361e72087946b1888684185b40d935"
},
"NoxiousFumes": {
"name": "유독 가스",
@@ -918,7 +974,8 @@
"desc": "내 턴 시작 시, 모든 적에게 중독을 2 부여합니다.",
"poison": 2,
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "19361e72087946b1888684185b40d935"
},
"Accuracy": {
"name": "정밀",
@@ -928,7 +985,8 @@
"rarity": "unique",
"desc": "표창의 피해량이 4 증가합니다.",
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"PhantomBlades": {
"name": "환영검",
@@ -938,7 +996,8 @@
"rarity": "unique",
"desc": "표창이 보존을 얻습니다. 매 턴마다 처음으로 사용하는 표창의 피해량이 9 증가합니다.",
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Speedster": {
"name": "스피드스터",
@@ -950,7 +1009,8 @@
"aoe": true,
"powerEffect": "strengthPerTurn",
"value": 1,
"damage": 2
"damage": 2,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"GrandFinale": {
"name": "대단원의 막",
@@ -960,7 +1020,8 @@
"rarity": "legend",
"desc": "뽑을 카드 더미에 카드가 없을 때만 사용할 수 있습니다. 모든 적에게 피해를 60 줍니다.",
"aoe": true,
"damage": 60
"damage": 60,
"image": "dbdbb1b56ae54672ae68ac6882fff6a2"
},
"Assassinate": {
"name": "암살",
@@ -970,7 +1031,8 @@
"rarity": "legend",
"desc": "선천성. 피해를 10 줍니다. 취약을 1 부여합니다. 소멸.",
"vuln": 1,
"damage": 10
"damage": 10,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"EchoingSlash": {
"name": "메아리 참격",
@@ -980,7 +1042,8 @@
"rarity": "legend",
"desc": "모든 적에게 피해를 10 줍니다. 적을 처치할 때마다 이 효과를 반복합니다.",
"aoe": true,
"damage": 10
"damage": 10,
"image": "dbdbb1b56ae54672ae68ac6882fff6a2"
},
"TheHunt": {
"name": "사냥",
@@ -989,7 +1052,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "피해를 10 줍니다. 치명타라면, 카드 보상을 추가로 얻습니다. 소멸.",
"damage": 10
"damage": 10,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"Murder": {
"name": "살해",
@@ -998,7 +1062,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "피해를 1 줍니다. 이번 전투 동안 뽑은 카드 1장당 피해량이 1 증가합니다.",
"damage": 1
"damage": 1,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"Malaise": {
"name": "불쾌",
@@ -1007,7 +1072,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "적이 힘을 X 잃습니다. 약화를 X 부여합니다. 소멸.",
"weak": 3
"weak": 3,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Adrenaline": {
"name": "아드레날린",
@@ -1018,7 +1084,8 @@
"desc": "를 얻습니다. 카드를 2장 뽑습니다. 소멸.",
"draw": 2,
"powerEffect": "energyPerTurn",
"value": 1
"value": 1,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"StormOfSteel": {
"name": "강철의 폭풍",
@@ -1028,7 +1095,8 @@
"rarity": "legend",
"desc": "손에 있는 모든 카드를 버립니다. 버린 카드의 수만큼 표창을 손으로 가져옵니다.",
"discardAll": true,
"addShivPerDiscard": true
"addShivPerDiscard": true,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"ShadowStep": {
"name": "그림자 걸음",
@@ -1038,7 +1106,8 @@
"rarity": "legend",
"desc": "손에 있는 모든 카드를 버립니다. 다음 턴에, 공격 카드의 피해량이 2배가 됩니다.",
"draw": 1,
"discardAll": true
"discardAll": true,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Shadowmeld": {
"name": "그림자 은신",
@@ -1047,7 +1116,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "이번 턴 동안 얻는 방어도가 2배가 됩니다.",
"draw": 1
"draw": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"CorrosiveWave": {
"name": "부식성 파도",
@@ -1056,7 +1126,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "이번 턴에 카드를 뽑을 때마다, 모든 적에게 중독을 2 부여합니다.",
"poison": 2
"poison": 2,
"image": "19361e72087946b1888684185b40d935"
},
"BladeOfInk": {
"name": "잉크 칼날",
@@ -1065,7 +1136,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "잉크투성이 표창을 2장 손으로 가져옵니다.",
"addShiv": 2
"addShiv": 2,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"Burst": {
"name": "폭주",
@@ -1074,7 +1146,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "이번 턴에 다음에 사용하는 스킬 카드가 1번 추가로 사용됩니다.",
"draw": 1
"draw": 1,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"KnifeTrap": {
"name": "칼날 함정",
@@ -1083,7 +1156,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "대상 적에게 소멸된 카드 더미에 있는 모든 표창을 사용합니다.",
"draw": 1
"draw": 1,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"BulletTime": {
"name": "불릿 타임",
@@ -1093,7 +1167,8 @@
"rarity": "legend",
"desc": "이번 턴 동안 더 이상 카드를 뽑을 수 없습니다. 이번 턴 동안 손에 있는 모든 카드를 비용 없이 사용할 수 있습니다.",
"powerEffect": "energyPerTurn",
"value": 1
"value": 1,
"image": "91a2d1c16cb041549adbf1a0d7b1f37f"
},
"Nightmare": {
"name": "악몽",
@@ -1102,7 +1177,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "카드를 1장 선택합니다. 다음 턴에, 그 카드의 복사본을 3장 손으로 가져옵니다. 소멸.",
"draw": 1
"draw": 1,
"image": "0946f69d84464df29b24b94c744c868d"
},
"ToolsOfTheTrade": {
"name": "작업 도구",
@@ -1114,7 +1190,8 @@
"draw": 1,
"powerEffect": "energyPerTurn",
"value": 1,
"discard": 1
"discard": 1,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"Afterimage": {
"name": "잔상",
@@ -1125,7 +1202,8 @@
"desc": "카드를 사용할 때마다, 방어도를 1 얻습니다.",
"block": 1,
"powerEffect": "blockPerTurn",
"value": 2
"value": 2,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Accelerant": {
"name": "촉진제",
@@ -1135,7 +1213,8 @@
"rarity": "legend",
"desc": "중독이 1번 추가로 발동합니다.",
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "19361e72087946b1888684185b40d935"
},
"Envenom": {
"name": "독 바르기",
@@ -1146,7 +1225,8 @@
"desc": "공격 카드가 막히지 않은 피해를 줄 때마다, 중독을 1 부여합니다.",
"poison": 1,
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "19361e72087946b1888684185b40d935"
},
"MasterPlanner": {
"name": "설계의 대가",
@@ -1156,7 +1236,8 @@
"rarity": "legend",
"desc": "스킬 카드를 사용 시, 그 카드가 교활을 얻습니다.",
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "c1e19219745e44c39ae6ac2f77e347d9"
},
"Tracking": {
"name": "추적",
@@ -1166,7 +1247,8 @@
"rarity": "legend",
"desc": "약화 상태의 적이 공격 카드로 받는 피해가 2배가 됩니다.",
"powerEffect": "strengthPerTurn",
"value": 1
"value": 1,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"FanOfKnives": {
"name": "칼날 부채",
@@ -1177,7 +1259,8 @@
"desc": "표창이 이제 모든 적을 대상으로 합니다. 표창을 4장 손으로 가져옵니다.",
"powerEffect": "strengthPerTurn",
"value": 1,
"addShiv": 4
"addShiv": 4,
"image": "1b0f2dc8abd0434990eee1befefcbe0d"
},
"SerpentForm": {
"name": "구렁이의 형상",
@@ -1188,7 +1271,8 @@
"desc": "카드를 사용할 때마다, 무작위 적에게 피해를 4 줍니다.",
"powerEffect": "strengthPerTurn",
"value": 1,
"damage": 4
"damage": 4,
"image": "19361e72087946b1888684185b40d935"
},
"Abrasive": {
"name": "연마",
@@ -1199,7 +1283,8 @@
"desc": "교활. 민첩을 1 얻습니다. 가시를 4 얻습니다.",
"dex": 1,
"thorns": 4,
"sly": true
"sly": true,
"image": "49c8f279bfa64bf3954037f17da0052d"
},
"Suppress": {
"name": "진압",
@@ -1209,7 +1294,8 @@
"rarity": "legend",
"desc": "선천성. 피해를 11 줍니다. 약화를 3 부여합니다.",
"weak": 3,
"damage": 11
"damage": 11,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"WraithForm": {
"name": "유령의 형상",
@@ -1219,7 +1305,8 @@
"rarity": "legend",
"desc": "불가침을 2 얻습니다. 내 턴 종료 시 민첩을 1 잃습니다.",
"powerEffect": "blockPerTurn",
"value": 8
"value": 8,
"image": "0946f69d84464df29b24b94c744c868d"
},
"Flanking": {
"name": "측면 공격",
@@ -1228,7 +1315,8 @@
"class": "bandit",
"rarity": "legend",
"desc": "이번 턴에 대상 적이 다른 플레이어에게 받는 피해량이 2배가 됩니다.",
"draw": 1
"draw": 1,
"image": "b1360ed0c4b942309d240634b8f36872"
},
"Sneaky": {
"name": "비열함",
@@ -1238,7 +1326,8 @@
"rarity": "legend",
"desc": "교활. 다른 플레이어가 적을 공격할 때마다, 방어도를 1 얻습니다.",
"block": 1,
"sly": true
"sly": true,
"image": "0946f69d84464df29b24b94c744c868d"
}
},
"starterDecks": {

View File

@@ -18,10 +18,24 @@ if lp ~= nil then
end
_InputService:ConnectEvent(KeyDownEvent, function(e)
if e.key == KeyboardKey.LeftControl then
self.DebugCtrlDown = true
local lp2 = _UserService.LocalPlayer
if lp2 ~= nil and lp2.CurrentMapName == "${LOBBY_MAP}" and self.RunActive ~= true then
self:PlayerAttackMotion()
end
elseif e.key == KeyboardKey.LeftShift or e.key == KeyboardKey.RightShift then
self.DebugShiftDown = true
elseif e.key == KeyboardKey.C then
if self.DebugCtrlDown == true and self.DebugShiftDown == true then
self:OpenDebugCardPicker()
end
end
end)
_InputService:ConnectEvent(KeyUpEvent, function(e)
if e.key == KeyboardKey.LeftControl then
self.DebugCtrlDown = false
elseif e.key == KeyboardKey.LeftShift or e.key == KeyboardKey.RightShift then
self.DebugShiftDown = false
end
end)`),
method('ReqLoadAscension', `local ds = _DataStorageService:GetUserDataStorage(userId)

View File

@@ -67,6 +67,13 @@ if allDeckClose ~= nil and allDeckClose.ButtonComponent ~= nil then
self.AllDeckCloseHandler = allDeckClose:ConnectEvent(ButtonClickEvent, function() self:CloseAllDeck() end)
end
self:BindClassDeckTabs()
for i = 1, 120 do
local allCard = _EntityService:GetEntityByPath("/ui/DefaultGroup/DeckAllHud/Grid/Card" .. tostring(i))
if allCard ~= nil and allCard.ButtonComponent ~= nil then
local slot = i
allCard:ConnectEvent(ButtonClickEvent, function() self:OnAllDeckCardButton(slot) end)
end
end
for i = 1, 10 do
local cardEntity = _EntityService:GetEntityByPath("/ui/DefaultGroup/CardHand/Card" .. tostring(i))
if cardEntity ~= nil and cardEntity.UITouchReceiveComponent ~= nil then

View File

@@ -94,12 +94,31 @@ if mageTab ~= nil and mageTab.ButtonComponent ~= nil then
end`),
method('OpenClassDeck', `self.CodexMode = false
self.ClassDeckMode = true
self.DebugCardPickerMode = false
self.DeckAllOpen = true
self:SetClassDeckTab(className)
local hud = _EntityService:GetEntityByPath("/ui/DefaultGroup/DeckAllHud")
if hud ~= nil then
hud.Enable = true
end`, [{ Type: 'string', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'className' }]),
method('OpenDebugCardPicker', `if self.RunActive ~= true or self.CombatOver == true or self.Hand == nil then
self:Toast("전투 중에만 테스트 카드를 추가할 수 있습니다")
return
end
local className = self.SelectedClass
if className ~= "warrior" and className ~= "magician" and className ~= "bandit" then
className = "bandit"
end
self.CodexMode = false
self.ClassDeckMode = true
self.DebugCardPickerMode = true
self.DeckAllOpen = true
self:SetClassDeckTab(className)
local hud = _EntityService:GetEntityByPath("/ui/DefaultGroup/DeckAllHud")
if hud ~= nil then
hud.Enable = true
end
self:Toast("테스트 카드 추가 모드")`),
method('SetClassDeckTab', `if self.ClassDeckMode ~= true then
return
end
@@ -171,6 +190,7 @@ end
self.DeckInspectKind = ""
self.ClassDeckMode = false
self.ClassDeckClass = ""
self.DebugCardPickerMode = false
self:RenderClassDeckTabs()
self.DeckAllOpen = true
self:RenderAllDeck()
@@ -189,6 +209,7 @@ if self.ClassDeckMode == true then
self.ClassDeckTitle = ""
self.ClassDeckClass = ""
end
self.DebugCardPickerMode = false
self:RenderClassDeckTabs()
if self.CodexMode == true then
self.CodexMode = false
@@ -199,6 +220,9 @@ local title = "모든 덱"
if self.ClassDeckMode == true then
pile = self.ClassDeckCards or {}
title = self.ClassDeckTitle
if self.DebugCardPickerMode == true then
title = title .. " - 테스트 카드 추가"
end
elseif self.CodexMode == true then
pile = self.CodexCards or {}
title = "카드 도감"
@@ -226,4 +250,21 @@ end`),
{ Type: 'number', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'slot' },
{ Type: 'string', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'cardId' },
]),
method('OnAllDeckCardButton', `if self.DebugCardPickerMode ~= true then
return
end
if self.ClassDeckCards == nil then
return
end
local cardId = self.ClassDeckCards[slot]
if cardId == nil or self.Cards == nil or self.Cards[cardId] == nil then
return
end
self:AddCardsToHand(cardId, 1)
local c = self.Cards[cardId]
local name = cardId
if c.name ~= nil then name = c.name end
self:Toast("테스트 카드 추가: " .. name)`, [
{ Type: 'number', DefaultValue: null, SyncDirection: 0, Attributes: [], Name: 'slot' },
]),
];

View File

@@ -296,6 +296,9 @@ function writeCodeblocks() {
prop('boolean', 'CodexMode', 'false'),
prop('any', 'CodexCards'),
prop('boolean', 'ClassDeckMode', 'false'),
prop('boolean', 'DebugCardPickerMode', 'false'),
prop('boolean', 'DebugCtrlDown', 'false'),
prop('boolean', 'DebugShiftDown', 'false'),
prop('any', 'ClassDeckCards'),
prop('string', 'ClassDeckTitle', '""'),
prop('string', 'ClassDeckClass', '""'),

View File

@@ -116,11 +116,12 @@ export function buildDeckAll() {
path: cardPath,
modelId: 'uisprite',
entryId: 'UISprite',
componentNames: 'MOD.Core.UITransformComponent,MOD.Core.SpriteGUIRendererComponent',
componentNames: 'MOD.Core.UITransformComponent,MOD.Core.SpriteGUIRendererComponent,MOD.Core.ButtonComponent',
displayOrder: i,
components: [
transform({ parentW: 980, parentH: 620, anchor: { x: 0.5, y: 0.5 }, pivot: { x: 0.5, y: 0.5 }, size: { x: ALL_DECK_CARD_W, y: ALL_DECK_CARD_H }, pos: { x: 0, y: 0 } }),
sprite({ dataId: CARDFRAMES.frames.warrior.normal, color: WHITE, type: 0 }),
sprite({ dataId: CARDFRAMES.frames.warrior.normal, color: WHITE, type: 0, raycast: true }),
button(),
],
});
card.jsonString.enable = false;

File diff suppressed because it is too large Load Diff