Add monster entries and animations for Giant Octopus boss and Octopus Arm. Release Build 11756.
This commit is contained in:
parent
3a3d405272
commit
1bb0ceb096
@ -839,6 +839,7 @@
|
|||||||
<SubType>
|
<SubType>
|
||||||
</SubType>
|
</SubType>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="GiantOctopus.cpp" />
|
||||||
<ClCompile Include="IBullet.cpp" />
|
<ClCompile Include="IBullet.cpp" />
|
||||||
<ClCompile Include="BuyItemWindow.cpp">
|
<ClCompile Include="BuyItemWindow.cpp">
|
||||||
<SubType>
|
<SubType>
|
||||||
@ -1052,6 +1053,7 @@
|
|||||||
<SubType>
|
<SubType>
|
||||||
</SubType>
|
</SubType>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="OctopusArm.cpp" />
|
||||||
<ClCompile Include="Overlay.cpp">
|
<ClCompile Include="Overlay.cpp">
|
||||||
<SubType>
|
<SubType>
|
||||||
</SubType>
|
</SubType>
|
||||||
|
@ -1259,6 +1259,12 @@
|
|||||||
<ClCompile Include="PoisonBottle.cpp">
|
<ClCompile Include="PoisonBottle.cpp">
|
||||||
<Filter>Source Files\Bullet Types</Filter>
|
<Filter>Source Files\Bullet Types</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="GiantOctopus.cpp">
|
||||||
|
<Filter>Source Files\Monster Strategies</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="OctopusArm.cpp">
|
||||||
|
<Filter>Source Files\Monster Strategies</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="cpp.hint" />
|
<None Include="cpp.hint" />
|
||||||
|
62
Adventures in Lestoria/GiantOctopus.cpp
Normal file
62
Adventures in Lestoria/GiantOctopus.cpp
Normal file
@ -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 "MonsterStrategyHelpers.h"
|
||||||
|
#include "util.h"
|
||||||
|
#include "AdventuresInLestoria.h"
|
||||||
|
#include "SoundEffect.h"
|
||||||
|
#include "BulletTypes.h"
|
||||||
|
|
||||||
|
using A=Attribute;
|
||||||
|
|
||||||
|
INCLUDE_game
|
||||||
|
|
||||||
|
void Monster::STRATEGY::GIANT_OCTOPUS(Monster&m,float fElapsedTime,std::string strategy){
|
||||||
|
enum PhaseName{
|
||||||
|
RUN,
|
||||||
|
FLY_AWAY,
|
||||||
|
};
|
||||||
|
switch(PHASE()){
|
||||||
|
case RUN:{
|
||||||
|
|
||||||
|
}break;
|
||||||
|
case FLY_AWAY:{
|
||||||
|
|
||||||
|
}break;
|
||||||
|
}
|
||||||
|
}
|
@ -375,6 +375,8 @@ private:
|
|||||||
static void PARROT(Monster&m,float fElapsedTime,std::string strategy);
|
static void PARROT(Monster&m,float fElapsedTime,std::string strategy);
|
||||||
static void CRAB(Monster&m,float fElapsedTime,std::string strategy);
|
static void CRAB(Monster&m,float fElapsedTime,std::string strategy);
|
||||||
static void GIANT_CRAB(Monster&m,float fElapsedTime,std::string strategy);
|
static void GIANT_CRAB(Monster&m,float fElapsedTime,std::string strategy);
|
||||||
|
static void GIANT_OCTOPUS(Monster&m,float fElapsedTime,std::string strategy);
|
||||||
|
static void OCTOPUS_ARM(Monster&m,float fElapsedTime,std::string strategy);
|
||||||
};
|
};
|
||||||
bool bumpedIntoTerrain=false; //Gets set to true before a strategy executes if the monster runs into some terrain on this frame.
|
bool bumpedIntoTerrain=false; //Gets set to true before a strategy executes if the monster runs into some terrain on this frame.
|
||||||
bool attackedByPlayer=false; //Gets set to true before a strategy executes if the monster has been attacked by the player.
|
bool attackedByPlayer=false; //Gets set to true before a strategy executes if the monster has been attacked by the player.
|
||||||
|
62
Adventures in Lestoria/OctopusArm.cpp
Normal file
62
Adventures in Lestoria/OctopusArm.cpp
Normal file
@ -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 "MonsterStrategyHelpers.h"
|
||||||
|
#include "util.h"
|
||||||
|
#include "AdventuresInLestoria.h"
|
||||||
|
#include "SoundEffect.h"
|
||||||
|
#include "BulletTypes.h"
|
||||||
|
|
||||||
|
using A=Attribute;
|
||||||
|
|
||||||
|
INCLUDE_game
|
||||||
|
|
||||||
|
void Monster::STRATEGY::OCTOPUS_ARM(Monster&m,float fElapsedTime,std::string strategy){
|
||||||
|
enum PhaseName{
|
||||||
|
RUN,
|
||||||
|
FLY_AWAY,
|
||||||
|
};
|
||||||
|
switch(PHASE()){
|
||||||
|
case RUN:{
|
||||||
|
|
||||||
|
}break;
|
||||||
|
case FLY_AWAY:{
|
||||||
|
|
||||||
|
}break;
|
||||||
|
}
|
||||||
|
}
|
@ -75,6 +75,8 @@ void Monster::InitializeStrategies(){
|
|||||||
STRATEGY_DATA.insert("Sandworm",Monster::STRATEGY::SANDWORM);
|
STRATEGY_DATA.insert("Sandworm",Monster::STRATEGY::SANDWORM);
|
||||||
STRATEGY_DATA.insert("Parrot",Monster::STRATEGY::PARROT);
|
STRATEGY_DATA.insert("Parrot",Monster::STRATEGY::PARROT);
|
||||||
STRATEGY_DATA.insert("Giant Crab",Monster::STRATEGY::GIANT_CRAB);
|
STRATEGY_DATA.insert("Giant Crab",Monster::STRATEGY::GIANT_CRAB);
|
||||||
|
STRATEGY_DATA.insert("Giant Octopus",Monster::STRATEGY::GIANT_OCTOPUS);
|
||||||
|
STRATEGY_DATA.insert("Octopus Arm",Monster::STRATEGY::OCTOPUS_ARM);
|
||||||
|
|
||||||
STRATEGY_DATA.SetInitialized();
|
STRATEGY_DATA.SetInitialized();
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,11 @@ DEMO
|
|||||||
|
|
||||||
Add Sherman and Blacksmith story images
|
Add Sherman and Blacksmith story images
|
||||||
|
|
||||||
|
Have all song ideas by Nov 1st
|
||||||
|
- Chapter 3 boss outro
|
||||||
|
- Chapter 4 Stage + boss + outro
|
||||||
|
- Chapter 5 Stage + boss + outro
|
||||||
|
|
||||||
Adding new class animations
|
Adding new class animations
|
||||||
===========================
|
===========================
|
||||||
Player.txt contains animation names the player has to have loaded.
|
Player.txt contains animation names the player has to have loaded.
|
||||||
|
@ -39,7 +39,7 @@ All rights reserved.
|
|||||||
#define VERSION_MAJOR 1
|
#define VERSION_MAJOR 1
|
||||||
#define VERSION_MINOR 3
|
#define VERSION_MINOR 3
|
||||||
#define VERSION_PATCH 0
|
#define VERSION_PATCH 0
|
||||||
#define VERSION_BUILD 11755
|
#define VERSION_BUILD 11756
|
||||||
|
|
||||||
#define stringify(a) stringify_(a)
|
#define stringify(a) stringify_(a)
|
||||||
#define stringify_(a) #a
|
#define stringify_(a) #a
|
||||||
|
@ -1717,4 +1717,89 @@ Monsters
|
|||||||
Death Sound = Slime Dead
|
Death Sound = Slime Dead
|
||||||
Walk Sound = Wing Flap
|
Walk Sound = Wing Flap
|
||||||
}
|
}
|
||||||
|
Giant Octopus
|
||||||
|
{
|
||||||
|
Health = 42000
|
||||||
|
Attack = 40
|
||||||
|
|
||||||
|
CollisionDmg = 30
|
||||||
|
|
||||||
|
MoveSpd = 0%
|
||||||
|
Size = 400%
|
||||||
|
|
||||||
|
XP = 0
|
||||||
|
|
||||||
|
Collision Radius = 20
|
||||||
|
|
||||||
|
Ignore Collisions = True
|
||||||
|
|
||||||
|
Strategy = Giant Octopus
|
||||||
|
|
||||||
|
#Size of each animation frame
|
||||||
|
SheetFrameSize = 48,48
|
||||||
|
|
||||||
|
# Setting this to true means every four rows indicates one animation, the ordering of the directions is: NORTH, EAST, SOUTH, WEST
|
||||||
|
4-Way Spritesheet = True
|
||||||
|
|
||||||
|
Animations
|
||||||
|
{
|
||||||
|
# Frame Count, Frame Speed (s), Frame Cycling (Repeat,OneShot,PingPong,Reverse,ReverseOneShot)
|
||||||
|
# Animations must be defined in the same order as they are in their sprite sheets
|
||||||
|
# The First Four animations must represent a standing, walking, attack, and death animation. Their names are up to the creator.
|
||||||
|
IDLE = 4, 0.3, Repeat
|
||||||
|
HURT = 4, 0.15, Repeat
|
||||||
|
ATTACKING = 4, 0.15, PingPong
|
||||||
|
DEATH = 4, 0.15, OneShot
|
||||||
|
}
|
||||||
|
|
||||||
|
# Drop Item Name, Drop Percentage(0-100%), Drop Min Quantity, Drop Max Quantity
|
||||||
|
#DROP[0] = Broken Dagger,30%,1,1
|
||||||
|
|
||||||
|
Hurt Sound = Monster Hurt
|
||||||
|
Death Sound = Slime Dead
|
||||||
|
Walk Sound = Slime Walk
|
||||||
|
}
|
||||||
|
Octopus Arm
|
||||||
|
{
|
||||||
|
Health = 6000
|
||||||
|
Attack = 50
|
||||||
|
|
||||||
|
CollisionDmg = 30
|
||||||
|
|
||||||
|
MoveSpd = 0%
|
||||||
|
Size = 400%
|
||||||
|
|
||||||
|
XP = 0
|
||||||
|
|
||||||
|
Collision Radius = 20
|
||||||
|
|
||||||
|
Ignore Collisions = True
|
||||||
|
|
||||||
|
Strategy = Octopus Arm
|
||||||
|
|
||||||
|
#Size of each animation frame
|
||||||
|
SheetFrameSize = 96,96
|
||||||
|
|
||||||
|
# Setting this to true means every four rows indicates one animation, the ordering of the directions is: NORTH, EAST, SOUTH, WEST
|
||||||
|
4-Way Spritesheet = True
|
||||||
|
|
||||||
|
Animations
|
||||||
|
{
|
||||||
|
# Frame Count, Frame Speed (s), Frame Cycling (Repeat,OneShot,PingPong,Reverse,ReverseOneShot)
|
||||||
|
# Animations must be defined in the same order as they are in their sprite sheets
|
||||||
|
# The First Four animations must represent a standing, walking, attack, and death animation. Their names are up to the creator.
|
||||||
|
IDLE = 4, 0.2, PingPong
|
||||||
|
SUBMERGE = 5, 0.15, OneShot
|
||||||
|
ATTACKING = 4, 0.15, PingPong
|
||||||
|
DEATH = 5, 0.15, OneShot
|
||||||
|
RISE = 5, 0.15, ReverseOneShot
|
||||||
|
}
|
||||||
|
|
||||||
|
# Drop Item Name, Drop Percentage(0-100%), Drop Min Quantity, Drop Max Quantity
|
||||||
|
#DROP[0] = Broken Dagger,30%,1,1
|
||||||
|
|
||||||
|
Hurt Sound = Monster Hurt
|
||||||
|
Death Sound = Slime Dead
|
||||||
|
Walk Sound = Slime Walk
|
||||||
|
}
|
||||||
}
|
}
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user