46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
# This file is part of ROBOTGAME
|
|
#
|
|
# ROBOTGAME is free software: you can redistribute it and/or modify it under the
|
|
# terms of the GNU General Public License as published by the Free Software
|
|
# Foundation, either version 3 of the License, or (at your option) any later
|
|
# version.
|
|
#
|
|
# ROBOTGAME is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License along with
|
|
# ROBOTGAME. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
# ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
|
|
#
|
|
# laser.py
|
|
# --------------------
|
|
# date created : Sun Aug 12 2012
|
|
# copyright : (C) 2012 Niels G. W. Serup
|
|
# maintained by : Niels G. W. Serup <ns@metanohi.name>
|
|
|
|
"""
|
|
A laser for drawing.
|
|
"""
|
|
|
|
import pygame
|
|
|
|
import worldobject
|
|
|
|
class Laser(worldobject.WorldObject):
|
|
def __init__(self, level, p0, p1, laser_direction):
|
|
self.__dict__.update(locals())
|
|
worldobject.WorldObject.__init__(self, level, p0[0], max(p0[1], p1[1]) + 48)
|
|
|
|
def update(self, e, t, dt):
|
|
|
|
worldobject.WorldObject.update(self, e, t, dt)
|
|
|
|
def draw(self, window):
|
|
(x0, y0), (x1, y1) = self.p0, self.p1
|
|
pygame.draw.line(window, (255, 0, 0),
|
|
(x0 - self.level.camera_x + 32, y0 + 4 - self.level.camera_y),
|
|
(x1 - self.level.camera_x + 32, y1 + 4 - self.level.camera_y), 4)
|
|
|