Szukałem, szukałem i doszukać się nie mogę.. czy ktoś może wie w której zmiennej przechowywany jest sprite lub bitmapa gracza (lub aktora o id 0). Chodzi mi o to, abym mógł sprawdzać piksele tej bitmapy - mam jej nazwę ($game_player.character_name), ale za nic nie mogę znaleźć wskaźnika na samą bitmapę.. nie ma go w Game_Battler, Game_Actor, Game_Character, Game_Player itd..
Jedyna opcja to chyba odwołanie się do Spriteset_Map -> ostatnia wartość tablicy @character_sprites.. da się to zrobić bardziej elegancko?
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
Wysłany: Wto 08 Lut, 2011 08:05
Nie wiem, czy dobrze rozumiem, ale może wprowadź dwie nowe definicje w Game_Player, które będę po prostu wyliczać szerokość bitmapy (tylko nie wiem, czy chcesz szerokość/wysokość całego pliku graficznego, czy tylko jednej klatki animacji charactersa).
Kod:
class Game_Player < Game_Character
def bitmap_width
return RPG::Cache.character(@character_name, @character_hue).width / 4
end
def bitmap_height
return RPG::Cache.character(@character_name, @character_hue).height / 4
end
end
Nie zrozumiałem, czy potrzebujesz całej grafiki, czy tylko pojedynczą klatkę.
Jeśli całej grafiki, dorzuć sobie funkcję do Sprite_Character
Kod:
class Sprite_Character < RPG::Sprite
def get_bitmap
return self.bitmap
end
end
Potem wołaj o nią (zgodnie z zaspoilerowanym sposobem) w stylu: $game_temp.player_sprite.get_bitmap
Jeśli natomiast miałeś na myśli aktualną klatkę, hmm... Musisz użyć src_rect ze Sprite_Character, przechowuje on Rect wyznaczający aktualną klatkę. Nie bawiłem się w tego typu przycinania, nie jestem pewien jak przyciąć ładnie Bitmapę - ale oglądając ten fragment
@Ayene: niestety nie zrozumiałaś.. chciałbym pobawić się bitmapą postaci gracza (przez get_pixel i set_pixel), a nie znać jej wymiary, ale dzięki za poświęcony czas..
@Sabikku: dzięki wielkie.. w sumie łatwy w osiągnięciu i robiący to, co powinien efekt =)
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum