mirror of
https://github.com/bendtherules/pytry.git
synced 2026-08-18 13:53:01 +00:00
All the previous files
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 1.9 KiB |
@@ -0,0 +1,14 @@
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
pygame.init()
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
#c=pygame.time.Clock();
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
#c.tick();
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
@@ -0,0 +1,5 @@
|
||||
from SimpleCV import Camera, Display, Image;
|
||||
cam=Camera();
|
||||
disp=Display();
|
||||
img=cam.getImage();
|
||||
img.sample_points(disp);
|
||||
@@ -0,0 +1,84 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
#custom image-loading function
|
||||
def load_image(self,sprite_filename=None,alpha=None):
|
||||
'''Load correct image with convert calls'''
|
||||
if sprite_filename!=None:
|
||||
self.spr=pygame.image.load(sprite_filename);
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width()-1,self.spr.get_height()-1)));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
self.image=self.spr;#spr and image point to the same surface, to be checked
|
||||
else:
|
||||
self.image=self.spr=None;
|
||||
|
||||
class obj(pygame.sprite.Sprite):
|
||||
'''Can be inherited as a base class'''
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename=None,alpha=None):
|
||||
''' alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)'''
|
||||
super(obj,self).__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
self.hspeed=0;
|
||||
self.vspeed=0;
|
||||
global load_image;
|
||||
load_image(self,sprite_filename,alpha);
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(self);
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.sprite,(self.x-self.sprite.get_width()/2,self.y-self.sprite.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
''' Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work'''
|
||||
self.xprevious=self.x;
|
||||
self.yprevious=self.y;
|
||||
self.x+=self.hspeed;
|
||||
self.y+=self.vspeed;
|
||||
self.speed=int(math.sqrt(self.hspeed**2+self.vspeed**2));
|
||||
self.rect=self.image.get_rect(center=(self.x,self.y));
|
||||
|
||||
#custom-made functions
|
||||
def update_inside(group_name):
|
||||
'''e.g. group_name=a.all_instances.
|
||||
Calls group_name.update only when sprite.image is within screen, else delete it.'''
|
||||
temp=None;
|
||||
for temp in group_name.sprites():
|
||||
if (temp.x-temp.image.get_width()/2<surf.get_width()):
|
||||
temp.update();
|
||||
else:
|
||||
group_name.remove(temp);
|
||||
|
||||
# creating new classes
|
||||
class player(obj):
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha)
|
||||
player.all_instances.add(self);
|
||||
|
||||
|
||||
a1=player(surf.get_width()/2,surf.get_height()/2,"a.png",alpha=1)
|
||||
a1.vspeed=.1;
|
||||
a2=player(100,100,"a.png",alpha=1)
|
||||
@@ -0,0 +1,119 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
#custom image-loading function
|
||||
def load_image(self,sprite_filename=None,alpha=None):
|
||||
'''Load correct image with convert calls'''
|
||||
if sprite_filename!=None:
|
||||
self.spr=pygame.image.load(sprite_filename);
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width()-1,self.spr.get_height()-1)));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
self.image=self.spr;#spr and image point to the same surface, to be checked
|
||||
else:
|
||||
self.image=self.spr=None;
|
||||
|
||||
class obj(pygame.sprite.Sprite):
|
||||
'''Can be inherited as a base class'''
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename=None,alpha=None):
|
||||
''' alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)'''
|
||||
super().__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
self.hspeed=0;
|
||||
self.vspeed=0;
|
||||
global load_image;
|
||||
load_image(self,sprite_filename,alpha);
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(self);
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.image,(self.x-self.image.get_width()/2,self.y-self.image.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
''' Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work'''
|
||||
self.xprevious=self.x;
|
||||
self.yprevious=self.y;
|
||||
self.x+=self.hspeed;
|
||||
self.y+=self.vspeed;
|
||||
self.speed=int(math.sqrt(self.hspeed**2+self.vspeed**2));
|
||||
self.rect=self.image.get_rect(center=(self.x,self.y));
|
||||
|
||||
#custom-made functions
|
||||
def update_inside(group_name):
|
||||
'''e.g. group_name=a.all_instances.
|
||||
Calls group_name.update only when sprite.image is within screen, else delete it.'''
|
||||
temp=None;
|
||||
for temp in group_name.sprites():
|
||||
if (temp.x-temp.image.get_width()/2<surf.get_width()):
|
||||
temp.update();
|
||||
else:
|
||||
group_name.remove(temp);
|
||||
del temp;
|
||||
|
||||
# creating new classes
|
||||
#create two instances player_down and player_up and specific clear functions
|
||||
class player_down(obj):
|
||||
#lower player
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha)
|
||||
player_down.all_instances.add(self);
|
||||
|
||||
class player_above(obj):
|
||||
#upper player
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha)
|
||||
player_above.all_instances.add(self);
|
||||
|
||||
class obj_static(obj):
|
||||
#objects like obstacles and spikes
|
||||
#They have to be drawn only once i.e. at the start of the game when the level is loaded
|
||||
#So, they don't have any draw or update method,but a destroy method when it clears the background it
|
||||
#was covering with appropiate colour fill...
|
||||
all_instances=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha);
|
||||
obj_static.all_instances.add(self);
|
||||
|
||||
def destroy(self):
|
||||
self.kill(); #internal method to remove it from all groups
|
||||
#temp_surf=None;
|
||||
#temp_surf=pygame.Surface(self.image.get_width(),self.image.get_width());
|
||||
#temp_surf.fill(get_colour(self.x,self.y));#get_colour to be implemented, returns appropiate colour- white or bloack depending upon position
|
||||
temp_rect=self.image.get_rect(center=(self.x,self.y));
|
||||
surf.fill(self.get_colour(),rect=temp_rect);#fill the area with appropiate colour
|
||||
#get_colour to be implemented, returns appropiate colour- white or bloack depending upon position
|
||||
pygame.display.update(temp_rect);#update that part of the screen only.
|
||||
del temp_rect;
|
||||
def get_colour(self):
|
||||
return pygame.Color(255,255,255);#returns white colour, to be implemented later.
|
||||
|
||||
|
||||
a1=player_down(surf.get_width()/2,surf.get_height()/2,"a.png",alpha=1)
|
||||
a1.hspeed=1;
|
||||
a2=player_above(100,100,"a.png",alpha=1)
|
||||
a2.vspeed=1
|
||||
b=obj_static(300,300,"a.png",alpha=1);
|
||||
@@ -0,0 +1,102 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
import sys
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
class obj(pygame.sprite.Sprite):
|
||||
'''Can be inherited as a base class'''
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
''' alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)'''
|
||||
super(obj,self).__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
# set correct spr attribute
|
||||
self.spr=pygame.image.load(sprite_filename).convert();
|
||||
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width(),self.spr.get_height())));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
self.image=self.spr;#spr and image point to the same surface, to be checked
|
||||
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(self);
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def get_speed(self):
|
||||
return int(math.sqrt(self.get_hspeed()**2+self.get_vspeed*()*2));
|
||||
|
||||
def get_hspeed(self):
|
||||
return (self.x-self.xprevious);
|
||||
|
||||
def get_vspeed(self):
|
||||
return (self.y-self.yprevious);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.sprite,(self.x-self.sprite.get_width()/2,self.y-self.sprite.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
''' Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work'''
|
||||
self.x+=1;
|
||||
#self.y+=1;
|
||||
self.xprevious=self.x;
|
||||
self.yprevious=self.y;
|
||||
self.rect=self.image.get_rect(center=(self.x,self.y));
|
||||
|
||||
# creating new classes
|
||||
class a(obj):
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super(a,self).__init__(x,y,sprite_filename,alpha=None)
|
||||
a.all_instances.add(self);
|
||||
# wow=True;
|
||||
|
||||
#class b(obj):
|
||||
#wow=False;
|
||||
|
||||
a1=a(surf.get_width()/2,surf.get_height()/2,"ball.bmp")
|
||||
a2=a(100,100,"ball.bmp")
|
||||
# game startup code
|
||||
#c=pygame.time.Clock();
|
||||
surf.fill((255,0,255));
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
sys.exit();
|
||||
|
||||
# c.tick();
|
||||
#pygame.display.set_caption(str(c.get_fps()));
|
||||
#pygame.display.update();
|
||||
|
||||
a.all_instances.update();
|
||||
for b in a.all_instances.sprites():
|
||||
if b.x>=surf.get_width():
|
||||
a.all_instances.remove(b);
|
||||
#del(b);
|
||||
print(5)
|
||||
print(a.all_instances.sprites())
|
||||
if len(a.all_instances)>0:
|
||||
pygame.display.update(a.all_instances.draw(surf))
|
||||
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
@@ -0,0 +1,99 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
'''class obj(pygame.sprite.Sprite):
|
||||
Can be inherited as a base class
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)
|
||||
super(obj,self).__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
# set correct spr attribute
|
||||
self.spr=pygame.image.load(sprite_filename).convert();
|
||||
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width(),self.spr.get_height())));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
self.image=self.spr;#spr and image point to the same surface, to be checked
|
||||
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(self);
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def get_speed(self):
|
||||
return int(math.sqrt(self.get_hspeed()**2+self.get_vspeed*()*2));
|
||||
|
||||
def get_hspeed(self):
|
||||
return (self.x-self.xprevious);
|
||||
|
||||
def get_vspeed(self):
|
||||
return (self.y-self.yprevious);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.sprite,(self.x-self.sprite.get_width()/2,self.y-self.sprite.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work
|
||||
self.x+=1;
|
||||
#self.y+=1;
|
||||
self.xprevious=self.x;
|
||||
self.yprevious=self.y;
|
||||
self.rect=self.image.get_rect(center=(self.x,self.y));'''
|
||||
|
||||
# creating new classes
|
||||
'''class a(obj):
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha=None)
|
||||
a.all_instances.add(self);'''
|
||||
# wow=True;
|
||||
|
||||
#class b(obj):
|
||||
#wow=False;
|
||||
|
||||
#a1=a(surf.get_width()/2,surf.get_height()/2,"ball.bmp")
|
||||
#a2=a(100,100,"ball.bmp")
|
||||
# game startup code
|
||||
c=pygame.time.Clock();
|
||||
#surf.fill((255,0,255))
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
c.tick();
|
||||
# pygame.display.set_caption(str(c.get_fps()));
|
||||
#
|
||||
|
||||
''' for b in a.all_instances.sprites():
|
||||
if b.x+b.image.get_width()<surf.get_width():
|
||||
b.update()
|
||||
else:
|
||||
a.all_instances.remove(b);
|
||||
print(12)'''
|
||||
|
||||
#pygame.display.update(a.all_instances.draw(surf));
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
@@ -0,0 +1,102 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
#custom image-loading function
|
||||
def load_image(self,sprite_filename=None,alpha=None):
|
||||
'''Load correct image with convert calls'''
|
||||
if sprite_filename!=None:
|
||||
self.spr=pygame.image.load(sprite_filename);
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width()-1,self.spr.get_height()-1)));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
self.image=self.spr;#spr and image point to the same surface, to be checked
|
||||
else:
|
||||
self.image=self.spr=None;
|
||||
|
||||
class obj(pygame.sprite.Sprite):
|
||||
'''Can be inherited as a base class'''
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename=None,alpha=None):
|
||||
''' alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)'''
|
||||
super(obj,self).__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
self.hspeed=0;
|
||||
self.vspeed=0;
|
||||
global load_image;
|
||||
load_image(self,sprite_filename,alpha);
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(self);
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.sprite,(self.x-self.sprite.get_width()/2,self.y-self.sprite.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
''' Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work'''
|
||||
self.xprevious=self.x;
|
||||
self.yprevious=self.y;
|
||||
self.x+=self.hspeed;
|
||||
self.y+=self.vspeed;
|
||||
self.speed=int(math.sqrt(self.hspeed**2+self.vspeed**2));
|
||||
self.rect=self.image.get_rect(center=(self.x,self.y));
|
||||
|
||||
#custom-made functions
|
||||
def update_inside(group_name):
|
||||
'''e.g. group_name=a.all_instances.
|
||||
Calls group_name.update only when sprite.image is within screen, else delete it.'''
|
||||
temp=None;
|
||||
for temp in group_name.sprites():
|
||||
if (temp.x-temp.image.get_width()/2<surf.get_width()):
|
||||
temp.update();
|
||||
else:
|
||||
group_name.remove(temp);
|
||||
|
||||
# creating new classes
|
||||
class player(obj):
|
||||
all_instances=pygame.sprite.RenderUpdates();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha)
|
||||
player.all_instances.add(self);
|
||||
|
||||
|
||||
a1=player(surf.get_width()/2,surf.get_height()/2,"a.png",alpha=1)
|
||||
a1.vspeed=.1;
|
||||
a2=player(100,100,"a.png",alpha=1)
|
||||
# game startup code
|
||||
c=pygame.time.Clock();
|
||||
#pygame.display.update()
|
||||
pygame.display.update(surf.fill((0,0,0)))
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
c.tick();
|
||||
pygame.display.set_caption(str(c.get_fps()));
|
||||
update_inside(player.all_instances);
|
||||
player.all_instances.clear(surf,pygame.Surface((400,400)))
|
||||
pygame.display.update(player.all_instances.draw(surf));
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
@@ -0,0 +1,26 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
from class_definition import *
|
||||
|
||||
# game startup code
|
||||
c=pygame.time.Clock();
|
||||
|
||||
#pygame.display.update()
|
||||
pygame.display.update(surf.fill((0,0,0)))
|
||||
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
c.tick();
|
||||
pygame.display.set_caption(str(c.get_fps()));
|
||||
update_inside(player.all_instances);
|
||||
player.all_instances.clear(surf,pygame.Surface((400,400)))
|
||||
pygame.display.update(player.all_instances.draw(surf));
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
@@ -0,0 +1,55 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
from class_definition import *
|
||||
#from class_definition import player_down
|
||||
|
||||
# game startup code
|
||||
c=pygame.time.Clock();
|
||||
|
||||
#pygame.display.update()
|
||||
pygame.display.update(surf.fill((55,55,55)))
|
||||
steps=0;
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
c.tick(30);
|
||||
steps+=1;
|
||||
if steps==4000:
|
||||
b.destroy();
|
||||
pygame.display.set_caption(str(c.get_fps()));
|
||||
update_inside(player_down.all_instances);
|
||||
update_inside(player_above.all_instances);
|
||||
|
||||
# code to clear both player_down and player_above
|
||||
if player_down.all_instances:
|
||||
temp_instance=(player_down.all_instances.sprites())[0];
|
||||
temp_surf=None;
|
||||
temp_surf=pygame.Surface((temp_instance.image.get_width(),temp_instance.image.get_height()));
|
||||
temp_surf.fill(pygame.Color(255,0,0));
|
||||
print(1)
|
||||
player_down.all_instances.clear(surf,temp_surf);
|
||||
del temp_surf;
|
||||
|
||||
if player_above.all_instances:
|
||||
temp_instance=(player_above.all_instances.sprites())[0];
|
||||
temp_surf=None;
|
||||
temp_surf=pygame.Surface((temp_instance.image.get_width(),temp_instance.image.get_height()));
|
||||
temp_surf.fill(pygame.Color(0,255,255));
|
||||
print(2)
|
||||
player_above.all_instances.clear(surf,temp_surf);
|
||||
del temp_surf;
|
||||
#"clear code" done
|
||||
a=player_down.all_instances.draw(surf)
|
||||
b=player_above.all_instances.draw(surf)
|
||||
print(a)
|
||||
print(b)
|
||||
pygame.display.update();
|
||||
#pygame.display.update(b);
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
@@ -0,0 +1,85 @@
|
||||
# all imports
|
||||
import math;
|
||||
import pygame;
|
||||
from pygame.locals import *
|
||||
|
||||
# init
|
||||
pygame.init()
|
||||
|
||||
# setting display
|
||||
surf=pygame.display.set_mode((400,400))
|
||||
pygame.display.set_caption("Wtf is this??")
|
||||
|
||||
class obj(pygame.sprite.Sprite):
|
||||
'''Can be inherited as a base class'''
|
||||
#all_obj_derived=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
''' alpha may have values None(no alpha set),1(set_colorkey as the bottom-right corner),2(per-pixel alpha)'''
|
||||
super().__init__();
|
||||
self.x=x;
|
||||
self.y=y;
|
||||
self.xprevious=x;
|
||||
self.yprevious=y; #ToDO : Make way for acceleration ("force" model) and setting speed
|
||||
# set correct spr attribute
|
||||
self.spr=pygame.image.load(sprite_filename).convert();
|
||||
|
||||
if alpha==None:
|
||||
self.spr=self.spr.convert();
|
||||
elif alpha==1:
|
||||
self.spr=self.spr.convert();
|
||||
self.spr.set_colorkey(self.spr.get_at((self.spr.get_width(),self.spr.get_height())));
|
||||
elif alpha==2:
|
||||
self.spr=self.spr.convert_alpha();
|
||||
|
||||
# as it is a derived class of Sprite, it can be directly added to gr group
|
||||
#obj.all_obj_derived.add(super());
|
||||
|
||||
|
||||
#obj.list.append(self);
|
||||
|
||||
def get_speed(self):
|
||||
return int(math.sqrt(self.get_hspeed()**2+self.get_vspeed*()*2));
|
||||
|
||||
def get_hspeed(self):
|
||||
return (self.x-self.xprevious);
|
||||
|
||||
def get_vspeed(self):
|
||||
return (self.y-self.yprevious);
|
||||
|
||||
def draw_self(self):
|
||||
surf.blit(self.sprite,(self.x-self.sprite.get_width()/2,self.y-self.sprite.get_height()/2));
|
||||
|
||||
def update(self):
|
||||
''' Should be called after draw_self (or as the last method) to update xprevious.
|
||||
If not called, get_speed(),get_hspeed(),get_vspeed() won't work'''
|
||||
self.xprevious=self.x;
|
||||
|
||||
# creating new classes
|
||||
class a(obj):
|
||||
all=pygame.sprite.Group();
|
||||
def __init__(self,x,y,sprite_filename,alpha=None):
|
||||
super().__init__(x,y,sprite_filename,alpha=None)
|
||||
a.all.add(self);
|
||||
wow=True;
|
||||
|
||||
class b(obj):
|
||||
wow=False;
|
||||
|
||||
a1=a(0,0,"a.png")
|
||||
a2=b(0,0,"a.png")
|
||||
# game startup code
|
||||
c=pygame.time.Clock();
|
||||
|
||||
# main game loop
|
||||
while True:
|
||||
# event check
|
||||
for event in pygame.event.get():
|
||||
if event.type == QUIT:
|
||||
exit();
|
||||
|
||||
c.tick();
|
||||
pygame.display.set_caption(str(c.get_fps()));
|
||||
pygame.display.update();
|
||||
|
||||
#Events here
|
||||
#--------------------------------------------------------- end---------------------------------------------------#
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
Reference in New Issue
Block a user