Skip to content

Commit

Permalink
Intro improvements:
Browse files Browse the repository at this point in the history
- Fixed decals disappearing after the intro sequence (just spawned them manually, but remove random generation);
- Removed strange guard backward movement;
- Fixed gurads not shooting at the player if the music guard has been triggered;
- Cell door in the intro now closes, fixing a bug where the guards could get stuck in it;
- Fixed being able to walk/run while getting up from bed in the intro sequence;
- Lowered the cell number signs in the intro sequence;
- Added ``EntityParent`` for ``Class D Orientation Leaflet``;
- Removed junk code (extra ``Hide/ShowEntity Light`` (also removed it from everywhere) and extra ``r\Objects``;
- Fixed a bug where afro-american Class D didn't look at SCP-173 when entering the chamber too fast;
- Added warning console message (also added for endings);
- Fixed the ``EscortTerminated`` sound not working in most cases;
- Added warning messages for Ulgrin after giving the ``SCP-173 Document`` (the timer will start from the lastest warning message). While player is reading the document the timer will be slowed down;
- Made the screen blur stronger when the player gets out of bed;
- Corrected position of Class D and Guard corpses in starting location when intro is disabled.
  • Loading branch information
Jabka666 committed Sep 24, 2022
1 parent 6c6d6b0 commit a30df5a
Show file tree
Hide file tree
Showing 4 changed files with 180 additions and 65 deletions.
3 changes: 0 additions & 3 deletions Items.bb
Original file line number Diff line number Diff line change
Expand Up @@ -621,7 +621,6 @@ Function PickItem(item.Items)
Case "1123"
If Not (Wearing714 = 1) Then
If PlayerRoom\RoomTemplate\Name <> "room1123" Then
ShowEntity Light
LightFlash = 7
PlaySound_Strict(LoadTempSound("SFX\SCP\1123\Touch.ogg"))
DeathMSG = "Subject D-9341 was shot dead after attempting to attack a member of Nine-Tailed Fox. Surveillance tapes show that the subject had been "
Expand All @@ -633,7 +632,6 @@ Function PickItem(item.Items)
For e.Events = Each Events
If e\eventname = "room1123" Then
If e\eventstate = 0 Then
ShowEntity Light
LightFlash = 3
PlaySound_Strict(LoadTempSound("SFX\SCP\1123\Touch.ogg"))
EndIf
Expand All @@ -646,7 +644,6 @@ Function PickItem(item.Items)

Return
Case "killbat"
ShowEntity Light
LightFlash = 1.0
PlaySound_Strict(IntroSFX(11))
DeathMSG = "Subject D-9341 found dead inside SCP-914's output booth next to what appears to be an ordinary nine-volt battery. The subject is covered in severe "
Expand Down
6 changes: 1 addition & 5 deletions Main.bb
Original file line number Diff line number Diff line change
Expand Up @@ -3132,15 +3132,13 @@ Repeat

If LightFlash > 0 Then
ShowEntity Light
EntityColor Light,255,255,255
EntityAlpha(Light, Max(Min(LightFlash + Rnd(-0.2, 0.2), 1.0), 0.0))
LightFlash = Max(LightFlash - (FPSfactor / 70.0), 0)
Else
HideEntity Light
;EntityAlpha(Light, LightFlash)
EndIf

EntityColor Light,255,255,255

;[End block]

If KeyHit(KEY_INV) And VomitTimer >= 0 Then
Expand Down Expand Up @@ -5713,7 +5711,6 @@ Function DrawGUI()
;[Block]
If Not (Wearing714 = 1) Then
If PlayerRoom\RoomTemplate\Name <> "room1123" Then
ShowEntity Light
LightFlash = 7
PlaySound_Strict(LoadTempSound("SFX\SCP\1123\Touch.ogg"))
DeathMSG = "Subject D-9341 was shot dead after attempting to attack a member of Nine-Tailed Fox. Surveillance tapes show that the subject had been "
Expand All @@ -5726,7 +5723,6 @@ Function DrawGUI()
For e.Events = Each Events
If e\EventName = "room1123" Then
If e\EventState = 0 Then
ShowEntity Light
LightFlash = 3
PlaySound_Strict(LoadTempSound("SFX\SCP\1123\Touch.ogg"))
EndIf
Expand Down
96 changes: 76 additions & 20 deletions MapSystem.bb
Original file line number Diff line number Diff line change
Expand Up @@ -3984,6 +3984,42 @@ Function FillRoom(r.Rooms)
de.Decals = CreateDecal(0, r\x + 456.0 * RoomScale, 0.005, r\z + 135.0 * RoomScale, 90, Rand(360), 0)
EntityParent(de\obj, r\obj)

Local DecalID%
For i = 0 To 4
Select i
Case 0
xtemp = 4305
ztemp = 1234.0
DecalID = 4
Case 1
xtemp = 5190.0
ztemp = 2270.0
DecalID = 4
Case 2
xtemp = 5222.0
ztemp = 1224.0
DecalID = 4
Case 3
xtemp = 4320.0
ztemp = 2000.0
DecalID = 4
Case 4
xtemp = 4978.0
ztemp = 1985.0
DecalID = 6
End Select
de = CreateDecal(DecalID, r\x + xtemp * RoomScale, r\y + 386.0 * RoomScale, r\z + ztemp * RoomScale, 90.0, 45.0, 0.0)
If i = 0 Then
de\Size = 0.44
ElseIf i = 1
de\Size = 1.2
Else
de\Size = 0.54
EndIf
de\Alpha = Rnd(0.8, 1.0)
ScaleSprite(de\OBJ, de\Size, de\Size)
Next

sc.SecurityCams = CreateSecurityCam(r\x - 336.0 * RoomScale, r\y + 352 * RoomScale, r\z + 48.0 * RoomScale, r, True)
sc\angle = 270
sc\turn = 45
Expand All @@ -3996,21 +4032,13 @@ Function FillRoom(r.Rooms)
EntityParent(sc\ScrObj, r\obj)

r\Objects[2] = CreatePivot()
PositionEntity (r\Objects[2], EntityX(r\obj) + 40.0 * RoomScale, 460.0 * RoomScale, EntityZ(r\obj) + 1072.0 * RoomScale)
PositionEntity(r\Objects[2], EntityX(r\obj) - 200.0 * RoomScale, r\y + 440.0 * RoomScale, EntityZ(r\obj) + 1322.0 * RoomScale)
r\Objects[3] = CreatePivot()
PositionEntity (r\Objects[3], EntityX(r\obj) - 80.0 * RoomScale, 100.0 * RoomScale, EntityZ(r\obj) + 526.0 * RoomScale)
PositionEntity(r\Objects[3], EntityX(r\obj) + 1000.0 * RoomScale, r\y + 120.0 * RoomScale, EntityZ(r\obj) + 666.0 * RoomScale)
r\Objects[4] = CreatePivot()
PositionEntity (r\Objects[4], EntityX(r\obj) - 128.0 * RoomScale, 100.0 * RoomScale, EntityZ(r\obj) + 320.0 * RoomScale)

r\Objects[5] = CreatePivot()
PositionEntity (r\Objects[5], EntityX(r\obj) + 660.0 * RoomScale, 100.0 * RoomScale, EntityZ(r\obj) + 526.0 * RoomScale)
r\Objects[6] = CreatePivot()
PositionEntity (r\Objects[6], EntityX(r\obj) + 700 * RoomScale, 100.0 * RoomScale, EntityZ(r\obj) + 320.0 * RoomScale)
PositionEntity(r\Objects[4], EntityX(r\obj) + 628.0 * RoomScale, r\y + 120.0 * RoomScale, EntityZ(r\obj) + 320.0 * RoomScale)

r\Objects[7] = CreatePivot()
PositionEntity (r\Objects[7], EntityX(r\obj) + 1472.0 * RoomScale, 100.0 * RoomScale, EntityZ(r\obj) + 912.0 * RoomScale)

For i = 2 To 7
For i = 2 To 4
EntityParent(r\Objects[i], r\obj)
Next

Expand Down Expand Up @@ -4408,13 +4436,39 @@ Function FillRoom(r.Rooms)
de\Size = 1.2
ScaleSprite(de\obj, de\Size, de\Size)

For xtemp% = 0 To 1
For ztemp% = 0 To 1
de.Decals = CreateDecal(Rand(4, 6), r\x + 700.0 * RoomScale + xtemp * 700.0 * RoomScale + Rnd(-0.5, 0.5), Rnd(0.001, 0.0018), r\z + 600 * ztemp * RoomScale + Rnd(-0.5, 0.5), 90, Rnd(360), 0)
de\Size = Rnd(0.5, 0.8)
de\Alpha = Rnd(0.8, 1.0)
ScaleSprite(de\obj, de\Size, de\Size)
Next
For i = 0 To 4
Select i
Case 0
xtemp = 1472.0
ztemp = 912.0
DecalID = 4
Case 1
xtemp = 587.0
ztemp = -70.0
DecalID = 4
Case 2
xtemp = 1504.0
ztemp = -80.0
DecalID = 4
Case 3
xtemp = 602.0
ztemp = 642.0
DecalID = 4
Case 4
xtemp = 1260.0
ztemp = 627.0
DecalID = 6
End Select
de = CreateDecal(DecalID, r\x + xtemp * RoomScale, r\y + 2.0 * RoomScale, r\z + ztemp * RoomScale, 90.0, 45.0, 0.0)
If i = 0 Then
de\Size = 1.2
ElseIf i = 1
de\Size = 0.44
Else
de\Size = 0.54
EndIf
de\Alpha = Rnd(0.8, 1.0)
ScaleSprite(de\OBJ, de\Size, de\Size)
Next

;AddLight(r, r\x-224.0*RoomScale, r\y+640.0*RoomScale, r\z+128.0*RoomScale,2,2,200,200,200)
Expand Down Expand Up @@ -4485,7 +4539,8 @@ Function FillRoom(r.Rooms)
Next
Next

CreateItem("Class D Orientation Leaflet", "paper", r\x-(2914+1024)*RoomScale, 170.0*RoomScale, r\z+40*RoomScale)
it = CreateItem("Class D Orientation Leaflet", "paper", r\x-(2914+1024)*RoomScale, 170.0*RoomScale, r\z+40*RoomScale)
EntityParent(it\Collider, r\obj)

sc.SecurityCams = CreateSecurityCam(r\x - 4048.0 * RoomScale, r\y - 32.0 * RoomScale, r\z - 1232.0 * RoomScale, r, True)
sc\angle = 270
Expand All @@ -4503,6 +4558,7 @@ Function FillRoom(r.Rooms)
EntityPickMode r\Objects[9],2

r\Objects[10] = LoadMesh_Strict("GFX\map\intro_labels.b3d",r\obj)
PositionEntity(r\Objects[10], r\x, r\y - 15.0 * RoomScale, r\z, True)
;[End Block]
Case "room2ccont"
;[Block]
Expand Down
Loading

0 comments on commit a30df5a

Please sign in to comment.