Итак, что я пытаюсь сделать, так это иметь набор методов, в которых я могу добавлять объекты, такие как персонаж, заставлять его перемещаться и отображать некоторый текст в одном окне. Это то, что у меня есть

import pygame,sys
from pygame.locals import *

def get_font():
    game_font = pygame.font.Font(None,30)

def screen(width,height,name):
    pygame.init()
    pygame.font.init()
    screen=pygame.display.set_mode((width,height))
    pygame.display.update()
    return window

def name(name="", array=[]):
    pygame.init()
    pygame.font.init()
    myfont = pygame.font.SysFont(None, 15)
    label = myfont.render(name, 1, (255,255,0))
    result=screen(640,480,name).blit(label, (100, 100))
    array.append(name)
    pygame.display.update()
    return name

def drawCharacter(array=[]):
    initialise()
    character = pygame.image.load("resources/images/character.png")
    drawcharacter = window(640,480,character).blit(character, (100, 400))
    array.append(character)
    pygame.display.update()
    return drawcharacter



name("akunama tata pig")
drawCharacter()

while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
     pygame.display.update()

Здесь просто отображается символ, без текста, но я не понимаю почему. Я попытался добавить их в массив и отобразить их вот так. но безрезультатно. Любые идеи?

0
Pro-grammer 16 Окт 2013 в 22:51
1
Как бы то ни было, вы создаете новый экран с каждым вызовом ... вы, вероятно, захотите позвонить myscreen = screen(width,height), а затем повторно использовать этот экран .... но я не уверен
 – 
Joran Beasley
16 Окт 2013 в 22:59
1
 – 
Justin Jasmann
16 Окт 2013 в 23:03
Не совсем, у меня другая проблема, раньше ничего не отображалось
 – 
Pro-grammer
16 Окт 2013 в 23:06

1 ответ

Лучший ответ

Я решил это сам: я определил

screen=pygame.display.set_mode((400,400)) 

В начале и повторно использовал это.

1
Java Devil 16 Окт 2013 в 23:58