2016-10-13 22:40:20 +00:00
|
|
|
|
|
|
|
|
|
|
|
//==========================================================================
|
|
|
|
//
|
|
|
|
// Ice chunk
|
|
|
|
//
|
|
|
|
//==========================================================================
|
|
|
|
|
|
|
|
class IceChunk : Actor
|
|
|
|
{
|
|
|
|
Default
|
|
|
|
{
|
|
|
|
Radius 3;
|
|
|
|
Height 4;
|
|
|
|
Mass 5;
|
|
|
|
Gravity 0.125;
|
|
|
|
+DROPOFF
|
|
|
|
+CANNOTPUSH
|
|
|
|
+FLOORCLIP
|
|
|
|
+NOTELEPORT
|
|
|
|
+NOBLOCKMAP
|
|
|
|
+MOVEWITHSECTOR
|
|
|
|
}
|
2016-12-02 17:52:58 +00:00
|
|
|
|
|
|
|
void A_IceSetTics ()
|
|
|
|
{
|
|
|
|
tics = 70 + (random[IceTics]() & 63);
|
|
|
|
Name dtype = GetFloorTerrain().DamageMOD;
|
|
|
|
if (dtype == 'Fire')
|
|
|
|
{
|
|
|
|
tics >>= 2;
|
|
|
|
}
|
|
|
|
else if (dtype == 'Ice')
|
|
|
|
{
|
|
|
|
tics <<= 1;
|
|
|
|
}
|
|
|
|
}
|
2016-10-13 22:40:20 +00:00
|
|
|
|
|
|
|
States
|
|
|
|
{
|
|
|
|
Spawn:
|
|
|
|
ICEC ABCD 10 A_IceSetTics;
|
|
|
|
Stop;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//==========================================================================
|
|
|
|
//
|
|
|
|
// A chunk of ice that is also a player
|
|
|
|
//
|
|
|
|
//==========================================================================
|
|
|
|
|
|
|
|
class IceChunkHead : PlayerChunk
|
|
|
|
{
|
|
|
|
Default
|
|
|
|
{
|
|
|
|
Radius 3;
|
|
|
|
Height 4;
|
|
|
|
Mass 5;
|
|
|
|
Gravity 0.125;
|
|
|
|
DamageType "Ice";
|
|
|
|
+DROPOFF
|
|
|
|
+CANNOTPUSH
|
|
|
|
}
|
|
|
|
States
|
|
|
|
{
|
|
|
|
Spawn:
|
|
|
|
ICEC A 0;
|
|
|
|
ICEC A 10 A_CheckPlayerDone;
|
|
|
|
wait;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|