├── RiseOfKingdoms ├── obj │ ├── Debug │ │ └── net6.0 │ │ │ ├── RiseOfKingdoms.csproj.AssemblyReference.cache │ │ │ ├── RiseOfKingdoms.AssemblyInfoInputs.cache │ │ │ ├── RiseOfKingdoms.genruntimeconfig.cache │ │ │ ├── RiseOfKingdoms.csproj.CoreCompileInputs.cache │ │ │ ├── apphost.exe │ │ │ ├── RiseOfKingdoms.dll │ │ │ ├── RiseOfKingdoms.pdb │ │ │ ├── ref │ │ │ └── RiseOfKingdoms.dll │ │ │ ├── RiseOfKingdoms.assets.cache │ │ │ ├── .NETCoreApp,Version=v6.0.AssemblyAttributes.cs │ │ │ ├── RiseOfKingdoms.GlobalUsings.g.cs │ │ │ ├── RiseOfKingdoms.GeneratedMSBuildEditorConfig.editorconfig │ │ │ ├── RiseOfKingdoms.AssemblyInfo.cs │ │ │ └── RiseOfKingdoms.csproj.FileListAbsolute.txt │ ├── RiseOfKingdoms.csproj.nuget.g.targets │ ├── project.nuget.cache │ ├── RiseOfKingdoms.csproj.nuget.g.props │ ├── project.assets.json │ └── RiseOfKingdoms.csproj.nuget.dgspec.json ├── SampleData │ ├── 더미.txt │ ├── 추가.txt │ ├── 기본공방생.txt │ ├── 사령관 │ │ ├── 넵스키.txt │ │ ├── 미나.txt │ │ ├── 윌리엄.txt │ │ ├── 이순신.txt │ │ ├── 찬드라.txt │ │ ├── 항우.txt │ │ ├── 길가메시.txt │ │ ├── 베르트랑.txt │ │ ├── 스키피오.txt │ │ ├── 아르테미시아.txt │ │ ├── 아마니토레.txt │ │ ├── 아에티우스.txt │ │ ├── 야드비가.txt │ │ ├── 제노비아.txt │ │ └── 측천무후.txt │ ├── 잃왕풀연구.txt │ ├── 추가2.txt │ ├── 연맹X기본공방생.txt │ ├── 장비 │ │ ├── 기마병풀장비.txt │ │ ├── 보병풀장비.txt │ │ ├── 보병풀장비특.txt │ │ ├── 궁병풀장비.txt │ │ ├── 궁병풀장비특.txt │ │ └── 기마병풀장비특.txt │ ├── 특성 │ │ ├── 항우반격뎀감.txt │ │ ├── 야드베스트.txt │ │ ├── 항우베스트.txt │ │ ├── 베르트랑베스트.txt │ │ ├── 아마니베스트.txt │ │ ├── 제노베스트.txt │ │ └── 아에티우스베스트.txt │ ├── 종합데이터 │ │ ├── 찬넵vs야넵.txt │ │ ├── 베르넵vs야넵.txt │ │ ├── 용기병반지vs용기병모피증.txt │ │ ├── 찬넵vs야순.txt │ │ ├── 찬넵vs항윌.txt │ │ ├── 항넵vs아알.txt │ │ ├── 항넵vs야넵.txt │ │ ├── 항넵vs야순.txt │ │ ├── 항넵vs제순.txt │ │ ├── 항넵반지vs항넵모피증.txt │ │ ├── 항넵반지vs항넵비수.txt │ │ ├── 항넵vs아르테아마니.txt │ │ └── 항윌반지vs항윌비수.txt │ └── 테스트용.txt ├── bin │ └── Debug │ │ └── net6.0 │ │ ├── RiseOfKingdoms.dll │ │ ├── RiseOfKingdoms.exe │ │ ├── RiseOfKingdoms.pdb │ │ ├── ref │ │ └── RiseOfKingdoms.dll │ │ ├── RiseOfKingdoms.runtimeconfig.json │ │ ├── 베르넵vs야넵.txt │ │ ├── 찬넵vs야넵.txt │ │ ├── 찬넵vs야순.txt │ │ ├── 찬넵vs항윌.txt │ │ ├── 항넵vs아알.txt │ │ ├── 항넵vs야넵.txt │ │ ├── 항넵vs야순.txt │ │ ├── 항넵vs제순.txt │ │ ├── 용기병반지vs용기병모피증.txt │ │ ├── 항넵반지vs항넵모피증.txt │ │ ├── 항넵반지vs항넵비수.txt │ │ ├── 항넵vs아르테아마니.txt │ │ ├── 항윌반지vs항윌비수.txt │ │ └── RiseOfKingdoms.deps.json ├── RiseOfKingdoms.csproj ├── Common │ ├── UsingLog.cs │ ├── MethodBase.cs │ ├── ViewBuff.cs │ ├── Tiers.cs │ ├── Equipment.cs │ └── Commanders.cs ├── Tier │ ├── TierBase.cs │ ├── Arabia.cs │ ├── Britain.cs │ ├── China.cs │ ├── France.cs │ ├── Japan.cs │ ├── Korea.cs │ ├── Ottoman.cs │ ├── Rome.cs │ ├── Spain.cs │ ├── Viking.cs │ ├── Base_Mixed.cs │ ├── Byzantium.cs │ ├── Germany.cs │ ├── Base_Archer.cs │ ├── Base_Cavalry.cs │ └── Base_Infantry.cs ├── Characteristic │ ├── Attack │ │ ├── Lord_of_War.cs │ │ ├── Burning_Blood.cs │ │ ├── Effortless.cs │ │ └── Last_Stand.cs │ ├── Defence │ │ ├── Master_Armorer.cs │ │ ├── Burning_Blood.cs │ │ ├── Desperate_Elegy.cs │ │ ├── Medicinal_Supplies.cs │ │ └── Testudo_Formation.cs │ ├── Mobility │ │ ├── Time_Management.cs │ │ ├── Alacrity.cs │ │ ├── Swiftness.cs │ │ └── Vortex.cs │ ├── Skill │ │ ├── Latent_Power.cs │ │ ├── Rejuvenate.cs │ │ ├── Burning_Blood.cs │ │ ├── Feral_Nature.cs │ │ ├── Clarity.cs │ │ └── All_For_One.cs │ ├── Support │ │ ├── Rejuvenate.cs │ │ ├── Burning_Blood.cs │ │ ├── Counterattack.cs │ │ ├── Cage_of_Thorns.cs │ │ └── Emergency_Protection.cs │ ├── Archer │ │ ├── Razor_Sharp.cs │ │ ├── Arrows_Nocked.cs │ │ ├── Phoenix_Tail_Arrows.cs │ │ ├── Whistling_Arrows.cs │ │ └── Thumb_Ring.cs │ ├── Cavalry │ │ ├── Undying_Fury.cs │ │ ├── Rallying_Cry.cs │ │ ├── Halberd.cs │ │ └── Disarm.cs │ ├── Infantry │ │ ├── Undying_Fury.cs │ │ ├── Call_of_the_Pack.cs │ │ ├── Elite_Soldiers.cs │ │ ├── Snare_of_Thorns.cs │ │ ├── Hold_The_Line.cs │ │ └── Iron_Spear.cs │ ├── Leadership │ │ ├── Hidden_Wrath.cs │ │ ├── Close_Formation.cs │ │ ├── Armed_To_The_Teeth.cs │ │ ├── Armored_To_The_Teeth.cs │ │ ├── Name_Of_The_King.cs │ │ └── Strategic_Prowess.cs │ ├── Conquering │ │ ├── Moment_Of_Triumph.cs │ │ ├── Entrenched.cs │ │ └── Meteor_Shower.cs │ ├── Garrison │ │ ├── Impregnable.cs │ │ ├── Empty_Fortress_Strategem.cs │ │ ├── Impenetrable_Fortifications.cs │ │ ├── Kings_Guard.cs │ │ ├── Nowhere_To_Turn.cs │ │ └── Divine_Favor.cs │ ├── Versatility │ │ ├── Buckler_Shield.cs │ │ ├── Meteor_Shower.cs │ │ ├── Kings_Guard.cs │ │ ├── Nowhere_To_Turn.cs │ │ └── Turn_Of_Fate.cs │ ├── Integration │ │ ├── Armed_To_The_Teeth.cs │ │ ├── Armored_To_The_Teeth.cs │ │ ├── Charge.cs │ │ ├── Full_Quiver.cs │ │ └── Call_of_the_Pack.cs │ └── CharacterBase.cs ├── Equip │ ├── Epic │ │ └── Silent_Trial.cs │ ├── Legendary │ │ ├── Horn_of_Fury.cs │ │ ├── Karuaks_War_Drums.cs │ │ ├── Seths_Call.cs │ │ ├── Ring_of_Doom.cs │ │ ├── Concealed_Dagger.cs │ │ ├── Scolas_Lucky_Coin.cs │ │ └── Moras_Web.cs │ └── EquipmentBase.cs ├── Program.cs ├── Skill │ ├── Archer │ │ ├── Markswoman.cs │ │ └── Artemisia.cs │ ├── Cavalry │ │ ├── Dragon_Lancer.cs │ │ ├── Minamoto_no_Yoshitsune.cs │ │ ├── Alexander_Nevsky.cs │ │ ├── William.cs │ │ ├── Xiang_Yu.cs │ │ └── Bertrand_du_Guesclin.cs │ ├── SkillBase.cs │ ├── Leadership │ │ ├── Theodora.cs │ │ ├── Wu_Zetian.cs │ │ └── Honda_Tadakatsu.cs │ └── Infantry │ │ ├── Scipio.cs │ │ ├── Zenobia.cs │ │ └── Aetius.cs └── Calculate │ └── CalcAttack.cs ├── .vs └── RiseOfKingdoms │ ├── v16 │ └── .suo │ ├── v17 │ ├── .suo │ └── .futdcache.v1 │ ├── DesignTimeBuild │ └── .dtbcache.v2 │ └── project-colors.json ├── README.md └── RiseOfKingdoms.sln /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.csproj.AssemblyReference.cache: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /.vs/RiseOfKingdoms/v16/.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/.vs/RiseOfKingdoms/v16/.suo -------------------------------------------------------------------------------- /.vs/RiseOfKingdoms/v17/.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/.vs/RiseOfKingdoms/v17/.suo -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/더미.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/추가.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 10 3 | 20 4 | 5 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/기본공방생.txt: -------------------------------------------------------------------------------- 1 | 98 2 | 98 3 | 56 4 | 5 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/넵스키.txt: -------------------------------------------------------------------------------- 1 | 20 2 | 20 3 | 0 4 | 0 5 | 5 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/미나.txt: -------------------------------------------------------------------------------- 1 | 45 2 | 20 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/윌리엄.txt: -------------------------------------------------------------------------------- 1 | 20 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/이순신.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 30 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/찬드라.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/항우.txt: -------------------------------------------------------------------------------- 1 | 40 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 10 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/잃왕풀연구.txt: -------------------------------------------------------------------------------- 1 | 42 2 | 0 3 | 0 4 | 50 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/추가2.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 10 3 | 20 4 | 5 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 760c8da09099f4b09e8ac7333075d358ba252f21 2 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.genruntimeconfig.cache: -------------------------------------------------------------------------------- 1 | 7073ea83a22c3ebd9bf773addb4886a063cad801 2 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/길가메시.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 30 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 15 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/베르트랑.txt: -------------------------------------------------------------------------------- 1 | 10 2 | 20 3 | 10 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 5 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/스키피오.txt: -------------------------------------------------------------------------------- 1 | 40 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 10 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/아르테미시아.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 20 3 | 20 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/아마니토레.txt: -------------------------------------------------------------------------------- 1 | 40 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/아에티우스.txt: -------------------------------------------------------------------------------- 1 | 15 2 | 0 3 | 0 4 | 10 5 | 0 6 | 20 7 | 0 8 | 0 9 | 10 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/야드비가.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 10 8 | 0 9 | 0 10 | 0 11 | 10 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/제노비아.txt: -------------------------------------------------------------------------------- 1 | 20 2 | 0 3 | 20 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/사령관/측천무후.txt: -------------------------------------------------------------------------------- 1 | 0 2 | 10 3 | 10 4 | 0 5 | 0 6 | 20 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/연맹X기본공방생.txt: -------------------------------------------------------------------------------- 1 | 72 2 | 72 3 | 51 4 | 5 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/기마병풀장비.txt: -------------------------------------------------------------------------------- 1 | 25 2 | 15 3 | 41.5 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/보병풀장비.txt: -------------------------------------------------------------------------------- 1 | 25 2 | 57 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/보병풀장비특.txt: -------------------------------------------------------------------------------- 1 | 32.5 2 | 74 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.csproj.CoreCompileInputs.cache: -------------------------------------------------------------------------------- 1 | c4ac095496172a26b145a1c244dd745ced8a4955 2 | -------------------------------------------------------------------------------- /.vs/RiseOfKingdoms/v17/.futdcache.v1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/.vs/RiseOfKingdoms/v17/.futdcache.v1 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/궁병풀장비.txt: -------------------------------------------------------------------------------- 1 | 36.5 2 | 32.5 3 | 11 4 | 0 5 | 0 6 | 0 7 | 3 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/궁병풀장비특.txt: -------------------------------------------------------------------------------- 1 | 46.5 2 | 42.5 3 | 14.5 4 | 0 5 | 0 6 | 0 7 | 3 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/장비/기마병풀장비특.txt: -------------------------------------------------------------------------------- 1 | 32.5 2 | 19 3 | 54 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 0 12 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/apphost.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/obj/Debug/net6.0/apphost.exe -------------------------------------------------------------------------------- /.vs/RiseOfKingdoms/DesignTimeBuild/.dtbcache.v2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/.vs/RiseOfKingdoms/DesignTimeBuild/.dtbcache.v2 -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.dll -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.exe -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.pdb -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.dll -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.pdb -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # RiseOfKingdoms 2 | - 2022-03-11 기준 업데이트 완료했습니다. 3 | - 직접 빌드하여 사용하실수 있습니다. (dotnet6) 4 | - 간단한 예시 입력값을 추가해 놓았습니다. (RiseOfKingdoms 폴더 하위 txt ) 5 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/ref/RiseOfKingdoms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/bin/Debug/net6.0/ref/RiseOfKingdoms.dll -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/ref/RiseOfKingdoms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/obj/Debug/net6.0/ref/RiseOfKingdoms.dll -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fg/RiseOfKingdoms/main/RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.assets.cache -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/항우반격뎀감.txt: -------------------------------------------------------------------------------- 1 | 9 2 | 6 3 | 8 4 | 0 5 | 1.5 6 | 0 7 | 3 8 | 0 9 | 0 10 | 9 11 | 18 12 | 0 13 | 2,6,11 14 | 1-3,2-3 15 | 1-3,3-3,4-3,5-3 16 | 5 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/야드베스트.txt: -------------------------------------------------------------------------------- 1 | 8 2 | 6.5 3 | 8 4 | 0 5 | 1.5 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 21 12 | 9 13 | 2,9,14 14 | 1-3,2-3,3-3 15 | 5 16 | 1-3,2-3,3-3,4-3 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/항우베스트.txt: -------------------------------------------------------------------------------- 1 | 5.5 2 | 7 3 | 8 4 | 0 5 | 1.5 6 | 0 7 | 3 8 | 0 9 | 0 10 | 0 11 | 18 12 | 0 13 | 2,6,11 14 | 1-3,2-3 15 | 1-3,3-3,4-3,5-3,6-5 16 | 5 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/베르트랑베스트.txt: -------------------------------------------------------------------------------- 1 | 6 2 | 7.5 3 | 7 4 | -1.5 5 | 1.5 6 | 1.5 7 | 0 8 | 4.5 9 | 0 10 | 0 11 | 21 12 | 0 13 | 2,10,11 14 | 1-3,2-3 15 | 1-3,2-3,3-3,4-2 16 | 0 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/아마니베스트.txt: -------------------------------------------------------------------------------- 1 | 7 2 | 5.5 3 | 4.5 4 | 0 5 | 0 6 | 0 7 | 8 8 | 0 9 | 0 10 | 0 11 | 9 12 | 9 13 | 3,7,14 14 | 1-3,2-3,3-3 15 | 1-3,3-3,4-2 16 | 1-3,2-3,3-3 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/제노베스트.txt: -------------------------------------------------------------------------------- 1 | 6 2 | 9 3 | 11.5 4 | 0 5 | 1.5 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 9 12 | 0 13 | 1,7,14 14 | 1-3,2-3,3-3 15 | 1-3,4-2 16 | 1-3,2-3,3-3,4-3 -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/특성/아에티우스베스트.txt: -------------------------------------------------------------------------------- 1 | 3.5 2 | 9.5 3 | 13.5 4 | 0 5 | 1.5 6 | 0 7 | 0 8 | 0 9 | 0 10 | 0 11 | 6 12 | 0 13 | 1,6,14 14 | 1-3,2-3,3-3,4-2 15 | 1-3,4-3 16 | 1-3,2-3,3-3,4-3 -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "net6.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "6.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // 2 | using System; 3 | using System.Reflection; 4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")] 5 | -------------------------------------------------------------------------------- /RiseOfKingdoms/RiseOfKingdoms.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net6.0 6 | enable 7 | enable 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/UsingLog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace RiseOfKingdoms.Common 8 | { 9 | internal static class UsingLog 10 | { 11 | public static bool usingLog = false; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/RiseOfKingdoms.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/project.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 2, 3 | "dgSpecHash": "FAyW0fRhwPNYqmL/GwxiUs3JfD9BVqPyGaCn2DdVeyEAFcn348e59dLke9ALFhbjajv1Elnl3yc8RO2/uPeU0A==", 4 | "success": true, 5 | "projectFilePath": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj", 6 | "expectedPackageFiles": [], 7 | "logs": [] 8 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.GlobalUsings.g.cs: -------------------------------------------------------------------------------- 1 | // 2 | global using global::System; 3 | global using global::System.Collections.Generic; 4 | global using global::System.IO; 5 | global using global::System.Linq; 6 | global using global::System.Net.Http; 7 | global using global::System.Threading; 8 | global using global::System.Threading.Tasks; 9 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/TierBase.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal abstract class TierBase 11 | { 12 | public abstract void Init(CommanderBase commander); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/베르넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 15 3 | 11 4 | 7 5 | 1500000 6 | 174.5 7 | 163.5 8 | 129 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 9 16 | 23 17 | 2,10,11 18 | 1-3,2-3 19 | 1-3,2-3,3-3,4-2 20 | 4 21 | 1,12 22 | 3 23 | 16 24 | 11 25 | 7 26 | 1500000 27 | 167 28 | 142.5 29 | 116.5 30 | 7 31 | 6.5 32 | 8 33 | 10 34 | 0 35 | 0 36 | 0 37 | 31 38 | 2,9,14 39 | 1-3,2-3,3-2 40 | 5 41 | 1-3,2-3,3-3,4-3,5-3 42 | 1 43 | 1000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/찬넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 253 7 | 154 8 | 125 9 | 65 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 2,12 22 | 3 23 | 16 24 | 11 25 | 8 26 | 2000000 27 | 215 28 | 156 29 | 127 30 | 55 31 | 6.5 32 | 0 33 | 10 34 | 0 35 | 0 36 | 0 37 | 31 38 | 2,9,14 39 | 1-3,2-3,3-2 40 | 5 41 | 1-3,2-3,3-3,4-3 42 | 2,12 43 | 1000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/찬넵vs야순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 14 3 | 11 4 | 7 5 | 1500000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,11 22 | 3 23 | 16 24 | 5 25 | 4 26 | 1500000 27 | 147 28 | 152.5 29 | 116.5 30 | 7 31 | 1.5 32 | 0 33 | 10 34 | 0 35 | 0 36 | 0 37 | 31 38 | 2,9,14 39 | 1-3,2-3,3-2 40 | 5 41 | 1-3,2-3,3-3,4-3,5-3 42 | 1,11 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/찬넵vs항윌.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 14 3 | 11 4 | 8 5 | 330000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,11 22 | 1 23 | 10 24 | 12 25 | 8 26 | 330000 27 | 204.5 28 | 123.5 29 | 119 30 | 7 31 | 1.5 32 | 0 33 | 13 34 | 0 35 | 0 36 | 0 37 | 18 38 | 2,6,11 39 | 1-3,2-3 40 | 1-3,3-3,4-3,5-3,6-5 41 | 5 42 | 1,11 43 | 1000 44 | 45 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵vs아알.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 236.5 7 | 149.5 8 | 125 9 | 45 10 | 6.5 11 | 3 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 2,12 22 | 3 23 | 2 24 | 3 25 | 10 26 | 2000000 27 | 234 28 | 168 29 | 116 30 | 45 31 | 1.5 32 | 0 33 | 11 34 | 0 35 | 0 36 | 0 37 | 9 38 | 3,7,14 39 | 1-3,2-3,3-3,4-3 40 | 1-3,4-2 41 | 1-3,2-3,3-3 42 | 2,12 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 7 5 | 1500000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,11 22 | 3 23 | 16 24 | 11 25 | 7 26 | 1500000 27 | 167 28 | 142.5 29 | 116.5 30 | 7 31 | 6.5 32 | 0 33 | 10 34 | 0 35 | 0 36 | 0 37 | 31 38 | 2,9,14 39 | 1-3,2-3,3-2 40 | 5 41 | 1-3,2-3,3-3,4-3,5-3 42 | 1,11 43 | 1 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵vs야순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 7 5 | 1500000 6 | 204.5 7 | 143.5 8 | 119 9 | 8 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,12 22 | 3 23 | 16 24 | 5 25 | 4 26 | 1500000 27 | 147 28 | 152.5 29 | 116.5 30 | 7 31 | 1.5 32 | 0 33 | 10 34 | 0 35 | 0 36 | 0 37 | 31 38 | 2,9,14 39 | 1-3,2-3,3-2 40 | 5 41 | 1-3,2-3,3-3,4-3,5-3 42 | 1,12 43 | 1 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵vs제순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 253 7 | 154 8 | 125 9 | 65 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 2,12 22 | 3 23 | 8 24 | 5 25 | 4 26 | 2000000 27 | 198.5 28 | 218.5 29 | 100 30 | 55 31 | 1.5 32 | 0 33 | 0 34 | 0 35 | 0 36 | 0 37 | 9 38 | 1,7,14 39 | 1-3,2-3,3-3 40 | 1-3,3-3,4-2 41 | 1-3,2-3,3-3 42 | 2,12 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/찬넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 253 7 | 154 8 | 125 9 | 65 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 2,12 23 | 3 24 | 16 25 | 11 26 | 8 27 | 2000000 28 | 215 29 | 156 30 | 127 31 | 55 32 | 6.5 33 | 0 34 | 10 35 | 0 36 | 0 37 | 0 38 | 31 39 | 0 40 | 2,9,14 41 | 1-3,2-3,3-2 42 | 5 43 | 1-3,2-3,3-3,4-3 44 | 2,12 45 | 1000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/용기병반지vs용기병모피증.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 9 3 | 17 4 | 8 5 | 330000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-3 20 | 5 21 | 1 22 | 1 23 | 9 24 | 17 25 | 8 26 | 330000 27 | 164.5 28 | 143.5 29 | 119 30 | 15 31 | 6.5 32 | 0 33 | 3 34 | 0 35 | 0 36 | 0 37 | 18 38 | 2,6,11 39 | 1-3,2-3 40 | 1-3,3-3,4-3,5-3,6-3 41 | 5 42 | 17 43 | 10000 44 | 45 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵반지vs항넵모피증.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 11 4 | 8 5 | 330000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,11 22 | 1 23 | 10 24 | 11 25 | 8 26 | 330000 27 | 204.5 28 | 143.5 29 | 119 30 | 7 31 | 6.5 32 | 0 33 | 13 34 | 0 35 | 0 36 | 0 37 | 18 38 | 2,6,11 39 | 1-3,2-3 40 | 1-3,3-3,4-3,5-3,6-5 41 | 5 42 | 1,11 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵반지vs항넵비수.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 11 4 | 8 5 | 330000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,12 22 | 1 23 | 10 24 | 11 25 | 8 26 | 330000 27 | 204.5 28 | 143.5 29 | 119 30 | 7 31 | 6.5 32 | 0 33 | 13 34 | 0 35 | 0 36 | 0 37 | 18 38 | 2,6,11 39 | 1-3,2-3 40 | 1-3,3-3,4-3,5-3,6-5 41 | 5 42 | 12,13 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/베르넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 15 3 | 11 4 | 7 5 | 1500000 6 | 174.5 7 | 163.5 8 | 129 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 9 16 | 23 17 | 0 18 | 2,10,11 19 | 1-3,2-3 20 | 1-3,2-3,3-3,4-2 21 | 4 22 | 1,12 23 | 3 24 | 16 25 | 11 26 | 7 27 | 1500000 28 | 167 29 | 142.5 30 | 116.5 31 | 7 32 | 6.5 33 | 8 34 | 10 35 | 0 36 | 0 37 | 0 38 | 31 39 | 0 40 | 2,9,14 41 | 1-3,2-3,3-2 42 | 5 43 | 1-3,2-3,3-3,4-3,5-3 44 | 1 45 | 1000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항넵vs아르테아마니.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 236.5 7 | 149.5 8 | 125 9 | 45 10 | 6.5 11 | 3 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 2,12 22 | 3 23 | 3 24 | 2 25 | 10 26 | 2000000 27 | 231 28 | 169 29 | 116 30 | 44 31 | 1.5 32 | 1.5 33 | 3 34 | 3.5 35 | 0 36 | 0 37 | 9 38 | 3,10,14 39 | 1-3 40 | 1-3,2-3,3-3,4-3,5-5 41 | 1-3,2-3,3-3 42 | 2,12 43 | 10000 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/항윌반지vs항윌비수.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 12 4 | 8 5 | 330000 6 | 204.5 7 | 123.5 8 | 119 9 | 7 10 | 1.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 2,6,11 18 | 1-3,2-3 19 | 1-3,3-3,4-3,5-3,6-5 20 | 5 21 | 1,12 22 | 1 23 | 10 24 | 12 25 | 8 26 | 330000 27 | 204.5 28 | 123.5 29 | 119 30 | 7 31 | 1.5 32 | 0 33 | 13 34 | 0 35 | 0 36 | 0 37 | 18 38 | 2,6,11 39 | 1-3,2-3 40 | 1-3,3-3,4-3,5-3,6-5 41 | 5 42 | 12,13 43 | 10000 44 | 45 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/용기병반지vs용기병모피증.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 9 3 | 17 4 | 8 5 | 330000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-3 21 | 5 22 | 1 23 | 1 24 | 9 25 | 17 26 | 8 27 | 330000 28 | 164.5 29 | 143.5 30 | 119 31 | 15 32 | 6.5 33 | 0 34 | 3 35 | 0 36 | 0 37 | 0 38 | 18 39 | 0 40 | 2,6,11 41 | 1-3,2-3 42 | 1-3,3-3,4-3,5-3,6-3 43 | 5 44 | 17 45 | 10000 46 | 47 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/찬넵vs야순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 14 3 | 11 4 | 7 5 | 1500000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,11 23 | 3 24 | 16 25 | 5 26 | 4 27 | 1500000 28 | 147 29 | 152.5 30 | 116.5 31 | 7 32 | 1.5 33 | 0 34 | 10 35 | 0 36 | 0 37 | 0 38 | 31 39 | 0 40 | 2,9,14 41 | 1-3,2-3,3-2 42 | 5 43 | 1-3,2-3,3-3,4-3,5-3 44 | 1,11 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/찬넵vs항윌.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 14 3 | 11 4 | 8 5 | 330000 6 | 164.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 3 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,11 23 | 1 24 | 10 25 | 12 26 | 8 27 | 330000 28 | 204.5 29 | 123.5 30 | 119 31 | 7 32 | 1.5 33 | 0 34 | 13 35 | 0 36 | 0 37 | 0 38 | 18 39 | 0 40 | 2,6,11 41 | 1-3,2-3 42 | 1-3,3-3,4-3,5-3,6-5 43 | 5 44 | 1,11 45 | 1000 46 | 47 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵vs아알.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 236.5 7 | 149.5 8 | 125 9 | 45 10 | 6.5 11 | 3 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 2,12 23 | 3 24 | 2 25 | 3 26 | 10 27 | 2000000 28 | 234 29 | 168 30 | 116 31 | 45 32 | 1.5 33 | 0 34 | 11 35 | 0 36 | 0 37 | 0 38 | 9 39 | 0 40 | 3,7,14 41 | 1-3,2-3,3-3,4-3 42 | 1-3,4-2 43 | 1-3,2-3,3-3 44 | 2,12 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵vs야넵.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 7 5 | 1500000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,11 23 | 3 24 | 16 25 | 11 26 | 7 27 | 1500000 28 | 167 29 | 142.5 30 | 116.5 31 | 7 32 | 6.5 33 | 0 34 | 10 35 | 0 36 | 0 37 | 0 38 | 31 39 | 0 40 | 2,9,14 41 | 1-3,2-3,3-2 42 | 5 43 | 1-3,2-3,3-3,4-3,5-3 44 | 1,11 45 | 1 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵vs야순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 7 5 | 1500000 6 | 204.5 7 | 143.5 8 | 119 9 | 8 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,12 23 | 3 24 | 16 25 | 5 26 | 4 27 | 1500000 28 | 147 29 | 152.5 30 | 116.5 31 | 7 32 | 1.5 33 | 0 34 | 10 35 | 0 36 | 0 37 | 0 38 | 31 39 | 0 40 | 2,9,14 41 | 1-3,2-3,3-2 42 | 5 43 | 1-3,2-3,3-3,4-3,5-3 44 | 1,12 45 | 1 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵vs제순.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 253 7 | 154 8 | 125 9 | 65 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 2,12 23 | 3 24 | 8 25 | 5 26 | 4 27 | 2000000 28 | 198.5 29 | 218.5 30 | 100 31 | 55 32 | 1.5 33 | 0 34 | 0 35 | 0 36 | 0 37 | 0 38 | 9 39 | 9 40 | 1,7,14 41 | 1-3,2-3,3-3 42 | 1-3,3-3,4-2 43 | 1-3,2-3,3-3 44 | 2,12 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵반지vs항넵모피증.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 11 4 | 8 5 | 330000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,11 23 | 1 24 | 10 25 | 11 26 | 8 27 | 330000 28 | 204.5 29 | 143.5 30 | 119 31 | 7 32 | 6.5 33 | 0 34 | 13 35 | 0 36 | 0 37 | 0 38 | 18 39 | 0 40 | 2,6,11 41 | 1-3,2-3 42 | 1-3,3-3,4-3,5-3,6-5 43 | 5 44 | 1,11 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵반지vs항넵비수.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 11 4 | 8 5 | 330000 6 | 204.5 7 | 143.5 8 | 119 9 | 7 10 | 6.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,12 23 | 1 24 | 10 25 | 11 26 | 8 27 | 330000 28 | 204.5 29 | 143.5 30 | 119 31 | 7 32 | 6.5 33 | 0 34 | 13 35 | 0 36 | 0 37 | 0 38 | 18 39 | 0 40 | 2,6,11 41 | 1-3,2-3 42 | 1-3,3-3,4-3,5-3,6-5 43 | 5 44 | 12,13 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항넵vs아르테아마니.txt: -------------------------------------------------------------------------------- 1 | 2 2 | 10 3 | 11 4 | 8 5 | 2000000 6 | 236.5 7 | 149.5 8 | 125 9 | 45 10 | 6.5 11 | 3 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 2,12 23 | 3 24 | 3 25 | 2 26 | 10 27 | 2000000 28 | 231 29 | 169 30 | 116 31 | 44 32 | 1.5 33 | 1.5 34 | 3 35 | 3.5 36 | 0 37 | 0 38 | 9 39 | 0 40 | 3,10,14 41 | 1-3 42 | 1-3,2-3,3-3,4-3,5-5 43 | 1-3,2-3,3-3 44 | 2,12 45 | 10000 46 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/종합데이터/항윌반지vs항윌비수.txt: -------------------------------------------------------------------------------- 1 | 1 2 | 10 3 | 12 4 | 8 5 | 330000 6 | 204.5 7 | 123.5 8 | 119 9 | 7 10 | 1.5 11 | 0 12 | 13 13 | 0 14 | 0 15 | 0 16 | 18 17 | 0 18 | 2,6,11 19 | 1-3,2-3 20 | 1-3,3-3,4-3,5-3,6-5 21 | 5 22 | 1,12 23 | 1 24 | 10 25 | 12 26 | 8 27 | 330000 28 | 204.5 29 | 123.5 30 | 119 31 | 7 32 | 1.5 33 | 0 34 | 13 35 | 0 36 | 0 37 | 0 38 | 18 39 | 0 40 | 2,6,11 41 | 1-3,2-3 42 | 1-3,3-3,4-3,5-3,6-5 43 | 5 44 | 12,13 45 | 10000 46 | 47 | -------------------------------------------------------------------------------- /.vs/RiseOfKingdoms/project-colors.json: -------------------------------------------------------------------------------- 1 | { 2 | "Version": 1, 3 | "ProjectMap": { 4 | "e7eb9026-db61-4bac-b403-1884c539fb3c": { 5 | "ProjectGuid": "e7eb9026-db61-4bac-b403-1884c539fb3c", 6 | "DisplayName": "RiseOfKingdoms", 7 | "ColorIndex": 0 8 | }, 9 | "a2fe74e1-b743-11d0-ae1a-00a0c90fffc3": { 10 | "ProjectGuid": "a2fe74e1-b743-11d0-ae1a-00a0c90fffc3", 11 | "DisplayName": "기타 파일", 12 | "ColorIndex": -1 13 | } 14 | }, 15 | "NextColorIndex": 1 16 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/bin/Debug/net6.0/RiseOfKingdoms.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v6.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v6.0": { 9 | "RiseOfKingdoms/1.0.0": { 10 | "runtime": { 11 | "RiseOfKingdoms.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "RiseOfKingdoms/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.GeneratedMSBuildEditorConfig.editorconfig: -------------------------------------------------------------------------------- 1 | is_global = true 2 | build_property.TargetFramework = net6.0 3 | build_property.TargetPlatformMinVersion = 4 | build_property.UsingMicrosoftNETSdkWeb = 5 | build_property.ProjectTypeGuids = 6 | build_property.InvariantGlobalization = 7 | build_property.PlatformNeutralAssembly = 8 | build_property._SupportedPlatformList = Linux,macOS,Windows 9 | build_property.RootNamespace = RiseOfKingdoms 10 | build_property.ProjectDir = C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\ 11 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Arabia.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Arabia : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 227; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 222; 17 | commander.armyType = CommanderBase.ArmyType.Cavalry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Britain.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Britain : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 232; 15 | commander.baseDefence = 216; 16 | commander.baseHealth = 211; 17 | commander.armyType = CommanderBase.ArmyType.Archer; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/China.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class China : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 227; 15 | commander.baseDefence = 222; 16 | commander.baseHealth = 212; 17 | commander.armyType = CommanderBase.ArmyType.Archer; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/France.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class France : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 221; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 227; 17 | commander.armyType = CommanderBase.ArmyType.Infantry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Japan.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Japan : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 232; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Infantry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Korea.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Korea : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 221; 15 | commander.baseDefence = 227; 16 | commander.baseHealth = 212; 17 | commander.armyType = CommanderBase.ArmyType.Archer; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Ottoman.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Ottoman : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 227; 15 | commander.baseDefence = 216; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Archer; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Rome.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Rome : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 221; 15 | commander.baseDefence = 222; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Infantry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Spain.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Spain : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 232; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Cavalry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Viking.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Viking : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 221; 15 | commander.baseDefence = 216; 16 | commander.baseHealth = 222; 17 | commander.armyType = CommanderBase.ArmyType.Infantry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Base_Mixed.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Base_Mixed : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 220; 15 | commander.baseDefence = 213; 16 | commander.baseHealth = 215; 17 | commander.armyType = CommanderBase.ArmyType.Mixed; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Byzantium.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Byzantium : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 221; 15 | commander.baseDefence = 222; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Cavalry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Germany.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Germany : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 220; 15 | commander.baseDefence = 217; 16 | commander.baseHealth = 222; 17 | commander.armyType = CommanderBase.ArmyType.Cavalry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Base_Archer.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Base_Archer : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 220; 15 | commander.baseDefence = 216; 16 | commander.baseHealth = 212; 17 | commander.armyType = CommanderBase.ArmyType.Archer; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Base_Cavalry.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Base_Cavalry : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 220; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Cavalry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Tier/Base_Infantry.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Tier 9 | { 10 | internal class Base_Infantry : TierBase 11 | { 12 | public override void Init(CommanderBase commander) 13 | { 14 | commander.baseAttack = 220; 15 | commander.baseDefence = 212; 16 | commander.baseHealth = 216; 17 | commander.armyType = CommanderBase.ArmyType.Infantry; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Attack/Lord_of_War.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Attack 11 | { 12 | internal class Lord_of_War : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | actionAmount = (3 * Count); 22 | if (UsingLog.usingLog == true) 23 | Console.WriteLine("- {0}[전쟁의왕] 부대 공격력 {1}% 증가", at.site, actionAmount); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Defence/Master_Armorer.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Defence 11 | { 12 | internal class Master_Armorer : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDefence += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | actionAmount = (3 * Count); 22 | if (UsingLog.usingLog == true) 23 | Console.WriteLine("- {0}[병기공장인] 부대 방어력 {1}% 증가", at.site, actionAmount); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Mobility/Time_Management.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Mobility 11 | { 12 | internal class Time_Management : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSpeedIncrease -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | actionAmount = (2 * Count); 22 | if (UsingLog.usingLog == true) 23 | Console.WriteLine("- {0}[시간관리] 이동속도 {1}% 감소", at.site, actionAmount); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/Latent_Power.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class Latent_Power : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | actionAmount = (2 * Count); 17 | if (UsingLog.usingLog == true) 18 | Console.WriteLine("- {0}[잠재력] 추가스킬피해 {1}% 증가", at.site, actionAmount); 19 | at.tempAdditionalSkillDamageIncrease += actionAmount; 20 | } 21 | 22 | public override void AfterAction(CommanderBase at, CommanderBase df) 23 | { 24 | //잠재력 추가스킬피해 6증가 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Support/Rejuvenate.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Support 11 | { 12 | internal class Rejuvenate : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.isSkillUsed) 21 | { 22 | actionAmount = (50 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[인내] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Attack/Burning_Blood.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Attack 11 | { 12 | internal class Burning_Blood : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.normalAttackDamage > 0) 21 | { 22 | actionAmount = (2 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[열혈] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Epic/Silent_Trial.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Epic 11 | { 12 | internal class Silent_Trial : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0) 21 | { 22 | actionAmount = (isStrengthen ? 13 : 10); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[고요한 심판] 대상 부대 분노 {1} 감소", at.site, actionAmount); 25 | df.rageMinus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Archer/Razor_Sharp.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Archer 11 | { 12 | internal class Razor_Sharp : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0) 21 | { 22 | actionAmount = (3 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[예리한 화살촉] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Cavalry/Undying_Fury.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Cavalry 11 | { 12 | internal class Undying_Fury : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0) 21 | { 22 | actionAmount = (3 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[영원한 분노] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Defence/Burning_Blood.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Defence 11 | { 12 | internal class Burning_Blood : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.normalAttackDamage > 0) 21 | { 22 | actionAmount = (2 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[열혈] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Undying_Fury.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Undying_Fury : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0) 21 | { 22 | actionAmount = (3 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[영원한 분노] 분노 {1}회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Hidden_Wrath.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Hidden_Wrath : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.normalAttackDamage > 0) 21 | { 22 | actionAmount = (2 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[와신상담] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Support/Burning_Blood.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Support 11 | { 12 | internal class Burning_Blood : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0) 21 | { 22 | actionAmount = (3 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[분노의 일격] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Archer/Arrows_Nocked.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Archer 11 | { 12 | internal class Arrows_Nocked : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | actionAmount = (3 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[발사직전] 부대 공격력 {1}% 증가", at.site, actionAmount); 26 | } 27 | 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Program.cs: -------------------------------------------------------------------------------- 1 | // See https://aka.ms/new-console-template for more information 2 | 3 | using RiseOfKingdoms.Commander; 4 | using RiseOfKingdoms.Common; 5 | using static RiseOfKingdoms.Common.Commanders; 6 | using static RiseOfKingdoms.Common.Tiers; 7 | 8 | Console.WriteLine("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"); 9 | Console.WriteLine("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"); 10 | Console.WriteLine("■■■■■■■■■■■■■■■■■ 라오킹 계산기 ■■■■■■■■■■■■■■■■■■"); 11 | Console.WriteLine("■■■■■■■■■■■■■■■■■ Made by OneV 버스커 ■■■■■■■■■■■■■■■■■■"); 12 | Console.WriteLine("■■■■■■■■■■■■■■■■■ version : 1.220311 ■■■■■■■■■■■■■■■■■■"); 13 | Console.WriteLine("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"); 14 | Console.WriteLine("■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"); 15 | 16 | #if DEBUG 17 | //SelectInfo.DirectSetting("항넵vs아르테아마니.txt"); 18 | SelectInfo.IndirectSetting(); 19 | #else 20 | SelectInfo.DirectSetting(string.Empty); 21 | #endif 22 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Conquering/Moment_Of_Triumph.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Conquering 11 | { 12 | internal class Moment_Of_Triumph : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop >= at.maxTroop * 0.9) 22 | { 23 | actionAmount = (3 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[승기] 모든 피해 {1}% 증가", at.site, actionAmount); 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/Rejuvenate.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class Rejuvenate : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | //인내 스킬시전시 분노 60회복 21 | if (at.isSkillUsed == true) 22 | { 23 | actionAmount = (20 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[인내] 분노 {1} 회복", at.site, actionAmount); 26 | at.ragePlus += actionAmount; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/Burning_Blood.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class Burning_Blood : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | //분노의일격 일반공격 분노 9 21 | if (df.normalAttackDamage > 0) 22 | { 23 | actionAmount = (3 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[분노의일격] 분노 {1} 회복", at.site, actionAmount); 26 | at.ragePlus += actionAmount; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Defence/Desperate_Elegy.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Defence 11 | { 12 | internal class Desperate_Elegy : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (df.normalAttackDamage > 0 && at.troop <= at.maxTroop * 0.3) 21 | { 22 | actionAmount = (5 * Count); 23 | if (UsingLog.usingLog == true) 24 | Console.WriteLine("- {0}[필사의 애가] 분노 {1} 회복", at.site, actionAmount); 25 | at.ragePlus += actionAmount; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Call_of_the_Pack.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Call_of_the_Pack : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDefence += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | actionAmount = (2 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[무리의부름] 부대 방어력 {1}% 증가", at.site, actionAmount); 26 | } 27 | 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Close_Formation.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Close_Formation : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | actionAmount = (3 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[밀집진형] 부대 공격력 {1}% 증가", at.site, actionAmount); 26 | } 27 | 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Impregnable.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Garrison 11 | { 12 | internal class Impregnable : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.battleState == CommanderBase.BattleState.Garrison) 17 | { 18 | actionAmount = (5 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[난공불락] 받는 스킬피해 {1}% 감소", at.site, actionAmount); 21 | at.tempSkillDamageDecrease += actionAmount; 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Armed_To_The_Teeth.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Armed_To_The_Teeth : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | actionAmount = (1 * Count); 17 | if (at.armyType == CommanderBase.ArmyType.Mixed) 18 | { 19 | at.tempDamageDecrease += actionAmount; 20 | if (UsingLog.usingLog == true) 21 | Console.WriteLine("- {0}[전원 방패] 받는 모든 피해 {1}% 감소", at.site, actionAmount); 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Armored_To_The_Teeth.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Armored_To_The_Teeth : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | actionAmount = (1 * Count); 17 | if (at.armyType == CommanderBase.ArmyType.Mixed) 18 | { 19 | at.tempDamageIncrease += actionAmount; 20 | if (UsingLog.usingLog == true) 21 | Console.WriteLine("- {0}[전원 착검] 모든 피해 {1}% 증가", at.site, actionAmount); 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Name_Of_The_King.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Name_Of_The_King : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.battleState == CommanderBase.BattleState.Conquering) 17 | { 18 | actionAmount = (1 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[왕의이름] 부대 공격력 {1}% 증가", at.site, actionAmount); 21 | at.tempAttack += actionAmount; 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Versatility/Buckler_Shield.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Versatility 11 | { 12 | internal class Buckler_Shield : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageDecrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.battleState == CommanderBase.BattleState.Conquering) 22 | { 23 | actionAmount = (1 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[원형방패] 받는 피해 {1}% 감소", at.site, actionAmount); 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Versatility/Meteor_Shower.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Versatility 11 | { 12 | internal class Meteor_Shower : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.battleState == CommanderBase.BattleState.Conquering) 22 | { 23 | actionAmount = (1 * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[축복의눈물] 모든 피해 {1}% 증가", at.site, actionAmount); 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Mobility/Alacrity.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Mobility 11 | { 12 | internal class Alacrity : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | // 이속저하디버프 30프로 확률로 방어 어떻게 구현할지 고민.. 17 | Random random = new Random(); 18 | if (random.Next(0, 10) < 3 && at.tempSpeedIncrease < 0) 19 | { 20 | if (UsingLog.usingLog == true) 21 | Console.WriteLine("- {0}[깨달음] 이속저하디버프 제거", at.site); 22 | at.tempSpeedIncrease = 0; 23 | } 24 | } 25 | 26 | public override void AfterAction(CommanderBase at, CommanderBase df) 27 | { 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Defence/Medicinal_Supplies.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Calculate; 3 | using RiseOfKingdoms.Commander; 4 | using RiseOfKingdoms.Common; 5 | using System; 6 | using System.Collections.Generic; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | 11 | namespace RiseOfKingdoms.Characteristic.Defence 12 | { 13 | internal class Medicinal_Supplies : CharacterBase 14 | { 15 | public override void BeforeAction(CommanderBase at, CommanderBase df) 16 | { 17 | 18 | } 19 | 20 | public override void AfterAction(CommanderBase at, CommanderBase df) 21 | { 22 | if (at.isSkillUsed == true) 23 | { 24 | actionAmount = (100 * Count); 25 | if (UsingLog.usingLog == true) 26 | Console.Write("- {0}[약초준비]", at.site); 27 | CalcDamage.CalcHealingEffect(at, df, actionAmount); 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Empty_Fortress_Strategem.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Garrison 11 | { 12 | internal class Empty_Fortress_Strategem : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.battleState == CommanderBase.BattleState.Garrison) 17 | { 18 | actionAmount = (2 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[공성계] 모든 피해 {1}% 증가", at.site, actionAmount); 21 | at.tempDamageIncrease += actionAmount; 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Integration/Armed_To_The_Teeth.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Integration 11 | { 12 | internal class Armed_To_The_Teeth : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Mixed) 17 | { 18 | actionAmount = (1 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[전원 착검] 모든 피해 {1}% 증가", at.site, actionAmount); 21 | } 22 | at.tempDamageIncrease += actionAmount; 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Horn_of_Fury.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Horn_of_Fury : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | Random random = new Random(); 21 | if (df.normalAttackDamage > 0 && random.Next(0, 10) < 3) 22 | { 23 | actionAmount = (isStrengthen ? 65 : 50); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[분노의 뿔] 분노 {1} 회복", at.site, actionAmount); 26 | at.ragePlus += actionAmount; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Impenetrable_Fortifications.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Garrison 11 | { 12 | internal class Impenetrable_Fortifications : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.battleState == CommanderBase.BattleState.Garrison) 17 | { 18 | actionAmount = (2 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[철옹성] 받는 모든 피해 {1}% 감소", at.site, actionAmount); 21 | at.tempDamageDecrease += actionAmount; 22 | } 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Integration/Armored_To_The_Teeth.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Integration 11 | { 12 | internal class Armored_To_The_Teeth : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Mixed) 17 | { 18 | actionAmount = (1 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[전원 방패] 받는 모든 피해 {1}% 감소", at.site, actionAmount); 21 | } 22 | at.tempDamageDecrease += actionAmount; 23 | } 24 | 25 | public override void AfterAction(CommanderBase at, CommanderBase df) 26 | { 27 | 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/EquipmentBase.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using RiseOfKingdoms.Common; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace RiseOfKingdoms.Equip 10 | { 11 | internal class EquipmentBase : MethodBase 12 | { 13 | protected bool isStrengthen = false; 14 | public override void Init(CommanderBase bs, bool _isStrengthen = true, int cnt = 0) 15 | { 16 | isStrengthen = _isStrengthen; 17 | bs.before_skill.Add(new DelegateMethod(BeforeAction)); 18 | bs.after_skill.Add(new DelegateMethod(AfterAction)); 19 | } 20 | public virtual void BeforeAction(CommanderBase at, CommanderBase df) 21 | { 22 | 23 | } 24 | protected int actionCount = 0; 25 | protected double actionAmount = 0; 26 | public virtual void AfterAction(CommanderBase at, CommanderBase df) 27 | { 28 | 29 | } 30 | 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/CharacterBase.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Skill; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Characteristic 11 | { 12 | internal class CharacterBase : MethodBase 13 | { 14 | protected int Count = 0; 15 | public override void Init(CommanderBase at, bool bl = true, int cnt = 0) 16 | { 17 | Count = cnt; 18 | at.before_skill.Add(new DelegateMethod(BeforeAction)); 19 | at.after_skill.Add(new DelegateMethod(AfterAction)); 20 | } 21 | public virtual void BeforeAction(CommanderBase at, CommanderBase df) 22 | { 23 | 24 | } 25 | protected int actionCount = 0; 26 | protected double actionAmount = 0; 27 | public virtual void AfterAction(CommanderBase at, CommanderBase df) 28 | { 29 | 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Conquering/Entrenched.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Conquering 11 | { 12 | internal class Entrenched : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | at.tempDamageDecrease += actionAmount; 18 | } 19 | 20 | public override void AfterAction(CommanderBase at, CommanderBase df) 21 | { 22 | if (at.battleState == CommanderBase.BattleState.Conquering) 23 | { 24 | actionAmount = (1 * Count); 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[유성우] 모든 피해 {1}% 증가, 받는 모든 피해 {1}% 감소", at.site, actionAmount); 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/Feral_Nature.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class Feral_Nature : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | //치명적인자연 일반공격시 10퍼확률 분노 100회복 21 | Random random = new Random(); 22 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0) 23 | { 24 | actionAmount = (20 * Count); 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[치명적인자연] 분노 {1} 회복", at.site, actionAmount); 27 | at.ragePlus += actionAmount; 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 이 코드는 도구를 사용하여 생성되었습니다. 4 | // 런타임 버전:4.0.30319.42000 5 | // 6 | // 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 7 | // 이러한 변경 내용이 손실됩니다. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("RiseOfKingdoms")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("RiseOfKingdoms")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("RiseOfKingdoms")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // MSBuild WriteCodeFragment 클래스에서 생성되었습니다. 23 | 24 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Elite_Soldiers.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Elite_Soldiers : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Infantry) 17 | { 18 | actionAmount = (0.5 * Count); 19 | } 20 | if (UsingLog.usingLog == true) 21 | Console.WriteLine("- {0}[정예부대] 보병 공격력, 방어력, 생명력 {1}% 증가", at.site, actionAmount); 22 | df.tempAttack += actionAmount; 23 | df.tempDefence += actionAmount; 24 | df.tempHealth += actionAmount; 25 | } 26 | 27 | public override void AfterAction(CommanderBase at, CommanderBase df) 28 | { 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Kings_Guard.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Garrison 11 | { 12 | internal class Kings_Guard : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.battleState == CommanderBase.BattleState.Garrison) 17 | { 18 | actionAmount = (1 * Count); 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[왕궁호위대] 부대 공격력,방어력,생명력 {1}% 증가", at.site, actionAmount); 21 | at.tempAttack += actionAmount; 22 | at.tempDefence += actionAmount; 23 | at.tempHealth += actionAmount; 24 | } 25 | } 26 | 27 | public override void AfterAction(CommanderBase at, CommanderBase df) 28 | { 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Versatility/Kings_Guard.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Versatility 11 | { 12 | internal class Kings_Guard : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | at.tempDefence += actionAmount; 18 | at.tempHealth += actionAmount; 19 | } 20 | 21 | public override void AfterAction(CommanderBase at, CommanderBase df) 22 | { 23 | if (at.battleState == CommanderBase.BattleState.Garrison) 24 | { 25 | actionAmount = (1 * Count); 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[왕궁 호위대] 부대 공격력, 방어력, 생명력 {1}% 증가", at.site, actionAmount); 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Nowhere_To_Turn.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Garrison 11 | { 12 | internal class Nowhere_To_Turn : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.battleState == CommanderBase.BattleState.Garrison) 21 | { 22 | if (at.normalAttackDamage > 0) 23 | { 24 | actionAmount = (2 * Count); 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[사면초가] 분노 {1} 회복", at.site, actionAmount); 27 | at.ragePlus += actionAmount; 28 | } 29 | } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Support/Counterattack.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Support 11 | { 12 | internal class Counterattack : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | if (at.heal > 0) 24 | { 25 | actionAmount = (3 * Count); 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[반격] 부대 공격력 {1}% 증가. 3초 지속", at.site, actionAmount); 28 | actionCount = 3; 29 | } 30 | actionCount--; 31 | 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Versatility/Nowhere_To_Turn.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Versatility 11 | { 12 | internal class Nowhere_To_Turn : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | if (at.battleState == CommanderBase.BattleState.Garrison) 21 | { 22 | if (at.normalAttackDamage > 0) 23 | { 24 | actionAmount = (2 * Count); 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[사면초가] 분노 {1} 회복", at.site, actionAmount); 27 | at.ragePlus += actionAmount; 28 | } 29 | } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Support/Cage_of_Thorns.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Support 11 | { 12 | internal class Cage_of_Thorns : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempSpeedIncrease -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | 24 | if (at.isSkillUsed) 25 | { 26 | actionAmount = (5 * Count); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[가시우리] 대상 부대 이동속도 {1}% 감소", at.site, actionAmount); 29 | actionCount = 3; 30 | } 31 | actionCount--; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Leadership/Strategic_Prowess.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Leadership 11 | { 12 | internal class Strategic_Prowess : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDefence += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | if (at.isSkillUsed == true) 24 | { 25 | actionAmount = (5 * Count); 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[절묘한 전략] 부대 방어력 {1}% 증가. 2초 지속", at.site, actionAmount); 28 | actionCount = 2; 29 | } 30 | actionCount--; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Mobility/Swiftness.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Mobility 11 | { 12 | internal class Swiftness : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSpeedIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | if (at.skillDamage > 0 && actionCount <= 0) 24 | { 25 | actionAmount = (5 * Count); 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[가벼운 걸음] 이동속도 {1}% 증가. 5초 지속", at.site, actionAmount); 28 | actionCount = 5; 29 | } 30 | actionCount--; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Karuaks_War_Drums.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Karuaks_War_Drums : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void AfterAction(CommanderBase at, CommanderBase df) 19 | { 20 | Random random = new Random(); 21 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 22 | { 23 | actionAmount = (isStrengthen ? 65 : 50); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[클라크의 전투북] 분노 {1} 회복", at.site, actionAmount); 26 | at.ragePlus += actionAmount; 27 | actionCount = 3; 28 | } 29 | actionCount--; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/Clarity.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class Clarity : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSkillDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | //명료 스킬시전시 6초간 스킬피해 6증가 22 | if (actionCount == 0) 23 | actionAmount = 0; 24 | 25 | if (at.isSkillUsed == true) 26 | { 27 | actionAmount = (2 * Count); 28 | if (UsingLog.usingLog == true) 29 | Console.WriteLine("- {0}[명료] 스킬피해 {1}% 증가. 6초 지속", at.site, actionAmount); 30 | actionCount = 6; 31 | 32 | } 33 | actionCount--; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Skill/All_For_One.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Skill 11 | { 12 | internal class All_For_One : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSkillDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | //일심동체 스킬시전시 2초간 스킬피해 6증가 22 | if (actionCount == 0) 23 | actionAmount = 0; 24 | 25 | if (at.isSkillUsed == true) 26 | { 27 | actionAmount = (2 * Count); 28 | if (UsingLog.usingLog == true) 29 | Console.WriteLine("- {0}[일심동체] 스킬피해 {1}% 증가. 2초 지속", at.site, actionAmount); 30 | actionCount = 2; 31 | 32 | } 33 | actionCount--; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Integration/Charge.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Integration 11 | { 12 | internal class Charge : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSpeedIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 24 | actionAmount = (3 * Count); 25 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 26 | actionAmount = (1 * Count); 27 | 28 | if (UsingLog.usingLog == true) 29 | Console.WriteLine("- {0}[전속돌격] 기마병 이동속도 {1}% 증가", at.site, 3 * Count); 30 | } 31 | 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Integration/Full_Quiver.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Integration 11 | { 12 | internal class Full_Quiver : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | if (at.armyType == CommanderBase.ArmyType.Archer) 24 | actionAmount = (3 * Count); 25 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 26 | actionAmount = (1 * Count); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[가득한 화살통] 궁병 공격력 {1}% 증가", at.site, 3 * Count); 29 | } 30 | 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Seths_Call.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Seths_Call : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempAttack += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | Random random = new Random(); 24 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 25 | { 26 | actionAmount = (isStrengthen ? 13 : 10); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[샤이트의 외침] 부대 공격력 {1}% 증가", at.site, actionAmount); 29 | actionCount = 3; 30 | } 31 | actionCount--; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Attack/Effortless.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Attack 11 | { 12 | internal class Effortless : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | Dictionary effectDic = new Dictionary { { 1, 0.5 }, { 2, 1 }, { 3, 2.5 } }; 20 | public override void AfterAction(CommanderBase at, CommanderBase df) 21 | { 22 | if (actionCount == 0) 23 | { 24 | actionAmount += effectDic[Count]; 25 | actionAmount = Math.Min(10, actionAmount); 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[여유] 모든 피해 {1}% 증가", at.site, actionAmount); 28 | actionCount = 10; 29 | } 30 | actionCount--; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Integration/Call_of_the_Pack.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Integration 11 | { 12 | internal class Call_of_the_Pack : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDefence += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.troop * 2 <= at.maxTroop) 22 | { 23 | if (at.armyType == CommanderBase.ArmyType.Infantry) 24 | actionAmount = (3 * Count); 25 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 26 | actionAmount = (1 * Count); 27 | 28 | if (UsingLog.usingLog == true) 29 | Console.WriteLine("- {0}[무리의부름] 보병 공격력 {1}% 증가", at.site, 3 * Count); 30 | } 31 | 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Defence/Testudo_Formation.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Defence 11 | { 12 | internal class Testudo_Formation : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageDecrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | 24 | Random random = new Random(); 25 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0) 26 | { 27 | actionAmount = (5 * Count); 28 | if (UsingLog.usingLog == true) 29 | Console.WriteLine("- {0}[귀갑진형] 받는 모든 피해 {1}% 감소. 1초 지속", at.site, actionAmount); 30 | actionCount = 1; 31 | } 32 | actionCount--; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Cavalry/Rallying_Cry.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Cavalry 11 | { 12 | internal class Rallying_Cry : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (actionCount == 0) 17 | actionAmount = 0; 18 | 19 | if (actionCount > 0) 20 | actionAmount = (3 * Count); 21 | 22 | if (actionAmount > 0) 23 | { 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[사기진작] 모든 피해 {1}% 증가", at.site, actionAmount); 26 | } 27 | at.tempDamageIncrease += actionAmount; 28 | 29 | actionCount--; 30 | } 31 | 32 | new int actionCount = 10; 33 | public override void AfterAction(CommanderBase at, CommanderBase df) 34 | { 35 | // 전투 시작 후 10초간 (3*Count)만큼 모든피해 증가. 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Ring_of_Doom.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Ring_of_Doom : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 3) 22 | actionAmount = 0; 23 | Random random = new Random(); 24 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 25 | { 26 | actionAmount = (isStrengthen ? 65 : 50); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[심판의 반지] 모든 피해 {1}% 증가. 2초 지속", at.site, actionAmount); 29 | actionCount = 5; 30 | } 31 | actionCount--; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Support/Emergency_Protection.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Support 11 | { 12 | internal class Emergency_Protection : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempSkillDamageDecrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | Random random = new Random(); 24 | if (random.Next(0, 10) < 5 && actionCount <= 0 && at.skillDamage > 0) 25 | { 26 | actionAmount = (5 * Count); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[긴급방어] 스킬피해 {1}% 감소. 3초 지속", at.site, actionAmount); 29 | actionCount = 3; 30 | } 31 | actionCount--; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.0.32112.339 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RiseOfKingdoms", "RiseOfKingdoms\RiseOfKingdoms.csproj", "{E7EB9026-DB61-4BAC-B403-1884C539FB3C}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {E7EB9026-DB61-4BAC-B403-1884C539FB3C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {E7EB9026-DB61-4BAC-B403-1884C539FB3C}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {E7EB9026-DB61-4BAC-B403-1884C539FB3C}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {E7EB9026-DB61-4BAC-B403-1884C539FB3C}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {2AD0A158-FD11-4C7F-97E7-37CA84F378C8} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Attack/Last_Stand.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Attack 11 | { 12 | internal class Last_Stand : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | Random random = new Random(); 24 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 25 | { 26 | actionAmount = (2 * Count); 27 | if (UsingLog.usingLog == true) 28 | Console.WriteLine("- {0}[배수진] 모든 피해 {1}% 증가. 3초 지속", at.site, actionAmount); 29 | actionCount = 3; 30 | at.silenceTurn = 4; 31 | } 32 | actionCount--; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Snare_of_Thorns.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Snare_of_Thorns : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempSpeedIncrease -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | Random random = new Random(); 22 | 23 | if (actionCount == 0) 24 | actionAmount = 0; 25 | 26 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 27 | { 28 | actionAmount = (5 * Count); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[가시의 덫] 대상 부대 이동속도 {1}% 감소. 2초 지속", at.site, actionAmount); 31 | actionCount = 2; 32 | } 33 | 34 | actionCount--; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Archer/Phoenix_Tail_Arrows.cs: -------------------------------------------------------------------------------- 1 | 2 | 3 | using RiseOfKingdoms.Calculate; 4 | using RiseOfKingdoms.Commander; 5 | using RiseOfKingdoms.Common; 6 | using System; 7 | using System.Collections.Generic; 8 | using System.Linq; 9 | using System.Text; 10 | using System.Threading.Tasks; 11 | 12 | namespace RiseOfKingdoms.Characteristic.Archer 13 | { 14 | internal class Phoenix_Tail_Arrows : CharacterBase 15 | { 16 | public override void BeforeAction(CommanderBase at, CommanderBase df) 17 | { 18 | } 19 | 20 | public override void AfterAction(CommanderBase at, CommanderBase df) 21 | { 22 | if (at.armyType == CommanderBase.ArmyType.Archer) 23 | { 24 | Random random = new Random(); 25 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0) 26 | { 27 | actionAmount = (50 * Count); 28 | if (UsingLog.usingLog == true) 29 | Console.Write("- {0}[봉황선]", at.site); 30 | CalcDamage.CalcActiveSkillDamage(at, df, actionAmount); 31 | } 32 | 33 | } 34 | 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Cavalry/Halberd.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Cavalry 11 | { 12 | internal class Halberd : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempAttack -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | // 일반공격시 10퍼 확률로 5*Count만큼 상대 공격력 감소 2초간 지속. 22 | if (actionCount == 0) 23 | actionAmount = 0; 24 | 25 | Random random = new Random(); 26 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 27 | { 28 | actionAmount = (5 * Count); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[무장해제] 대상 부대 공격력 {1}% 감소. 2초 지속", at.site, actionAmount); 31 | actionCount = 2; 32 | } 33 | actionCount--; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Hold_The_Line.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Hold_The_Line : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageDecrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | Random random = new Random(); 22 | 23 | if (actionCount == 0) 24 | actionAmount = 0; 25 | 26 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0 && at.armyType == CommanderBase.ArmyType.Infantry) 27 | { 28 | actionAmount = (5 * Count); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[현상유지] 받는 피해 {1}% 감소. 2초 지속", at.site, actionAmount); 31 | actionCount = 2; 32 | } 33 | 34 | actionCount--; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Mobility/Vortex.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Mobility 11 | { 12 | internal class Vortex : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempSpeedIncrease -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | if (at.isSkillUsed == true && actionCount <= 0) 24 | { 25 | Random random = new Random(); 26 | if (random.Next(0, 10) == 0) 27 | { 28 | actionAmount = (5 * Count); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[소용돌이] 대상 부대 이동속도 {1}% 감소. 3초 지속", at.site, actionAmount); 31 | actionCount = 3; 32 | } 33 | } 34 | actionCount--; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Concealed_Dagger.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Concealed_Dagger : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempHealth -= actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (actionCount == 0) 22 | actionAmount = 0; 23 | 24 | Random random = new Random(); 25 | if (df.normalAttackDamage > 0 && random.Next(0, 10) < 3) 26 | { 27 | actionAmount += (isStrengthen ? 6.5 : 5); 28 | actionAmount = Math.Min(actionAmount, (isStrengthen ? 19.5 : 15)); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[날카로운 비수] 대상 부대 생명력 {1}% 감소. 3초 지속", at.site, actionAmount); 31 | actionCount = 3; 32 | } 33 | actionCount--; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Scolas_Lucky_Coin.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Calculate; 3 | using RiseOfKingdoms.Commander; 4 | using RiseOfKingdoms.Common; 5 | using System; 6 | using System.Collections.Generic; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | 11 | namespace RiseOfKingdoms.Equip.Legendary 12 | { 13 | internal class Scolas_Lucky_Coin : EquipmentBase 14 | { 15 | public override void BeforeAction(CommanderBase at, CommanderBase df) 16 | { 17 | } 18 | 19 | double actionAmount2 = 0; 20 | public override void AfterAction(CommanderBase at, CommanderBase df) 21 | { 22 | if (actionCount == 3) 23 | actionAmount = 0; 24 | 25 | Random random = new Random(); 26 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 27 | { 28 | actionAmount = (isStrengthen ? 650 : 500); 29 | if (UsingLog.usingLog == true) 30 | Console.Write("- {0}[스콜라스의 행운코인] 방패 {1}계수 발동 ", at.site, actionAmount); 31 | CalcDamage.CalcShieldEffect(at, actionAmount, 3); 32 | actionCount = 3; 33 | } 34 | actionCount--; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Conquering/Meteor_Shower.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Conquering 11 | { 12 | internal class Meteor_Shower : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (df.battleState == CommanderBase.BattleState.Garrison) 22 | { 23 | if (actionCount == 0) 24 | actionAmount = 0; 25 | Random random = new Random(); 26 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0) 27 | { 28 | actionAmount = (10 * Count); 29 | if (UsingLog.usingLog == true) 30 | Console.WriteLine("- {0}[축복의 눈물] 모든 피해 {1}% 증가. 1초 지속", at.site, actionAmount); 31 | actionCount = 1; 32 | } 33 | actionCount--; 34 | } 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/RiseOfKingdoms.csproj.nuget.g.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | True 5 | NuGet 6 | $(MSBuildThisFileDirectory)project.assets.json 7 | $(UserProfile)\.nuget\packages\ 8 | C:\Users\jcm\.nuget\packages\ 9 | PackageReference 10 | 5.11.0 11 | 12 | 13 | 14 | 15 | 16 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 17 | 18 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Archer/Whistling_Arrows.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Archer 11 | { 12 | internal class Whistling_Arrows : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempDamageIncrease += actionAmount; 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | if (at.armyType == CommanderBase.ArmyType.Archer) 22 | { 23 | if (actionCount == 0) 24 | actionAmount = 0; 25 | 26 | Random random = new Random(); 27 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount <= 0) 28 | { 29 | actionAmount = (5 * Count); 30 | if (UsingLog.usingLog == true) 31 | Console.WriteLine("- {0}[명적] 모든 피해 {1}% 증가. 2초 지속", at.site, actionAmount); 32 | actionCount = 2; 33 | } 34 | actionCount--; 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Cavalry/Disarm.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Cavalry 11 | { 12 | internal class Disarm : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Cavalry && df.armyType == CommanderBase.ArmyType.Archer) 17 | actionAmount = (3 * Count); 18 | else if (at.armyType == CommanderBase.ArmyType.Cavalry && df.armyType == CommanderBase.ArmyType.Mixed) 19 | actionAmount = (1 * Count); 20 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Archer) 21 | actionAmount = (1 * Count); 22 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Mixed) 23 | actionAmount = ((1/3) * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[미늘창] 기마병이 궁병에게 주는 피해 {1}% 증가", at.site, 3 * Count); 26 | at.tempDamageIncrease += actionAmount; 27 | } 28 | 29 | public override void AfterAction(CommanderBase at, CommanderBase df) 30 | { 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Archer/Thumb_Ring.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Archer 11 | { 12 | internal class Thumb_Ring : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Archer && df.armyType == CommanderBase.ArmyType.Infantry) 17 | actionAmount = (3 * Count); 18 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Infantry) 19 | actionAmount = (1 * Count); 20 | else if (at.armyType == CommanderBase.ArmyType.Archer && df.armyType == CommanderBase.ArmyType.Mixed) 21 | actionAmount = (1 * Count); 22 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Mixed) 23 | actionAmount = ((1/3) * Count); 24 | 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[아대] 궁병이 보병에게 주는 피해 {1}% 증가", at.site, 3 * Count); 27 | at.tempDamageIncrease += actionAmount; 28 | } 29 | 30 | public override void AfterAction(CommanderBase at, CommanderBase df) 31 | { 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Infantry/Iron_Spear.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Infantry 11 | { 12 | internal class Iron_Spear : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (at.armyType == CommanderBase.ArmyType.Infantry && df.armyType == CommanderBase.ArmyType.Cavalry) 17 | actionAmount = (3 * Count); 18 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Cavalry) 19 | actionAmount = (1 * Count); 20 | else if (at.armyType == CommanderBase.ArmyType.Infantry && df.armyType == CommanderBase.ArmyType.Mixed) 21 | actionAmount = (1 * Count); 22 | else if (at.armyType == CommanderBase.ArmyType.Mixed && df.armyType == CommanderBase.ArmyType.Mixed) 23 | actionAmount = ((1/3) * Count); 24 | if (UsingLog.usingLog == true) 25 | Console.WriteLine("- {0}[강철의창] 보병이 기마병에게 주는 피해 {1}% 증가", at.site, 3 * Count); 26 | 27 | at.tempDamageIncrease += actionAmount; 28 | } 29 | 30 | public override void AfterAction(CommanderBase at, CommanderBase df) 31 | { 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Garrison/Divine_Favor.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Calculate; 3 | using RiseOfKingdoms.Commander; 4 | using RiseOfKingdoms.Common; 5 | using System; 6 | using System.Collections.Generic; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | 11 | namespace RiseOfKingdoms.Characteristic.Garrison 12 | { 13 | internal class Divine_Favor : CharacterBase 14 | { 15 | public override void BeforeAction(CommanderBase at, CommanderBase df) 16 | { 17 | } 18 | 19 | public override void AfterAction(CommanderBase at, CommanderBase df) 20 | { 21 | // 거점수성시 공격받으면 10퍼확률로 500계수 방패 22 | if (at.battleState == CommanderBase.BattleState.Garrison) 23 | { 24 | if (actionCount == 0) 25 | actionAmount = 0; 26 | Random random = new Random(); 27 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0) 28 | { 29 | actionAmount = (100 * Count); 30 | if (UsingLog.usingLog == true) 31 | Console.Write("- {0}[신의 은혜]", at.site); 32 | CalcDamage.CalcShieldEffect(at, actionAmount, 1); 33 | actionCount = 1; 34 | } 35 | actionCount--; 36 | } 37 | } 38 | public void CharacterBonus(CommanderBase at, CommanderBase df) 39 | { 40 | 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Equip/Legendary/Moras_Web.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Equip.Legendary 11 | { 12 | internal class Moras_Web : EquipmentBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempDefence -= actionAmount; 17 | df.tempSpeedIncrease -= actionAmount2; 18 | } 19 | 20 | double actionAmount2 = 0; 21 | public override void AfterAction(CommanderBase at, CommanderBase df) 22 | { 23 | if (actionCount == 0) 24 | actionAmount = 0; 25 | 26 | Random random = new Random(); 27 | if (df.normalAttackDamage > 0 && random.Next(0, 10) < 3) 28 | { 29 | actionAmount += (isStrengthen ? 5.5 : 4); 30 | actionAmount = Math.Min(actionAmount, (isStrengthen ? 16.5 : 12)); 31 | actionAmount2 += (isStrengthen ? 10.5 : 8); 32 | actionAmount2 = Math.Min(actionAmount2, (isStrengthen ? 31.5 : 24)); 33 | if (UsingLog.usingLog == true) 34 | Console.WriteLine("- {0}[모라의 거미줄] 대상 부대 방어력 {1}% 감소. 대상 부대 이동속도 {2}% 감소. 3초 지속", at.site, actionAmount, actionAmount2); 35 | actionCount = 3; 36 | } 37 | actionCount--; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Archer/Markswoman.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Markswoman : SkillBase 13 | { 14 | public override void Active(CommanderBase at, CommanderBase df) 15 | { 16 | // 100 계수 스킬 17 | if (UsingLog.usingLog == true) 18 | Console.Write("- {0}[기습]", at.site); 19 | CalcDamage.CalcActiveSkillDamage(at, df, 100); 20 | } 21 | 22 | public override void Passive1Before(CommanderBase at, CommanderBase df) 23 | { 24 | } 25 | public override void Passive1After(CommanderBase at, CommanderBase df) 26 | { 27 | // 야만인 피해 10퍼 증가 28 | } 29 | 30 | public override void Passive2Before(CommanderBase at, CommanderBase df) 31 | { 32 | } 33 | public override void Passive2After(CommanderBase at, CommanderBase df) 34 | { 35 | // 궁병 공격력 5퍼 증가 36 | } 37 | 38 | public override void Passive3Before(CommanderBase at, CommanderBase df) 39 | { 40 | } 41 | public override void Passive3After(CommanderBase at, CommanderBase df) 42 | { 43 | // 궁병 방어력 5퍼 증가 44 | } 45 | 46 | public override void NewBefore(CommanderBase at, CommanderBase df) 47 | { 48 | } 49 | public override void NewAfter(CommanderBase at, CommanderBase df) 50 | { 51 | // 각성스킬 없음 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/MethodBase.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Common 9 | { 10 | internal abstract class MethodBase 11 | { 12 | public delegate void DelegateMethod(CommanderBase at, CommanderBase df); 13 | public static void Dummy(CommanderBase at, CommanderBase df) { } 14 | public abstract void Init(CommanderBase commander, bool bl = true, int cnt = 0); 15 | public static void AddBeforeSkillBonus(CommanderBase at, int cnt, DelegateMethod start, DelegateMethod end) 16 | { 17 | if (at.before_skill_bonus_list.Count == 0) 18 | at.before_skill_bonus_list.Add(new List() { start }); 19 | else 20 | at.before_skill_bonus_list[0].Add(start); 21 | 22 | 23 | for (int i = 1; i < cnt; i++) 24 | { 25 | if (at.before_skill_bonus_list.Count <= i) 26 | at.before_skill_bonus_list.Add(new List() { Dummy }); 27 | } 28 | 29 | if (at.before_skill_bonus_list.Count == cnt) 30 | at.before_skill_bonus_list.Add(new List() { end }); 31 | else 32 | at.before_skill_bonus_list[cnt].Add(end); 33 | } 34 | 35 | public static void AddAfterSkillBonus(CommanderBase at, int dummyCnt, int cnt, DelegateMethod method) 36 | { 37 | for (int i = 0; i < dummyCnt + cnt; i++) 38 | { 39 | if (at.active_skill_bonus_list.Count <= i) 40 | at.active_skill_bonus_list.Add(new List() { (i < dummyCnt ? Dummy : method) }); 41 | else 42 | at.active_skill_bonus_list[i].Add((i < dummyCnt ? Dummy : method)); 43 | } 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /RiseOfKingdoms/SampleData/테스트용.txt: -------------------------------------------------------------------------------- 1 | 집결 2 | 항우 3 | 알렉산드르넵스키 4 | 기마병 5 | 2000000 6 | 기본공방생.txt 7 | 기마병풀장비특.txt 8 | 항우베스트.txt 9 | 항우.txt 10 | 넵스키.txt 11 | 추가.txt 12 | 0 13 | 17 14 | 주둔 15 | 제노비아 16 | 아에티우스 17 | 보병 18 | 2000000 19 | 기본공방생.txt 20 | 보병풀장비특.txt 21 | 제노베스트.txt 22 | 제노비아.txt 23 | 아에티우스.txt 24 | 추가2.txt 25 | 0 26 | 2,12 27 | 10000 28 | 29 | 30 | 31 | 집결 32 | 항우 33 | 알렉산드르넵스키 34 | 기마병 35 | 500000 36 | 연맹X기본공방생.txt 37 | 항우베스트.txt 38 | 항우.txt 39 | 넵스키.txt 40 | 추가.txt 41 | 0 42 | 17 43 | 주둔 44 | 제노비아 45 | 이순신 46 | 삼병종 47 | 500000 48 | 연맹X기본공방생.txt 49 | 제노베스트.txt 50 | 제노비아.txt 51 | 이순신.txt 52 | 추가2.txt 53 | 0 54 | 2,12 55 | 10000 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 1 74 | 10 75 | 15 76 | 8 77 | 330000 78 | 기본공방생.txt 79 | 잃왕풀연구.txt 80 | 항우베스트.txt 81 | 기마병풀장비특.txt 82 | 항우.txt 83 | 베르트랑.txt 84 | 추가2.txt 85 | 0 86 | 2,12 87 | 50000 88 | 89 | 90 | 91 | 92 | 3 93 | 2 94 | 5 95 | 4 96 | 2000000 97 | 기본공방생.txt 98 | 잃왕풀연구.txt 99 | 아마니베스트.txt 100 | 궁병풀장비특.txt 101 | 아마니토레.txt 102 | 이순신.txt 103 | 추가2.txt 104 | 0 105 | 2,12 106 | 10000 107 | 108 | 109 | 110 | 111 | 112 | 3 113 | 2 114 | 3 115 | 10 116 | 2000000 117 | 기본공방생.txt 118 | 잃왕풀연구.txt 119 | 아마니베스트.txt 120 | 궁병풀장비특.txt 121 | 아마니토레.txt 122 | 아르테미시아.txt 123 | 추가2.txt 124 | 0 125 | 2,12 126 | 10000 127 | 128 | 129 | 130 | 131 | 132 | 3 133 | 16 134 | 5 135 | 4 136 | 2000000 137 | 기본공방생.txt 138 | 잃왕풀연구.txt 139 | 야드베스트.txt 140 | 기마병풀장비특.txt 141 | 야드비가.txt 142 | 이순신.txt 143 | 추가2.txt 144 | 0 145 | 2,12 146 | 10000 147 | 148 | 149 | 150 | 3 151 | 16 152 | 11 153 | 8 154 | 2000000 155 | 기본공방생.txt 156 | 잃왕풀연구.txt 157 | 야드베스트.txt 158 | 기마병풀장비특.txt 159 | 야드비가.txt 160 | 넵스키.txt 161 | 추가2.txt 162 | 0 163 | 2,12 164 | 10000 165 | 166 | 167 | 168 | 3 169 | 8 170 | 5 171 | 4 172 | 2000000 173 | 기본공방생.txt 174 | 잃왕풀연구.txt 175 | 제노베스트.txt 176 | 보병풀장비특.txt 177 | 제노비아.txt 178 | 이순신.txt 179 | 추가2.txt 180 | 0 181 | 2,12 182 | 10000 183 | 184 | 185 | 186 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/Dragon_Lancer.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Dragon_Lancer : SkillBase 13 | { 14 | 15 | public double extraDamage; 16 | public override void Active(CommanderBase at, CommanderBase df) 17 | { 18 | // 75 계수 스킬 19 | if (UsingLog.usingLog == true) 20 | Console.Write("- {0}[위협]", at.site); 21 | extraDamage = CalcDamage.CalcActiveSkillDamage(at, df, 75); 22 | AddAfterSkillBonus(at, 1, 2, ActiveBonus); 23 | } 24 | 25 | public void ActiveBonus(CommanderBase at, CommanderBase df) 26 | { 27 | if (UsingLog.usingLog == true) 28 | Console.Write("- {0}[위협]", at.site); 29 | CalcDamage.CalcAdditionalSkillDamage(df, extraDamage); 30 | } 31 | 32 | public override void Passive1Before(CommanderBase at, CommanderBase df) 33 | { 34 | } 35 | public override void Passive1After(CommanderBase at, CommanderBase df) 36 | { 37 | // 기병이속 10퍼 증가 38 | } 39 | 40 | public override void Passive2Before(CommanderBase at, CommanderBase df) 41 | { 42 | } 43 | public override void Passive2After(CommanderBase at, CommanderBase df) 44 | { 45 | // 기병 공격력 5퍼 증가 46 | } 47 | 48 | public override void Passive3Before(CommanderBase at, CommanderBase df) 49 | { 50 | } 51 | public override void Passive3After(CommanderBase at, CommanderBase df) 52 | { 53 | // 기병 방어력 5퍼 증가 54 | } 55 | 56 | public override void NewBefore(CommanderBase at, CommanderBase df) 57 | { 58 | } 59 | public override void NewAfter(CommanderBase at, CommanderBase df) 60 | { 61 | // 각성스킬 없음 62 | } 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/ViewBuff.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using static RiseOfKingdoms.Common.Commanders; 8 | using static RiseOfKingdoms.Common.Tiers; 9 | 10 | namespace RiseOfKingdoms.Common 11 | { 12 | internal static class ViewBuff 13 | { 14 | public static void ViewAdditionalBuff(CommanderBase at, CommanderBase df) 15 | { 16 | Console.WriteLine("▶공격측 버프"); 17 | Console.WriteLine("사령관 : 주 {0},부 {1}", at.commanderClassList[0].Item1.GetType().Name, at.commanderClassList[1].Item1.GetType().Name); 18 | Console.WriteLine("공격력 : {0}\n방어력 : {1}\n생명력 : {2}\n피해증가 : {3}\n피해감소 : {4}\n스킬피해증가 : {5}\n스킬피해감소 : {6}\n" + 19 | "일반피해증가 : {7}\n일반피해감소 : {8}\n반격피해증가 : {9}\n반격피해감소 : {10}\n치료효과증가 : {11}\n", at.additionalAttack, at.additionalDefence, at.additionalHealth, 20 | at.additionalDamageIncrease, at.additionalDamageDecrease, at.additionalSkillDamageIncrease, at.additionalSkillDamageDecrease, at.additionalNormalDamageIncrease, 21 | at.additionalNormalDamageDecrease, at.additionalCounterDamageIncrease, at.additionalCounterDamageDecrease, at.additionalHealingEffect); 22 | Console.WriteLine("▶수비측 버프"); 23 | Console.WriteLine("사령관 : 주 {0},부 {1}", df.commanderClassList[0].Item1.GetType().Name, df.commanderClassList[1].Item1.GetType().Name); 24 | Console.WriteLine("공격력 : {0}\n방어력 : {1}\n생명력 : {2}\n피해증가 : {3}\n피해감소 : {4}\n스킬피해증가 : {5}\n스킬피해감소 : {6}\n" + 25 | "일반피해증가 : {7}\n일반피해감소 : {8}\n반격피해증가 : {9}\n반격피해감소 : {10}\n치료효과증가 : {11}\n", df.additionalAttack, df.additionalDefence, df.additionalHealth, 26 | df.additionalDamageIncrease, df.additionalDamageDecrease, df.additionalSkillDamageIncrease, df.additionalSkillDamageDecrease, df.additionalNormalDamageIncrease, 27 | df.additionalNormalDamageDecrease, df.additionalCounterDamageIncrease, df.additionalCounterDamageDecrease, df.additionalHealingEffect); 28 | } 29 | 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Characteristic/Versatility/Turn_Of_Fate.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using RiseOfKingdoms.Common; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Characteristic.Versatility 11 | { 12 | internal class Turn_Of_Fate : CharacterBase 13 | { 14 | public override void BeforeAction(CommanderBase at, CommanderBase df) 15 | { 16 | if (actionType == 0) 17 | { 18 | at.tempAttack += actionAmount; 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[운명의 전환] 부대 공격력 {1}% 증가", at.site, actionAmount); 21 | } 22 | else if (actionType == 1) 23 | { 24 | at.tempDefence -= actionAmount; 25 | if (UsingLog.usingLog == true) 26 | Console.WriteLine("- {0}[운명의 전환] 부대 방어력 {1}% 감소", at.site, actionAmount); 27 | } 28 | else if (actionType == 2) 29 | { 30 | at.tempDamageIncrease += actionAmount; 31 | if (UsingLog.usingLog == true) 32 | Console.WriteLine("- {0}[운명의 전환] 모든 피해 {1}% 증가", at.site, actionAmount); 33 | } 34 | else if (actionType == 3) 35 | { 36 | at.tempSpeedIncrease -= actionAmount; 37 | if (UsingLog.usingLog == true) 38 | Console.WriteLine("- {0}[운명의 전환] 이동속도 {1}% 감소", at.site, actionAmount); 39 | } 40 | } 41 | 42 | int actionType = 0; 43 | public override void AfterAction(CommanderBase at, CommanderBase df) 44 | { 45 | if (actionCount == 0) 46 | actionAmount = 0; 47 | if (actionCount <= 0) 48 | { 49 | Random random = new Random(); 50 | actionType = random.Next(0,4); 51 | actionAmount = (1 * Count); 52 | actionCount = 5; 53 | } 54 | actionCount--; 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/project.assets.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "targets": { 4 | "net6.0": {} 5 | }, 6 | "libraries": {}, 7 | "projectFileDependencyGroups": { 8 | "net6.0": [] 9 | }, 10 | "packageFolders": { 11 | "C:\\Users\\jcm\\.nuget\\packages\\": {} 12 | }, 13 | "project": { 14 | "version": "1.0.0", 15 | "restore": { 16 | "projectUniqueName": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj", 17 | "projectName": "RiseOfKingdoms", 18 | "projectPath": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj", 19 | "packagesPath": "C:\\Users\\jcm\\.nuget\\packages\\", 20 | "outputPath": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\obj\\", 21 | "projectStyle": "PackageReference", 22 | "configFilePaths": [ 23 | "C:\\Users\\jcm\\AppData\\Roaming\\NuGet\\NuGet.Config", 24 | "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" 25 | ], 26 | "originalTargetFrameworks": [ 27 | "net6.0" 28 | ], 29 | "sources": { 30 | "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, 31 | "https://api.nuget.org/v3/index.json": {} 32 | }, 33 | "frameworks": { 34 | "net6.0": { 35 | "targetAlias": "net6.0", 36 | "projectReferences": {} 37 | } 38 | }, 39 | "warningProperties": { 40 | "warnAsError": [ 41 | "NU1605" 42 | ] 43 | } 44 | }, 45 | "frameworks": { 46 | "net6.0": { 47 | "targetAlias": "net6.0", 48 | "imports": [ 49 | "net461", 50 | "net462", 51 | "net47", 52 | "net471", 53 | "net472", 54 | "net48" 55 | ], 56 | "assetTargetFallback": true, 57 | "warn": true, 58 | "frameworkReferences": { 59 | "Microsoft.NETCore.App": { 60 | "privateAssets": "all" 61 | } 62 | }, 63 | "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.101\\RuntimeIdentifierGraph.json" 64 | } 65 | } 66 | } 67 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/Calculate/CalcAttack.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using static RiseOfKingdoms.Common.MethodBase; 8 | 9 | namespace RiseOfKingdoms.Calculate 10 | { 11 | internal static class CalcAttack 12 | { 13 | public static void CalcActiveSkill(CommanderBase at, CommanderBase df) 14 | { 15 | if (at.rage >= at.maxRage) 16 | { 17 | at.active_skill_queue.Enqueue(at.active_skill[0]); 18 | at.active_skill_queue.Enqueue(new DelegateMethod(Skill.SkillBase.Dummy)); 19 | if (at.active_skill.Count > 1) // 부사령관 존재하면 20 | { 21 | at.active_skill_queue.Enqueue(at.active_skill[1]); 22 | at.active_skill_queue.Enqueue(new DelegateMethod(Skill.SkillBase.Dummy)); 23 | } 24 | at.rage = 0; 25 | } 26 | 27 | if (at.active_skill_queue.Count > 0) 28 | { 29 | DelegateMethod method = at.active_skill_queue.Peek(); 30 | if (method != Skill.SkillBase.Dummy && at.silenceTurn > 0) 31 | { 32 | // 침묵상태 아무것도 하지 않음. 33 | } 34 | else 35 | { 36 | method = at.active_skill_queue.Dequeue(); 37 | method(at, df); 38 | } 39 | } 40 | 41 | if (at.active_skill_bonus_list.Count > 0) 42 | { 43 | foreach (DelegateMethod method in at.active_skill_bonus_list[0]) 44 | { 45 | method(at, df); 46 | } 47 | at.active_skill_bonus_list.RemoveAt(0); 48 | } 49 | } 50 | public static void CalcNormalAttack(CommanderBase at, CommanderBase df) 51 | { 52 | if (at.forbiddenTurn <= 0) 53 | CalcDamage.CalcNormalDamage(at, df);// 금수상태 일반공격 하지않음. 54 | } 55 | public static void CalcCounterAttack(CommanderBase at, CommanderBase df) 56 | { 57 | CalcDamage.CalcCounterDamage(at, df); 58 | } 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/RiseOfKingdoms.csproj.nuget.dgspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "format": 1, 3 | "restore": { 4 | "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj": {} 5 | }, 6 | "projects": { 7 | "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj": { 8 | "version": "1.0.0", 9 | "restore": { 10 | "projectUniqueName": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj", 11 | "projectName": "RiseOfKingdoms", 12 | "projectPath": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\RiseOfKingdoms.csproj", 13 | "packagesPath": "C:\\Users\\jcm\\.nuget\\packages\\", 14 | "outputPath": "C:\\Users\\jcm\\Desktop\\git\\RiseOfKingdoms\\RiseOfKingdoms\\obj\\", 15 | "projectStyle": "PackageReference", 16 | "configFilePaths": [ 17 | "C:\\Users\\jcm\\AppData\\Roaming\\NuGet\\NuGet.Config", 18 | "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" 19 | ], 20 | "originalTargetFrameworks": [ 21 | "net6.0" 22 | ], 23 | "sources": { 24 | "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, 25 | "https://api.nuget.org/v3/index.json": {} 26 | }, 27 | "frameworks": { 28 | "net6.0": { 29 | "targetAlias": "net6.0", 30 | "projectReferences": {} 31 | } 32 | }, 33 | "warningProperties": { 34 | "warnAsError": [ 35 | "NU1605" 36 | ] 37 | } 38 | }, 39 | "frameworks": { 40 | "net6.0": { 41 | "targetAlias": "net6.0", 42 | "imports": [ 43 | "net461", 44 | "net462", 45 | "net47", 46 | "net471", 47 | "net472", 48 | "net48" 49 | ], 50 | "assetTargetFallback": true, 51 | "warn": true, 52 | "frameworkReferences": { 53 | "Microsoft.NETCore.App": { 54 | "privateAssets": "all" 55 | } 56 | }, 57 | "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.101\\RuntimeIdentifierGraph.json" 58 | } 59 | } 60 | } 61 | } 62 | } -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/Tiers.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Tier; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace RiseOfKingdoms.Common 9 | { 10 | internal class Tiers 11 | { 12 | public enum TierList { 보병 = 1, 기마병, 궁병, 삼병종, 13 | 한국궁병, 로마보병, 스페인기마병, 아라비아기마병, 브리튼궁병, 오스만궁병, 일본보병, 독일기병, 프랑스보병, 중국궁병, 비잔티움기마병, 바이킹보병 14 | }; 15 | 16 | public static Dictionary atkeyValuePairs = new Dictionary { 17 | { TierList.보병, new Base_Infantry() }, 18 | { TierList.기마병, new Base_Cavalry() }, 19 | { TierList.궁병, new Base_Archer() }, 20 | { TierList.삼병종, new Base_Mixed() }, 21 | { TierList.한국궁병, new Korea() }, 22 | { TierList.로마보병, new Rome() }, 23 | { TierList.스페인기마병, new Spain() }, 24 | { TierList.아라비아기마병, new Arabia() }, 25 | { TierList.브리튼궁병, new Britain() }, 26 | { TierList.오스만궁병, new Ottoman() }, 27 | { TierList.일본보병, new Japan() }, 28 | { TierList.독일기병, new Germany() }, 29 | { TierList.프랑스보병, new France() }, 30 | { TierList.중국궁병, new China() }, 31 | { TierList.비잔티움기마병, new Byzantium() }, 32 | { TierList.바이킹보병, new Viking() } 33 | }; 34 | public static Dictionary dfkeyValuePairs = new Dictionary { 35 | { TierList.보병, new Base_Infantry() }, 36 | { TierList.기마병, new Base_Cavalry() }, 37 | { TierList.궁병, new Base_Archer() }, 38 | { TierList.삼병종, new Base_Mixed() }, 39 | { TierList.한국궁병, new Korea() }, 40 | { TierList.로마보병, new Rome() }, 41 | { TierList.스페인기마병, new Spain() }, 42 | { TierList.아라비아기마병, new Arabia() }, 43 | { TierList.브리튼궁병, new Britain() }, 44 | { TierList.오스만궁병, new Ottoman() }, 45 | { TierList.일본보병, new Japan() }, 46 | { TierList.독일기병, new Germany() }, 47 | { TierList.프랑스보병, new France() }, 48 | { TierList.중국궁병, new China() }, 49 | { TierList.비잔티움기마병, new Byzantium() }, 50 | { TierList.바이킹보병, new Viking() } 51 | }; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/Minamoto_no_Yoshitsune.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Minamoto_no_Yoshitsune : SkillBase 13 | { 14 | 15 | double extraDamage; 16 | public override void Active(CommanderBase at, CommanderBase df) 17 | { 18 | // 1400계수. 75퍼확률로 추가피해 600계수 2초간 19 | if (UsingLog.usingLog == true) 20 | Console.Write("- {0}[경팔류]", at.site); 21 | extraDamage = CalcDamage.CalcActiveSkillDamage(at, df, 1400); 22 | Random random = new Random(); 23 | if (random.Next(0, 4) < 3) 24 | { 25 | extraDamage = CalcDamage.CalcActiveSkillDamage(at, df, 600, false); 26 | AddAfterSkillBonus(at, 1, 2, ActiveBonus); 27 | } 28 | at.isSkillUsed = true; 29 | } 30 | public void ActiveBonus(CommanderBase at, CommanderBase df) 31 | { 32 | if (UsingLog.usingLog == true) 33 | Console.Write("- {0}[경팔류]", at.site); 34 | CalcDamage.CalcAdditionalSkillDamage(df, extraDamage); 35 | } 36 | 37 | public override void Passive1Before(CommanderBase at, CommanderBase df) 38 | { 39 | } 40 | public override void Passive1After(CommanderBase at, CommanderBase df) 41 | { 42 | // 기마공 20퍼, 행속 10퍼 43 | } 44 | 45 | public override void Passive2Before(CommanderBase at, CommanderBase df) 46 | { 47 | } 48 | public override void Passive2After(CommanderBase at, CommanderBase df) 49 | { 50 | // 야만인피해 50퍼 51 | } 52 | 53 | public override void Passive3Before(CommanderBase at, CommanderBase df) 54 | { 55 | df.tempDamageDecrease -= actionAmount3; 56 | 57 | } 58 | public override void Passive3After(CommanderBase at, CommanderBase df) 59 | { 60 | // 일반공격시 10퍼확률로 3초간 대상부대 받는피해 30퍼증가. 5초에한번발동 61 | if (actionCount3 == 2) 62 | actionAmount3 = 0; 63 | 64 | Random random = new Random(); 65 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount3 <= 0) 66 | { 67 | if (UsingLog.usingLog == true) 68 | Console.WriteLine("- {0}[명장] 대상 부대 받는피해 30% 증가. 3초 지속", at.site); 69 | actionAmount3 = 30; 70 | actionCount3 = 5; 71 | } 72 | actionCount3--; 73 | 74 | } 75 | 76 | public override void NewBefore(CommanderBase at, CommanderBase df) 77 | { 78 | } 79 | public override void NewAfter(CommanderBase at, CommanderBase df) 80 | { 81 | } 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/Equipment.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Equip; 2 | using RiseOfKingdoms.Equip.Epic; 3 | using RiseOfKingdoms.Equip.Legendary; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | 10 | namespace RiseOfKingdoms.Common 11 | { 12 | internal class Equipment 13 | { 14 | public enum EquipmentList 15 | { 16 | 심판의반지 = 1, 심판의반지특, 샤이트의외침, 샤이트의외침특, 클라크의전투북, 클라크의전투북특, 모라의거미줄, 모라의거미줄특, 17 | 스콜라스의행운코인, 스콜라스의행운코인특, 분노의뿔, 분노의뿔특, 날카로운비수, 날카로운비수특, 18 | 고요한심판, 고요한심판특, None 19 | } 20 | public static Dictionary atkeyValuePairs = new Dictionary 21 | { 22 | { EquipmentList.심판의반지, new Ring_of_Doom() }, 23 | { EquipmentList.심판의반지특, new Ring_of_Doom() }, 24 | { EquipmentList.샤이트의외침, new Seths_Call() }, 25 | { EquipmentList.샤이트의외침특, new Seths_Call() }, 26 | { EquipmentList.클라크의전투북, new Karuaks_War_Drums() }, 27 | { EquipmentList.클라크의전투북특, new Karuaks_War_Drums() }, 28 | { EquipmentList.모라의거미줄, new Moras_Web() }, 29 | { EquipmentList.모라의거미줄특, new Moras_Web() }, 30 | { EquipmentList.스콜라스의행운코인, new Scolas_Lucky_Coin() }, 31 | { EquipmentList.스콜라스의행운코인특, new Scolas_Lucky_Coin() }, 32 | { EquipmentList.분노의뿔, new Horn_of_Fury() }, 33 | { EquipmentList.분노의뿔특, new Horn_of_Fury() }, 34 | { EquipmentList.날카로운비수, new Concealed_Dagger() }, 35 | { EquipmentList.날카로운비수특, new Concealed_Dagger() }, 36 | { EquipmentList.고요한심판, new Silent_Trial() }, 37 | { EquipmentList.고요한심판특, new Silent_Trial() }, 38 | { EquipmentList.None, new EquipmentBase() } 39 | }; 40 | public static Dictionary dfkeyValuePairs = new Dictionary 41 | { 42 | { EquipmentList.심판의반지, new Ring_of_Doom() }, 43 | { EquipmentList.심판의반지특, new Ring_of_Doom() }, 44 | { EquipmentList.샤이트의외침, new Seths_Call() }, 45 | { EquipmentList.샤이트의외침특, new Seths_Call() }, 46 | { EquipmentList.클라크의전투북, new Karuaks_War_Drums() }, 47 | { EquipmentList.클라크의전투북특, new Karuaks_War_Drums() }, 48 | { EquipmentList.모라의거미줄, new Moras_Web() }, 49 | { EquipmentList.모라의거미줄특, new Moras_Web() }, 50 | { EquipmentList.스콜라스의행운코인, new Scolas_Lucky_Coin() }, 51 | { EquipmentList.스콜라스의행운코인특, new Scolas_Lucky_Coin() }, 52 | { EquipmentList.분노의뿔, new Horn_of_Fury() }, 53 | { EquipmentList.분노의뿔특, new Horn_of_Fury() }, 54 | { EquipmentList.날카로운비수, new Concealed_Dagger() }, 55 | { EquipmentList.날카로운비수특, new Concealed_Dagger() }, 56 | { EquipmentList.고요한심판, new Silent_Trial() }, 57 | { EquipmentList.고요한심판특, new Silent_Trial() }, 58 | { EquipmentList.None, new EquipmentBase() } 59 | }; 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/SkillBase.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using RiseOfKingdoms.Common; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace RiseOfKingdoms.Skill 10 | { 11 | internal class SkillBase : MethodBase 12 | { 13 | public override void Init(CommanderBase bs, bool isFirst = true, int cnt = 0) 14 | { 15 | DelegateMethod Passive1Before = new DelegateMethod(this.Passive1Before); 16 | DelegateMethod Passive2Before = new DelegateMethod(this.Passive2Before); 17 | DelegateMethod Passive3Before = new DelegateMethod(this.Passive3Before); 18 | DelegateMethod NewBefore = new DelegateMethod(this.NewBefore); 19 | DelegateMethod ActiveBefore = new DelegateMethod(this.ActiveBefore); 20 | DelegateMethod Active = new DelegateMethod(this.Active); 21 | DelegateMethod Passive1After = new DelegateMethod(this.Passive1After); 22 | DelegateMethod Passive2After = new DelegateMethod(this.Passive2After); 23 | DelegateMethod Passive3After = new DelegateMethod(this.Passive3After); 24 | DelegateMethod NewAfter = new DelegateMethod(this.NewAfter); 25 | bs.before_skill.Add(Passive1Before); 26 | bs.before_skill.Add(Passive2Before); 27 | bs.before_skill.Add(Passive3Before); 28 | bs.before_skill.Add(NewBefore); 29 | bs.before_skill.Add(ActiveBefore); 30 | bs.active_skill.Add(Active); 31 | bs.after_skill.Add(Passive1After); 32 | bs.after_skill.Add(Passive2After); 33 | bs.after_skill.Add(Passive3After); 34 | bs.after_skill.Add(NewAfter); 35 | } 36 | 37 | public virtual void ActiveBefore(CommanderBase at, CommanderBase df) { } 38 | protected int actionCount0 = 0; 39 | protected double actionAmount0 = 0; 40 | public virtual void Active(CommanderBase at, CommanderBase df) { } 41 | 42 | protected int actionCount1 = 0; 43 | protected double actionAmount1 = 0; 44 | public virtual void Passive1Before(CommanderBase at, CommanderBase df) { } 45 | public virtual void Passive1After(CommanderBase at, CommanderBase df) { } 46 | 47 | protected int actionCount2 = 0; 48 | protected double actionAmount2 = 0; 49 | public virtual void Passive2Before(CommanderBase at, CommanderBase df) { } 50 | public virtual void Passive2After(CommanderBase at, CommanderBase df) { } 51 | 52 | protected int actionCount3 = 0; 53 | protected double actionAmount3 = 0; 54 | public virtual void Passive3Before(CommanderBase at, CommanderBase df) { } 55 | public virtual void Passive3After(CommanderBase at, CommanderBase df) { } 56 | 57 | protected int actionCountNew = 0; 58 | protected double actionAmountNew = 0; 59 | public virtual void NewBefore(CommanderBase at, CommanderBase df) { } 60 | public virtual void NewAfter(CommanderBase at, CommanderBase df) { } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /RiseOfKingdoms/obj/Debug/net6.0/RiseOfKingdoms.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.exe 2 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.deps.json 3 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.runtimeconfig.json 4 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.dll 5 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\ref\RiseOfKingdoms.dll 6 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.pdb 7 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.csproj.AssemblyReference.cache 8 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.GeneratedMSBuildEditorConfig.editorconfig 9 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.AssemblyInfoInputs.cache 10 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.AssemblyInfo.cs 11 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.csproj.CoreCompileInputs.cache 12 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.dll 13 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\ref\RiseOfKingdoms.dll 14 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.pdb 15 | C:\Users\jcm\Desktop\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.genruntimeconfig.cache 16 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.csproj.AssemblyReference.cache 17 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.GeneratedMSBuildEditorConfig.editorconfig 18 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.AssemblyInfoInputs.cache 19 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.AssemblyInfo.cs 20 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.csproj.CoreCompileInputs.cache 21 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.dll 22 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\ref\RiseOfKingdoms.dll 23 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.pdb 24 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.exe 25 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.deps.json 26 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.runtimeconfig.json 27 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.dll 28 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\ref\RiseOfKingdoms.dll 29 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\bin\Debug\net6.0\RiseOfKingdoms.pdb 30 | C:\Users\jcm\Desktop\git\RiseOfKingdoms\RiseOfKingdoms\obj\Debug\net6.0\RiseOfKingdoms.genruntimeconfig.cache 31 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Common/Commanders.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using RiseOfKingdoms.Skill; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace RiseOfKingdoms.Common 10 | { 11 | internal class Commanders 12 | { 13 | public enum CommanderList { 14 | 명사수 = 1, 아마니토레, 아르테미시아, 길가메시, 15 | 혼다타다카츠, 이순신, 측천무후, 테오도라, 16 | 제노비아, 아에티우스, 스키피오, 17 | 용기병, 항우, 알렉산드르넵스키, 윌리엄1세, 미나모토요시쓰네, 찬드라굽타, 베르트랑뒤게틀랭, 야드비가, 18 | None, 19 | }; 20 | public static Dictionary atkeyValuePairs = new Dictionary { 21 | { CommanderList.명사수, new Markswoman() }, 22 | { CommanderList.용기병, new Dragon_Lancer() }, 23 | { CommanderList.항우, new Xiang_Yu() }, 24 | { CommanderList.알렉산드르넵스키, new Alexander_Nevsky()}, 25 | { CommanderList.윌리엄1세, new William()}, 26 | { CommanderList.혼다타다카츠, new Honda_Tadakatsu()}, 27 | { CommanderList.미나모토요시쓰네, new Minamoto_no_Yoshitsune()}, 28 | { CommanderList.찬드라굽타, new Chandragupta_Maurya()}, 29 | { CommanderList.베르트랑뒤게틀랭, new Bertrand_du_Guesclin()}, 30 | { CommanderList.이순신, new Yi_Sun_Sin()}, 31 | { CommanderList.야드비가, new Jadwiga()}, 32 | { CommanderList.제노비아, new Zenobia()}, 33 | { CommanderList.아에티우스, new Aetius()}, 34 | { CommanderList.스키피오, new Scipio()}, 35 | { CommanderList.측천무후, new Wu_Zetian()}, 36 | { CommanderList.아마니토레, new Amanitore()}, 37 | { CommanderList.아르테미시아, new Artemisia()}, 38 | { CommanderList.테오도라, new Theodora()}, 39 | { CommanderList.길가메시, new Gilgamesh()}, 40 | { CommanderList.None, new SkillBase() } 41 | }; 42 | public static Dictionary dfkeyValuePairs = new Dictionary { 43 | { CommanderList.명사수, new Markswoman() }, 44 | { CommanderList.용기병, new Dragon_Lancer() }, 45 | { CommanderList.항우, new Xiang_Yu() }, 46 | { CommanderList.알렉산드르넵스키, new Alexander_Nevsky()}, 47 | { CommanderList.윌리엄1세, new William()}, 48 | { CommanderList.혼다타다카츠, new Honda_Tadakatsu()}, 49 | { CommanderList.미나모토요시쓰네, new Minamoto_no_Yoshitsune()}, 50 | { CommanderList.찬드라굽타, new Chandragupta_Maurya()}, 51 | { CommanderList.베르트랑뒤게틀랭, new Bertrand_du_Guesclin()}, 52 | { CommanderList.이순신, new Yi_Sun_Sin()}, 53 | { CommanderList.야드비가, new Jadwiga()}, 54 | { CommanderList.제노비아, new Zenobia()}, 55 | { CommanderList.아에티우스, new Aetius()}, 56 | { CommanderList.스키피오, new Scipio()}, 57 | { CommanderList.측천무후, new Wu_Zetian()}, 58 | { CommanderList.아마니토레, new Amanitore()}, 59 | { CommanderList.아르테미시아, new Artemisia()}, 60 | { CommanderList.테오도라, new Theodora()}, 61 | { CommanderList.길가메시, new Gilgamesh()}, 62 | { CommanderList.None, new SkillBase() } 63 | }; 64 | 65 | 66 | } 67 | } 68 | 69 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/Alexander_Nevsky.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Alexander_Nevsky : SkillBase 13 | { 14 | 15 | double extraDamage; 16 | public override void Active(CommanderBase at, CommanderBase df) 17 | { 18 | // 2300 계수 스킬 19 | if (UsingLog.usingLog == true) 20 | Console.Write("- {0}[페이푸스 호수]", at.site); 21 | CalcDamage.CalcActiveSkillDamage(at, df, 2300); 22 | at.isSkillUsed = true; 23 | } 24 | 25 | 26 | public override void Passive1Before(CommanderBase at, CommanderBase df) 27 | { 28 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 29 | actionAmount1 = 20; 30 | at.tempHealth += actionAmount1; 31 | } 32 | public override void Passive1After(CommanderBase at, CommanderBase df) 33 | { 34 | // 기병공 20증가, 연맹영토 밖에서 기병생 20 증가. 35 | } 36 | 37 | public override void Passive2Before(CommanderBase at, CommanderBase df) 38 | { 39 | } 40 | public override void Passive2After(CommanderBase at, CommanderBase df) 41 | { 42 | // 기병방 20증가, 대상이 협공일시 모든피해 10증가. 받는 모든피해 5감소. 43 | } 44 | 45 | double actionAmount3_2 = 0; 46 | public override void Passive3Before(CommanderBase at, CommanderBase df) 47 | { 48 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 49 | { 50 | actionAmount3 = 25; 51 | } 52 | at.tempSkillDamageIncrease += actionAmount3; 53 | at.tempSkillDamageIncrease += actionAmount3_2; 54 | 55 | } 56 | public override void Passive3After(CommanderBase at, CommanderBase df) 57 | { 58 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 59 | { 60 | // 기마병이면 스킬피해 25증가. 스킬시전후 스킬피해 35증가. 4초지속 5초에 한번 발동 61 | if (actionCount3 == 1) 62 | actionAmount3_2 = 0; 63 | 64 | if (at.isSkillUsed && actionCount3 <= 0) 65 | { 66 | if (UsingLog.usingLog == true) 67 | Console.WriteLine("- {0}[루스 철기병] 스킬시전 후 스킬피해 35% 증가. 4초 지속", at.site); 68 | actionAmount3_2 = 35; 69 | actionCount3 = 5; 70 | } 71 | actionCount3--; 72 | } 73 | } 74 | 75 | public override void NewBefore(CommanderBase at, CommanderBase df) 76 | { 77 | at.tempHealth += actionAmountNew; 78 | } 79 | public override void NewAfter(CommanderBase at, CommanderBase df) 80 | { 81 | // 일반피해 5퍼증가. 공격받을때 10퍼 확률로 기마생명 30증가. 3초지속 5초에 한번 발동 82 | if (actionCountNew == 2) 83 | actionAmountNew = 0; 84 | 85 | Random random = new Random(); 86 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCountNew <= 0) 87 | { 88 | if (UsingLog.usingLog == true) 89 | Console.WriteLine("- {0}[겨울의 폭풍] 기마병 생명력 30% 증가. 3초 지속", at.site); 90 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 91 | actionAmountNew = 30; 92 | actionCountNew = 5; 93 | } 94 | actionCountNew--; 95 | } 96 | } 97 | } 98 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Leadership/Theodora.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Theodora : SkillBase 13 | { 14 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | double extraDamage; 19 | public override void Active(CommanderBase at, CommanderBase df) 20 | { 21 | // 피해계수 1700 스킬시전시 디버프 정화 22 | if (UsingLog.usingLog == true) 23 | Console.Write("- {0}[비잔틴 황후]", at.site); 24 | CalcDamage.CalcActiveSkillDamage(at, df, 1700); 25 | at.isSkillUsed = true; 26 | if (UsingLog.usingLog == true) 27 | Console.WriteLine("- {0}[비잔틴 황후] 모든 디버프 제거", at.site); 28 | // 정화 구현해야함. 29 | } 30 | 31 | 32 | public override void Passive1Before(CommanderBase at, CommanderBase df) 33 | { 34 | if (at.battleState == CommanderBase.BattleState.Garrison) 35 | { 36 | actionAmount1 = 10; 37 | at.tempDefence += actionAmount1; 38 | if (df.battleState == CommanderBase.BattleState.Conquering) 39 | { 40 | actionAmount1 = 10; 41 | at.tempDamageDecrease += actionAmount1; 42 | } 43 | } 44 | 45 | 46 | } 47 | public override void Passive1After(CommanderBase at, CommanderBase df) 48 | { 49 | // 주둔시 방어력 10퍼증가 집결부대에게 받는피해 10퍼감소 50 | } 51 | 52 | public override void Passive2Before(CommanderBase at, CommanderBase df) 53 | { 54 | at.tempDamageIncrease += actionAmount2; 55 | } 56 | public override void Passive2After(CommanderBase at, CommanderBase df) 57 | { 58 | // 부대 공격력 10퍼증가 병력 50퍼 이상일때 피해 10퍼증가 59 | if (at.troop * 2 >= at.maxTroop) 60 | { 61 | if (UsingLog.usingLog == true) 62 | Console.WriteLine("- {0}[공동 통치자] 모든 피해 10% 증가", at.site); 63 | actionAmount2 = 10; 64 | } 65 | } 66 | 67 | public override void Passive3Before(CommanderBase at, CommanderBase df) 68 | { 69 | at.tempDamageIncrease += actionAmount3; 70 | 71 | } 72 | public override void Passive3After(CommanderBase at, CommanderBase df) 73 | { 74 | // 주둔시 공격받으면 10퍼확률로 피해증가 40퍼 3초지속 75 | if (at.battleState == CommanderBase.BattleState.Garrison) 76 | { 77 | if (actionCount3 == 0) 78 | actionAmount3 = 0; 79 | 80 | Random random = new Random(); 81 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0) 82 | { 83 | if (UsingLog.usingLog == true) 84 | Console.WriteLine("- {0}[황실의 권력] 모든 피해 40% 증가. 3초 지속", at.site); 85 | actionAmount3 = 40; 86 | actionCount3 = 3; 87 | } 88 | actionCount3--; 89 | } 90 | } 91 | 92 | public override void NewBefore(CommanderBase at, CommanderBase df) 93 | { 94 | } 95 | public override void NewAfter(CommanderBase at, CommanderBase df) 96 | { 97 | } 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Leadership/Wu_Zetian.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Wu_Zetian : SkillBase 13 | { 14 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 15 | { 16 | } 17 | 18 | public override void Active(CommanderBase at, CommanderBase df) 19 | { 20 | // 피해계수 1000, 치료 500계수 21 | if (UsingLog.usingLog == true) 22 | Console.Write("- {0}[용동봉경]", at.site); 23 | CalcDamage.CalcActiveSkillDamage(at, df, 1000); 24 | 25 | if (UsingLog.usingLog == true) 26 | Console.Write("- {0}[용동봉경]", at.site); 27 | CalcDamage.CalcHealingEffect(at, df, 500); 28 | 29 | at.isSkillUsed = true; 30 | } 31 | 32 | 33 | public override void Passive1Before(CommanderBase at, CommanderBase df) 34 | { 35 | if (at.battleState == CommanderBase.BattleState.Garrison) 36 | { 37 | actionAmount1 = 10; 38 | at.tempDamageIncrease += actionAmount1; 39 | } 40 | if (df.battleState == CommanderBase.BattleState.Conquering) 41 | { 42 | actionAmount1 = 10; 43 | at.tempDamageIncrease += actionAmount1; 44 | } 45 | } 46 | public override void Passive1After(CommanderBase at, CommanderBase df) 47 | { 48 | // 거점주둔시 모든피해 10퍼증가. 집결부대에 피해 10퍼증가. 49 | } 50 | 51 | public override void Passive2Before(CommanderBase at, CommanderBase df) 52 | { 53 | } 54 | public override void Passive2After(CommanderBase at, CommanderBase df) 55 | { 56 | // 통솔부대 방어생명 10퍼증가. 공격당할시 10퍼확률로 적부대 2초간 침묵 57 | Random random = new Random(); 58 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0) 59 | { 60 | if (UsingLog.usingLog == true) 61 | Console.WriteLine("- {0}[붉은 눈물] 대상 부대 2초간 침묵", at.site); 62 | AddAfterSkillBonus(at, 0, 1, Passive2Bonus); 63 | } 64 | } 65 | public void Passive2Bonus(CommanderBase at, CommanderBase df) 66 | { 67 | if (df.silenceTurn <= 1) 68 | df.silenceTurn = 3; 69 | } 70 | 71 | double actionAmount3_2 = 0; 72 | public override void Passive3Before(CommanderBase at, CommanderBase df) 73 | { 74 | if (at.battleState == CommanderBase.BattleState.Garrison) 75 | { 76 | actionAmount3 = 15; 77 | at.tempSkillDamageDecrease += actionAmount3; 78 | } 79 | at.tempDefence += actionAmount3_2; 80 | } 81 | public override void Passive3After(CommanderBase at, CommanderBase df) 82 | { 83 | // 거점주둔시 받는스킬피해 15퍼감소, 스킬피해받을때 50퍼확률로 3초간 방어 20증가 84 | if (at.battleState == CommanderBase.BattleState.Garrison) 85 | { 86 | if (actionCount3 == 0) 87 | actionAmount3_2 = 0; 88 | 89 | Random random = new Random(); 90 | if (at.skillDamage > 0 && random.Next(0, 2) == 0) 91 | { 92 | if (UsingLog.usingLog == true) 93 | Console.WriteLine("- {0}[무자 비석] 부대 방어력 20% 증가. 3초 지속", at.site); 94 | actionAmount3_2 = 20; 95 | actionCount3 = 3; 96 | } 97 | actionCount3--; 98 | } 99 | } 100 | 101 | public override void NewBefore(CommanderBase at, CommanderBase df) 102 | { 103 | } 104 | public override void NewAfter(CommanderBase at, CommanderBase df) 105 | { 106 | // 반격피해 20퍼증가. 공격받을때 10퍼확률로 피해계수 500 107 | Random random = new Random(); 108 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0) 109 | { 110 | if (UsingLog.usingLog == true) 111 | Console.Write("- {0}[여왕 만세]", at.site); 112 | CalcDamage.CalcActiveSkillDamage(at, df, 500); 113 | } 114 | } 115 | } 116 | } 117 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/William.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class William : SkillBase 13 | { 14 | bool actionBool = false; 15 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 16 | { 17 | df.tempSkillDamageIncreaseCancel = actionBool; 18 | 19 | actionCount0--; 20 | 21 | if (actionCount0 == 0) 22 | { 23 | actionBool = false; 24 | } 25 | } 26 | 27 | bool togle = true; 28 | public override void Active(CommanderBase at, CommanderBase df) 29 | { 30 | // 1500 계수 스킬 31 | if (UsingLog.usingLog == true) 32 | Console.Write("- {0}[혈통의 비밀]", at.site); 33 | CalcDamage.CalcActiveSkillDamage(at, df, 1500); 34 | 35 | at.isSkillUsed = true; 36 | togle = !togle; 37 | 38 | if (UsingLog.usingLog == true) 39 | Console.WriteLine("- {0}[혈통의 비밀] 대상 부대 스킬피해 증가 버프 금지 행군속도 30% 감소. 3초 지속", at.site); 40 | AddBeforeSkillBonus(at, 3, ActiveBonusStart, ActiveBonusEnd); 41 | actionBool = true; 42 | actionCount0 = 3; 43 | } 44 | 45 | public void ActiveBonusStart(CommanderBase at, CommanderBase df) 46 | { 47 | if (df.activeSpeedIncrease_dbf < 30) 48 | { 49 | df.activeSpeedIncrease_dbf = 30; 50 | } 51 | } 52 | 53 | public void ActiveBonusEnd(CommanderBase at, CommanderBase df) 54 | { 55 | if (df.activeSpeedIncrease_dbf == 30) 56 | { 57 | df.activeSpeedIncrease_dbf = 0; 58 | } 59 | } 60 | 61 | 62 | public override void Passive1Before(CommanderBase at, CommanderBase df) 63 | { 64 | at.tempDamageIncrease += actionAmount1; 65 | } 66 | public override void Passive1After(CommanderBase at, CommanderBase df) 67 | { 68 | // 기마공 20퍼 기마이속 15퍼 연맹영토밖에서 모든피해 10퍼증가 69 | if (at.battleState == CommanderBase.BattleState.Field || at.battleState == CommanderBase.BattleState.Conquering) 70 | actionAmount1 = 10; 71 | } 72 | 73 | public override void Passive2Before(CommanderBase at, CommanderBase df) 74 | { 75 | at.tempAttack += actionAmount2; 76 | } 77 | public override void Passive2After(CommanderBase at, CommanderBase df) 78 | { 79 | // 필드에서 기마공 30퍼증가 일반공격시 10퍼확률로 1000계수데미지. 80 | if (at.battleState == CommanderBase.BattleState.Field || at.battleState == CommanderBase.BattleState.Conquering) 81 | { 82 | actionAmount2 = 30; 83 | Random random = new Random(); 84 | if (random.Next(0, 10) == 0) 85 | { 86 | if (UsingLog.usingLog == true) 87 | Console.Write("- {0}[노르만 정복]", at.site); 88 | CalcDamage.CalcActiveSkillDamage(at, df, 1000); 89 | } 90 | } 91 | } 92 | 93 | bool togle2 = true; 94 | public override void Passive3Before(CommanderBase at, CommanderBase df) 95 | { 96 | at.tempDefence += actionAmount3; 97 | 98 | } 99 | public override void Passive3After(CommanderBase at, CommanderBase df) 100 | { 101 | if (actionCount3 == 0) 102 | actionAmount3 = 0; 103 | 104 | // 액티브스킬명중시 부대방어력 20퍼증가 3초지속. 105 | if (togle != togle2) 106 | { 107 | if (UsingLog.usingLog == true) 108 | Console.WriteLine("- {0}[북방의 재난] 부대 방어력 20% 증가. 3초 지속", at.site); 109 | togle2 = togle; 110 | actionAmount3 = 20; 111 | actionCount3 = 3; 112 | } 113 | 114 | actionCount3--; 115 | } 116 | 117 | public override void NewBefore(CommanderBase at, CommanderBase df) 118 | { 119 | } 120 | public override void NewAfter(CommanderBase at, CommanderBase df) 121 | { 122 | } 123 | } 124 | } 125 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Infantry/Scipio.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Scipio : SkillBase 13 | { 14 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 15 | { 16 | df.tempHealth -= actionAmount0; 17 | 18 | actionCount0--; 19 | if (actionCount0 == 0) 20 | actionAmount0 = 0; 21 | } 22 | 23 | public override void Active(CommanderBase at, CommanderBase df) 24 | { 25 | // 계수 2000 생명력 30퍼감소 3초 26 | if (UsingLog.usingLog == true) 27 | Console.Write("- {0}[무적의 힘]", at.site); 28 | CalcDamage.CalcActiveSkillDamage(at, df, 2000); 29 | at.isSkillUsed = true; 30 | 31 | if (UsingLog.usingLog == true) 32 | Console.WriteLine("- {0}[무적의 힘] 대상 부대 생명력 {1)%감소, {2}초 지속", at.site, actionAmount0, actionCount0); 33 | actionAmount0 = 30; 34 | actionCount0 = 3; 35 | } 36 | 37 | public override void Passive1Before(CommanderBase at, CommanderBase df) 38 | { 39 | 40 | } 41 | public override void Passive1After(CommanderBase at, CommanderBase df) 42 | { 43 | // 보병공40증가 사방 정복 44 | } 45 | 46 | public override void Passive2Before(CommanderBase at, CommanderBase df) 47 | { 48 | if (df.battleState != CommanderBase.BattleState.Garrison) 49 | { 50 | actionAmount2 = 20; 51 | at.tempHealth += actionAmount2; 52 | } 53 | } 54 | double actionAmount2_2 = 0; 55 | public override void Passive2After(CommanderBase at, CommanderBase df) 56 | { 57 | // 대상이 부대이면 보병생명력 20퍼 증가 공격시 10초확률로 3초추가피해(500계수) 8초에한번발동 58 | if (df.battleState != CommanderBase.BattleState.Garrison) 59 | { 60 | Random random = new Random(); 61 | if (random.Next(0, 10) < 1 && actionCount2 <= 0) 62 | { 63 | actionAmount2_2 = CalcDamage.CalcActiveSkillDamage(at, df, 500, false); 64 | AddAfterSkillBonus(at, 1, 3, Passive2Bonus); 65 | actionCount2 = 8; 66 | } 67 | actionCount2--; 68 | } 69 | } 70 | public void Passive2Bonus(CommanderBase at, CommanderBase df) 71 | { 72 | if (UsingLog.usingLog == true) 73 | Console.Write("- {0}[압제의 전략]", at.site); 74 | CalcDamage.CalcAdditionalSkillDamage(df, actionAmount2_2); 75 | } 76 | 77 | public override void Passive3Before(CommanderBase at, CommanderBase df) 78 | { 79 | } 80 | public override void Passive3After(CommanderBase at, CommanderBase df) 81 | { 82 | Random random = new Random(); 83 | // 필드에서 스킬피해입으면 50퍼확률로 30퍼감소 동시에 3초실드 500계수 8초에한번발동 84 | if (at.skillDamage > 0 && random.Next(0,2) == 0 && at.battleState != CommanderBase.BattleState.Garrison && actionCount3 <= 0) 85 | { 86 | if (UsingLog.usingLog == true) 87 | Console.WriteLine("- {0}[갑주 진형] 이번 피해 30%감소", at.site); 88 | at.skillDamage *= 0.7; 89 | 90 | actionAmount3 = 500; 91 | if (UsingLog.usingLog == true) 92 | Console.Write("- {0}[갑주 진형]", at.site); 93 | CalcDamage.CalcShieldEffect(at, actionAmount3, 3); 94 | actionCount3 = 8; 95 | } 96 | actionCount3--; 97 | } 98 | 99 | public override void NewBefore(CommanderBase at, CommanderBase df) 100 | { 101 | } 102 | public override void NewAfter(CommanderBase at, CommanderBase df) 103 | { 104 | //스킬피해 10퍼증가 대상침묵이면 분노회복 30퍼증가 불타는 분노 105 | if (df.silenceTurn > 0) 106 | { 107 | actionAmountNew = 30; 108 | if (UsingLog.usingLog == true) 109 | Console.WriteLine("- {0}[불타는 분노] 분노 회복 속도 {1}%증가", at.site, actionAmountNew); 110 | at.ragePlus *= 1.3; 111 | } 112 | } 113 | } 114 | } 115 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/Xiang_Yu.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using static RiseOfKingdoms.Commander.CommanderBase; 9 | using RiseOfKingdoms.Common; 10 | 11 | namespace RiseOfKingdoms.Skill 12 | { 13 | internal class Xiang_Yu : SkillBase 14 | { 15 | public override void Init(CommanderBase bs, bool isFirst, int cnt) 16 | { 17 | base.Init(bs, isFirst); 18 | if (isFirst == true) 19 | bs.maxRage -= 150; 20 | else 21 | bs.maxRage -= 50; 22 | } 23 | 24 | bool togle = true; 25 | public override void Active(CommanderBase at, CommanderBase df) 26 | { 27 | // 1700 계수 스킬 28 | if (UsingLog.usingLog == true) 29 | Console.Write("- {0}[패왕의 용기]", at.site); 30 | CalcDamage.CalcActiveSkillDamage(at, df, 1700); 31 | 32 | at.isSkillUsed = true; 33 | togle = !togle; 34 | 35 | if (UsingLog.usingLog == true) 36 | Console.WriteLine("- {0}[패왕의 용기] 대상 부대 방어력 30% 감소. 3초 지속", at.site); 37 | // 방깍 3초 38 | AddBeforeSkillBonus(at, 3, ActiveBonusStart, ActiveBonusEnd); 39 | } 40 | 41 | public void ActiveBonusStart(CommanderBase at, CommanderBase df) 42 | { 43 | if (df.activeDefence_dbf < 30) 44 | { 45 | df.activeDefence_dbf = 30; 46 | } 47 | } 48 | 49 | public void ActiveBonusEnd(CommanderBase at, CommanderBase df) 50 | { 51 | if (df.activeDefence_dbf == 30) 52 | { 53 | df.activeDefence_dbf = 0; 54 | } 55 | } 56 | 57 | public override void Passive1Before(CommanderBase at, CommanderBase df) 58 | { 59 | } 60 | public override void Passive1After(CommanderBase at, CommanderBase df) 61 | { 62 | // 기병공 40 증가 63 | } 64 | 65 | public override void Passive2Before(CommanderBase at, CommanderBase df) 66 | { 67 | if (at.battleState == BattleState.Conquering) 68 | { 69 | actionAmount2 = 5; 70 | } 71 | at.tempDamageIncrease += actionAmount2; 72 | } 73 | public override void Passive2After(CommanderBase at, CommanderBase df) 74 | { 75 | if (at.battleState == BattleState.Conquering) 76 | { 77 | // 공성시 데미지 5퍼증가, 10퍼확률 400계수 딜. 3초에 한번 발동 78 | Random random = new Random(); 79 | if (random.Next(0, 10) == 0 && actionCount2 <= 0) 80 | { 81 | if (UsingLog.usingLog == true) 82 | Console.Write("- {0}[천하난무]", at.site); 83 | CalcDamage.CalcActiveSkillDamage(at, df, 400); 84 | actionCount2 = 3; 85 | } 86 | actionCount2--; 87 | } 88 | } 89 | 90 | bool togle2 = true; 91 | public override void Passive3Before(CommanderBase at, CommanderBase df) 92 | { 93 | at.tempDamageIncrease += actionAmount3; 94 | } 95 | public override void Passive3After(CommanderBase at, CommanderBase df) 96 | { 97 | if (actionCount3 == 0) 98 | actionAmount3 = 0; 99 | 100 | // 분노 50 감소, 스킬시전시 기병 데미지 5퍼 증가 10초지속 6회 중복 101 | if (togle != togle2) 102 | { 103 | togle2 = togle; 104 | 105 | if (at.armyType == ArmyType.Cavalry) 106 | { 107 | actionAmount3 += 5; 108 | actionAmount3 = Math.Min(30, actionAmount3); 109 | } 110 | else if (at.armyType == ArmyType.Mixed) 111 | { 112 | actionAmount3 += (5 / 3); 113 | actionAmount3 = Math.Min(10, actionAmount3); 114 | } 115 | if (UsingLog.usingLog == true) 116 | Console.WriteLine("- {0}[쾌전상승] 기마병 피해 {1}% 증가", at.site, actionAmount3); 117 | 118 | actionCount3 = 10; 119 | } 120 | 121 | actionCount3--; 122 | } 123 | 124 | public override void NewBefore(CommanderBase at, CommanderBase df) 125 | { 126 | } 127 | public override void NewAfter(CommanderBase at, CommanderBase df) 128 | { 129 | // 스킬데미지 10퍼 증가. 2턴이상 분노획득시 스킬데미지 10퍼 증가 3초. 5초에 한번 발동 130 | } 131 | } 132 | } 133 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Infantry/Zenobia.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Zenobia : SkillBase 13 | { 14 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 15 | { 16 | at.tempHealth += actionAmount0; 17 | 18 | actionCount0--; 19 | if (actionCount0 == 0) 20 | actionAmount0 = 0; 21 | } 22 | 23 | public override void Active(CommanderBase at, CommanderBase df) 24 | { 25 | // 주변잔여병력퍼센트 가장낮은 한 아군부대(통솔부대포함)을 치료하며(300계수) 26 | // 다음1턴간 통솔부대를 추가로 치료합니다(계수1100) 27 | // 치료된 부대는 2초간 생명력이 지속적으로 50퍼 증가하며 입히는 모든 피해 30퍼 증가 28 | if (UsingLog.usingLog == true) 29 | Console.Write("- {0}[팔미라 여왕]", at.site); 30 | CalcDamage.CalcHealingEffect(at, df, 300); 31 | at.isSkillUsed = true; 32 | AddAfterSkillBonus(at, 1, 1, ActiveBonus); 33 | if (UsingLog.usingLog == true) 34 | Console.WriteLine("- {0}[팔미라 여왕] 치료된 부대 생명력 50% 증가 모든 피해 30% 증가. 2초 지속", at.site); 35 | 36 | AddBeforeSkillBonus(at, 2, ActiveBonusStart, ActiveBonusEnd); 37 | 38 | actionAmount0 = 50; 39 | actionCount0 = 2; 40 | } 41 | public void ActiveBonus(CommanderBase at, CommanderBase df) 42 | { 43 | if (UsingLog.usingLog == true) 44 | Console.Write("- {0}[팔미라 여왕]", at.site); 45 | CalcDamage.CalcHealingEffect(at, df, 1100); 46 | } 47 | 48 | public void ActiveBonusStart(CommanderBase at, CommanderBase df) 49 | { 50 | if (at.activeDamageIncrease_bf < 30) 51 | { 52 | at.activeDamageIncrease_bf = 30; 53 | } 54 | } 55 | 56 | public void ActiveBonusEnd(CommanderBase at, CommanderBase df) 57 | { 58 | if (at.activeDamageIncrease_bf == 30) 59 | { 60 | at.activeDamageIncrease_bf = 0; 61 | } 62 | } 63 | 64 | 65 | 66 | public override void Passive1Before(CommanderBase at, CommanderBase df) 67 | { 68 | if (at.battleState == CommanderBase.BattleState.Garrison) 69 | { 70 | actionAmount1 = 15; 71 | at.tempNormalDamageDecrease += actionAmount1; 72 | at.tempNormalDamageIncrease += actionAmount1; 73 | } 74 | } 75 | public override void Passive1After(CommanderBase at, CommanderBase df) 76 | { 77 | // 거점방어시 일반공격피해 15퍼감소, 일반공격피해 15퍼증가 78 | } 79 | 80 | public override void Passive2Before(CommanderBase at, CommanderBase df) 81 | { 82 | if (df.battleState == CommanderBase.BattleState.Conquering) 83 | { 84 | actionAmount2 = 10; 85 | at.tempDamageIncrease += actionAmount2; 86 | } 87 | } 88 | public override void Passive2After(CommanderBase at, CommanderBase df) 89 | { 90 | // 보병생20 공 20증가. 집결부대에 피해 10퍼증가 91 | } 92 | 93 | public override void Passive3Before(CommanderBase at, CommanderBase df) 94 | { 95 | } 96 | public override void Passive3After(CommanderBase at, CommanderBase df) 97 | { 98 | Random random = new Random(); 99 | // 주둔중 공격시 10퍼확률로 대상부대에게 초당피해(600계수)3초지속 5초에한번발동 100 | if (random.Next(0,10) == 0 && at.battleState == CommanderBase.BattleState.Garrison && df.normalAttackDamage > 0 && actionCount3 <= 0) 101 | { 102 | actionAmount3 = 600; 103 | if (UsingLog.usingLog == true) 104 | Console.Write("- {0}[다원의 통치]", at.site); 105 | CalcDamage.CalcActiveSkillDamage(at, df, actionAmount3); 106 | AddAfterSkillBonus(at, 0, 2, Passive3Bonus); 107 | actionCount3 = 5; 108 | } 109 | actionCount3--; 110 | } 111 | public void Passive3Bonus(CommanderBase at, CommanderBase df) 112 | { 113 | if (UsingLog.usingLog == true) 114 | Console.Write("- {0}[다원의 통치]", at.site); 115 | CalcDamage.CalcActiveSkillDamage(at, df, actionAmount3); 116 | } 117 | 118 | public override void NewBefore(CommanderBase at, CommanderBase df) 119 | { 120 | } 121 | public override void NewAfter(CommanderBase at, CommanderBase df) 122 | { 123 | } 124 | } 125 | } 126 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Leadership/Honda_Tadakatsu.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Honda_Tadakatsu : SkillBase 13 | { 14 | bool isFirst = true; 15 | public override void Init(CommanderBase bs, bool isFirst, int cnt) 16 | { 17 | base.Init(bs, isFirst); 18 | this.isFirst = isFirst; 19 | actionCountNew = 57; 20 | } 21 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 22 | { 23 | } 24 | 25 | public override void Active(CommanderBase at, CommanderBase df) 26 | { 27 | // 주사령관이면 2500, 부사령관이면 1250 딜 28 | if (UsingLog.usingLog == true) 29 | Console.Write("- {0}[톤보키리]", at.site); 30 | if (isFirst == true) 31 | CalcDamage.CalcActiveSkillDamage(at, df, 2500); 32 | else 33 | CalcDamage.CalcActiveSkillDamage(at, df, 1250); 34 | at.isSkillUsed = true; 35 | } 36 | 37 | 38 | public override void Passive1Before(CommanderBase at, CommanderBase df) 39 | { 40 | at.tempAttack += actionAmount1; 41 | } 42 | public override void Passive1After(CommanderBase at, CommanderBase df) 43 | { 44 | // 공격력 10퍼 증가. 행속 20퍼 증가. 공격대상이 부대일경우 공 30퍼 증가 45 | if (df.battleState == CommanderBase.BattleState.Field || df.battleState == CommanderBase.BattleState.Conquering) 46 | actionAmount1 = 30; 47 | } 48 | 49 | double actionAmount2_2 = 0; 50 | double actionAmount2_3 = 0; 51 | public override void Passive2Before(CommanderBase at, CommanderBase df) 52 | { 53 | actionAmount2 = 5; 54 | at.tempDamageDecrease += actionAmount2; 55 | df.tempSpeedIncrease -= actionAmount2_2; 56 | } 57 | public override void Passive2After(CommanderBase at, CommanderBase df) 58 | { 59 | // 피감 5퍼. 스킬시전후 고정피해 2턴간 (200계수), 적 행속 감소 50퍼 2턴간. 5초에한번발동 60 | if (actionCount2 == 3) 61 | actionAmount2_2 = 0; 62 | 63 | if (at.isSkillUsed == true && actionCount2 <= 0) 64 | { 65 | if (UsingLog.usingLog == true) 66 | Console.Write("- {0}[화실겸비]", at.site); 67 | actionAmount2_3 = CalcDamage.CalcActiveSkillDamage(at, df, 200, false); 68 | AddAfterSkillBonus(at, 0, 2, Passive2Bonus); 69 | actionAmount2_2 = 50; 70 | actionCount2 = 5; 71 | } 72 | actionCount2--; 73 | } 74 | public void Passive2Bonus(CommanderBase at, CommanderBase df) 75 | { 76 | if (UsingLog.usingLog == true) 77 | Console.Write("- {0}[화실 겸비]", at.site); 78 | CalcDamage.CalcAdditionalSkillDamage(df, actionAmount2_3); 79 | } 80 | 81 | 82 | public override void Passive3Before(CommanderBase at, CommanderBase df) 83 | { 84 | at.tempSkillDamageIncrease += actionAmount3; 85 | 86 | } 87 | public override void Passive3After(CommanderBase at, CommanderBase df) 88 | { 89 | int factor; 90 | // 부대인원 10퍼증가. 병력 8퍼감소마다(2병종이면 5퍼감소마다) 스킬피해 5퍼증가. 최대 60퍼 91 | if (at.armyType == CommanderBase.ArmyType.Mixed) 92 | factor = 5; 93 | else 94 | factor = 8; 95 | 96 | int troopDecreaseRate = (int)((1 - (at.troop / at.maxTroop)) * 100); 97 | actionAmount3 = (troopDecreaseRate / factor) * 5; 98 | actionAmount3 = Math.Min(actionAmount3, 60); 99 | if (UsingLog.usingLog == true) 100 | Console.WriteLine("- {0}[도쿠가와 사천왕] 스킬피해 {1}% 증가", at.site, actionAmount3); 101 | } 102 | 103 | public override void NewBefore(CommanderBase at, CommanderBase df) 104 | { 105 | } 106 | public override void NewAfter(CommanderBase at, CommanderBase df) 107 | { 108 | // 필드에서 일반공격피해받으면 해당피해 30퍼감소시킴 최대 57회 109 | if (at.battleState != CommanderBase.BattleState.Garrison && at.normalAttackDamage > 0 && actionCountNew > 0) 110 | { 111 | actionCountNew--; 112 | if (UsingLog.usingLog == true) 113 | Console.WriteLine("- {0}[불패의 역] 데미지 {1} 감소. {2}턴 남음", at.site, Math.Round(at.normalAttackDamage * 0.3), actionCountNew); 114 | at.normalAttackDamage *= 0.7; 115 | } 116 | } 117 | } 118 | } 119 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Archer/Artemisia.cs: -------------------------------------------------------------------------------- 1 | 2 | using RiseOfKingdoms.Commander; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | using RiseOfKingdoms.Calculate; 9 | using RiseOfKingdoms.Common; 10 | 11 | namespace RiseOfKingdoms.Skill 12 | { 13 | internal class Artemisia : SkillBase 14 | { 15 | public override void ActiveBefore(CommanderBase at, CommanderBase df) 16 | { 17 | } 18 | 19 | public override void Active(CommanderBase at, CommanderBase df) 20 | { 21 | // 피해계수 1800, 나에게 피해계수 300 22 | if (UsingLog.usingLog == true) 23 | Console.Write("- {0}[살라미스 전투]", at.site); 24 | CalcDamage.CalcActiveSkillDamage(at, df, 1800); 25 | if (UsingLog.usingLog == true) 26 | Console.Write("- {0}[살라미스 전투]", at.site); 27 | CalcDamage.CalcActiveSkillDamage(at, at, 300); 28 | 29 | at.isSkillUsed = true; 30 | } 31 | 32 | 33 | public override void Passive1Before(CommanderBase at, CommanderBase df) 34 | { 35 | } 36 | public override void Passive1After(CommanderBase at, CommanderBase df) 37 | { 38 | // 궁병방생 20증가 39 | } 40 | 41 | public override void Passive2Before(CommanderBase at, CommanderBase df) 42 | { 43 | if (at.battleState == CommanderBase.BattleState.Garrison) 44 | { 45 | actionAmount2 = 10; 46 | at.tempNormalDamageDecrease += actionAmount2; 47 | } 48 | } 49 | public override void Passive2After(CommanderBase at, CommanderBase df) 50 | { 51 | // 주둔시 일반공격피해 10퍼감소, 일반공격시 10퍼확률로 1초간 금수효과(일반공격불가) 52 | if (at.battleState == CommanderBase.BattleState.Garrison) 53 | { 54 | Random random = new Random(); 55 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0) 56 | { 57 | if (UsingLog.usingLog == true) 58 | Console.WriteLine("- {0}[크세르크세스의 맹우] 대상부대에 금수효과 1초 지속", at.site); 59 | df.forbiddenTurn = 2; 60 | } 61 | } 62 | } 63 | 64 | bool togle = true; 65 | public override void Passive3Before(CommanderBase at, CommanderBase df) 66 | { 67 | at.tempDamageIncrease += actionAmount3; 68 | } 69 | public override void Passive3After(CommanderBase at, CommanderBase df) 70 | { 71 | if (at.isSkillUsed == true) 72 | togle = true; 73 | 74 | // 분노 80퍼까지 증가하면 50퍼 확률로 3초 자체침묵, 모든피해 50퍼 증가 5초지속 75 | if (actionCount3 == 0) 76 | actionAmount3 = 0; 77 | 78 | Random random = new Random(); 79 | if (at.rage >= at.maxRage * 0.8) 80 | { 81 | if (togle == true && random.Next(0, 2) == 0) 82 | { 83 | if (UsingLog.usingLog == true) 84 | Console.WriteLine("- {0}[카리아 여왕] 대상 부대에 3초 침묵, 통솔부대 피해 50% 증가 5초 지속", at.site); 85 | if (at.silenceTurn <= 1) 86 | at.silenceTurn = 4; 87 | actionAmount3 = 50; 88 | actionCount3 = 5; 89 | } 90 | togle = false; 91 | } 92 | actionCount3--; 93 | } 94 | 95 | double actionAmountNew_2 = 0; 96 | public override void NewBefore(CommanderBase at, CommanderBase df) 97 | { 98 | df.tempSkillDamageIncrease += actionAmountNew; 99 | } 100 | public override void NewAfter(CommanderBase at, CommanderBase df) 101 | { 102 | // 일반공격시 10퍼확률로 400계수피해 + 상대 스킬피해 15퍼증가 3초지속 103 | if (actionCountNew == 0) 104 | actionAmountNew = 0; 105 | Random random = new Random(); 106 | if (df.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCountNew <= 0) 107 | { 108 | if (UsingLog.usingLog == true) 109 | Console.Write("- {0}[생존의 법칙]", at.site); 110 | actionAmountNew_2 = CalcDamage.CalcActiveSkillDamage(at, df, 400); 111 | AddAfterSkillBonus(at, 0, 2, NewBonus); 112 | 113 | if (UsingLog.usingLog == true) 114 | Console.WriteLine("- {0}[생존의 법칙] 대상 부대의 스킬피해 15% 증가. 3초 지속", at.site); 115 | actionAmountNew = 15; 116 | actionCountNew = 3; 117 | } 118 | actionCountNew--; 119 | } 120 | public void NewBonus(CommanderBase at, CommanderBase df) 121 | { 122 | if (UsingLog.usingLog == true) 123 | Console.Write("- {0}[생존의 법칙]", at.site); 124 | CalcDamage.CalcAdditionalSkillDamage(df, actionAmountNew_2); 125 | } 126 | } 127 | } 128 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Infantry/Aetius.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Aetius : SkillBase 13 | { 14 | public override void Active(CommanderBase at, CommanderBase df) 15 | { 16 | // 계수 2300 상대 피 50퍼 미만이면 3초간 지속피해 150씩 17 | if (UsingLog.usingLog == true) 18 | Console.Write("- {0}[제국의 창]", at.site); 19 | CalcDamage.CalcActiveSkillDamage(at, df, 2300); 20 | at.isSkillUsed = true; 21 | if (df.troop * 2 <= df.maxTroop) 22 | { 23 | actionAmount0 = CalcDamage.CalcActiveSkillDamage(at, df, 150, false); 24 | AddAfterSkillBonus(at, 1, 3, ActiveBonus); 25 | } 26 | 27 | } 28 | public void ActiveBonus(CommanderBase at, CommanderBase df) 29 | { 30 | if (UsingLog.usingLog == true) 31 | Console.Write("- {0}[제국의 창]", at.site); 32 | CalcDamage.CalcAdditionalSkillDamage(df, actionAmount0); 33 | } 34 | 35 | public override void Passive1Before(CommanderBase at, CommanderBase df) 36 | { 37 | if (at.battleState == CommanderBase.BattleState.Garrison) 38 | { 39 | if (at.armyType == CommanderBase.ArmyType.Infantry) 40 | actionAmount1 = 15; 41 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 42 | actionAmount1 = 5; 43 | else 44 | actionAmount1 = 0; 45 | at.tempDefence += actionAmount1; 46 | at.tempHealth += actionAmount1; 47 | } 48 | } 49 | public override void Passive1After(CommanderBase at, CommanderBase df) 50 | { 51 | // 보병 공15, 주둔상태일때 보병방생 15증가 52 | } 53 | 54 | public override void Passive2Before(CommanderBase at, CommanderBase df) 55 | { 56 | if (at.armyType == CommanderBase.ArmyType.Infantry) 57 | { 58 | df.tempDamageDecrease -= actionAmount2; 59 | } 60 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 61 | { 62 | df.tempDamageDecrease -= (actionAmount2 / 3); 63 | } 64 | } 65 | public override void Passive2After(CommanderBase at, CommanderBase df) 66 | { 67 | // 반격피해 20증가. 주둔시 대상부대에 디버프 보병한테받는피해증가 15초지속 10회중첩 10초에한번발동 68 | if (actionCount2 == 0) 69 | actionAmount2 = 0; 70 | 71 | if (at.battleState == CommanderBase.BattleState.Garrison && df.normalAttackDamage > 0 && actionCount2 <= 5) 72 | { 73 | actionAmount2++; 74 | actionAmount2 = Math.Min(10, actionAmount2); 75 | if (UsingLog.usingLog == true) 76 | Console.WriteLine("- {0}[갈리아 방어선] 대상에게 보병에게 받는 피해 {1}%증가 디버프 발동", at.site, actionAmount2); 77 | actionCount2 = 15; 78 | } 79 | actionCount2--; 80 | } 81 | 82 | public override void Passive3Before(CommanderBase at, CommanderBase df) 83 | { 84 | } 85 | public override void Passive3After(CommanderBase at, CommanderBase df) 86 | { 87 | // 모든피해 10퍼증가. 지속추가피해받는 대상에게 일반공격시 2초침묵 7초에한번발동 88 | if (df.additionalSkillDamage > 0 && df.normalAttackDamage > 0 && actionCount3 <= 0) 89 | { 90 | if (UsingLog.usingLog == true) 91 | Console.WriteLine("- {0}[카탈라우눔 전투] 대상 부대 2초간 침묵", at.site); 92 | AddAfterSkillBonus(at, 0, 1, Passive3Bonus); 93 | actionCount3 = 7; 94 | } 95 | actionCount3--; 96 | } 97 | public void Passive3Bonus(CommanderBase at, CommanderBase df) 98 | { 99 | if (df.silenceTurn <= 1) 100 | df.silenceTurn = 3; 101 | } 102 | 103 | public override void NewBefore(CommanderBase at, CommanderBase df) 104 | { 105 | } 106 | public override void NewAfter(CommanderBase at, CommanderBase df) 107 | { 108 | //일반피해 10퍼감소. 스킬시전시 30퍼확률로 디버프 2회. 10초에 한번발동 109 | Random random = new Random(); 110 | if (at.isSkillUsed == true && random.Next(0, 10) < 3 && actionCountNew <= 0) 111 | { 112 | actionAmount2 += 2; 113 | actionAmount2 = Math.Min(10, actionAmount2); 114 | if (UsingLog.usingLog == true) 115 | Console.WriteLine("- {0}[니벨룽의 노래] 대상에게 보병에게 받는 피해 {1}%증가 디버프 발동", at.site, actionAmount2); 116 | actionCountNew = 10; 117 | } 118 | actionCountNew--; 119 | } 120 | } 121 | } 122 | -------------------------------------------------------------------------------- /RiseOfKingdoms/Skill/Cavalry/Bertrand_du_Guesclin.cs: -------------------------------------------------------------------------------- 1 | using RiseOfKingdoms.Commander; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using RiseOfKingdoms.Calculate; 8 | using RiseOfKingdoms.Common; 9 | 10 | namespace RiseOfKingdoms.Skill 11 | { 12 | internal class Bertrand_du_Guesclin : SkillBase 13 | { 14 | 15 | double extraDamage; 16 | public override void Active(CommanderBase at, CommanderBase df) 17 | { 18 | // 다음 3초간 일반공격시 100퍼확률로 고정피해 700계수, 분노 20깍 19 | if (UsingLog.usingLog == true) 20 | Console.WriteLine("- {0}[전의 고양] 다음 3초간 고정피해. 분노 20 감소", at.site); 21 | AddAfterSkillBonus(at, 1, 3, ActiveBonus); 22 | 23 | at.isSkillUsed = true; 24 | } 25 | public void ActiveBonus(CommanderBase at, CommanderBase df) 26 | { 27 | if (UsingLog.usingLog == true) 28 | Console.Write("- {0}[전의 고양]", at.site); 29 | extraDamage = CalcDamage.CalcActiveSkillDamage(at, df, 700); 30 | 31 | if (UsingLog.usingLog == true) 32 | Console.WriteLine("- {0}[전의 고양] 대상 분노 20 감소", at.site); 33 | actionAmount0 = 20; 34 | df.rageMinus += actionAmount0; 35 | } 36 | 37 | public override void Passive1Before(CommanderBase at, CommanderBase df) 38 | { 39 | if (at.battleState != CommanderBase.BattleState.Garrison) 40 | { 41 | actionAmount1 = 5; 42 | at.tempSpeedIncrease += (actionAmount1 * 2); 43 | at.tempDamageDecrease += actionAmount1; 44 | } 45 | } 46 | public override void Passive1After(CommanderBase at, CommanderBase df) 47 | { 48 | // 기마병 공격력10, 생명력10증가. 연맹영토밖에서 기마병 행속 10, 피감5 49 | } 50 | 51 | public override void Passive2Before(CommanderBase at, CommanderBase df) 52 | { 53 | if (at.battleState == CommanderBase.BattleState.Conquering) 54 | { 55 | actionAmount2 = 10; 56 | at.tempDamageIncrease += actionAmount2; 57 | at.tempDamageIncrease += actionAmount2_2; 58 | } 59 | } 60 | double actionAmount2_2 = 0; 61 | new int actionCount2 = 10; 62 | public override void Passive2After(CommanderBase at, CommanderBase df) 63 | { 64 | // 거점공격시 피증 10. 10초마다 기마병피해 1퍼증가 15초지속 5회중첩 65 | if (at.battleState == CommanderBase.BattleState.Conquering) 66 | { 67 | if (actionCount2 == 10) 68 | { 69 | if (UsingLog.usingLog == true) 70 | Console.WriteLine("- {0}[파비우스 전략] 10초마다 기마병 피해 1% 증가(최대 5%)", at.site); 71 | if (at.armyType == CommanderBase.ArmyType.Cavalry) 72 | { 73 | actionAmount2_2 += 1; 74 | actionAmount2_2 = Math.Min(5, actionAmount2_2); 75 | } 76 | else if (at.armyType == CommanderBase.ArmyType.Mixed) 77 | { 78 | actionAmount2_2 += (1/3); 79 | actionAmount2_2 = Math.Min(5/3, actionAmount2_2); 80 | } 81 | actionCount2 = 0; 82 | } 83 | actionCount2++; 84 | } 85 | } 86 | 87 | public override void Passive3Before(CommanderBase at, CommanderBase df) 88 | { 89 | } 90 | public override void Passive3After(CommanderBase at, CommanderBase df) 91 | { 92 | // 기마방 20, 공격받을때 10퍼확률로 치료효과(250계수) 3초지속 5초에한번발동 93 | 94 | Random random = new Random(); 95 | if (at.normalAttackDamage > 0 && random.Next(0, 10) == 0 && actionCount3 <= 0) 96 | { 97 | actionAmount3 = 250; 98 | if (UsingLog.usingLog == true) 99 | Console.Write("- {0}[아이리스]", at.site); 100 | CalcDamage.CalcHealingEffect(at, df, actionAmount3); 101 | AddAfterSkillBonus(at, 0, 2, PassiveBonus); 102 | actionCount3 = 5; 103 | } 104 | actionCount3--; 105 | 106 | } 107 | public void PassiveBonus(CommanderBase at, CommanderBase df) 108 | { 109 | if (UsingLog.usingLog == true) 110 | Console.Write("- {0}[아이리스]", at.site); 111 | CalcDamage.CalcHealingEffect(at, df, actionAmount3); 112 | } 113 | 114 | public override void NewBefore(CommanderBase at, CommanderBase df) 115 | { 116 | } 117 | public override void NewAfter(CommanderBase at, CommanderBase df) 118 | { 119 | // 스피감 5퍼, 스킬피해받을때 대상부대에게 스킬피해 400계수. 5초에한번발동 120 | if (at.skillDamage > 0 && actionCountNew <= 0) 121 | { 122 | if (UsingLog.usingLog == true) 123 | Console.Write("- {0}[왕실 사령관]", at.site); 124 | CalcDamage.CalcActiveSkillDamage(at, df, 400); 125 | actionCountNew = 5; 126 | } 127 | actionCountNew--; 128 | } 129 | 130 | } 131 | } 132 | --------------------------------------------------------------------------------