Pygame 缩放 Healthbar
Pygame Scaling Healthbar
我正在开发一款类似角色扮演游戏的游戏,您的最大生命值可以在整个过程中增加。
我正在尝试制作一个脚本,该脚本将绘制一个 100 像素宽的健康栏,值超过 100。
随着您的生命值上升,生命值栏的单位会变小。
这是我能想到的最好的:
#Draw Bar
import pygame
def SingleColorBar(surface,color,x,y,value,maxvalue):
xx=0
for hp in range(value):
pygame.draw.rect(surface, color, (x+xx,y,1,32), 0)
xx+= value/100
这根本没有按预期工作!
您可以将您当前的 HP 转换为您的 Max HP 的比率,然后绘制您的矩形那么多像素宽。
int(max(min(currentHP / float(maxHP) * health_bar_width, health_bar_width), 0))
这应该会为您提供整数百分比,并且介于 0 和健康栏的像素宽度之间,这样您就不会透支。
我正在开发一款类似角色扮演游戏的游戏,您的最大生命值可以在整个过程中增加。
我正在尝试制作一个脚本,该脚本将绘制一个 100 像素宽的健康栏,值超过 100。
随着您的生命值上升,生命值栏的单位会变小。
这是我能想到的最好的:
#Draw Bar
import pygame
def SingleColorBar(surface,color,x,y,value,maxvalue):
xx=0
for hp in range(value):
pygame.draw.rect(surface, color, (x+xx,y,1,32), 0)
xx+= value/100
这根本没有按预期工作!
您可以将您当前的 HP 转换为您的 Max HP 的比率,然后绘制您的矩形那么多像素宽。
int(max(min(currentHP / float(maxHP) * health_bar_width, health_bar_width), 0))
这应该会为您提供整数百分比,并且介于 0 和健康栏的像素宽度之间,这样您就不会透支。