Python单击角色换位

如本文章标有价格,需议价或其它事情商议请加微信pythonxia

李兴球Python单击角色换位
这个程序采用onclick绑定处理函数,让角色接受单击事件。

"""
   单击角色换位,
   本程序展示了单击让角色交换位置的最基本代码,
   
"""
from sprites import Sprite,Screen

def process(b,x,y):
    """处理单击"""
    global clicks,oldpos,oldb
    b.onclick(None)
    clicks += 1                     # clicks是2的时候才交换
    if clicks%2 == 0 :              
        clicks = 0
        if oldb != b :              # 不是同一个角色才换位
           p = b.pos()              # 把坐标记录 
           b.slide(oldb.position()) # 到刚才点的角色的坐标
           oldb.slide(p)            # 刚才点的角色到b角色之前的坐标 
    else:       
        oldb = b        # clicks是1,只是记录一下这个角色
    print(clicks,b)
    b.onclick(lambda x,y: process(b,x,y))

screen = Screen()

b1 = Sprite()
b1.onclick(lambda x,y: process(b1,x,y))
b2 = Sprite(1,pos=(100,0))
b2.onclick(lambda x,y: process(b2,x,y))
b3 = Sprite(2,pos=(100,100))
b3.onclick(lambda x,y: process(b3,x,y))
b4 = Sprite(3,pos=(-100,100))
b4.onclick(lambda x,y: process(b4,x,y))

clicks = 0                      # 统计单数次数
screen.mainloop()

本站所有作品,教程等皆为原创,版权所有。只供个人及单位内部研究使用,对外展示或传播必需经本站同意,且注明来自本站。培训机构等用本站资源培训学生,需经本站授权。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。亦可直接向微信号scratch8付款购买。入住QQ群:225792826 和爱好者共同交流,并且能下载免费提供的Python资源(需提供真实姓名才可入群)
李兴球的博客_Python创意编程技术前沿_pygame » Python单击角色换位
scratch

学本领,探索更大的世界!

李兴球博客 风火轮编程主页