HP Orb - Problem |
Autor |
Wiadomość |
Quario
Preferowany:
Dołączył: 21 Sty 2012 Posty: 5
|
Wysłany: Sob 30 Mar, 2013 19:21
|
|
HP Orb - Problem
|
Witam, chciałbym zrobić hud, w którym zamiast paska HP byłaby kula (tak jak w diablo). Problem polega na tym, że mając taki kod :
Kod: | hpbar = Cache.picture("hp")
hpwidth = hpbar.width
hpheight = hpbar.height * @actor.hp / @actor.maxhp
hpbar_rect = Rect.new(0,0,hpwidth,hpheight)
self.bitmap.blt(226,0,hpbar,hpbar_rect)
|
Kula opróżnia się od dołu.
Pytanie zatem mam takie czy ktoś wie jak to obrócić? |
|
|
|
Ayene
Ranga RM:
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
|
Wysłany: Sob 30 Mar, 2013 20:32
|
|
|
Spróbuj może powyższy fragment zamienić na:
Kod: | maxhp = @actor.maxhp
hp = @actor.hp
hpbar = Cache.picture("hp")
cw = hpbar.width
ch = hpbar.height
rate = (hp < maxhp ? hp * ch / maxhp : ch)
hpbar_rect = Rect.new(0, ch-rate, cw, rate)
self.bitmap.blt(226,0-rate, hpbar, hpbar_rect) |
zrób wpierw kopię zapasową, bo robiłam "na sucho". |
________________________
|
|
|
|
Quario
Preferowany:
Dołączył: 21 Sty 2012 Posty: 5
|
|
|
|
Ayene
Ranga RM:
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
|
Wysłany: Sob 30 Mar, 2013 20:59
|
|
|
Podmień wcześniejsze na:
Kod: | hpbar = Cache.picture("hp")
rate = (@actor.maxhp > 0 ? @actor.hp.to_f / @actor.maxhp : 0)
bb = hpbar.height - hpbar.height * rate
hpbar_rect = Rect.new(0, bb, hpbar.width, hpbar.height)
self.bitmap.blt(226,0 + bb, hpbar, hpbar_rect) |
|
________________________
|
|
|
|
Quario
Preferowany:
Dołączył: 21 Sty 2012 Posty: 5
|
Wysłany: Sob 30 Mar, 2013 21:04
|
|
|
Jesteś wielka ! działa, dziękuje za szybką odpowiedź |
|
|
|
|