diff --git a/Crawler/Crawler.cpp b/Crawler/Crawler.cpp index 23b50cc0..0e8f210f 100644 --- a/Crawler/Crawler.cpp +++ b/Crawler/Crawler.cpp @@ -19,7 +19,7 @@ INCLUDE_EMITTER_LIST -//192x192 +//360x240 vi2d WINDOW_SIZE={24*15,24*10}; safemapANIMATION_DATA; std::vectorMONSTER_LIST; diff --git a/Crawler/Crawler.vcxproj b/Crawler/Crawler.vcxproj index 6d0520c0..a13a46d2 100644 --- a/Crawler/Crawler.vcxproj +++ b/Crawler/Crawler.vcxproj @@ -316,6 +316,7 @@ + diff --git a/Crawler/Crawler.vcxproj.filters b/Crawler/Crawler.vcxproj.filters index 901c4caf..8e4b68e8 100644 --- a/Crawler/Crawler.vcxproj.filters +++ b/Crawler/Crawler.vcxproj.filters @@ -233,6 +233,9 @@ Source Files\Monster Strategies + + Source Files\Monster Strategies + diff --git a/Crawler/assets/config/MonsterStrategies.txt b/Crawler/assets/config/MonsterStrategies.txt index a4bc992c..8d78befe 100644 --- a/Crawler/assets/config/MonsterStrategies.txt +++ b/Crawler/assets/config/MonsterStrategies.txt @@ -72,6 +72,12 @@ MonsterStrategy { # The Slime King Boss script. Name = Slime King + # How much time a jump will be pre-telegraphed. + JumpWarningIndicatorTime = 1.0 + # Distance to jump up into the sky. A higher value causes it to launch up and down seemingly faster. + JumpHeight = 1500 + ProjectileDamage = 10 + JumpAttackDamage = 20 Phase1 { Size = 800 @@ -79,8 +85,7 @@ MonsterStrategy ShootRingCount = 3 #In degrees. RingOffset = 10 - # Number of pattern repeats before a jump occurs. - JumpAfter = 4 + JumpAfter = 4 shots AirborneTime = 3.0 LandingRingCount = 1 LandingRecoveryTime = 2.0 @@ -91,20 +96,48 @@ MonsterStrategy # Percentage of health to transition to Phase 2 Change = 75% MonsterSpawnOnChange = Red Slime, 2 - + ShootRate = 1.0 + ShootProjectileCount = 3 + ShootCount = 5 + ShootAngleSpread = 45 + JumpChargeTime = 5.0 + JumpAfter = 5 shots + JumpCount = 3 + # Delay times per jump in seconds. + Jump[1] = 2.0 + Jump[2] = 0.3 + Jump[3] = 0.75 + } + Phase3 + { + Size = 400 + # Percentage of health to transition to Phase 3 + Change = 50% + MonsterSpawnOnChange = Red Slime, 2 + ShootRate = 0.5 + ShootProjectileCount = 3 + ShootAngleSpread = 45 + JumpDelayTime = 0.5 + JumpRecoveryTime = 2.0 + } + Phase4 + { + Size = 200 + # Percentage of health to transition to Phase 4 + Change = 25% + MonsterSpawnOnChange = Blue Slime, 2 + MoveSpdModifier = 50% + ShootRate = 0.1 + RandomOffsetAngle = 75 + JumpDistance = 1000 + } + Phase5 + { + SizeLossPerHit=50% + IframeTimePerHit = 1.0 + MoveSpdModified = 50% + # Percentage of health to transition to Phase 5 + Change = 0% } - Phase2Change = 75 - Phase2Size = 600 - # Percentage of health to transition to Phase 3 - Phase3Change = 50 - Phase3Size = 400 - # Percentage of health to transition to Phase 4 - Phase4Change = 25 - Phase4Size = 200 - # How often the enemy shoots. - ShootingSpeed = 0.6 - BulletSpeed = 450 - BulletSize = 30 - BulletColor = 0, 255, 0, 255 } } \ No newline at end of file diff --git a/Crawler/assets/config/Monsters.txt b/Crawler/assets/config/Monsters.txt index 42188ee0..15f0a767 100644 --- a/Crawler/assets/config/Monsters.txt +++ b/Crawler/assets/config/Monsters.txt @@ -123,6 +123,31 @@ Monsters ShootAnimation = 5, 0.1, OneShot DeathAnimation = 5, 0.2, OneShot + #Additional custom animations go down below. Start with ANIMATION[0] + #ANIMATION[0] = MY_NEW_ANIMATION + } + 5 + { + DisplayName = Slime King + Health = 1200 + Attack = 10 + + CollisionDmg = 0 + + MoveSpd = 0 + Size = 800 + + Strategy = Slime King + + #Size of each animation frame + SheetFrameSize = 24,24 + + # Frame Count, Frame Speed (s), Frame Cycling (Repeat,OneShot,PingPong,Reverse) + IdleAnimation = 10, 0.1, Repeat + JumpAnimation = 10, 0.06, Repeat + ShootAnimation = 10, 0.1, OneShot + DeathAnimation = 10, 0.1, OneShot + #Additional custom animations go down below. Start with ANIMATION[0] #ANIMATION[0] = MY_NEW_ANIMATION } diff --git a/Crawler/assets/monsters/Blue Slime.png b/Crawler/assets/monsters/Blue Slime.png index e280c557..e4c6b7bf 100644 Binary files a/Crawler/assets/monsters/Blue Slime.png and b/Crawler/assets/monsters/Blue Slime.png differ diff --git a/Crawler/assets/monsters/Green Slime.png b/Crawler/assets/monsters/Green Slime.png index 964c9a8c..721c8fc1 100644 Binary files a/Crawler/assets/monsters/Green Slime.png and b/Crawler/assets/monsters/Green Slime.png differ diff --git a/Crawler/assets/monsters/Red Slime.png b/Crawler/assets/monsters/Red Slime.png index 64d315a5..50bef513 100644 Binary files a/Crawler/assets/monsters/Red Slime.png and b/Crawler/assets/monsters/Red Slime.png differ diff --git a/Crawler/assets/monsters/Slime King.png b/Crawler/assets/monsters/Slime King.png index 81c73592..fbb09d55 100644 Binary files a/Crawler/assets/monsters/Slime King.png and b/Crawler/assets/monsters/Slime King.png differ diff --git a/Crawler/assets/monsters/Slime King.xcf b/Crawler/assets/monsters/Slime King.xcf new file mode 100644 index 00000000..b358ec79 Binary files /dev/null and b/Crawler/assets/monsters/Slime King.xcf differ diff --git a/Crawler/assets/monsters/Yellow Slime.png b/Crawler/assets/monsters/Yellow Slime.png index 81c73592..59da851a 100644 Binary files a/Crawler/assets/monsters/Yellow Slime.png and b/Crawler/assets/monsters/Yellow Slime.png differ