Added text_input_handler (prototype)

This commit is contained in:
2024-02-14 22:14:37 +01:00
parent 3589bd49ee
commit 9748e4f7da
2 changed files with 18 additions and 10 deletions

View File

@@ -22,7 +22,4 @@ class Label:
class Input_Label(Label):
def __init__(self, is_rect=False, pos=tuple, size=tuple, mainsurface=pygame.Surface) -> None:
super().__init__(is_rect, pos, size, mainsurface)

View File

@@ -35,6 +35,7 @@ my_font3 = pygame.font.SysFont('times new roman', 46)
surface_text_noplayer = fonts["font2"].render("Es existiert noch kein Spieler", True, SCHWARZ)
surface_text_inputplayername = fonts["font1"].render("Bitte gib einen Namen ein: ", True, SCHWARZ)
labels = []
active = True
@@ -54,6 +55,9 @@ def apply_name(input):
print("Es existiert bereits ein Spieler mit diesem Namen!")
print(F"Hallo {User.getusername()}, dein letztes Spiel war am: {User.getlastlogin()} mit einem Highscore von: {User.gethighscore()}")
def get_text_input(dest=str):
return dest
surface_menu = pygame.Surface((400, 500))
@@ -72,8 +76,9 @@ def percent_from_screen(base:int, percent:int) -> int:
game = Game.Game()
User = User.User()
input_label1 = Label.Input_Label(True, (50,50), (100,25), PLAYGROUND)
input_label1 = Label.Input_Label(True, (50,50), (100,25), PLAYGROUND)
labels.append(input_label1)
player = Player("Player", PLAYGROUND, PLAYGROUND.get_size(), 100, 100, size=40)
@@ -105,7 +110,8 @@ counter = 0
spawn_fruit = True
game_started = False
text = ""
text_input_activate = True
text_input_buffer = str()
game.change_state("menu")
@@ -113,7 +119,7 @@ while active == True:
MAINSCREEN.fill((55,148,38))
PLAYGROUND.fill((244,244,244))
for event in pygame.event.get():
print(event)
#print(event)
if (event.type == pygame.QUIT):
print("Programm wird geschlossen!")
#print(spawned_entities, end="\n")
@@ -137,17 +143,22 @@ while active == True:
if(player.get_playermovedirection()["right"] != True):
player.change_direction("left")
if(text_input_activate == True):
if(event.type == pygame.KEYDOWN):
text_input_buffer += event.unicode
if(event.key == pygame.K_BACKSPACE):
text_input_buffer = text_input_buffer[:-2]
print(text_input_buffer)
if(game.get_state("menu")):
pass
"""if(event.type == pygame.KEYDOWN):
print(event.unicode)
text += event.unicode"""
text_surface_score = my_font.render('Score: '+str(player.get_player_score()), True, (0, 0, 0))
text_surface_player = my_font.render("Player: " + User.getusername(), True, SCHWARZ, None)
text_test = my_font.render("Test", True, SCHWARZ, None)
text_out = my_font.render(text, True, SCHWARZ, None)
text_out = my_font.render(text_input_buffer, True, SCHWARZ, None)
#input_label1.draw()