上二節,已經知道如何控制基本的運動了,但是只有乙個很單調的方塊,不太美觀,本節學習如何載入背景圖,以及角色的動畫。
素材準備:(原自github)
角色動畫的原理:動畫都是一幀幀渲染的,比如向左走的動畫,實際是類似上圖中的l1.png~l9png 連續切換,由於肉眼視覺暫留的作用,所以看上去象連續的動畫。
好了,直接上**:(關鍵地方已經加了注釋)
import pygame
import os
pygame.init()
win_width, win_height = 640, 480
frame_per_seconds = 27 # 每秒最大幀數
win = pygame.display.set_mode((win_width, win_height))
pygame.display.set_caption("first game")
img_base_path = os.getcwd() + '/img/'
# 向右走的陣列
walkright = [pygame.image.load(img_base_path + 'actor/r1.png'),
pygame.image.load(img_base_path + 'actor/r2.png'),
pygame.image.load(img_base_path + 'actor/r3.png'),
pygame.image.load(img_base_path + 'actor/r4.png'),
pygame.image.load(img_base_path + 'actor/r5.png'),
pygame.image.load(img_base_path + 'actor/r6.png'),
pygame.image.load(img_base_path + 'actor/r7.png'),
pygame.image.load(img_base_path + 'actor/r8.png'),
pygame.image.load(img_base_path + 'actor/r9.png')]
# 向左走的陣列
walkleft = [pygame.image.load(img_base_path + 'actor/l1.png'),
pygame.image.load(img_base_path + 'actor/l2.png'),
pygame.image.load(img_base_path + 'actor/l3.png'),
pygame.image.load(img_base_path + 'actor/l4.png'),
pygame.image.load(img_base_path + 'actor/l5.png'),
pygame.image.load(img_base_path + 'actor/l6.png'),
pygame.image.load(img_base_path + 'actor/l7.png'),
pygame.image.load(img_base_path + 'actor/l8.png'),
pygame.image.load(img_base_path + 'actor/l9.png')]
# 背景
# 站立時的
char = pygame.image.load(img_base_path + 'standing.png')
x, y = 50, 350 # 起點
width, height = 64, 64 # 寬,高
speed = 5 # 速度
run = true
isjump, left, right = false, false, false
t = 10
walkcount = 0
clock = pygame.time.clock()
def redrawgamewindow():
global walkcount
win.blit(bg, (0, 0))
if walkcount >= frame_per_seconds:
walkcount = 0
if left:
# 切換向左走的
win.blit(walkleft[walkcount % 9], (x, y))
walkcount += 1
elif right:
# 切換向右走的
怎麼樣,現在看上去,有點象那麼回事兒了吧~_^
參考:
postgresql學習筆記(四)角色
1 在postgresql安裝過程中的資料初始化階段,系統會預設建立乙個名為postgres的角色 同時會建立乙個名為postgres的同名database 2 可以通過ident身份驗證機制來將作業系統的的root使用者對映到資料的postgresql角色,這樣可以實現root使用者無密碼直接登入...
oracle學習筆記四 角色管理
本來今天還不打算講oracle角色管理的,但是因為上篇筆記中提到了oracle的角色許可權,也不想讓朋友繞太多的彎子,所以這個筆記決定記下關於oracle的角色管理。首先,什麼是oracle的角色呢?解釋起來可能有點抽象,我舉個例子吧,相信朋友們一看就能了解的了,在我們現實中,有市長,局長,省長等等...
Oracle資料庫筆記(二) 角色
角色 許可權型別 1.connect 只能登入,不能建立實體和資料庫 2.resource 建立實體,不能建立資料庫 3.dba 最高許可權,都可以 練習 create user user01 identified by pass01 grant connect to user01 授權以後才可以登...