Add floor passing beep
This commit is contained in:
parent
8fc57f0535
commit
6152a079ab
@ -435,6 +435,8 @@ function celevator.controller.finish(pos,mem,changedinterrupts)
|
||||
celevator.drives[drivetype].movedoors(drivepos,"close")
|
||||
elseif command.command == "resetfault" then
|
||||
celevator.drives[drivetype].resetfault(drivepos)
|
||||
elseif command.command == "pibeep" then
|
||||
celevator.drives[drivetype].pibeep(drivepos)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -852,6 +852,8 @@ else
|
||||
mem.showrunning = false
|
||||
end
|
||||
|
||||
local oldpifloor = mem.pifloor
|
||||
|
||||
mem.pifloor = mem.params.floornames[getpos(true)]
|
||||
local hidepi = {
|
||||
bfdemand = true,
|
||||
@ -863,6 +865,11 @@ local hidepi = {
|
||||
inspconflict = true,
|
||||
}
|
||||
if hidepi[mem.carstate] then mem.pifloor = "--" end
|
||||
|
||||
if mem.pifloor ~= oldpifloor and mem.carstate == "normal" then
|
||||
drivecmd({command="pibeep"})
|
||||
end
|
||||
|
||||
local arrowenabled = {
|
||||
normal = true,
|
||||
fs1 = true,
|
||||
|
@ -563,6 +563,22 @@ function celevator.drives.entity.resetfault(pos)
|
||||
minetest.get_meta(pos):set_string("fault","")
|
||||
end
|
||||
|
||||
function celevator.drives.entity.pibeep(drivepos)
|
||||
local drivemeta = minetest.get_meta(drivepos)
|
||||
local origin = minetest.string_to_pos(drivemeta:get_string("origin"))
|
||||
if not origin then
|
||||
minetest.log("error","[celevator] [entity drive] Invalid origin for drive at "..minetest.pos_to_string(drivepos))
|
||||
drivemeta:set_string("fault","badorigin")
|
||||
return
|
||||
end
|
||||
local apos = tonumber(drivemeta:get_string("apos")) or 0
|
||||
local beeppos = vector.add(origin,vector.new(0,apos+2,0))
|
||||
minetest.sound_play("celevator_pi_beep",{
|
||||
pos = beeppos,
|
||||
gain = 1,
|
||||
},true)
|
||||
end
|
||||
|
||||
local function carsearch(pos)
|
||||
for i=1,500,1 do
|
||||
local searchpos = vector.subtract(pos,vector.new(0,i,0))
|
||||
|
@ -234,3 +234,7 @@ end
|
||||
function celevator.drives.null.updatecopformspec()
|
||||
--No car means no COP
|
||||
end
|
||||
|
||||
function celevator.drives.null.pibeep()
|
||||
--No car means no PI, no PI means no beep
|
||||
end
|
||||
|
BIN
sounds/celevator_pi_beep.ogg
Normal file
BIN
sounds/celevator_pi_beep.ogg
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user