Add Chapter 2 boss AI setup. Add Chapter 2 Boss Monster Entry. Add Boss Pillar Monster Entry. Setup Breaking Pillar Monster Strategy. Release Build 9554.
parent
ba7ccf72b0
commit
efcd3f0bf8
@ -0,0 +1,62 @@ |
||||
#pragma region License |
||||
/*
|
||||
License (OLC-3) |
||||
~~~~~~~~~~~~~~~ |
||||
|
||||
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, |
||||
are permitted provided that the following conditions are met: |
||||
|
||||
1. Redistributions or derivations of source code must retain the above copyright |
||||
notice, this list of conditions and the following disclaimer. |
||||
|
||||
2. Redistributions or derivative works in binary form must reproduce the above |
||||
copyright notice. This list of conditions and the following disclaimer must be |
||||
reproduced in the documentation and/or other materials provided with the distribution. |
||||
|
||||
3. Neither the name of the copyright holder nor the names of its contributors may |
||||
be used to endorse or promote products derived from this software without specific |
||||
prior written permission. |
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||
SUCH DAMAGE. |
||||
|
||||
Portions of this software are copyright © 2024 The FreeType |
||||
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||
All rights reserved. |
||||
*/ |
||||
#pragma endregion |
||||
|
||||
#include "Monster.h" |
||||
#include "MonsterStrategyHelpers.h" |
||||
#include "config.h" |
||||
|
||||
using A=Attribute; |
||||
|
||||
void Monster::STRATEGY::BREAKING_PILLAR(Monster&m,float fElapsedTime,std::string strategy){ |
||||
enum PhaseName{ |
||||
INITIALIZE, |
||||
IDLE, |
||||
}; |
||||
|
||||
if(m.GetHealthRatio()>=ConfigFloat("Break Phase 1 HP % Threshold")/100.f){ |
||||
m.animation.ModifyDisplaySprite(m.internal_animState,ConfigString("Unbroken Animation Name")); |
||||
}else |
||||
if(m.GetHealthRatio()>=ConfigFloat("Break Phase 2 HP % Threshold")/100.f){ |
||||
m.animation.ModifyDisplaySprite(m.internal_animState,ConfigString("Break Phase 1 Animation Name")); |
||||
}else m.animation.ModifyDisplaySprite(m.internal_animState,ConfigString("Break Phase 2 Animation Name")); |
||||
|
||||
if(m.IsDead()&&!m.B(A::MARKED_DEAD)){ //Kill and fade out the pillar.
|
||||
m.lifetime=0.01f; |
||||
m.B(A::MARKED_DEAD)=true; |
||||
} |
||||
} |
@ -0,0 +1,69 @@ |
||||
Chapter 2 Boss |
||||
|
||||
Stonegolem |
||||
|
||||
|
||||
|
||||
HP: 30 000 |
||||
|
||||
Size: 800% |
||||
|
||||
|
||||
|
||||
The boss casts 3 Pillars at the beginning of the fight, targeting the player. |
||||
|
||||
|
||||
|
||||
1 at a time. |
||||
|
||||
2 sec cast. |
||||
|
||||
0.5 sec delay until next cast starts. |
||||
|
||||
40 dmg |
||||
|
||||
Pillar-radius: 350 |
||||
|
||||
|
||||
|
||||
every 10% (first time at 90%) use a shockwave where you need to hide behind one of the pillar to avoid the damage. (Shockwave has 3 seconds cast, 60 dmg) |
||||
|
||||
The pillars get damaged with every shockwave. after the 3rd the pillar break. |
||||
|
||||
|
||||
|
||||
starting 75% every 10% (75%, 65%, 55% ...) The Stone golem targetst the Player with 3 Pillar attacks like the one at the beginning of the fight. |
||||
|
||||
2 of the 3 Pillars spawn damaged and will break 3 seconds later again. one is solid and can tank up to 3 shockwaves. |
||||
|
||||
|
||||
|
||||
Like previously every pillar appears with 2,5 seconds delay from each other. (2 sec with an indicator, 0,5 seconds delay after a pillar got created) |
||||
|
||||
The Boss continues with its normal behaviour while the pillars are getting casted. |
||||
|
||||
|
||||
|
||||
every Pillar that breaks Casts a ring of projectiles on death (15 dmg) |
||||
|
||||
|
||||
|
||||
|
||||
|
||||
The golem attacks similar like bear boss but with half the radius on the attack. (35 dmg) |
||||
|
||||
after every attack there is a 25% chance The Stone golem targets the Player. the targeting gets Indicated around the player. |
||||
|
||||
after 2.5 seconds the golems throws a giant rock with 250 radius on the players position. Damaging the player and destroying Pillars hit. (55 dmg) |
||||
|
||||
Stone Throw cant overlap with shockwave. when a 10% mark is reached while a rock is targeting the player, Shockwave cast starts after the rock was thrown. |
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if the golem wasnt able to attack the player for 7 seconds it throws 2 stones in the air. |
||||
|
||||
Afterwards Screenwide ~25 indicators appear where small rocks will rain down with a delay of 2,5 - 4 seonds (30 dmg each, 50 radius) |
||||
|
||||
(The trigger condition for this ability may changes in the future, depending how it actually plays out.) |
@ -0,0 +1,53 @@ |
||||
#pragma region License |
||||
/*
|
||||
License (OLC-3) |
||||
~~~~~~~~~~~~~~~ |
||||
|
||||
Copyright 2024 Joshua Sigona <sigonasr2@gmail.com> |
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, |
||||
are permitted provided that the following conditions are met: |
||||
|
||||
1. Redistributions or derivations of source code must retain the above copyright |
||||
notice, this list of conditions and the following disclaimer. |
||||
|
||||
2. Redistributions or derivative works in binary form must reproduce the above |
||||
copyright notice. This list of conditions and the following disclaimer must be |
||||
reproduced in the documentation and/or other materials provided with the distribution. |
||||
|
||||
3. Neither the name of the copyright holder nor the names of its contributors may |
||||
be used to endorse or promote products derived from this software without specific |
||||
prior written permission. |
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY |
||||
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
||||
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT |
||||
SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
||||
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
||||
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||
SUCH DAMAGE. |
||||
|
||||
Portions of this software are copyright © 2024 The FreeType |
||||
Project (www.freetype.org). Please see LICENSE_FT.txt for more information. |
||||
All rights reserved. |
||||
*/ |
||||
#pragma endregion |
||||
|
||||
#include "Monster.h" |
||||
#include "MonsterStrategyHelpers.h" |
||||
|
||||
|
||||
void Monster::STRATEGY::STONE_GOLEM(Monster&m,float fElapsedTime,std::string strategy){ |
||||
enum PhaseName{ |
||||
INITIALIZE, |
||||
}; |
||||
|
||||
switch(m.phase){ |
||||
case INITIALIZE:{ |
||||
|
||||
}break; |
||||
} |
||||
} |
Binary file not shown.
Loading…
Reference in new issue