2022-11-25 23:19:37 +00:00
|
|
|
|
|
|
|
class RedneckBell : DukeActor
|
|
|
|
{
|
|
|
|
default
|
|
|
|
{
|
|
|
|
pic "BIGBELL";
|
|
|
|
}
|
|
|
|
|
|
|
|
override void OnHit(DukeActor proj)
|
|
|
|
{
|
|
|
|
self.PlayActorSound("BELL");
|
|
|
|
}
|
2022-12-03 16:54:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
class RedneckMusicNotes : DukeActor
|
|
|
|
{
|
|
|
|
default
|
|
|
|
{
|
|
|
|
pic "MUSICNOTES";
|
2022-12-19 09:29:01 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override void Initialize()
|
|
|
|
{
|
|
|
|
self.lotag = -1;
|
|
|
|
self.clipdist = 0;
|
2022-12-03 16:54:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override bool OnUse(DukePlayer user)
|
|
|
|
{
|
|
|
|
if (!self.CheckSoundPlaying("PIANO_P3"))
|
|
|
|
self.PlayActorSound("PIANO_P3");
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class RedneckJoe9000 : DukeActor
|
|
|
|
{
|
|
|
|
default
|
|
|
|
{
|
|
|
|
pic "JOE9000";
|
2022-12-19 09:29:01 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override void Initialize()
|
|
|
|
{
|
|
|
|
self.lotag = 1;
|
|
|
|
self.clipdist = 0;
|
2022-12-03 16:54:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
}
|
2022-12-05 10:27:25 +00:00
|
|
|
|
|
|
|
class RedneckPopcorn : DukeActor
|
|
|
|
{
|
|
|
|
default
|
|
|
|
{
|
|
|
|
pic "POPCORN";
|
|
|
|
}
|
|
|
|
}
|
2022-12-10 22:40:58 +00:00
|
|
|
|
|
|
|
|
|
|
|
class RedneckBellSwitch : DukeActor
|
|
|
|
{
|
|
|
|
default
|
|
|
|
{
|
|
|
|
spriteset "BELLSWITCH", "BELLSWITCHON", "BELLSWITCHOFF";
|
|
|
|
}
|
|
|
|
|
|
|
|
override bool TriggerSwitch(DukePlayer activator)
|
|
|
|
{
|
|
|
|
if (self.spritesetindex == 1 || dlevel.check_activator_motion(lotag)) return true;
|
|
|
|
|
|
|
|
self.detail = 132;
|
|
|
|
self.setSpriteSetImage(1);
|
|
|
|
self.changeStat(STAT_MISC); // needs to be made to call Tick
|
2022-12-29 12:55:59 +00:00
|
|
|
return 2; // 2 lets the switch code perform the trigger action without messing around with this actor.
|
2022-12-10 22:40:58 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override void Tick()
|
|
|
|
{
|
|
|
|
if (self.detail > 0)
|
|
|
|
{
|
|
|
|
self.detail--;
|
|
|
|
if (self.detail == 0)
|
|
|
|
self.SetSpritesetImage(2); // stop animating
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|