Пример #1
0
class Menu_log:

#-------------------------------------------------------------------------------------------------------

	def __init__( self ):
		self.text = Text( "menu/KGHAPPY.ttf", 27, 255 )
		self.texture = Texture( "menu/exit.png", 255 )
		self.type = 0

#-------------------------------------------------------------------------------------------------------
	
	def load( self, width, height ):

		self.texture.setX( width/2 - self.texture.getWidth()/2 )
		self.texture.setY( height/2 - self.texture.getHeight()/2 )
		self.texture.setColor( 30, 0, 255 )

		self.text.createText( "m-menu  b-back", [ 0xFF, 0xFF, 0xFF ] )
		self.text.setX( width/2 - self.text.getWidth()/2 )
		self.text.setY( height/2 - self.text.getHeight()/2 )

#-------------------------------------------------------------------------------------------------------
	
	def draw( self, window ):
		if self.type == 1:
			self.texture.draw( window )
			self.text.draw( window )

#-------------------------------------------------------------------------------------------------------

	def getState( self ):
		return self.type

#-------------------------------------------------------------------------------------------------------

	def setState( self, t ):
		self.type = t

#-------------------------------------------------------------------------------------------------------

	def handle( self, event ):

		if event.type == pygame.KEYDOWN:

			if event.key == pygame.K_m:
				if self.type == 0:
					self.type = 1
				elif self.type == 1:
					self.type = 2

			elif event.key == pygame.K_b:
				if self.type == 1:
					self.type = 0
Пример #2
0
class Wall:

#-------------------------------------------------------------------------------------------------------
	
	def __init__( self ):
		self.bg_one = Texture( "wall/14.png" )
		self.bg_two = Texture( "wall/14.png" )

#-------------------------------------------------------------------------------------------------------

	def load( self ):
		self.bg_two.setX( self.bg_two.getWidth() )
		

#-------------------------------------------------------------------------------------------------------
	
	def draw( self, window, move = True, vel = 2 ):

		if self.bg_one.getAlpha() == 255 and move:
			self.bg_one.setX( self.bg_one.getLeft() - vel )
			self.bg_two.setX( self.bg_two.getLeft() - vel )
		
			if self.bg_one.getLeft() <= -self.bg_one.getWidth():
				self.bg_one.setX( self.bg_one.getWidth() )
			elif self.bg_two.getLeft() <= -self.bg_two.getWidth():
				self.bg_two.setX( self.bg_two.getWidth() )
			
		
		self.bg_one.draw( window )
		self.bg_two.draw( window )

#-------------------------------------------------------------------------------------------------------

	def getAlpha( self ):
		return self.bg_two.getAlpha()

#-------------------------------------------------------------------------------------------------------

	def fadein( self, i = 1, m = 255 ):
		self.bg_one.fadein( i, m )
		self.bg_two.fadein( i, m )

#-------------------------------------------------------------------------------------------------------

	def fadeout( self, i = 1, m = 0 ):
		self.bg_one.fadeout( i, m )
		self.bg_two.fadeout( i, m )
Пример #3
0
class Menu_title:

#-------------------------------------------------------------------------------------------------------

	def __init__( self ):
		self.texture =  Texture( "menu/belt.png" )
		self.text = Text( "menu/KGHAPPY.ttf", 80 )

#-------------------------------------------------------------------------------------------------------		
		
	def load( self, width ):
		
		self.texture.setX( ( width / 2 ) - ( self.texture.getWidth() / 2 ) )
		self.texture.setY( 10 )

		self.text.createText( "Ninja", [ 0x7F, 0x99, 0x95 ] )
		self.text.setX( ( width / 2 ) - ( self.text.getWidth() / 2 ) )
		self.text.setY( 0 )

#-------------------------------------------------------------------------------------------------------

	def draw( self, window ):
		self.texture.draw( window )
		self.text.draw( window )

#-------------------------------------------------------------------------------------------------------
		
	def getBot( self ):
		return self.texture.getBot()

#-------------------------------------------------------------------------------------------------------
	
	def fadein( self, i = 1, m = 255 ):
		self.texture.fadein( i, m )
		self.text.fadein( i, m )

#-------------------------------------------------------------------------------------------------------

	def fadeout( self, i = 1, m = 0 ):
		self.texture.fadeout( i, m )
		self.text.fadeout( i, m )
Пример #4
0
class Intro:

#-------------------------------------------------------------------------------------------------------
	
	def __init__( self ):

		self.counter = 0
		self.quit = False

		#Textures
		self.preview = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.shuriken = Texture( "intro/shuriken.png" )
		self.title = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.author = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.produced = Text( "intro/Jaapokki-Regular.otf", 37 )

		self.text_one = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.text_two = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.text_three = Text( "intro/Jaapokki-Regular.otf", 37 )
		self.text_four = Text( "intro/Jaapokki-Regular.otf", 37 )

