foley for wooden doors

This commit is contained in:
minjaesong
2024-01-20 21:05:46 +09:00
parent c66e4077bf
commit 6b33850a8b
8 changed files with 34 additions and 9 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -285,13 +285,15 @@ Sound from <https://www.freesound.org/people/klankbeeld>
$BULLET Footstep sound recordings: $BULLET Foleys:
- GRSS_01..06.ogg - steps/GRSS.*.ogg
- GRVL_01..07.ogg - steps/GRVL.*.ogg
- ROCK_01..09.ogg - steps/ROCK.*.ogg
- SAND_01..04.ogg - steps/SAND.*.ogg
- WOOD_01..03.ogg - steps/WOOD.*.ogg
- door/wooden_open.*.ogg
- door/wooden_close.*.ogg
Copyright (C) 2020, 2021, 2022 Nox Sound Copyright (C) 2020, 2021, 2022 Nox Sound
Sound from <https://freesound.org/people/Nox_Sound> Sound from <https://freesound.org/people/Nox_Sound>

View File

@@ -35,6 +35,8 @@ open class FixtureSwingingDoorBase : FixtureBase {
var doorOpenedHoldLength: Second = 0.25f var doorOpenedHoldLength: Second = 0.25f
var nameKey = "DOOR_BASE" // goes into the savegame var nameKey = "DOOR_BASE" // goes into the savegame
var nameKeyReadFromLang = true // goes into the savegame var nameKeyReadFromLang = true // goes into the savegame
var audioIdForOpening = "effects.door.wooden_open"
var audioIdForClosing = "effects.door.wooden_close"
/* END OF CUTOMISABLE PARAMETERS */ /* END OF CUTOMISABLE PARAMETERS */
private var tilewiseHitboxWidth = tw * 2 - twClosed private var tilewiseHitboxWidth = tw * 2 - twClosed
@@ -164,35 +166,38 @@ open class FixtureSwingingDoorBase : FixtureBase {
shadeBoxList[0].light = Cvec(0) shadeBoxList[0].light = Cvec(0)
} }
open protected fun closeDoor(doorHandler: Int) { protected open fun closeDoor(doorHandler: Int) {
if (doorState != 0) { if (doorState != 0) {
(sprite!! as SheetSpriteAnimation).currentRow = 0 (sprite!! as SheetSpriteAnimation).currentRow = 0
doorState = 0 doorState = 0
placeActorBlocks() placeActorBlocks()
lastDoorHandler = doorHandler lastDoorHandler = doorHandler
if (!isOpacityActuallyLuminosity) setOpacity() if (!isOpacityActuallyLuminosity) setOpacity()
Terrarum.audioCodex.getRandomAudio(audioIdForClosing)?.let { startAudio(it) }
} }
doorCloseQueued = false doorCloseQueued = false
} }
open protected fun openToRight(doorHandler: Int) { protected open fun openToRight(doorHandler: Int) {
if (doorState != 1) { if (doorState != 1) {
(sprite!! as SheetSpriteAnimation).currentRow = 1 (sprite!! as SheetSpriteAnimation).currentRow = 1
doorState = 1 doorState = 1
placeActorBlocks() placeActorBlocks()
lastDoorHandler = doorHandler lastDoorHandler = doorHandler
if (!isOpacityActuallyLuminosity) unsetOpacity() if (!isOpacityActuallyLuminosity) unsetOpacity()
Terrarum.audioCodex.getRandomAudio(audioIdForOpening)?.let { startAudio(it) }
} }
doorCloseQueued = false doorCloseQueued = false
} }
open protected fun openToLeft(doorHandler: Int) { protected open fun openToLeft(doorHandler: Int) {
if (doorState != -1) { if (doorState != -1) {
(sprite!! as SheetSpriteAnimation).currentRow = 2 (sprite!! as SheetSpriteAnimation).currentRow = 2
doorState = -1 doorState = -1
placeActorBlocks() placeActorBlocks()
lastDoorHandler = doorHandler lastDoorHandler = doorHandler
if (!isOpacityActuallyLuminosity) unsetOpacity() if (!isOpacityActuallyLuminosity) unsetOpacity()
Terrarum.audioCodex.getRandomAudio(audioIdForOpening)?.let { startAudio(it) }
} }
doorCloseQueued = false doorCloseQueued = false
} }