mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Made sure every verb now has a name which starts with a capital letter and makes sense, because OCD. Changed the categories of verbs a lot, now they are in much more sensible tabs. Added a couple of admin verbs: - Right click monkeyize - Call Shuttle - Recall Shuttle Removed some goon verbs. Gave "Coder" admin group a little more admin verbs: - Monkeyize, Cultistize, Abominationize, Call Shuttle, Recall Shuttle, Make Sound Added mobs a "say_message" variable. Now admin-created mobs can "scree", "squeak" etc. instead of just "chimper" or "hiss". git-svn-id: http://tgstation13.googlecode.com/svn/trunk@138 316c924e-a436-60f5-8080-3fe189b3f50e
73 lines
1.4 KiB
Plaintext
73 lines
1.4 KiB
Plaintext
// A laser pointer. Emits a (tunable) low-power laser beam
|
|
// Used for alignment and testing of the optics system
|
|
|
|
/obj/item/device/laser_pointer
|
|
name = "laser pointer"
|
|
desc = "A portable low-power laser used for optical system alignment. The label reads: 'Danger: Class IIIa laser device. Avoid direct eye exposure."
|
|
icon = 'optics.dmi'
|
|
icon_state = "pointer0"
|
|
var/on = 0 // true if operating
|
|
var/wavelength = 632 // operation wavelength (nm)
|
|
|
|
var/gain_peak = 632 // gain peak (nm)
|
|
var/gain_width = 35 // gain bandwidth (nm)
|
|
var/peak_output = 0.005 // max output 5 mW
|
|
layer = OBJ_LAYER + 0.1
|
|
|
|
w_class = 4
|
|
m_amt = 500
|
|
g_amt = 100
|
|
w_amt = 200
|
|
|
|
var/obj/beam/laser/beam // the created beam
|
|
|
|
flags = FPRINT | CONDUCT | TABLEPASS
|
|
|
|
attack_ai()
|
|
return
|
|
|
|
attack_paw()
|
|
return
|
|
|
|
attack_self(var/mob/user)
|
|
|
|
|
|
on = !on
|
|
if(on)
|
|
turn_on()
|
|
else
|
|
turn_off()
|
|
|
|
updateicon()
|
|
|
|
verb/rotate()
|
|
set name = "Rotate"
|
|
set src in view(1)
|
|
turn_off()
|
|
dir = turn(dir, -90)
|
|
if(on) turn_on()
|
|
|
|
Move(var/atom/newloc,var/newdir)
|
|
. = ..(newloc,newdir)
|
|
if(on && . && isturf(newloc))
|
|
turn_off()
|
|
turn_on()
|
|
return .
|
|
|
|
proc/turn_on()
|
|
if(!isturf(loc))
|
|
return
|
|
|
|
beam = new(loc, dir, wavelength, 1, 1)
|
|
beam.master = src
|
|
|
|
proc/turn_off()
|
|
if(beam)
|
|
beam.remove()
|
|
|
|
dropped()
|
|
turn_off()
|
|
turn_on()
|
|
|
|
proc/updateicon()
|
|
icon_state = "pointer[on]" |