Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pyglet
- from typing import overload
- def move(keyboard, x, y, w, h, speed, sw=600, sh=800):
- true = [True]
- if keyboard[pyglet.window.key.UP] and y + h <= sw:
- y += speed
- if keyboard[pyglet.window.key.DOWN] and y >= 0:
- y -= speed
- if keyboard[pyglet.window.key.RIGHT] and x + w <= sh:
- x += speed
- if keyboard[pyglet.window.key.LEFT] and x >= 0:
- x -= speed
- #print(sh, ' ', x, ' ', x + w)
- return x, y, w, h
- class EntData():
- '''
- className = Your class name
- name = Non obiazatelno
- '''
- def __init__(self, ClassName, isCol = True, name = None):
- self.__ClassName = ClassName
- self.__BaseName = name
- self.__Material = isCol
- def getClassName(self):
- return self.__ClassName
- def getColosion(self):
- return self.__Material
- def getName(self):
- return self.__BaseName
- class BaseEntity():
- '''
- Base class for Entity.
- super().__init__(x, y, w, h, --->EntData object<---)
- '''
- def __init__(self, x, y, w, h, EntClass):
- self.x, self.y, self.w, self.h, self.CBaseData = x, y, w, h, EntClass
- def check_colosion(self, ent, call_time=0):
- if not self.CBaseData.getColosion() or not ent.CBaseData.getColosion():
- return False
- if (self.x <= (ent.x + ent.w) or self.x + self.w <= (ent.x)) and self.x >= ent.x:
- if (self.y <= (ent.y + ent.h) or self.y + self.h <= (ent.y)) and self.y >= ent.y:
- return True
- return False
- def remove(self):
- del self.x; del self.y; del self.w; del self.h; del self.CBaseData;
- del self
- class EntList():
- '''
- CREATE ONLY ONE OBJECT!!!
- '''
- def __init__(self, ents = []):
- self.lEnts = ents
- def EntAdd(self, ent = None):
- if ent == None:
- return
- self.lEnts.append(ent)
- def GetByIndex(self, i):
- return self.lEnts[i]
- def GetIndexByClassName(self, name):
- n = 0
- for i in self.lEnts:
- if i.CBaseData.getClassName() == name:
- return n
- n += 1
- return False
- def clear(self):
- self.lEnts.clear()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement