本文整理汇总了Golang中sdl.Surface.Blit方法的典型用法代码示例。如果您正苦于以下问题:Golang Surface.Blit方法的具体用法?Golang Surface.Blit怎么用?Golang Surface.Blit使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sdl.Surface
的用法示例。
在下文中一共展示了Surface.Blit方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Blit
func (m *MonsterGhost) Blit(surface *sdl.Surface) {
m.H = float64(IM.Monsters[0][0].H)
m.W = float64(IM.Monsters[0][0].W)
if difftime(m.GotHit) > 0 {
surface.Blit(&sdl.Rect{int16(m.X - m.W/2), int16(m.Y - m.H/2), 0, 0}, IM.Monsters[0][0], nil)
}
}
示例2: Blit
func (t *Teleport) Blit(surface *sdl.Surface) {
if t.O == TELE_HORIZONTAL {
for x := 0; x < t.S*2; x++ {
surface.Blit(&sdl.Rect{int16(t.X-t.W/2) + int16(20*x), int16(t.Y - t.H/2), 0, 0}, t.Image, nil)
}
} else {
for x := 0; x < t.S*2; x++ {
surface.Blit(&sdl.Rect{int16(t.X - t.W/2), int16(t.Y-t.H/2) + int16(20*x), 0, 0}, t.Image, nil)
}
}
}
示例3: BlitHeartsAndTimer
func BlitHeartsAndTimer(surface *sdl.Surface, antal int, t GameTime) {
x := 18*BOXSIZE + 10
y := 5
for i := 0; i < antal; i++ {
surface.Blit(&sdl.Rect{int16(x), int16(i*30 + y), 0, 0}, IM.Misc[0], nil)
}
max := t.End - t.Start
nu := t.End - now()
if nu <= 0 {
return
}
surface.FillRect(&sdl.Rect{int16(x + BOXSIZE), 5 + BOXSIZE, 15, uint16((200 * nu) / max)}, 0xFFFFFF)
}
示例4: Blit
func (l *Level) Blit(surface *sdl.Surface) {
surface.Blit(&sdl.Rect{0, 0, 0, 0}, l.Surface, nil)
}
示例5: Blit
func (l *ScreenObject) Blit(surface *sdl.Surface) {
if l == selected {
surface.FillRect(&sdl.Rect{int16(l.X - l.W/2), int16(l.Y - l.H/2), uint16(l.W), uint16(l.H)}, 0xFFFFFF)
}
surface.Blit(&sdl.Rect{int16(l.X - l.W/2), int16(l.Y - l.H/2), 0, 0}, l.image(), nil)
}
示例6: Blit
func (b *Player) Blit(surface *sdl.Surface) {
surface.Blit(&sdl.Rect{int16(b.X - b.W/2), int16(b.Y - b.H/2), 0, 0}, b.Animate(), nil)
surface.Blit(&sdl.Rect{19*BOXSIZE + 10, 10, 0, 0}, IM.Shots[b.Lvl], nil)
}
示例7: Blit
func (l *EnemyLaser) Blit(surface *sdl.Surface) {
l.H = float64(IM.Shots[0].H)
l.W = float64(IM.Shots[0].W)
surface.Blit(&sdl.Rect{int16(l.X - l.W/2), int16(l.Y - l.H/2), 0, 0}, IM.Shots[0], nil)
}