diff --git a/makefile.gaz b/makefile.gaz index b0f0342b8..572ea353c 100644 --- a/makefile.gaz +++ b/makefile.gaz @@ -99,7 +99,8 @@ platform_src := platform \ pretract \ pbranch \ ppendulm \ - pseesaw + pseesaw \ + pbounce hazard_src := hazard \ hfalling \ diff --git a/source/platform/platdata.cpp b/source/platform/platdata.cpp index ac8f5e986..2b09fefde 100644 --- a/source/platform/platdata.cpp +++ b/source/platform/platdata.cpp @@ -232,6 +232,20 @@ CNpcPlatform::NPC_PLATFORM_DATA CNpcPlatform::m_data[NPC_PLATFORM_TYPE_MAX] = NPC_PLATFORM_TIMER_NONE, }, + { // NPC_BOUNCE_PLATFORM + ACTORS_CLAM_SBK, + ANIM_CLAM_SIDESNAP, + 3, + 128, + true, + DAMAGE__NONE, + 0, + 4, + NPC_PLATFORM_INFINITE_LIFE, + 4, + NPC_PLATFORM_TIMER_NONE, + }, + { // NPC_PLAYER_BUBBLE_PLATFORM ACTORS_CLAM_SBK, ANIM_CLAM_SIDESNAP, @@ -264,5 +278,6 @@ CNpcPlatform::NPC_PLATFORM_UNIT_TYPE CNpcPlatform::mapEditConvertTable[NPC_PLATF NPC_SEESAW_PLATFORM, NPC_OILDRUM_PLATFORM, NPC_CRATE_PLATFORM, + NPC_BOUNCE_PLATFORM, NPC_PLAYER_BUBBLE_PLATFORM, }; diff --git a/source/platform/platform.cpp b/source/platform/platform.cpp index dee4ded48..b6d2b83e8 100644 --- a/source/platform/platform.cpp +++ b/source/platform/platform.cpp @@ -95,6 +95,10 @@ #include "platform\pseesaw.h" #endif +#ifndef __PLATFORM_PBOUNCE_H__ +#include "platform\pbounce.h" +#endif + #ifndef __PLATFORM_PPLAYER_H__ #include "platform\pplayer.h" #endif @@ -205,6 +209,12 @@ CNpcPlatform *CNpcPlatform::Create(sThingPlatform *ThisPlatform) break; } + case NPC_BOUNCE_PLATFORM: + { + platform = new ("bounce platform") CNpcBouncePlatform; + break; + } + default: { ASSERT( 0 ); diff --git a/source/platform/platform.h b/source/platform/platform.h index e7cda2d20..daf262248 100644 --- a/source/platform/platform.h +++ b/source/platform/platform.h @@ -57,6 +57,7 @@ public: NPC_SEESAW_PLATFORM, NPC_OILDRUM_PLATFORM, NPC_CRATE_PLATFORM, + NPC_BOUNCE_PLATFORM, NPC_PLAYER_BUBBLE_PLATFORM, NPC_PLATFORM_TYPE_MAX, }; diff --git a/tools/Data/bin/MkLevel.ini b/tools/Data/bin/MkLevel.ini index 960cbbca3..ca421a83b 100644 --- a/tools/Data/bin/MkLevel.ini +++ b/tools/Data/bin/MkLevel.ini @@ -93,6 +93,8 @@ Barrel=2 OilDrum=13 Crate=14 Loveboat=9 +BouncyRing=15 +BouncyTyre=15 #Wooden ################################################ diff --git a/tools/MapEdit/platform.ini b/tools/MapEdit/platform.ini index b3971af16..ef3d4de39 100644 --- a/tools/MapEdit/platform.ini +++ b/tools/MapEdit/platform.ini @@ -54,3 +54,8 @@ Gfx=..\..\Graphics\platforms\seesaw\seesaw_wooden.gin [Wooden] Gfx=..\..\Graphics\platforms\Wooden\Wooden.gin +[BouncyRing] +Gfx=..\..\Graphics\platforms\bouncy_ring\bouncy_ring.gin + +[BouncyTyre] +Gfx=..\..\Graphics\platforms\bouncy_tyre\bouncy_tyre.gin diff --git a/users/paul/spongebob project/spongebob project.dsp b/users/paul/spongebob project/spongebob project.dsp index 6d6ce49ab..13b488dce 100644 --- a/users/paul/spongebob project/spongebob project.dsp +++ b/users/paul/spongebob project/spongebob project.dsp @@ -1057,6 +1057,14 @@ SOURCE=..\..\..\source\platform\pbob.h # End Source File # Begin Source File +SOURCE=..\..\..\source\platform\pbounce.cpp +# End Source File +# Begin Source File + +SOURCE=..\..\..\source\platform\pbounce.h +# End Source File +# Begin Source File + SOURCE=..\..\..\source\platform\pbranch.cpp # End Source File # Begin Source File