GIF
選んで消す
アイテムを選んで消します。
ダウンキーやアップキーで選んで、Zキーで消します。
ここをクリックしてください
コードを動かす前に、まずはフォントファイルの準備が必要です。
pygameでは日本語がサポートされてません。日本語でテキストを表示するには、.ttfファイルが必要です。.pngファイルだと自分でコードを書かないとダメです。
一般社団法人文字情報技術促進協議会(ここから、フォントファイルをダウンロード)
Windowsでパスをそのまま貼り付けるとエラーが出るので、""(ダブルクォーテーション)の前にrをつけましょう。(r"")
エラーの原因がエラー文が指し示すのとは別の行のこともあります。
import pygame
from pygame.locals import *
import sys
pygame.init()
screen = pygame.display.set_mode((320,320))
#ここにフォントのパスを貼り付ける
font = pygame.font.Font(パス, 30)
list = ["やくそう","せいすい"]
arrow1 = "→"
arrow2 = ""
message = list[0]
message2 = list[1]
a = 0
action_number = 0
while (1):
screen.fill((0, 0, 255)) # 画面を青色に塗りつぶし
text = font.render(arrow1 + message, True, (255,255,255))
text2 = font.render(arrow2 + message2, True, (255,255,255))
if 1 <= len(list):
screen.blit(text, (90, 105))
if 2 <= len(list):
screen.blit(text2, (90, 185))
pygame.display.update() # 画面を更新
# イベント処理
for event in pygame.event.get():
if event.type == QUIT: # 閉じるボタンが押されたら終了
pygame.quit() # Pygameの終了(画面閉じられる)
sys.exit()
elif event.type == KEYDOWN and event.key == K_UP:
if 2 <= len(list):
if action_number == 0:
arrow1 = ""
arrow2 = "→"
action_number = 1
else:
arrow1 = "→"
arrow2 = ""
action_number = 0
elif event.type == KEYDOWN and event.key == K_DOWN:
if 2 <= len(list):
if action_number == 0:
arrow1 = ""
arrow2 = "→"
action_number = 1
else:
arrow1 = "→"
arrow2 = ""
action_number = 0
elif event.type == KEYDOWN and event.key == K_z:
if action_number == 0:
if 0 != len(list):
del list[0]
if 1 <= len(list):
message = list[0]
elif 0 == len(list):
message = ""
if action_number == 1:
if 1 != len(list):
del list[1]
action_number = 0
arrow1 = "→"
if 1 <= len(list):
message = list[0]
elif 0 == len(list):
message = ""
アイテムリスト
ここをクリックしてください
必要なもの
- フォントのファイル
- カーソルの画像
import pygame
import sys
from pygame.locals import *
pygame.init()
white = (255,255,255)
screen = pygame.display.set_mode((190, 280))
pygame.display.set_caption('item')
#ここにフォントのパスを貼り付ける
font = pygame.font.Font(パス, 20)
#ここにカーソル画像のパスを貼り付ける
cursor = pygame.image.load(パス)
cursor_y = 30
cmd = 0
item_list = ["やくそう0","やくそう1","やくそう2","やくそう3","やくそう4","やくそう5","やくそう6","やくそう7","やくそう8","やくそう9","やくそう10","やくそう11","やくそう12","やくそう13","やくそう14","やくそう15","やくそう16"]
item_index1 = 0
item_index2 = 1
item_index3 = 2
item_index4 = 3
item_index5 = 4
item_index6 = 5
item_index7 = 6
while (1):
screen.fill((0, 0, 0))
if len(item_list) >= 1:
text = font.render(item_list[item_index1], True, (white))
screen.blit(text, (36, 30))
if len(item_list) >= 2:
text = font.render(item_list[item_index2], True, (white))
screen.blit(text, (36, 60))
if len(item_list) >= 3:
text = font.render(item_list[item_index3], True, (white))
screen.blit(text, (36, 90))
if len(item_list) >= 4:
text = font.render(item_list[item_index4], True, (white))
screen.blit(text, (36, 120))
if len(item_list) >= 5:
text = font.render(item_list[item_index5], True, (white))
screen.blit(text, (36, 150))
if len(item_list) >= 6:
text = font.render(item_list[item_index6], True, (white))
screen.blit(text, (36, 180))
if len(item_list) >= 7:
text = font.render(item_list[item_index7], True, (white))
screen.blit(text, (36, 210))
screen.blit(cursor,(8, cursor_y))
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == KEYDOWN:
if event.key == K_UP:
if cursor_y != 30:
cmd -= 1
cursor_y -= 30
elif cursor_y == 30 and cmd != 0:
cmd -= 1
item_index1 -= 1
item_index2 -= 1
item_index3 -= 1
item_index4 -= 1
item_index5 -= 1
item_index6 -= 1
item_index7 -= 1
elif event.key == K_DOWN:
if cursor_y != 210:
cmd += 1
cursor_y += 30
elif cursor_y == 210 and cmd < len(item_list) - 1:
cmd += 1
item_index1 += 1
item_index2 += 1
item_index3 += 1
item_index4 += 1
item_index5 += 1
item_index6 += 1
item_index7 += 1
ここをクリックしてください
ここをクリックしてください
ここをクリックしてください
ここをクリックしてください
ここをクリックしてください