diff --git a/makefile.gaz b/makefile.gaz index e9a234553..1180f6579 100644 --- a/makefile.gaz +++ b/makefile.gaz @@ -137,7 +137,8 @@ platform_src := platform \ plurve \ psoil \ pbubtube \ - pgbubble + pgbubble \ + pfblock hazard_src := hazard \ hfalling \ diff --git a/source/platform/platdata.cpp b/source/platform/platdata.cpp index b784b3716..9a5c9507e 100644 --- a/source/platform/platdata.cpp +++ b/source/platform/platdata.cpp @@ -538,6 +538,18 @@ CNpcPlatform::NPC_PLATFORM_DATA CNpcPlatform::m_data[NPC_PLATFORM_TYPE_MAX] = 0, NPC_PLATFORM_TIMER_NONE, }, + + { // NPC_FALLING_BLOCK_PLATFORM + 5, + 128, + true, + DAMAGE__NONE, + 0, + 2, + NPC_PLATFORM_INFINITE_LIFE, + 0, + NPC_PLATFORM_TIMER_NONE, + }, }; CNpcPlatform::NPC_PLATFORM_UNIT_TYPE CNpcPlatform::mapEditConvertTable[NPC_PLATFORM_TYPE_MAX] = @@ -580,6 +592,7 @@ CNpcPlatform::NPC_PLATFORM_UNIT_TYPE CNpcPlatform::mapEditConvertTable[NPC_PLATF NPC_LOVE_BOAT_PLATFORM, NPC_STEERABLE_OILDRUM_PLATFORM, NPC_BUBBLE_TUBE_PLATFORM, + NPC_FALLING_BLOCK_PLATFORM, NPC_CONVEYOR_PLATFORM, NPC_PLAYER_BUBBLE_PLATFORM, NPC_CLAM_PLATFORM, diff --git a/source/platform/platform.cpp b/source/platform/platform.cpp index e2aed5942..e60e3bb4e 100644 --- a/source/platform/platform.cpp +++ b/source/platform/platform.cpp @@ -207,6 +207,10 @@ #include "platform\pgbubble.h" #endif +#ifndef __PLATFORM_PFBLOCK_H__ +#include "platform\pfblock.h" +#endif + #include "fx\fx.h" #include "fx\fxjfish.h" @@ -463,6 +467,12 @@ CNpcPlatform *CNpcPlatform::Create(int Type) break; } + case NPC_FALLING_BLOCK_PLATFORM: + { + platform = new ("falling block platform") CNpcFallingBlockPlatform; + break; + } + case NPC_CLAM_PLATFORM: { platform = new ("clam platform") CNpcClamPlatform; diff --git a/source/platform/platform.h b/source/platform/platform.h index b2de671a1..fe15dfde8 100644 --- a/source/platform/platform.h +++ b/source/platform/platform.h @@ -95,6 +95,7 @@ public: NPC_LOVE_BOAT_PLATFORM, NPC_STEERABLE_OILDRUM_PLATFORM, NPC_BUBBLE_TUBE_PLATFORM, + NPC_FALLING_BLOCK_PLATFORM, NPC_PLATFORM_TYPE_MAX, }; enum diff --git a/tools/Data/bin/MkLevel.ini b/tools/Data/bin/MkLevel.ini index 53bd30e62..68439531f 100644 --- a/tools/Data/bin/MkLevel.ini +++ b/tools/Data/bin/MkLevel.ini @@ -126,6 +126,7 @@ RockBridge=32 SteamSwitch=33 LiftPlatform=34 BubbleTubePlatform=37 +FallingBlockPlatform=38 ################################################ # Triggers diff --git a/tools/MapEdit/platform.ini b/tools/MapEdit/platform.ini index b78e8b28c..6be2d060d 100644 --- a/tools/MapEdit/platform.ini +++ b/tools/MapEdit/platform.ini @@ -147,3 +147,6 @@ Gfx=..\..\Graphics\platforms\Industrial\Industrial.gin [BubbleTubePlatform] Gfx=..\..\Graphics\platforms\Oilrig2\oilrigplatform2.gin + +[FallingBlockPlatform] +Gfx=..\..\Graphics\platforms\fallingrock\fallingrock.gin \ No newline at end of file diff --git a/users/paul/spongebob project/spongebob project.dsp b/users/paul/spongebob project/spongebob project.dsp index ce83b408c..e44f8b82f 100644 --- a/users/paul/spongebob project/spongebob project.dsp +++ b/users/paul/spongebob project/spongebob project.dsp @@ -1561,6 +1561,14 @@ SOURCE=..\..\..\source\platform\pfallnor.h # End Source File # Begin Source File +SOURCE=..\..\..\source\platform\pfblock.cpp +# End Source File +# Begin Source File + +SOURCE=..\..\..\source\platform\pfblock.h +# End Source File +# Begin Source File + SOURCE=..\..\..\source\platform\pfgen.cpp # End Source File # Begin Source File