Project1

标题: sprite.bitmap 如何放入两张不同的图片 [打印本页]

作者: gaofei677    时间: 2014-11-17 12:06
标题: sprite.bitmap 如何放入两张不同的图片
想要在sprite 里面放入两张图片,可是通过sprite.bitmap似乎只能有一张图片,请问有什么方法可以放两张吗?
作者: gaofei677    时间: 2014-11-17 12:24
我做存档界面……
作者: taroxd    时间: 2014-11-17 12:27
为什么不用两个 sprite ?
作者: gaofei677    时间: 2014-11-17 12:40
因为两个bitmap是联动的,能放两张图片的画更方便,如果不行,那我只能用两个了@taroxd  
作者: tseyik    时间: 2014-11-17 13:19
<拡張> ピクチャの操作
http://cacaosoft.web.fc2.com/tkool/script/rgss3/picex.html
其中一個功能
ピクチャ同士を関連付けます。
圖片間産生関連(組成同一群組)
関連付けられた親ピクチャを移動すると子ピクチャも一緒に移動します。
ウィンドウと文字を別のピクチャに分けている場合など、
1つのピクチャに位置を合わせたい場合に使用してください。
被関連的圖片會踉著主圖片移動


作者: gaofei677    时间: 2014-11-17 14:39
我看看,谢谢啦@tseyik  
作者: taroxd    时间: 2014-11-17 17:18
gaofei677 发表于 2014-11-17 14:39
我看看,谢谢啦@tseyik


用 has_a 继承就可以了啊。或者可以装逼一点,叫做 Spriteset。

参考 https://rpg.blue/thread-358231-1-1.html

RUBY 代码复制
  1. class SomePictures
  2.   def initialize
  3.     @sprite1 = Sprite.new
  4.     @sprite2 = Sprite.new
  5.   end
  6.  
  7.   def move(some_args)
  8.     @sprite1.move_to_somewhere
  9.     @sprite2.move_to_somewhere
  10.   end
  11.  
  12.   #...
  13. end

作者: 无脑之人    时间: 2014-11-17 18:30
默认的Sprite不可能两个Bitmap的,建议两个Sprite,而且可以用类包装一下
作者: gaofei677    时间: 2014-11-17 18:31
这个嘛,其实还是两个sprite……@taroxd
作者: VIPArcher    时间: 2014-11-17 18:42
本帖最后由 VIPArcher 于 2014-11-17 18:44 编辑

你可以无视这里未测试,
  1. bitmap1 = 图片1
  2. bitmap2 = 图片2
  3. width = bitmap1.width + bitmap2.width
  4. height = bitmap1.height + bitmap2.height
  5. rect = Rect.new(0, 0, width, height)
  6. sprite.bitmap = Bitmap.new(width , height )
  7. sprite.bitmap.blt(0, 0, bitmap1, rect)
  8. sprite.bitmap.blt(bitmap1.widt, 0, bitmap2, rect)
复制代码
例如这样把两张图拼起来,如果这么干了记得要好好释放哦(噗




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1