from Function.Portal import Transition
from Function.Fade import fade
+from UI.Dialogue import DialogueUI
+
class Game:
def __init__(self, level):
self.level = level
self.scene.level = self.level
- self.Transition = Transition(-2, 0,0)
+ self.Transition = Transition()
self.fade = self.Transition.fade
self.fadeT = fade()
self.next_level = 0
+ self.dialogue = DialogueUI()
+
# def load_world(self, level):
def update(self, delta):
def draw(self, surf):
screen.fill((0, 191, 255))
- self.Transition.draw(surf, self.player.position, [40, -250], 120, 625)
+ if(self.level == 1):
+ self.Transition.draw(surf, self.player.position, [40, -250], 120, 625)
+ self.dialogue.text = "enemy dialogue"
+ self.dialogue.draw(surf, get_display_point(self.enemies[0].position)[0] + self.enemies[0].width/2, get_display_point(self.enemies[0].position)[1])
+ self.dialogue.text = "player dialogue"
+ self.dialogue.draw(surf, get_display_point(self.player.position)[0] + self.player.width/2, get_display_point(self.player.position)[1])
# screen.fill((255,255,255))
# sky = pg.image.load("Assets/world/SKY.png")
self.healthBar.draw(surf, self.player.health)
self.potionUI.draw(surf, self.player.potion_bag, self.player.potion_cooldown)
- if self.player.dead:
- self.scene.update()
- self.scene.draw()
+ # print(self.player.get_collision_rect())s
+ # Debug Lines. DO NOT CROSS THEM!
+ pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(SCREEN_WIDTH, -Setup.camera_offset.y), 10)
+ pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(-Setup.camera_offset.x, SCREEN_HEIGHT), 10)
+ # self.pet.draw(surf)
if(self.fade == True):
self.fadeT.update(True)
self.Transition.fade = False
self.next_level = self.level + 1
self.level = -4
- # self.__init__(self.level)
-
- # print(self.player.get_collision_rect())s
- # Debug Lines. DO NOT CROSS THEM!
- pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(SCREEN_WIDTH, -Setup.camera_offset.y), 10)
- pg.draw.line(surf, (255, 0, 0), -Setup.camera_offset, pg.Vector2(-Setup.camera_offset.x, SCREEN_HEIGHT), 10)
- # self.pet.draw(surf)
+ if self.player.dead:
+ self.scene.update()
+ self.scene.draw()
\ No newline at end of file
--- /dev/null
+from Setup import *
+from CommonImports.colours import white, black
+from Function.createText import createText
+
+class DialogueUI:
+
+ def __init__(self):
+ self.text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed sit amet commodo leo."
+ self.old_text = ""
+ self.char = 0
+
+ self.skip = False
+ self.texts = []
+
+ self.drawText = []
+
+ def update(self):
+ return;
+
+ def draw(self, surf, X, Y):
+
+ self.createDialogue()
+
+ for i in range(len(self.drawText)):
+ j = len(self.drawText) - i
+ text_rect = self.drawText[i].get_rect(center=(X, Y-(20*j)))
+ surf.blit(self.drawText[i], text_rect)
+
+ def createDialogue(self):
+ if(self.text == self.old_text):
+ self.skip == True
+ else:
+ self.old_text == self.text
+ self.texts = []
+ self.drawText = []
+ self.char = 0
+ self.skip == False
+
+ if(self.skip == False):
+ iii = 0
+ while iii < len(self.text):
+ n = 30
+ if iii+n < len(self.text):
+ self.texts.append(self.text[iii:iii+n])
+ else:
+ self.texts.append(self.text[iii:len(self.text)])
+ iii += n
+
+ for i in range(len(self.texts) - 1):
+ text = self.texts[i].split(" ")[-1]
+ self.texts[i+1] = self.texts[i][len(self.texts[i]) - len(text):] + self.texts[i+1]
+ self.texts[i] = self.texts[i][:len(self.texts[i]) - len(text) - 1]
+
+ for i in range(len(self.texts)):
+ self.drawText.append(createText(0, 0, 20, white, "Regular", self.texts[i])[0])
+ # if(self.char/30 > i):
+ # self.drawText.append(createText(0, 0, 30, white, "Regular", self.texts[i])[0])
+ # else:
+ # self.drawText.append(createText(0, 0, 30, white, "Regular", self.texts[i][self.char%30:])[0])
+ # self.char += 1
+
+ return;