class Escapist::LaserSwitch

Defined in:

escapist/laser_switch.cr

Constant Summary

Color = SF::Color.new(153, 153, 153, 30)
Key = "laser"
OffColor = SF::Color.new(51, 51, 51, 51)
OffOutlineColor = SF::Color.new(102, 102, 102)
OnColor = SF::Color.new(153, 0, 0, 153)
OnOutlineColor = SF::Color.new(0, 102, 0, 50)
OnSound = SF::Sound.new(OnSoundBuffer)
OnSoundBuffer = SF::SoundBuffer.from_file("./assets/floor_switch_on.wav")
OnSoundPitchVariation = 0.03
OnSoundVolume = 33
OutlineColor = SF::Color.new(102, 102, 102)
OutlineThickness = 4

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Escapist::Switch

on=(on : Bool) on=, on? : Bool on?, switch : String switch, switch=(switch : String) switch=

Constructor methods inherited from class Escapist::Switch

new(pull : JSON::PullParser)
new(switch : String, col = 0, row = 0, on : Bool = false)
new

Class methods inherited from class Escapist::Switch

key key

Instance methods inherited from class Escapist::TileObj

area? area?, area_box area_box, area_entered area_entered, area_entered? area_entered?, area_exited area_exited, col : Int32 col, collidable? collidable?, collision_box collision_box, draw(window : SF::RenderWindow) draw, draw_offset draw_offset, draw_size draw_size, jump_to(col : Int32, row : Int32) jump_to, key key, movable? movable?, move(dx : Float32 | Int32, dy : Float32 | Int32) move, row : Int32 row, size size, type : String type, type=(type : String) type=, x x, y y

Constructor methods inherited from class Escapist::TileObj

new(pull : JSON::PullParser)
new(type : String = "block", col : Int32 = 0, row : Int32 = 0)
new(*, __pull_for_json_serializable pull : JSON::PullParser)
new

Class methods inherited from class Escapist::TileObj

cells_near(x, y) cells_near, draw_size draw_size, key key

Constructor Detail

def self.new(pull : JSON::PullParser) #

[View source]
def self.new(col = 0, row = 0, on = false) #

[View source]

Class Method Detail

def self.key #

[View source]

Instance Method Detail

def center_x #

[View source]
def center_y #

[View source]
def collidable? #

[View source]
def draw(window : SF::RenderWindow) #

[View source]
def draw_block(window) #

[View source]
def draw_switch_circle(window) #

[View source]
def laser_point_collision?(x, y) #

[View source]
def radius #

[View source]
def update(room) #

[View source]
def update_on_off(lasers) #

[View source]