mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-15 08:51:24 +00:00
- scriptified two of RRRA's special effects.
This commit is contained in:
parent
3ee28eb600
commit
9641d3f712
4 changed files with 54 additions and 39 deletions
|
@ -1595,34 +1595,6 @@ void checksectors_r(int snum)
|
||||||
else
|
else
|
||||||
switch (neartagsprite->spr.picnum)
|
switch (neartagsprite->spr.picnum)
|
||||||
{
|
{
|
||||||
case MUSICNOTES:
|
|
||||||
if (!isRRRA()) return;
|
|
||||||
if (!S_CheckActorSoundPlaying(neartagsprite, 340))
|
|
||||||
S_PlayActorSound(340, neartagsprite);
|
|
||||||
return;
|
|
||||||
case JOE9000:
|
|
||||||
if (!isRRRA()) return;
|
|
||||||
if (numplayers == 1)
|
|
||||||
{
|
|
||||||
// This is from RedneckGDX - the version in RR Reconstruction looked like broken nonsense.
|
|
||||||
if (S_CheckActorSoundPlaying(neartagsprite, 445) || ud.joe9000 != 0)
|
|
||||||
{
|
|
||||||
if (!S_CheckActorSoundPlaying(neartagsprite, 445) && !S_CheckActorSoundPlaying(neartagsprite, 446) &&
|
|
||||||
!S_CheckActorSoundPlaying(neartagsprite, 447) && ud.joe9000 != 0)
|
|
||||||
{
|
|
||||||
if ((krand() % 2) == 1)
|
|
||||||
S_PlayActorSound(446, neartagsprite);
|
|
||||||
else
|
|
||||||
S_PlayActorSound(447, neartagsprite);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
S_PlayActorSound(445, neartagsprite);
|
|
||||||
ud.joe9000 = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
case EMPTYBIKE:
|
case EMPTYBIKE:
|
||||||
if (!isRRRA()) return;
|
if (!isRRRA()) return;
|
||||||
OnMotorcycle(p, neartagsprite);
|
OnMotorcycle(p, neartagsprite);
|
||||||
|
|
|
@ -66,16 +66,6 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
|
||||||
act->spr.scale = DVector2(0, 0);
|
act->spr.scale = DVector2(0, 0);
|
||||||
ps[screenpeek].sea_sick_stat = 1;
|
ps[screenpeek].sea_sick_stat = 1;
|
||||||
break;
|
break;
|
||||||
case MUSICNOTES:
|
|
||||||
if (!isRRRA()) goto default_case;
|
|
||||||
act->spr.lotag = 1;
|
|
||||||
act->clipdist = 0;
|
|
||||||
break;
|
|
||||||
case JOE9000:
|
|
||||||
if (!isRRRA()) goto default_case;
|
|
||||||
act->spr.lotag = 1;
|
|
||||||
act->clipdist = 0;
|
|
||||||
break;
|
|
||||||
case RRTILE8193:
|
case RRTILE8193:
|
||||||
if (!isRRRA()) goto default_case;
|
if (!isRRRA()) goto default_case;
|
||||||
act->spr.scale = DVector2(0, 0);
|
act->spr.scale = DVector2(0, 0);
|
||||||
|
|
|
@ -49,6 +49,8 @@ spawnclasses
|
||||||
8099 = RedneckPiano
|
8099 = RedneckPiano
|
||||||
8094 = RedneckPianoKeys
|
8094 = RedneckPianoKeys
|
||||||
8679 = RedneckSnakeRiverSign
|
8679 = RedneckSnakeRiverSign
|
||||||
|
8448 = RedneckMusicNotes
|
||||||
|
8704 = RedneckJoe9000
|
||||||
|
|
||||||
7636 = DukeGenericDestructible, "OLDPHOTO0", "OLDPHOTO0BROKE", "VENT_BUST"
|
7636 = DukeGenericDestructible, "OLDPHOTO0", "OLDPHOTO0BROKE", "VENT_BUST"
|
||||||
7638 = DukeGenericDestructible, "OLDPHOTO1", "OLDPHOTO1BROKE", "VENT_BUST"
|
7638 = DukeGenericDestructible, "OLDPHOTO1", "OLDPHOTO1BROKE", "VENT_BUST"
|
||||||
|
|
|
@ -11,3 +11,54 @@ class RedneckBell : DukeActor
|
||||||
self.PlayActorSound("BELL");
|
self.PlayActorSound("BELL");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class RedneckMusicNotes : DukeActor
|
||||||
|
{
|
||||||
|
default
|
||||||
|
{
|
||||||
|
pic "MUSICNOTES";
|
||||||
|
lotag -1;
|
||||||
|
clipdist 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
override bool OnUse(DukePlayer user)
|
||||||
|
{
|
||||||
|
if (!self.CheckSoundPlaying("PIANO_P3"))
|
||||||
|
self.PlayActorSound("PIANO_P3");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class RedneckJoe9000 : DukeActor
|
||||||
|
{
|
||||||
|
default
|
||||||
|
{
|
||||||
|
pic "JOE9000";
|
||||||
|
lotag 1;
|
||||||
|
clipdist 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
override bool OnUse(DukePlayer user)
|
||||||
|
{
|
||||||
|
if (ud.multimode < 2)
|
||||||
|
{
|
||||||
|
if (ud.joe9000 != 0)
|
||||||
|
{
|
||||||
|
if (!self.CheckSoundPlaying("JOE9000A") && !self.CheckSoundPlaying("JOE9000B") && !self.CheckSoundPlaying("JOE9000C"))
|
||||||
|
{
|
||||||
|
if (random(0, 1))
|
||||||
|
self.PlayActorSound("JOE9000B");
|
||||||
|
else
|
||||||
|
self.PlayActorSound("JOE9000C");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
self.PlayActorSound("JOE9000A");
|
||||||
|
ud.joe9000 = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue