莞爾の草原。

RGSS3(RPGツクールVX Ace)や自作のことを主に書いていくブログです。不定期で更新していきます。

【RGSS3】単一キャラチップスクリプト

 例えば、マップにこんな動きのない大きなキャラチップを置きたいとします。

f:id:kanjinokusa0405:20170622141011p:plain そんな時には、画像の名前の先頭に$をつけて、一人用のキャラチップにすると思いますが、そうすると、どうしても使わない11マス分が余ってしまいます。

f:id:kanjinokusa0405:20170622141433p:plain

何か別の、大きなキャラチップを作るときに使うこともできますが、大きさが微妙にちがければ使うことができません。そんな無駄が気になるあなたにこのスクリプト!デン

 

class Sprite_Character < Sprite_Base
def set_character_bitmap
self.bitmap = Cache.character(@character_name)
sign = @character_name[/^[\!\$\@]./]
if sign && sign.include?('$')
@cw = bitmap.width / 3
@ch = bitmap.height / 4
elsif sign && sign.include?('@')
@cw = bitmap.width
@ch = bitmap.height
else
@cw = bitmap.width / 12
@ch = bitmap.height / 8
end
self.ox = @cw / 2
self.oy = @ch
end
end

 

このスクリプトは▼ 素材の下に張り付けてご使用ください。

 このスクリプトの使い方ですが、まず使いたいキャラチップをこのようにしてください。従来通り横三倍縦四倍する必要はありません。

f:id:kanjinokusa0405:20170622142258p:plain

 そして、その画像の名前の先頭に半角の@マークをつけてください。これで完成です。

f:id:kanjinokusa0405:20170622142610p:plain

イベントの編集で使う画像の左上端を選べば、

f:id:kanjinokusa0405:20170622142731p:plain

きちんと画像が表示されます。

 ちなみに、このキャラチップをそのまま動かすと点滅してしまうため、向き固定と歩行アニメをOFFにするのを忘れないようにセットしておきましょう。