当初の計画?の通りスプライトに名前をつけ配置しクリックでデータを
見ることのできるプログラムを考えています
今日はスプライトに名前をつけてみました
ウインドウへのテキスト表示は
pyglet.text.Label()でできるようです
ドキュメントを見るとhtml表示にもできるようですねぇ
今回は入力した名前をスプライト上に表示してusaを動かすといっしょに名前が
動くよう考えてみました
#!/usr/bin/python
# -*- coding: utf-8 -*-
import pyglet
from easygui import*
from pyglet.window import mouse
from pyglet.window import key
window = pyglet.window.Window(width=600, height=600, caption='Sprite animation')
usa_image = pyglet.resource.image('usa.png')
usa_image.anchor_x = usa_image.width / 2
usa_image.anchor_y = usa_image.height / 2
a = input("spritename: ")
usa_sprite = pyglet.sprite.Sprite(img=usa_image, x=30, y=30)
label = pyglet.text.Label('{0}'.format(a),
font_name='Times New Roman',
font_size=13,
x=usa_sprite.x-10, y=usa_sprite.y+25)
@window.event
def on_draw():
window.clear()
usa_sprite.draw()
label.draw()
@window.event
def on_key_press(symbol, modifiers):
if symbol == key.RIGHT:
usa_sprite.x += 20
label.x += 20
elif symbol == key.LEFT:
usa_sprite.x -= 20
label.x -= 20
elif symbol == key.UP:
usa_sprite.y += 20
label.y += 20
elif symbol == key.DOWN:
usa_sprite.y -= 20
label.y -= 20
print(usa_sprite.x,usa_sprite.y)
@window.event
def on_mouse_press(x, y, button, modifiers):
print(x)
if int(x) <= usa_sprite.x + 10 and int(x) >= usa_sprite.x - 10 and int(y) <= usa_sprite.y + 10 and int(y) >= usa_sprite.y -10:
msgbox("data:name/xtoran, age/00")
pyglet.app.run()
これを動作させると....
こんな感じになりました
あとはこれをクリックで量産できる方法があればいいんだけどなぁ
勉強不足でわからないなぁTT
セーブはテキストに座標を書き出して保存
ロードはそれを読み込むとかでできるのかな....
見ることのできるプログラムを考えています
今日はスプライトに名前をつけてみました
ウインドウへのテキスト表示は
pyglet.text.Label()でできるようです
ドキュメントを見るとhtml表示にもできるようですねぇ
今回は入力した名前をスプライト上に表示してusaを動かすといっしょに名前が
動くよう考えてみました
#!/usr/bin/python
# -*- coding: utf-8 -*-
import pyglet
from easygui import*
from pyglet.window import mouse
from pyglet.window import key
window = pyglet.window.Window(width=600, height=600, caption='Sprite animation')
usa_image = pyglet.resource.image('usa.png')
usa_image.anchor_x = usa_image.width / 2
usa_image.anchor_y = usa_image.height / 2
a = input("spritename: ")
usa_sprite = pyglet.sprite.Sprite(img=usa_image, x=30, y=30)
label = pyglet.text.Label('{0}'.format(a),
font_name='Times New Roman',
font_size=13,
x=usa_sprite.x-10, y=usa_sprite.y+25)
@window.event
def on_draw():
window.clear()
usa_sprite.draw()
label.draw()
@window.event
def on_key_press(symbol, modifiers):
if symbol == key.RIGHT:
usa_sprite.x += 20
label.x += 20
elif symbol == key.LEFT:
usa_sprite.x -= 20
label.x -= 20
elif symbol == key.UP:
usa_sprite.y += 20
label.y += 20
elif symbol == key.DOWN:
usa_sprite.y -= 20
label.y -= 20
print(usa_sprite.x,usa_sprite.y)
@window.event
def on_mouse_press(x, y, button, modifiers):
print(x)
if int(x) <= usa_sprite.x + 10 and int(x) >= usa_sprite.x - 10 and int(y) <= usa_sprite.y + 10 and int(y) >= usa_sprite.y -10:
msgbox("data:name/xtoran, age/00")
pyglet.app.run()
これを動作させると....
あとはこれをクリックで量産できる方法があればいいんだけどなぁ
勉強不足でわからないなぁTT
セーブはテキストに座標を書き出して保存
ロードはそれを読み込むとかでできるのかな....
0 件のコメント:
コメントを投稿