#-------------------------------------------------------------------------------------------------------
	
	def load( self, width, height ):

		self.preview.createText( "When nothing makes sense...", [ 0xFF, 0xFF, 0xFF ] )
		self.preview.setX( width/2 - self.preview.getWidth()/2 )
		self.preview.setY( height/2 - self.preview.getHeight()/2 )

		self.title.createText( "Ninja", [ 0x70, 0xB7, 0x59 ] )
		self.title.setX( width/2 - self.title.getWidth()/2 - self.shuriken.getWidth() -10 )
		self.title.setY( height/2 - self.title.getHeight()/2 )
		
		
		self.shuriken.setX( self.title.getRight() +10 )
		self.shuriken.setY( height/2 - self.shuriken.getHeight()/2 )
		
		self.author.createText( "Adrian Michalek", [ 0xFF, 0xFF, 0xFF ] )
		self.author.setX( width/2 - self.author.getWidth()/2 )
		self.author.setY( height/2 - self.author.getHeight()/2 )

		self.produced.createText( "produced by", [ 0x70, 0xB7, 0x59 ] )
		self.produced.setX( width/2 - self.produced.getWidth()/2 )
		self.produced.setY( height/2 - self.produced.getHeight()/2 - self.author.getHeight() -10 )

		
		self.text_one.createText( "It's not a final version.", [ 0xFF, 0xFF, 0xFF ] )
		self.text_one.setX( width/2 - self.text_one.getWidth()/2 )
		self.text_one.setY( height/2 - self.text_one.getHeight()-20 )

		self.text_two.createText( "You can develop game by your own.", [ 0xFF, 0xFF, 0xFF ] )
		self.text_two.setX( width/2 - self.text_two.getWidth()/2 )
		self.text_two.setY( height/2 - self.text_two.getHeight()/2-10 )

		self.text_three.createText( "It's a open source code build with pygame library.", [ 0xFF, 0xFF, 0xFF ] )
		self.text_three.setX( width/2 - self.text_three.getWidth()/2 )
		self.text_three.setY( height/2 )

		self.text_four.createText( "Have a nice time!", [ 0x70, 0xB7, 0x59 ] )
		self.text_four.setX( width/2 - self.text_four.getWidth()/2 )
		self.text_four.setY( height/2 + self.text_four.getHeight()/2 +10 )

#-------------------------------------------------------------------------------------------------------

	def free( self ):
		#DELETE ALL
		del self.counter
		del self.quit
		
		self.preview.free()
		del self.preview

		self.shuriken.free()
		del self.shuriken
		
		self.title.free()
		del self.title
		
		self.author.free()
		del self.author

		self.produced.free()
		del self.produced
		
		self.text_one.free()
		del self.text_one

		self.text_two.free()
		del self.text_two

		self.text_three.free()
		del self.text_three

		self.text_four.free()
		del self.text_four

#-------------------------------------------------------------------------------------------------------
	
	def draw( self, screen ):
		
		self.preview.fadein( 3 )
		if self.preview.getAlpha() < 255:
			self.preview.draw( screen )
		else:
			self.title.fadein( 3 )
			self.shuriken.fadein( 3 )
	
		if self.title.getAlpha() < 255:
			self.title.draw( screen )
			self.shuriken.draw( screen )
		else:
			self.author.fadein( 3 )
			self.produced.fadein( 3 )

		if self.author.getAlpha() < 255:
			self.author.draw( screen )
			self.produced.draw( screen )
		else:
			self.counter += 1
			self.text_one.fadein( 3 )
			self.text_two.fadein( 3 )
			self.text_three.fadein( 3 )
			self.text_four.fadein( 3 )
		if self.counter < 500:
			self.text_one.draw( screen )
			self.text_two.draw( screen )
			self.text_three.draw( screen )
			self.text_four.draw( screen )
		else:
			self.quit = True

#-------------------------------------------------------------------------------------------------------

	def getQuit( self ):
		return self.quit
Пример #5
0
class Menu_music_button:

#-------------------------------------------------------------------------------------------------------

	def __init__( self, path, on = 0 ):

		self.sprite = Sprite( path, 4 )

		self.scratch = Texture( "menu/scratch.png" )
		self.click = pygame.mixer.Sound( "menu/click.wav" )

		self.type = 0
		self.state = 0
		self.on = on
		self.mouseup = 0

#-------------------------------------------------------------------------------------------------------
	
	def load( self, y ):
		self.sprite.setX( 10 )
		self.sprite.setY( y )
		
		self.scratch.setX( 10 )
		self.scratch.setY( y )

#-------------------------------------------------------------------------------------------------------

	def getBot( self ):
		return self.sprite.getBot()

#-------------------------------------------------------------------------------------------------------
	
	def draw( self, window ):
		self.sprite.draw( window )
		if self.type == 1:
			self.scratch.draw( window )

#-------------------------------------------------------------------------------------------------------

	def fadein( self, i = 1, m = 255 ):
		self.sprite.fadein( i, m )
		self.scratch.fadein( i, m )

#-------------------------------------------------------------------------------------------------------

	def fadeout( self, i = 1, m = 0 ):
		self.sprite.fadeout( i, m )
		self.scratch.fadeout( i, m )

#-------------------------------------------------------------------------------------------------------

	def getState( self ):
		if self.state != self.type:
			self.state = self.type
			#print "true!"
			return True
		return False

#-------------------------------------------------------------------------------------------------------

	def setState( self ):
		if self.on == 0:
			self.on = 1
		else:
			self.on = 0
		# print self.on

#-------------------------------------------------------------------------------------------------------

	def handle( self, event ):
			
		self.focus = False
		self.sprite.setOffset( 0 )

		if event.type == pygame.MOUSEBUTTONDOWN:
			self.focus = True
			self.mouseup = 1
		elif event.type == pygame.MOUSEBUTTONUP:
			self.mouseup = 0
		
		
		self.x, self.y = pygame.mouse.get_pos()
		if self.x > self.sprite.getLeft() and self.x < self.sprite.getRight() and self.sprite.getAlpha() == 255:
			if self.y > self.sprite.getTop() and self.y < self.sprite.getBot():
				if self.focus == True:
					if self.on == 0:
						self.click.play()
					if self.type == 0:
						self.type = 1
					else:
						self.type = 0
				if self.focus == True or self.mouseup == 1:
					self.sprite.setOffset( 2 )
				else:
					self.sprite.setOffset( 1 )
Пример #6
0
class Menu_score_log:

#-------------------------------------------------------------------------------------------------------

	def __init__( self ):

		self.sprite = Sprite( "menu/position.png", 4 )
		self.window = Texture( "menu/window.png" )
		self.click = pygame.mixer.Sound( "menu/click.wav" )

		self.on = 0
		self.type = 0
		self.text = Text( "menu/KGHAPPY.ttf", 30 )

#-------------------------------------------------------------------------------------------------------
	
	def load( self, x, width, titlebot, bot ):

		self.sprite.setX( x )
		self.sprite.setY( bot +10 )
		
		self.window.setX( width/2 - self.window.getWidth()/2 )
		self.window.setY( titlebot -20 )
		

		self.text.createText( "SCORES", [ 0xd5, 0xad, 0x51 ] )
		self.text.setX( self.window.getLeft() + self.window.getWidth()/2 - self.text.getWidth()/2 )
		self.text.setY( self.window.getTop() +50 )

#-------------------------------------------------------------------------------------------------------

	def draw( self, screen ):
		if self.type == 1:
			self.window.draw( screen )
			self.text.draw( screen )
		else:
			self.sprite.draw( screen )

#-------------------------------------------------------------------------------------------------------

	def fadein( self, i = 1, m = 255 ):
		self.sprite.fadein( i, m )
		self.window.fadein( i, m )
		self.text.fadein( i, m )
#-------------------------------------------------------------------------------------------------------

	def fadeout( self, i = 1, m = 0 ):
		self.sprite.fadeout( i, m )
		self.window.fadeout( i, m )
		self.text.fadeout( i, m )

#-------------------------------------------------------------------------------------------------------

	def getState( self ):
		return self.type

#-------------------------------------------------------------------------------------------------------

	def getRight( self ):
		return self.sprite.getRight()

#-------------------------------------------------------------------------------------------------------

	def setState( self ):
		if self.on == 0:
			self.on = 1
		else:
			self.on = 0

#-------------------------------------------------------------------------------------------------------

	def handle( self, event ):
			
		self.focus = False
		if event.type == pygame.MOUSEBUTTONDOWN:
			self.focus = True
		
		if self.type == 0:
			self.sprite.setOffset( 0 )
			self.x, self.y = pygame.mouse.get_pos()
			if self.x > self.sprite.getLeft() and self.x < self.sprite.getRight() and self.sprite.getAlpha() == 255:
				if self.y > self.sprite.getTop() and self.y < self.sprite.getBot():
					if self.focus == True:
						if self.on == 0:
							self.click.play()
						self.sprite.setOffset( 2 )
						if self.type == 0:
							self.type = 1
					else:
						self.sprite.setOffset( 1 )
		if event.type == pygame.KEYDOWN:
			if event.key == pygame.K_ESCAPE or event.key == pygame.K_SPACE:
				if self.type == 1:
					if self.on == 0:
						self.click.play()
					self.type = 0