From d78bcac15035ddd096df6187a36e630071cba5c4 Mon Sep 17 00:00:00 2001 From: 12xx12 <44411062+12xx12@users.noreply.github.com> Date: Thu, 8 Apr 2021 12:18:18 +0200 Subject: Obsidian pillars, end fountain, not Ender dragon spawning (#4993) * added generator for obsidian pillars and central fountain which then is used for the exit portal * checkstyle * checkstyle the second * fixed clang removed magic number added Clamp * make the pillars configurable * fixed clang added warning if there was a unknown value if the tower should have a cage or not * forgot to cancel on unkwon value * fixed clang this time maybe * added new generator to generator test * fixed test * added prefab generation for end fountain * fixed checkstyle and updated the prefab * added ender dragon spawning made the fountain positioning dynamic removed fountain placement functions * added enderdragon stuff to testing * pls compile * added changes suggested by @peterbell10 * fixed clang * added debug for further research on the ARM build * ok - it wasn't my tower placement * checking in setup * readded the fountain schematic * removed finisher * readded generator * removed generator trigger - kept ini file access * using cChunkDef function to calculate abs pos of endercrystal * yes, I know it's unused... * commented everything in the ComposableGenerator.cpp - so only the new class in compiled in but not called at all * don't compile in the new generator at all (removed from CMakeLists.txt) * readded the new generator * readded the new generator * removed debug output * made the towers generate acrocc chunk borders * fixed bad merge * fixed clang * fixed clang * generate the dragon 20 blocks above terrain * trying to fixed weird undefined reference * maybe this fixes the weird behaviour * takes chunk width as parameter now * added new comments with info to generated structures removed ender dragon spawning removed chunkwidth from parameter * fixed linker * maybe fixed linking. tried with gc and clang * fixed ender crystal * fixed test * updated output strings * fixed build * fixed up test * fixed test compile * fixed test - cant get the tests to show up * removed the semicolon * maybe this is the fix? * at this point i have no idea - in MVSC it works * removed the ender dragon Co-authored-by: 12xx12 <12xx12100@gmail.com> --- tests/Generating/CMakeLists.txt | 1 + tests/Generating/Stubs.cpp | 645 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 646 insertions(+) (limited to 'tests') diff --git a/tests/Generating/CMakeLists.txt b/tests/Generating/CMakeLists.txt index 207b71e1a..d6b5617c3 100644 --- a/tests/Generating/CMakeLists.txt +++ b/tests/Generating/CMakeLists.txt @@ -44,6 +44,7 @@ set (GENERATING_SRCS ${PROJECT_SOURCE_DIR}/src/Generating/DistortedHeightmap.cpp ${PROJECT_SOURCE_DIR}/src/Generating/DungeonRoomsFinisher.cpp ${PROJECT_SOURCE_DIR}/src/Generating/EndGen.cpp + ${PROJECT_SOURCE_DIR}/src/Generating/EnderDragonFightStructuresGen.cpp ${PROJECT_SOURCE_DIR}/src/Generating/FinishGen.cpp ${PROJECT_SOURCE_DIR}/src/Generating/GridStructGen.cpp ${PROJECT_SOURCE_DIR}/src/Generating/HeiGen.cpp diff --git a/tests/Generating/Stubs.cpp b/tests/Generating/Stubs.cpp index b4f56bc1c..bda73f75a 100644 --- a/tests/Generating/Stubs.cpp +++ b/tests/Generating/Stubs.cpp @@ -17,7 +17,9 @@ #include "Generating/ChunkDesc.h" #include "DeadlockDetect.h" #include "Entities/Entity.h" +#include "Entities/EnderCrystal.h" #include "Mobs/Monster.h" +#include "Mobs/EnderDragon.h" #include "Simulator/FluidSimulator.h" #include "Simulator/FireSimulator.h" #include "MobSpawner.h" @@ -334,6 +336,15 @@ std::unique_ptr cMonster::NewMonsterFromType(eMonsterType a_Type) +void cMonster::CheckEventLostPlayer(std::chrono::milliseconds a_Dt) +{ + +} + + + + + bool cFluidSimulator::CanWashAway(BLOCKTYPE a_BlockType) { return false; @@ -395,3 +406,637 @@ cItem::cItem( void cItem::Empty() { } + + + + + +cEnderCrystal::cEnderCrystal(Vector3d a_Pos, bool a_ShowBottom): + Super(etEnderCrystal, a_Pos, 1.0, 1.0) +{ +} + + + + + +void cEnderCrystal::SpawnOn(class cClientHandle & a_ClientHandle) +{ +} + + + + + + +void cEnderCrystal::Tick(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + + +void cEnderCrystal::KilledBy(struct TakeDamageInfo & a_TakeDamageInfo) +{ +} + + + + + +cEntity::cEntity(enum cEntity::eEntityType a_EntityType, class Vector3 a_Pos, double a_Height, double a_Width) +{ +} + + + + + +bool cEntity::Initialize(class std::unique_ptr > a_Entity,class cWorld & a_World) +{ + return true; +} + + + + + +void cEntity::OnAddToWorld(class cWorld & a_World) +{ +} + + + + + +void cEntity::OnRemoveFromWorld(class cWorld & a_World) +{ +} + + + + + +bool cEntity::IsA(char const * a_Type)const +{ + return true; +} + + + + + +char const * cEntity::GetParentClass(void) const +{ + return ""; +} + + + + + +void cEntity::HandleSpeedFromAttachee(float a_SpeedX,float a_SpeedZ) +{ +} + + + + + + +void cEntity::Destroy(void) +{ +} + + + + + + +bool cEntity::DoTakeDamage(struct TakeDamageInfo & a_TakeDamageInfo) +{ + return true; +} + + + + + + +int cEntity::GetRawDamageAgainst(class cEntity const & a_Entity) +{ + return 0; +} + + + + + + +bool cEntity::ArmorCoversAgainst(enum eDamageType a_DamageType) +{ + return true; +} + + + + + + +float cEntity::GetArmorCoverAgainst(class cEntity const * a_Entity,enum eDamageType a_DamageType,int a_Value) +{ + return 0.0f; +} + + + + + +char const * cEntity::GetClass(void) const +{ + return ""; +} + + + + + +float cEntity::GetEnchantmentCoverAgainst(class cEntity const * a_Entity,enum eDamageType a_DamageType,int a_Value) +{ + return 0.0f; +} + + + + + + +float cEntity::GetEnchantmentBlastKnockbackReduction(void) +{ + return 0.0f; +} + + + + + + +double cEntity::GetKnockbackAmountAgainst(class cEntity const & a_Entity) +{ + return 0.0f; +} + + + + + + +void cEntity::ApplyArmorDamage(int) +{ +} + + + + + + +void cEntity::KilledBy(struct TakeDamageInfo & a_TakeDamageInfo) +{ +} + + + + + + +void cEntity::Heal(int a_Value) +{ +} + + + + + + +void cEntity::Tick(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + + +void cEntity::HandlePhysics(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + + +void cEntity::TickBurning(class cChunk & a_Chunk) +{ +} + + + + + + +void cEntity::DetectCacti(void) +{ +} + + + + + + +bool cEntity::DetectPortal(void) +{ + return true; +} + + + + + + +void cEntity::TickInVoid(class cChunk & a_Chunk) +{ +} + + + + + + +void cEntity::OnStartedBurning(void) +{ +} + + + + + + +void cEntity::OnFinishedBurning(void) +{ +} + + + + + + +void cEntity::TeleportToEntity(class cEntity & a_Entity) +{ +} + + + + + + +void cEntity::TeleportToCoords(double a_XPos, double a_YPos, double a_ZPos) +{ +} + + + + + + +void cEntity::BroadcastMovementUpdate(class cClientHandle const * a_ClientHandle) +{ +} + + + + + + +void cEntity::AttachTo(class cEntity * a_Entity) +{ +} + + + + + + +void cEntity::Detach(void) +{ +} + + + + + + +void cEntity::SetSpeed(double a_XSpeed, double a_YSpeed, double a_ZSpeed) +{ +} + + + + + +void cEntity::DetectMagma(void) +{ +} + + + + + +bool cEntity::MoveToWorld(cWorld & a_World, Vector3d a_NewPosition, bool a_SetPortalCooldown, bool a_ShouldSendRespawn) +{ + return false; +} + + + + + + +void cEntity::HandleAir(void) +{ +} + + + + + + +void cEntity::SetSwimState(class cChunk & a_Chunk) +{ +} + + + + + + +void cEntity::ResetPosition(class Vector3 a_Pos) +{ +} + + + + + +cPawn::cPawn(enum cEntity::eEntityType,double a_Width, double a_Height) : + cEntity(etMonster, Vector3d(), a_Height, a_Width) +{ +} + + + + + +bool cPawn::IsFireproof(void) const +{ + return true; +} + + + + + +bool cPawn::IsInvisible(void) const +{ + return true; +} + + + + + +void cPawn::HandleAir(void) +{ +} + + + + +void cPawn::HandleFalling() +{ +} + + + + + +void cPawn::KilledBy(struct TakeDamageInfo & a_TakeDamageInfo) +{ +} + + + +void cPawn::OnRemoveFromWorld(cWorld & a_World) +{ +} + + + + + +void cPawn::ResetPosition(class Vector3) +{ +} + + + + + +void cPawn::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) +{ +} + + + + + +cMonster::cMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, double a_Width, double a_Height) : + cPawn(etMonster, a_Width, a_Height), + m_PathFinder(a_Width, a_Height) +{ +} + + + +cPathFinder::cPathFinder(double a_Width, double a_Height) +{ + +} + + + + + +void cMonster::OnRemoveFromWorld(class cWorld & a_World) +{ +} + + + + + + +void cMonster::Tick(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + +void cMonster::EventSeePlayer(cPlayer * a_Player, cChunk & a_Chunk) +{ +} + + + + + +void cMonster::InStateChasing(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + +void cMonster::SpawnOn(class cClientHandle & a_ClientHandle) +{ +} + + + + + +bool cMonster::DoTakeDamage(struct TakeDamageInfo & a_TakeDamageInfo) +{ + return true; +} + + + + + +void cMonster::KilledBy(struct TakeDamageInfo & a_TakeDamageInfo) +{ +} + + + + + +void cMonster::OnRightClicked(class cPlayer & a_Player) +{ +} + + + + + +void cMonster::HandleFalling(void) +{ +} + + + + + +void cMonster::MoveToPosition(class Vector3 const & a_Pos) +{ +} + + + + + +void cMonster::CheckEventSeePlayer(class cChunk & a_Chunk) +{ +} + + + + + +bool cMonster::IsUndead(void) +{ + return true; +} + + + + + +void cMonster::EventLosePlayer(void) +{ +} + + + + + +void cMonster::InStateIdle(std::chrono::milliseconds a_Dt ,class cChunk & a_Chunk) +{ +} + + + + + +void cMonster::InStateEscaping(std::chrono::milliseconds a_Dt ,class cChunk & a_Chunk) +{ +} + + + + + +cAggressiveMonster::cAggressiveMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, double a_Width, double a_Height) : + cMonster(a_StringA, a_MonsterType, a_StringB, a_StringC, a_StringD, a_Width, a_Height) +{ +} + + + + + +void cAggressiveMonster::Tick(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + +void cAggressiveMonster::InStateChasing(std::chrono::milliseconds a_Dt, class cChunk & a_Chunk) +{ +} + + + + + + +void cAggressiveMonster::EventSeePlayer(class cPlayer *,class cChunk &) +{ +} + + + + + +bool cAggressiveMonster::Attack(std::chrono::milliseconds a_Dt) +{ + return true; +} -- cgit v1.2.3