tbamud/lib/world/trg/653.trg
Steaphan Greene c59c321d5d TBA data file whitespace cleanups. (#66)
This just converts the few DOS text files still in here to standard text files (line-endings),
removes all the trailing spaces on lines, removes all the trailing blank lines, and replaces
all the tabs (except in .zon files, where they seem to be common) with expanded spaces.

It's easy to confirm this is actually a non-change, except for whitespace:
* `git show -w` shows this commit as only removing 8 trailing blank lines.

This should make no difference to tbaMUD itself, but it will make working on these files,
especially with scripts and automated tools, much easier.

This is the base change for a set of other changes I will put up once/if this merges,
without this, the others are just too complicated to wrangle.
2019-11-18 12:53:47 -05:00

249 lines
7 KiB
Text

#65302
Running the Elevator~
2 c 100
*~
* Written December 22, 2014 by Parnassus for TBAmud
* Thanks to Fizban for writing an Elevator trigger, and Rumble for posting it as
* a Trigger of the day, which made me decide that my Housing project
* apartment really needed an elevator.
* Thanks to Axanon for letting me look at his really nice elevator triggers.
* Be prepared for errors, use at your own risk.
* Any errors are mine, any people named in this trigger are blameless!
*
* Parnassus' Special Anti-Freeze Formula
if %cmd.mudcommand% == nohassle
return 0
halt
end
*
* Variable assignments: make changes here.
* Thanks to Krell for helping me work out this format which is especially
* good for a stand-alone trigger!
* adjust zone number
* set maxfl to the highest floor number. To make a penthouse, make adjustments
* similar to the Ground floor here. If you add more than 20 floors, switch to the
* commented line using CURFL instead of the one using ORDINAL .
* add additional floors along with %zone% and room number of the linking room.
* (Also add mention of button and display in the linking room. Set up door to the
* elevator, flagged as 2 - Pickproof door.)
set zone 653
set maxfl 4
set totfl 5
set Elevat %zone%99
set Floor0 %zone%98
set Floor1 %zone%06
set Floor2 %zone%14
set Floor3 %zone%22
set Floor4 %zone%30
* Which side of the elevator is the door on?
set elevdoor north
* Which side of the room is the elevator on?
set roomdoor south
** Thanks to Thomas for the formula that makes this part work.
eval temp %%Elevat.%elevdoor%(vnum)%%
eval eleroom %temp%
if %eleroom% == %Floor1%
set CurFl 1
set Curex %Floor1%
elseif %eleroom% == %Floor2%
set CurFl 2
set Curex %Floor2%
elseif %eleroom% == %Floor3%
set CurFl 3
set Curex %Floor3%
elseif %eleroom% == %Floor4%
set CurFl 4
set Curex %Floor4%
elseif %eleroom% == %Floor0%
set CurFl 0
set Curex %Floor0%
end
if %cmd% == push
if %arg% == g || %arg% >= 1 && %arg% <= %maxfl%
if %self.vnum% != %Elevat%
%send% %actor% You don't see that here.
halt
else
** Thanks to Kyle for figuring out how to make this part work.
eval text %%self.%elevdoor%(bits)%%
if %text.contains(LOCKED)% && !%text.contains(PICKPROOF)%
%send% %actor% The elevator is already in motion. Please be patient.
halt
end
end
if %arg% == g
set %arg% 0
set targfl 0
set Tarex %Floor0%
elseif %arg% == 1
set Tarex %Floor1%
set targfl 1
elseif %arg% == 2
set Tarex %Floor2%
set targfl 2
elseif %arg% == 3
set Tarex %Floor3%
set targfl 3
elseif %arg% == 4
set Tarex %Floor4%
set targfl 4
end
elseif %arg% == button
if %self.vnum% == %Elevat%
%send% %actor% Which button?
halt
else
eval text %%self.%roomdoor%(bits)%%
if !%text.contains(CLOSED)%
%send% %actor% The elevator is already here.
halt
elseif %text.contains(LOCKED)% && !%text.contains(PICKPROOF)%
%send% %actor% The elevator is already in use. Please wait and try again.
halt
end
end
else
%send% %actor% You don't see that here.
halt
end
if %self.vnum% == %Floor0%
set Tarex %Floor0%
set targfl 0
elseif %self.vnum% == %Floor1%
set Tarex %Floor1%
set targfl 1
elseif %self.vnum% == %Floor2%
set Tarex %Floor2%
set targfl 2
elseif %self.vnum% == %Floor3%
set Tarex %Floor3%
set targfl 3
elseif %self.vnum% == %Floor4%
set Tarex %Floor4%
set targfl 4
end
if %targfl% == g
set dir down
eval length %Curfl%
elseif %targfl% > %Curfl%
set dir up
eval length %targfl% - %Curfl%
elseif %targfl% < %Curfl%
set dir down
eval length %Curfl% - %targfl%
else
set dir nowhere
set length 0
end
%at% %Elevat% %echo% The elevator doors slide shut.
%at% %Curex% %echo% The elevator doors slide shut.
wait 5
set echofl 0
while %echofl% < %totfl%
eval temp %%Floor%echofl%%%
%at% %temp% %echo% The elevator doors start to vibrate.
%door% %temp% %roomdoor% flags abc
eval echofl %echofl% + 1
done
if %length% > 0
set origlen %length%
%door% %Curex% %roomdoor% flags abc
%door% %Elevat% %elevdoor% purge
%door% %Elevat% %elevdoor% room %Elevat%
%door% %Elevat% %elevdoor% flags abc
%at% %Elevat% %echo% The elevator @g*l u r c h e s*@n
%at% %Elevat% %echo% @n @G*l u r c h e s*@n
%at% %Elevat% %echo% @n @g*l u r c h e s*@n %dir%wards.
end
while %length%
if %dir% == up
eval Curfl %Curfl% + 1
elseif %dir% == down
eval Curfl %Curfl% -1
end
if %Curfl% == 0
set ordinal ground
elseif %Curfl% == 1
set ordinal 1st
elseif %Curfl% == 2
set ordinal 2nd
elseif %Curfl% == 3
set ordinal 3rd
elseif %Curfl% > 3
set ordinal %Curfl%th
end
wait 15
%at% %Elevat% %echo% @g *DING!*@n
%at% %Elevat% %echo% You have reached the %ordinal% floor.
* It's easier to use the following line if you have over 20 floors (instead of the 21th floor)
* %at% %Elevat% %echo% You have reached floor %Curfl%.
wait 5
eval length %length% - 1
if %CurFl% > %maxfl%
%echo%@r Something seems to be wrong with the elevator.@n
%echo%@r Please try again and if there's still a problem,@n
%echo%@r please report this to admin.@n
set length 0
end
done
if %origlen% > 0
wait 2
%at% %Elevat% %echo% @nThe elevator @y*s h u d d e r s*@n
%at% %Elevat% %echo% @n @Y*s h u d d e r s*@n
%at% %Elevat% %echo% @n @y*s h u d d e r s*@n to a halt.
end
wait 2
set echofl 0
while %echofl% < %totfl%
eval temp %%Floor%echofl%%%
%at% %temp% %echo% The elevator doors stop vibrating.
wait 3
%door% %temp% %roomdoor% flags abcd
eval echofl %echofl% + 1
done
wait 1
%at% %targfl% %echo% @g *DING!*@n
wait 3
%door% %Tarex% %roomdoor% room %Elevat%
%door% %Tarex% %roomdoor% flags a
%door% %Elevat% %elevdoor% purge
%door% %Elevat% %elevdoor% room %Tarex%
%at% %Elevat% %echo% The doors slide open.
%at% %Tarex% %echo% The elevator doors slide open.
wait 3
%door% %Elevat% %elevdoor% flags a
elseif %cmd.mudcommand% == look
if !%arg%
return 0
halt
elseif %arg% == display
if %self.vnum% != %Elevat%
eval text %%self.%roomdoor%(bits)%%
if !%text.contains(CLOSED)%
%send% %actor% The elevator is already here.
halt
end
else
eval text %%self.%elevdoor%(bits)%%
end
if %text.contains(LOCKED)% && !%text.contains(PICKPROOF)%
%send% %actor% Numbers flash across the display. The elevator is on the move.
halt
end
if %Curfl% == 0
set displaymsg the ground floor
else
set displaymsg floor %Curfl%
end
%send% %actor% The elevator is on %displaymsg%.
halt
* if look is not noarg or display
else
return 0
end
* if command is anything except look or push
else
return 0
end
~
$~